Elementor Page Builder - Version 1.7.0-RC1

Version Description

Download this release

Release Info

Developer KingYes
Plugin Icon 128x128 Elementor Page Builder
Version 1.7.0-RC1
Comparing to
See all releases

Code changes from version 1.6.4 to 1.7.0-RC1

assets/css/admin-rtl.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  .dialog-widget {
3
  position: fixed;
4
  height: 100%;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  .dialog-widget {
3
  position: fixed;
4
  height: 100%;
assets/css/admin-rtl.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  .dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:1}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden,body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #elementor-editor{display:table}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}#adminmenu #toplevel_page_edit-post_type-elementor_library div.wp-menu-image:before,#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e800";font-family:eicons;font-size:14px;margin-top:3px}#adminmenu #toplevel_page_edit-post_type-elementor_library a[href="admin.php?page=go_elementor_pro"],#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#d54e21}#adminmenu #toplevel_page_edit-post_type-elementor_library .dashicons.dashicons-star-filled,#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}.elementor-plugins-gopro{color:#39b54a;font-weight:700}#elementor-switch-mode{margin:15px 0}.elementor-button{padding:12.5px 25px;display:inline-block;line-height:1;border:1px solid;border-radius:3px;outline:none;cursor:pointer}.elementor-button .eicon-elementor{margin-left:5px}#elementor-editor{background-color:#f7f7f7;border:1px solid #ddd;height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor:hover{background-color:#fff}#elementor-editor .elementor-loader-box{position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}#elementor-editor .elementor-loader-box{background-color:#a4afb7}#elementor-go-to-edit-page-link{display:table-cell;vertical-align:middle;text-align:center;text-decoration:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-loader-wrapper{margin:auto;width:80px}.elementor-loader{height:80px;position:relative}.elementor-loading-title{color:#a4afb7;text-transform:uppercase;margin-top:15px;font-size:11px;letter-spacing:5px}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;right:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s infinite linear;animation:rotation 1s infinite linear}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e801";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}.notice.elementor-message{border-right-color:#9b0a46!important;padding:20px}.notice.elementor-message .elementor-message-inner{display:table;width:100%}.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:table-cell;vertical-align:middle}.notice.elementor-message .elementor-message-icon{color:#9b0a46;font-size:50px;width:50px}.notice.elementor-message .elementor-message-content{padding:0 20px}.notice.elementor-message p{padding:0;margin:0}.notice.elementor-message h3{margin:0 0 5px}.notice.elementor-message .elementor-update-now{text-align:center}.notice.elementor-message .elementor-update-now .elementor-button{background-color:#9b0a46;color:#fff;border-color:#7c1337;-webkit-box-shadow:0 1px 0 #7c1337;box-shadow:0 1px 0 #7c1337;padding:5px 30px;height:auto;line-height:20px;text-transform:capitalize}.notice.elementor-message .elementor-update-now .elementor-button i{padding-left:5px}.notice.elementor-message .elementor-update-now .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-update-now .elementor-button:active{-webkit-box-shadow:inset 0 1px 0 #7c1337;box-shadow:inset 0 1px 0 #7c1337;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}@media (max-width:767px){.notice.elementor-message{padding:10px}.notice.elementor-message .elementor-message-inner{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-content{display:block;padding:0}.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:none}}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}@-webkit-keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-close-button{-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}#elementor-deactivate-feedback-modal .dialog-widget-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:right}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:right}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:right;margin:0 0 0 15px;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 30px 0 0;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:right;padding:20px 30px 30px}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#9b0a46;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:left;width:auto}#elementor-deactivate-feedback-dialog-header i{color:#9b0a46;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-right:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  .dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:1}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden,body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #elementor-editor{display:table}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}#adminmenu #toplevel_page_edit-post_type-elementor_library div.wp-menu-image:before,#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e800";font-family:eicons;font-size:14px;margin-top:3px}#adminmenu #toplevel_page_edit-post_type-elementor_library a[href="admin.php?page=go_elementor_pro"],#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#d54e21}#adminmenu #toplevel_page_edit-post_type-elementor_library .dashicons.dashicons-star-filled,#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}.elementor-plugins-gopro{color:#39b54a;font-weight:700}#elementor-switch-mode{margin:15px 0}.elementor-button{padding:12.5px 25px;display:inline-block;line-height:1;border:1px solid;border-radius:3px;outline:none;cursor:pointer}.elementor-button .eicon-elementor{margin-left:5px}#elementor-editor{background-color:#f7f7f7;border:1px solid #ddd;height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor:hover{background-color:#fff}#elementor-editor .elementor-loader-box{position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}#elementor-editor .elementor-loader-box{background-color:#a4afb7}#elementor-go-to-edit-page-link{display:table-cell;vertical-align:middle;text-align:center;text-decoration:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-loader-wrapper{margin:auto;width:80px}.elementor-loader{height:80px;position:relative}.elementor-loading-title{color:#a4afb7;text-transform:uppercase;margin-top:15px;font-size:11px;letter-spacing:5px}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;right:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s infinite linear;animation:rotation 1s infinite linear}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e801";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}.notice.elementor-message{border-right-color:#9b0a46!important;padding:20px}.notice.elementor-message .elementor-message-inner{display:table;width:100%}.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:table-cell;vertical-align:middle}.notice.elementor-message .elementor-message-icon{color:#9b0a46;font-size:50px;width:50px}.notice.elementor-message .elementor-message-content{padding:0 20px}.notice.elementor-message p{padding:0;margin:0}.notice.elementor-message h3{margin:0 0 5px}.notice.elementor-message .elementor-update-now{text-align:center}.notice.elementor-message .elementor-update-now .elementor-button{background-color:#9b0a46;color:#fff;border-color:#7c1337;-webkit-box-shadow:0 1px 0 #7c1337;box-shadow:0 1px 0 #7c1337;padding:5px 30px;height:auto;line-height:20px;text-transform:capitalize}.notice.elementor-message .elementor-update-now .elementor-button i{padding-left:5px}.notice.elementor-message .elementor-update-now .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-update-now .elementor-button:active{-webkit-box-shadow:inset 0 1px 0 #7c1337;box-shadow:inset 0 1px 0 #7c1337;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}@media (max-width:767px){.notice.elementor-message{padding:10px}.notice.elementor-message .elementor-message-inner{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-content{display:block;padding:0}.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:none}}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}@-webkit-keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-close-button{-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}#elementor-deactivate-feedback-modal .dialog-widget-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:right}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:right}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:right;margin:0 0 0 15px;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 30px 0 0;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:right;padding:20px 30px 30px}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#9b0a46;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:left;width:auto}#elementor-deactivate-feedback-dialog-header i{color:#9b0a46;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-right:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red}
assets/css/admin.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  .dialog-widget {
3
  position: fixed;
4
  height: 100%;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  .dialog-widget {
3
  position: fixed;
4
  height: 100%;
assets/css/admin.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  .dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:1}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden,body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #elementor-editor{display:table}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}#adminmenu #toplevel_page_edit-post_type-elementor_library div.wp-menu-image:before,#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e800";font-family:eicons;font-size:14px;margin-top:3px}#adminmenu #toplevel_page_edit-post_type-elementor_library a[href="admin.php?page=go_elementor_pro"],#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#d54e21}#adminmenu #toplevel_page_edit-post_type-elementor_library .dashicons.dashicons-star-filled,#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}.elementor-plugins-gopro{color:#39b54a;font-weight:700}#elementor-switch-mode{margin:15px 0}.elementor-button{padding:12.5px 25px;display:inline-block;line-height:1;border:1px solid;border-radius:3px;outline:none;cursor:pointer}.elementor-button .eicon-elementor{margin-right:5px}#elementor-editor{background-color:#f7f7f7;border:1px solid #ddd;height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor:hover{background-color:#fff}#elementor-editor .elementor-loader-box{position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}#elementor-editor .elementor-loader-box{background-color:#a4afb7}#elementor-go-to-edit-page-link{display:table-cell;vertical-align:middle;text-align:center;text-decoration:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-loader-wrapper{margin:auto;width:80px}.elementor-loader{height:80px;position:relative}.elementor-loading-title{color:#a4afb7;text-transform:uppercase;margin-top:15px;font-size:11px;letter-spacing:5px}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;left:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s infinite linear;animation:rotation 1s infinite linear}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e801";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}.notice.elementor-message{border-left-color:#9b0a46!important;padding:20px}.notice.elementor-message .elementor-message-inner{display:table;width:100%}.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:table-cell;vertical-align:middle}.notice.elementor-message .elementor-message-icon{color:#9b0a46;font-size:50px;width:50px}.notice.elementor-message .elementor-message-content{padding:0 20px}.notice.elementor-message p{padding:0;margin:0}.notice.elementor-message h3{margin:0 0 5px}.notice.elementor-message .elementor-update-now{text-align:center}.notice.elementor-message .elementor-update-now .elementor-button{background-color:#9b0a46;color:#fff;border-color:#7c1337;-webkit-box-shadow:0 1px 0 #7c1337;box-shadow:0 1px 0 #7c1337;padding:5px 30px;height:auto;line-height:20px;text-transform:capitalize}.notice.elementor-message .elementor-update-now .elementor-button i{padding-right:5px}.notice.elementor-message .elementor-update-now .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-update-now .elementor-button:active{-webkit-box-shadow:inset 0 1px 0 #7c1337;box-shadow:inset 0 1px 0 #7c1337;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}@media (max-width:767px){.notice.elementor-message{padding:10px}.notice.elementor-message .elementor-message-inner{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-content{display:block;padding:0}.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:none}}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}@-webkit-keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-close-button{-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}#elementor-deactivate-feedback-modal .dialog-widget-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:left}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:left}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:left;margin:0 15px 0 0;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 0 0 30px;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:left;padding:20px 30px 30px}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#9b0a46;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto}#elementor-deactivate-feedback-dialog-header i{color:#9b0a46;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-left:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  .dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:1}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden,body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #elementor-editor{display:table}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}#adminmenu #toplevel_page_edit-post_type-elementor_library div.wp-menu-image:before,#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e800";font-family:eicons;font-size:14px;margin-top:3px}#adminmenu #toplevel_page_edit-post_type-elementor_library a[href="admin.php?page=go_elementor_pro"],#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#d54e21}#adminmenu #toplevel_page_edit-post_type-elementor_library .dashicons.dashicons-star-filled,#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}.elementor-plugins-gopro{color:#39b54a;font-weight:700}#elementor-switch-mode{margin:15px 0}.elementor-button{padding:12.5px 25px;display:inline-block;line-height:1;border:1px solid;border-radius:3px;outline:none;cursor:pointer}.elementor-button .eicon-elementor{margin-right:5px}#elementor-editor{background-color:#f7f7f7;border:1px solid #ddd;height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor:hover{background-color:#fff}#elementor-editor .elementor-loader-box{position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}#elementor-editor .elementor-loader-box{background-color:#a4afb7}#elementor-go-to-edit-page-link{display:table-cell;vertical-align:middle;text-align:center;text-decoration:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-loader-wrapper{margin:auto;width:80px}.elementor-loader{height:80px;position:relative}.elementor-loading-title{color:#a4afb7;text-transform:uppercase;margin-top:15px;font-size:11px;letter-spacing:5px}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;left:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s infinite linear;animation:rotation 1s infinite linear}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e801";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}.notice.elementor-message{border-left-color:#9b0a46!important;padding:20px}.notice.elementor-message .elementor-message-inner{display:table;width:100%}.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:table-cell;vertical-align:middle}.notice.elementor-message .elementor-message-icon{color:#9b0a46;font-size:50px;width:50px}.notice.elementor-message .elementor-message-content{padding:0 20px}.notice.elementor-message p{padding:0;margin:0}.notice.elementor-message h3{margin:0 0 5px}.notice.elementor-message .elementor-update-now{text-align:center}.notice.elementor-message .elementor-update-now .elementor-button{background-color:#9b0a46;color:#fff;border-color:#7c1337;-webkit-box-shadow:0 1px 0 #7c1337;box-shadow:0 1px 0 #7c1337;padding:5px 30px;height:auto;line-height:20px;text-transform:capitalize}.notice.elementor-message .elementor-update-now .elementor-button i{padding-right:5px}.notice.elementor-message .elementor-update-now .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-update-now .elementor-button:active{-webkit-box-shadow:inset 0 1px 0 #7c1337;box-shadow:inset 0 1px 0 #7c1337;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}@media (max-width:767px){.notice.elementor-message{padding:10px}.notice.elementor-message .elementor-message-inner{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-content{display:block;padding:0}.notice.elementor-message .elementor-message-inner .elementor-message-icon,.notice.elementor-message .elementor-message-inner .elementor-update-now{display:none}}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}@-webkit-keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes b{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-close-button{-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}#elementor-deactivate-feedback-modal .dialog-widget-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:left}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:left}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:left;margin:0 15px 0 0;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 0 0 30px;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:left;padding:20px 30px 30px}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#9b0a46;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:14px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:b 2s infinite linear;animation:b 2s infinite linear}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto}#elementor-deactivate-feedback-dialog-header i{color:#9b0a46;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-left:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red}
assets/css/editor-preview-rtl.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @-webkit-keyframes placeholder-section {
3
  0% {
4
  height: 0;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @-webkit-keyframes placeholder-section {
3
  0% {
4
  height: 0;
assets/css/editor-preview-rtl.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @-webkit-keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes c{0%{opacity:0}to{opacity:1}}@keyframes c{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}#elementor .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}#elementor .elementor-editor-element-settings{word-break:normal}#elementor .gallery{opacity:1}html.elementor-html{margin-top:0!important}#elementor{position:relative}.elementor-editor-active .elementor-inner{margin-top:25px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element>.elementor-element-overlay{position:absolute;top:0;left:0;letter-spacing:0;z-index:3;pointer-events:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]+.elementor-element:before,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]:last-child:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;display:block}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay{right:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:c .75s;animation:c .75s}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-top-section>.elementor-container>.elementor-row{min-height:80px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section:first-child{margin-top:15px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings{position:absolute;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger.elementor-active~.elementor-editor-element-setting{margin-right:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger:not(.elementor-active)~.elementor-editor-element-setting{width:0;font-size:0;padding:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-remove:hover .fa{color:red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings{top:1px;right:50%;background-image:-webkit-gradient(linear,left top,left bottom,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(top,#41c9f4,#71d7f7);background-image:-o-linear-gradient(top,#41c9f4,#71d7f7);background-image:linear-gradient(180deg,#41c9f4,#71d7f7);border-radius:3px 3px 0 0;-webkit-transform:translateX(50%) translateY(-100%);-ms-transform:translateX(50%) translateY(-100%);transform:translateX(50%) translateY(-100%)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:last-child{padding-left:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings{top:-1px;right:-1px;border-radius:0 3px 0 0;background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:hover{background-color:#495157}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:last-child{padding-left:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings{z-index:2;top:-1px;left:-1px;background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7);border-radius:0 0 3px 0;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:last-child{padding-right:1px}}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-trigger{cursor:move}}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting:not(.elementor-editor-element-trigger){display:none}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-add,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-duplicate,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay{right:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;left:-5px;top:0;height:100%}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:60px}@media (min-width:768px){.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-editor-active .elementor-widget.elementor-loading{opacity:.3}.elementor-editor-active .elementor-widget:not(.elementor-loading):not(.elementor-widget-menu-anchor){-webkit-transition:all .1s;-o-transition:all .1s;transition:all .1s}.elementor-editor-active .elementor-widget.elementor-element-editable,.elementor-editor-active .elementor-widget.elementor-widget-can-edit:hover{outline:1px solid #71d7f7}.elementor-editor-active .elementor-widget:not(:hover) .elementor-editor-element-settings,.elementor-editor-active .handle{display:none}.elementor-editor-active .elementor-sortable-helper{position:absolute;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-editor-active .elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-editor-active .elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-editor-active .elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-duration:.5s;animation-duration:.5s;opacity:.9}.elementor-section-placeholder{height:40px;-webkit-animation-name:a;animation-name:a}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:b;animation-name:b}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{background-color:hsla(0,0%,100%,.5);max-width:1140px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child){border:2px dashed #d5dadf}.elementor-add-section.elementor-dragging-on-child{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}@media (max-width:479px){.elementor-add-section{display:none}}.elementor-add-section-inner{text-align:center;margin-top:10px;padding:40px 0}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-button{color:#fff;background-image:none;font-size:13px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;line-height:1;text-transform:uppercase;height:40px;min-width:170px;padding:0 20px;border:none;border-radius:3px;cursor:pointer}.elementor-add-new-section .elementor-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#9b0a46}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-right:25px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:20px;top:20px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:right}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-element-empty,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-widget-empty{display:none}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @-webkit-keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes c{0%{opacity:0}to{opacity:1}}@keyframes c{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}#elementor .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}#elementor .elementor-editor-element-settings{word-break:normal}#elementor .gallery{opacity:1}html.elementor-html{margin-top:0!important}#elementor{position:relative}.elementor-editor-active .elementor-inner{margin-top:25px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element>.elementor-element-overlay{position:absolute;top:0;left:0;letter-spacing:0;z-index:3;pointer-events:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]+.elementor-element:before,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]:last-child:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;display:block}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay{right:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:c .75s;animation:c .75s}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-top-section>.elementor-container>.elementor-row{min-height:80px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section:first-child{margin-top:15px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings{position:absolute;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger.elementor-active~.elementor-editor-element-setting{margin-right:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger:not(.elementor-active)~.elementor-editor-element-setting{width:0;font-size:0;padding:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-remove:hover .fa{color:red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings{top:1px;right:50%;background-image:-webkit-gradient(linear,left top,left bottom,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(top,#41c9f4,#71d7f7);background-image:-o-linear-gradient(top,#41c9f4,#71d7f7);background-image:linear-gradient(180deg,#41c9f4,#71d7f7);border-radius:3px 3px 0 0;-webkit-transform:translateX(50%) translateY(-100%);-ms-transform:translateX(50%) translateY(-100%);transform:translateX(50%) translateY(-100%)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:last-child{padding-left:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings{top:-1px;right:-1px;border-radius:0 3px 0 0;background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:hover{background-color:#495157}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:last-child{padding-left:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings{z-index:2;top:-1px;left:-1px;background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7);border-radius:0 0 3px 0;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:last-child{padding-right:1px}}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-trigger{cursor:move}}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting:not(.elementor-editor-element-trigger){display:none}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-add,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-duplicate,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay{right:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;left:-5px;top:0;height:100%}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:60px}@media (min-width:768px){.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-editor-active .elementor-widget.elementor-loading{opacity:.3}.elementor-editor-active .elementor-widget:not(.elementor-loading):not(.elementor-widget-menu-anchor){-webkit-transition:all .1s;-o-transition:all .1s;transition:all .1s}.elementor-editor-active .elementor-widget.elementor-element-editable,.elementor-editor-active .elementor-widget.elementor-widget-can-edit:hover{outline:1px solid #71d7f7}.elementor-editor-active .elementor-widget:not(:hover) .elementor-editor-element-settings,.elementor-editor-active .handle{display:none}.elementor-editor-active .elementor-sortable-helper{position:absolute;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-editor-active .elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-editor-active .elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-editor-active .elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-duration:.5s;animation-duration:.5s;opacity:.9}.elementor-section-placeholder{height:40px;-webkit-animation-name:a;animation-name:a}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:b;animation-name:b}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{background-color:hsla(0,0%,100%,.5);max-width:1140px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child){border:2px dashed #d5dadf}.elementor-add-section.elementor-dragging-on-child{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}@media (max-width:479px){.elementor-add-section{display:none}}.elementor-add-section-inner{text-align:center;margin-top:10px;padding:40px 0}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-button{color:#fff;background-image:none;font-size:13px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;line-height:1;text-transform:uppercase;height:40px;min-width:170px;padding:0 20px;border:none;border-radius:3px;cursor:pointer}.elementor-add-new-section .elementor-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#9b0a46}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-right:25px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:20px;top:20px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:right}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-element-empty,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-widget-empty{display:none}
assets/css/editor-preview.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @-webkit-keyframes placeholder-section {
3
  0% {
4
  height: 0;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @-webkit-keyframes placeholder-section {
3
  0% {
4
  height: 0;
assets/css/editor-preview.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @-webkit-keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes c{0%{opacity:0}to{opacity:1}}@keyframes c{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}#elementor .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}#elementor .elementor-editor-element-settings{word-break:normal}#elementor .gallery{opacity:1}html.elementor-html{margin-top:0!important}#elementor{position:relative}.elementor-editor-active .elementor-inner{margin-top:25px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element>.elementor-element-overlay{position:absolute;top:0;right:0;letter-spacing:0;z-index:3;pointer-events:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]+.elementor-element:before,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]:last-child:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;display:block}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay{left:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:c .75s;animation:c .75s}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-top-section>.elementor-container>.elementor-row{min-height:80px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section:first-child{margin-top:15px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings{position:absolute;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger.elementor-active~.elementor-editor-element-setting{margin-left:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger:not(.elementor-active)~.elementor-editor-element-setting{width:0;font-size:0;padding:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-remove:hover .fa{color:red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings{top:1px;left:50%;background-image:-webkit-gradient(linear,left top,left bottom,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(top,#41c9f4,#71d7f7);background-image:-o-linear-gradient(top,#41c9f4,#71d7f7);background-image:linear-gradient(180deg,#41c9f4,#71d7f7);border-radius:3px 3px 0 0;-webkit-transform:translateX(-50%) translateY(-100%);-ms-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:last-child{padding-right:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings{top:-1px;left:-1px;border-radius:0 0 3px 0;background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:hover{background-color:#495157}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:last-child{padding-right:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings{z-index:2;top:-1px;right:-1px;background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7);border-radius:0 0 0 3px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:last-child{padding-left:1px}}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-trigger{cursor:move}}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting:not(.elementor-editor-element-trigger){display:none}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-add,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-duplicate,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay{left:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;right:-5px;top:0;height:100%}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:60px}@media (min-width:768px){.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-editor-active .elementor-widget.elementor-loading{opacity:.3}.elementor-editor-active .elementor-widget:not(.elementor-loading):not(.elementor-widget-menu-anchor){-webkit-transition:all .1s;-o-transition:all .1s;transition:all .1s}.elementor-editor-active .elementor-widget.elementor-element-editable,.elementor-editor-active .elementor-widget.elementor-widget-can-edit:hover{outline:1px solid #71d7f7}.elementor-editor-active .elementor-widget:not(:hover) .elementor-editor-element-settings,.elementor-editor-active .handle{display:none}.elementor-editor-active .elementor-sortable-helper{position:absolute;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-editor-active .elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-editor-active .elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-editor-active .elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-duration:.5s;animation-duration:.5s;opacity:.9}.elementor-section-placeholder{height:40px;-webkit-animation-name:a;animation-name:a}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:b;animation-name:b}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{background-color:hsla(0,0%,100%,.5);max-width:1140px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child){border:2px dashed #d5dadf}.elementor-add-section.elementor-dragging-on-child{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}@media (max-width:479px){.elementor-add-section{display:none}}.elementor-add-section-inner{text-align:center;margin-top:10px;padding:40px 0}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-button{color:#fff;background-image:none;font-size:13px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;line-height:1;text-transform:uppercase;height:40px;min-width:170px;padding:0 20px;border:none;border-radius:3px;cursor:pointer}.elementor-add-new-section .elementor-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#9b0a46}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-left:25px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:20px;top:20px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:left}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-element-empty,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-widget-empty{display:none}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @-webkit-keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes a{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes b{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes c{0%{opacity:0}to{opacity:1}}@keyframes c{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}#elementor .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}#elementor .elementor-editor-element-settings{word-break:normal}#elementor .gallery{opacity:1}html.elementor-html{margin-top:0!important}#elementor{position:relative}.elementor-editor-active .elementor-inner{margin-top:25px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-editor-active .elementor.elementor-edit-mode .elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element>.elementor-element-overlay{position:absolute;top:0;right:0;letter-spacing:0;z-index:3;pointer-events:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]+.elementor-element:before,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=bottom]:last-child:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;display:block}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay{left:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:c .75s;animation:c .75s}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-top-section>.elementor-container>.elementor-row{min-height:80px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section:first-child{margin-top:15px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings{position:absolute;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger.elementor-active~.elementor-editor-element-setting{margin-left:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-trigger:not(.elementor-active)~.elementor-editor-element-setting{width:0;font-size:0;padding:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-settings .elementor-editor-element-remove:hover .fa{color:red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings{top:1px;left:50%;background-image:-webkit-gradient(linear,left top,left bottom,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(top,#41c9f4,#71d7f7);background-image:-o-linear-gradient(top,#41c9f4,#71d7f7);background-image:linear-gradient(180deg,#41c9f4,#71d7f7);border-radius:3px 3px 0 0;-webkit-transform:translateX(-50%) translateY(-100%);-ms-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-section-settings .elementor-editor-element-setting:last-child{padding-right:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings{top:-1px;left:-1px;border-radius:0 0 3px 0;background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:hover{background-color:#495157}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child{padding-left:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-column-settings .elementor-editor-element-setting:last-child{padding-right:1px}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings{z-index:2;top:-1px;right:-1px;background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7);border-radius:0 0 0 3px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child{padding-right:1px}.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:first-child:not(.elementor-active),.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-widget-settings .elementor-editor-element-setting:last-child{padding-left:1px}}@media (min-width:1025px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-trigger{cursor:move}}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-editor-element-setting:not(.elementor-editor-element-trigger){display:none}}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-add,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-editor-column-settings .elementor-editor-element-duplicate,.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid red}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay{left:0;bottom:0}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;right:-5px;top:0;height:100%}.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-e,.elementor-editor-active .elementor.elementor-edit-mode .elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:60px}@media (min-width:768px){.elementor-editor-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-editor-active .elementor-widget.elementor-loading{opacity:.3}.elementor-editor-active .elementor-widget:not(.elementor-loading):not(.elementor-widget-menu-anchor){-webkit-transition:all .1s;-o-transition:all .1s;transition:all .1s}.elementor-editor-active .elementor-widget.elementor-element-editable,.elementor-editor-active .elementor-widget.elementor-widget-can-edit:hover{outline:1px solid #71d7f7}.elementor-editor-active .elementor-widget:not(:hover) .elementor-editor-element-settings,.elementor-editor-active .handle{display:none}.elementor-editor-active .elementor-sortable-helper{position:absolute;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-editor-active .elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-editor-active .elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-editor-active .elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-duration:.5s;animation-duration:.5s;opacity:.9}.elementor-section-placeholder{height:40px;-webkit-animation-name:a;animation-name:a}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:b;animation-name:b}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:b .5s;animation:b .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{background-color:hsla(0,0%,100%,.5);max-width:1140px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child){border:2px dashed #d5dadf}.elementor-add-section.elementor-dragging-on-child{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}@media (max-width:479px){.elementor-add-section{display:none}}.elementor-add-section-inner{text-align:center;margin-top:10px;padding:40px 0}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-button{color:#fff;background-image:none;font-size:13px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;line-height:1;text-transform:uppercase;height:40px;min-width:170px;padding:0 20px;border:none;border-radius:3px;cursor:pointer}.elementor-add-new-section .elementor-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#9b0a46}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-left:25px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:20px;top:20px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:left}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-element-empty,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-widget-empty{display:none}
assets/css/editor-rtl.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
@@ -2078,7 +2078,8 @@ body.elementor-editor-preview #elementor-mode-switcher {
2078
  align-items: center;
2079
  border: 1px solid #d5dadf;
2080
  padding: 10px 15px;
2081
- margin-bottom: 10px; }
 
2082
  .elementor-revision-item:hover:not(.elementor-revision-current-preview) {
2083
  background-color: rgba(230, 233, 236, 0.3); }
2084
  .elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete {
@@ -2102,9 +2103,6 @@ body.elementor-editor-preview #elementor-mode-switcher {
2102
  .elementor-revision-item__tools-delete {
2103
  cursor: pointer; }
2104
 
2105
- .elementor-revision-date {
2106
- font-size: 11px; }
2107
-
2108
  .elementor-revision-meta {
2109
  padding-top: 5px;
2110
  font-size: 10px;
@@ -2113,6 +2111,49 @@ body.elementor-editor-preview #elementor-mode-switcher {
2113
  .elementor-revision-current-preview {
2114
  background-color: #e6e9ec; }
2115
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2116
  #elementor-preview {
2117
  background-color: #333;
2118
  position: absolute;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
2078
  align-items: center;
2079
  border: 1px solid #d5dadf;
2080
  padding: 10px 15px;
2081
+ margin-bottom: 10px;
2082
+ font-size: 11px; }
2083
  .elementor-revision-item:hover:not(.elementor-revision-current-preview) {
2084
  background-color: rgba(230, 233, 236, 0.3); }
2085
  .elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete {
2103
  .elementor-revision-item__tools-delete {
2104
  cursor: pointer; }
2105
 
 
 
 
2106
  .elementor-revision-meta {
2107
  padding-top: 5px;
2108
  font-size: 10px;
2111
  .elementor-revision-current-preview {
2112
  background-color: #e6e9ec; }
2113
 
2114
+ .elementor-history-item {
2115
+ display: -webkit-box;
2116
+ display: -webkit-flex;
2117
+ display: -ms-flexbox;
2118
+ display: flex;
2119
+ -webkit-box-align: center;
2120
+ -webkit-align-items: center;
2121
+ -ms-flex-align: center;
2122
+ align-items: center;
2123
+ border: 1px solid #d5dadf;
2124
+ padding: 10px 15px;
2125
+ margin-bottom: 10px;
2126
+ font-size: 11px;
2127
+ line-height: 1.4;
2128
+ cursor: pointer; }
2129
+ .elementor-history-item:hover {
2130
+ background-color: rgba(230, 233, 236, 0.3); }
2131
+ .elementor-history-item:hover .elementor-history-item__icon .fa:before {
2132
+ content: '\f1da'; }
2133
+ .elementor-history-item-applied {
2134
+ color: #a4afb7; }
2135
+ .elementor-history-item-current {
2136
+ background: #e6e9ec;
2137
+ cursor: inherit; }
2138
+ .elementor-history-item-current .elementor-history-item__icon .fa:before, .elementor-history-item-current:hover .elementor-history-item__icon .fa:before {
2139
+ content: '\f00c'; }
2140
+ .elementor-history-item__details {
2141
+ width: 95%; }
2142
+ .elementor-history-item__title {
2143
+ font-weight: bold; }
2144
+ .elementor-history-item__subtitle, .elementor-history-item__action {
2145
+ font-weight: lighter; }
2146
+ .elementor-history-item__action {
2147
+ font-style: italic;
2148
+ text-decoration: underline; }
2149
+ .elementor-history-item .__icon {
2150
+ float: left; }
2151
+
2152
+ .elementor-history-revisions-message {
2153
+ font-size: 11px;
2154
+ text-align: center;
2155
+ padding: 5px 0; }
2156
+
2157
  #elementor-preview {
2158
  background-color: #333;
2159
  position: absolute;
assets/css/editor-rtl.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
- @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:4}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0 none}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body a{color:#71d7f7}body a:hover{color:#9b0a46}body.elementor-editor-active #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-active #elementor-preview{right:280px}}@media (min-width:1440px){body.elementor-editor-active #elementor-preview{right:300px}}body.elementor-editor-active #elementor-panel{right:0}body.elementor-editor-active #elementor-mode-switcher-preview .fa:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-preview #elementor-panel{right:-280px}}@media (min-width:1440px){body.elementor-editor-preview #elementor-panel{right:-300px}}body.elementor-editor-preview #elementor-panel>.ui-resizable-e,body.elementor-editor-preview #elementor-panel>.ui-resizable-w{display:none}body.elementor-editor-preview #elementor-mode-switcher-preview .fa:before{content:""}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:right .5s,width .5s;-o-transition:right .5s,width .5s;transition:right .5s,width .5s}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:4}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:100px}.elementor-loader-wrapper .elementor-loader{height:100px;position:relative}.elementor-loader-wrapper .elementor-loader-box{background-color:#495157;position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}.elementor-loader-wrapper .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-wrapper .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.elementor-loading-title{color:#495157;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;font-size:10px;-webkit-animation:b 1.5s linear infinite;animation:b 1.5s linear infinite}@-webkit-keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}@keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}#elementor-preview-loading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-widget-header{font-size:13px;color:#6d7882}#elementor-saved-popup .dialog-message{height:155px;width:155px;background-color:#fff;border-radius:10px}#elementor-saved-popup .elementor-dialog-message{padding:15px}#elementor-saved-popup .elementor-dialog-message .fa{font-size:85px;padding:10px}#elementor-saved-popup .elementor-dialog-message-text{text-transform:uppercase}.elementor-button{outline:none;border:none;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.5s;-o-transition-duration:.5s;transition-duration:.5s}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button{color:#fff}.elementor-button.elementor-button-success[disabled],.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]),.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-go-pro{color:#fff;background-color:#fcb92c}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;text-transform:uppercase;padding:6.5px 15px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button i{margin-left:10px}.elementor-input-style,input,select,textarea{border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#495157;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}.elementor-input-style,input,textarea{padding:5px 8px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{border:1px solid #d5dadf;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-transition:border-color .05s ease-in-out;-o-transition:.05s border-color ease-in-out;transition:border-color .05s ease-in-out}input[type=checkbox]:focus,input[type=radio]:focus{border-color:#a4afb7}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{height:27px}.ps-container{-ms-touch-action:none;overflow:hidden!important}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block}.ps-container.ps-in-scrolling{pointer-events:none}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;bottom:3px;height:8px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;bottom:0;height:8px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;right:3px;width:8px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;right:0;width:8px}.ps-container:hover.ps-in-scrolling{pointer-events:none}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:3;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:3;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#39b54a;border-left-color:#39b54a;border-radius:50%;-webkit-animation:c .4s linear infinite;animation:c .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:5}.elementor-panel{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#9b0a46;-webkit-transition:none;-o-transition:none;transition:none}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel#elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel>.ui-resizable-e,.elementor-panel>.ui-resizable-w{position:absolute;top:0;height:100%;width:7px;left:-5px;cursor:ew-resize}.elementor-panel #elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}.elementor-panel .elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.elementor-panel #elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel .elementor-panel-hide{display:none}.elementor-panel .elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel .elementor-panel-heading:not(.elementor-open) .elementor-panel-heading-toggle .fa:before{content:""}.elementor-panel .elementor-panel-heading.elementor-open .elementor-panel-heading-toggle .fa:before{content:"\f0d7"}.elementor-panel .elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel .elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-control-title{font-size:12px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .select2-container{width:100%!important}.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.elementor-panel .select2-container.select2-container--focus .select2-selection--multiple,.elementor-panel .select2-container.select2-container--focus .select2-selection--single,.elementor-panel .select2-container.select2-container--open .select2-selection--multiple,.elementor-panel .select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;border-radius:0}.elementor-panel .select2-selection--single{height:27px}.elementor-panel .select2-selection__rendered{line-height:27px}.elementor-panel .select2-selection__arrow{height:27px;top:0}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel .elementor-panel-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:right}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box{padding:30px 20px;text-align:center}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-icon{font-size:52px;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-message{margin-top:20px;line-height:1.4;font-size:11px}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link{background-color:#fcb92c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link:hover{background-color:#fdca5e}.elementor-panel #elementor-panel-get-pro-elements .elementor-panel-nerd-box-message{text-transform:uppercase}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#9b0a46;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:66px}.elementor-panel #elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}.elementor-panel #elementor-panel-elements{overflow:hidden;padding:0 5px}.elementor-panel .elementor-element-wrapper{float:right;width:50%;padding:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element{border-radius:3px;background-color:#fff;cursor:move}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#9b0a46}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px;color:#556068}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;color:#556068;display:table-cell;vertical-align:middle;height:40px}.elementor-panel #elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}.elementor-panel #elementor-panel-elements-search-wrapper i{position:absolute;left:0;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:left 1s;-o-transition:left 1s;transition:left 1s}.elementor-panel #elementor-panel-elements-search-input{font-size:11px;border-radius:0;padding:10px 0 10px 27px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:hsla(0,0%,100%,.7);padding-left:15px}.elementor-panel #elementor-panel-elements-search-input:focus+i{left:15px}.elementor-panel .elementor-panel-category:first-child .panel-elements-category-title{padding-top:14px}.elementor-panel .panel-elements-category-title-basic{display:none}.elementor-panel .panel-elements-category-title{padding:12px 15px;text-transform:uppercase;font-size:11px}.elementor-panel .panel-elements-category-items{overflow:hidden;padding:0 5px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:right}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:left}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px;text-transform:uppercase}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item{display:inline-block}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-left:13px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-left:19px}}.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:4px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:6px}}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item .elementor-panel-heading:not(.elementor-open)+.elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-page-menu{-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:50px;cursor:pointer;margin-bottom:1px}.elementor-panel .elementor-panel-menu-item:not(:hover){background-color:#fff}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:55px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:FontAwesome;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\f040"}.elementor-panel .elementor-tab-control-style a:before{content:"\f042"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\f013"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\f10a"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\f0db"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\f2d2"}.elementor-panel .elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-panel .elementor-control.elementor-control-separator-default:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:#e6e9ec}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp{margin-top:15px}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp:before{background-color:transparent}.elementor-panel .elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-panel .elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:3px;width:100%;top:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:3px;width:100%;bottom:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after+.elementor-control-type-tabs{padding-top:15px}.elementor-panel .elementor-control.elementor-control-deprecated,.elementor-panel .elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-panel .elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-hidden-control{display:none}.elementor-panel .elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-panel .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-mobile) .elementor-panel .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-tablet) .elementor-panel .elementor-control.elementor-control-responsive-tablet{display:none}.elementor-panel .elementor-control-wp{line-height:1.5}.elementor-panel .elementor-control-wp p{margin:15px 0}.elementor-panel .elementor-control-field{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:10px}.elementor-panel .elementor-label-block.elementor-control-hidden-label>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:45%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:55%}.elementor-panel .elementor-control-field-description{margin-top:10px}.elementor-panel .elementor-required{color:#b01b1b}.elementor-panel .elementor-choices{display:table;width:100%;height:27px;background-color:#a4afb7;text-align:center;border-spacing:1px;border-radius:3px}.elementor-panel .elementor-choices input{display:none}.elementor-panel .elementor-choices input:checked+.elementor-choices-label{color:#fff}.elementor-panel .elementor-choices input:not(:checked)+.elementor-choices-label{background-color:#fff;color:#a4afb7}.elementor-panel .elementor-choices .elementor-choices-label{display:table-cell;vertical-align:middle;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer}.elementor-panel .elementor-slider{display:inline-block;margin-top:10px;height:4px;background-color:#a4afb7;border-radius:5px;position:relative;width:67%}.elementor-panel .elementor-slider .ui-slider-handle{height:16px;width:16px;background-color:#fff;display:inline-block;top:50%;-webkit-transform:translateY(-50%) translateX(-8px);-ms-transform:translateY(-50%) translateX(-8px);transform:translateY(-50%) translateX(-8px);position:absolute;-webkit-box-shadow:1px 1px 6px rgba(0,0,0,.3);box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:50%;cursor:pointer}.elementor-panel .elementor-slider-input{width:33%;float:left}.elementor-panel .elementor-slider-input input{width:80%;float:left}.elementor-panel .elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-panel .elementor-units-choices input{display:none}.elementor-panel .elementor-units-choices input:not(:checked)+label{color:#c2cbd2}.elementor-panel .elementor-units-choices input:checked+label{text-decoration:underline}.elementor-panel .elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-panel .elementor-control-responsive-switchers{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 5px}.elementor-panel .elementor-responsive-switcher{display:inline-block;border-radius:50%;height:18px;width:18px;background-color:#a4afb7;cursor:pointer;position:relative;margin-right:5px;color:#fff;font-size:8px;text-align:center;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}.elementor-panel .elementor-responsive-switcher:hover{background-color:#c2cbd2}.elementor-panel .elementor-responsive-switcher i{line-height:18px}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher{background:#c2cbd2}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher:not(.elementor-responsive-switcher-desktop){display:none}.elementor-device-mobile .elementor-panel .elementor-responsive-switcher-mobile,.elementor-device-tablet .elementor-panel .elementor-responsive-switcher-tablet{background-color:#71d7f7}.elementor-panel .elementor-update-preview{margin:15px 15px 0;background-color:#e6e9ec;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-panel .elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-panel .elementor-control-align .elementor-choices,.elementor-panel .elementor-control-position .elementor-choices,.elementor-panel .elementor-control-text_align .elementor-choices{direction:ltr}.elementor-panel .elementor-control-type-media .elementor-control-media{padding:7px;border:1px solid;height:150px}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover){border-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover) .elementor-control-media-upload-button{background-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:hover{border-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media:hover .elementor-control-media-upload-button{background-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media.media-empty .elementor-control-media-image-area,.elementor-panel .elementor-control-type-media .elementor-control-media:not(.media-empty) .elementor-control-media-upload-button{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media>*{height:100%;cursor:pointer;position:relative}.elementor-panel .elementor-control-type-media .fa-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#fff;font-size:20px}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:not(:hover) .elementor-control-media-delete{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:hover .elementor-control-media-image{opacity:.5}.elementor-panel .elementor-control-type-media .elementor-control-media-delete{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:9.5px;font-size:11px;color:#fff;background-color:#a4afb7;text-transform:uppercase}.elementor-panel .elementor-control-type-media .elementor-control-media-image{height:100%;background-size:cover}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-panel .elementor-control-type-dimensions li{float:left;width:20%}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-panel .elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#a4afb7;height:27px}.elementor-panel .elementor-control-type-dimensions li input{border-left:none;border-radius:0;padding:4px 0}.elementor-panel .elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #a4afb7;border-left:none;background-color:#fff;padding:0;outline:none;border-radius:0 3px 3px 0;cursor:pointer}.elementor-panel .elementor-control-type-dimensions li:first-child input{border-left:1px solid #a4afb7;border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-panel .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-external-show input{padding-right:46px}.elementor-panel .elementor-control-type-url .elementor-control-input-wrapper{position:relative}.elementor-panel .elementor-control-type-url .elementor-control-url-more{position:absolute;top:0;right:0;height:26px;width:40px;border-left:1px solid;cursor:pointer;font-size:10px;border-radius:0 3px 3px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-panel .elementor-control-type-url .elementor-control-url-more i{font-size:13px}.elementor-panel .elementor-control-type-url .elementor-control-url-more-input,.elementor-panel .elementor-control-type-url .elementor-control-url-more-input:not(:checked)+.elementor-control-url-more-options{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-more-options{padding-top:10px}.elementor-panel .elementor-control-type-url .elementor-control-url-option{padding:5px;font-size:12px}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url],.elementor-panel .elementor-control-type-url input[type=url]{direction:ltr}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:not(:focus)+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:focus+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:focus+.elementor-control-url-more{border-color:#a4afb7}.elementor-panel .elementor-control-type-section{margin-top:10px;padding:0}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section){padding-top:15px}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:70%}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{height:27px;width:30%}.elementor-panel .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-panel .elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec;border-radius:3px}.elementor-panel .elementor-control-type-wysiwyg #insert-media-button{margin-top:7px;height:auto;line-height:1;font-size:10px;padding:3px 7px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-panel .elementor-control-type-wysiwyg .wp-switch-editor{border:none;color:#6d7882;font-size:10px;padding:3px 9px 4px;border-radius:3px 3px 0 0}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-html,.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-panel .elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-panel .elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-panel .elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-panel .elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-panel .elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-panel .elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-panel .elementor-control-type-icon .select2-selection__rendered .fa{margin-right:3px}.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnails{overflow:hidden;margin-top:20px;cursor:pointer}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:40px;height:40px;background-size:cover;background-position:50% 50%;float:right;margin-bottom:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail:not(:nth-child(5n)){margin-left:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-add{width:100%;height:30px;color:#fff;background-color:#a4afb7;margin-top:10px;text-transform:uppercase}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-clear{color:#b01b1b;cursor:pointer}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset{border:1px solid #e6e9ec;padding:3px;border-radius:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset){display:inline-block;cursor:pointer;height:50px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset) svg{height:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset svg{display:block;width:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset{padding:10px 0 0 2px;font-size:11px;cursor:pointer;color:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset i{margin-left:8px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{color:#495157;font-weight:700;padding:13.5px 20px;position:relative}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{content:"";position:absolute;left:0;right:0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{top:0;background-color:#e6e9ec;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after{bottom:0;height:1px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title{margin:15px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before{height:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input{display:none}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset{border:1px solid #a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:70px;float:right}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:70px}.elementor-panel .elementor-control-type-code{padding:0 10px 15px}.elementor-panel .elementor-control-type-wp_widget .widget-inside{display:block}.elementor-panel .elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-panel .elementor-control-type-tabs{font-size:.8em;color:#a4afb7;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:30px;border-top:1px solid #a4afb7;border-bottom:1px solid #a4afb7;border-left:1px solid #a4afb7;cursor:pointer}.elementor-panel .elementor-control-type-tab:first-child{border-right:1px solid #a4afb7;border-top-right-radius:3px;border-bottom-right-radius:3px}.elementor-panel .elementor-control-type-tab:last-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.elementor-panel .elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;color:#fff}.elementor-panel .elementor-tab-close{display:none!important}.elementor-panel .elementor-control-type-repeater,.elementor-panel .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding:0 10px 15px}.elementor-panel .elementor-control-type-repeater .elementor-control:before,.elementor-panel .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-panel .elementor-control-type-repeater .repeater-fields{margin:10px 0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top-width:0;padding-top:15px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls .wp-picker-container.wp-picker-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);border-width:0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .fa{margin-left:5px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding:10px}.elementor-panel .elementor-control-type-textarea textarea{display:block}.elementor-panel .elementor-control-type-box_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-box_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-text_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-text_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-title{width:70%}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-input-wrapper{width:30%}.elementor-panel .elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-panel .elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;width:49px;height:20px;background-color:#fff;border-radius:18px;cursor:pointer}.elementor-panel .elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-panel .elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after,.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-panel .elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:30px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-order input{display:none}.elementor-panel .elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-panel .elementor-control-type-order select{border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-panel .elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-panel .elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-panel .elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-panel .elementor-control-type-hidden{display:none!important}.elementor-panel .wp-picker-container.wp-picker-active{position:absolute;z-index:1;top:0;left:0;background-color:#fff;border:solid #fff;border-width:0 17px 0 12px;padding-top:10px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4)}.elementor-panel .wp-picker-container.wp-picker-active .wp-color-result{float:right}.elementor-panel .wp-picker-container.wp-picker-active .wp-picker-input-wrap{padding-left:10px;float:left}.elementor-panel .wp-picker-container *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-container .iris-picker{border:none}.elementor-panel .wp-color-result{margin:0;width:48px;height:25px;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;padding:0;border-radius:3px;border:1px solid #d5dadf}.elementor-panel .wp-color-result,.elementor-panel .wp-color-result:focus{-webkit-box-shadow:inset 0 0 0 3px #fff;box-shadow:inset 0 0 0 3px #fff}.elementor-panel .wp-color-result.wp-picker-open:after,.elementor-panel .wp-color-result:after{content:none}.elementor-panel .wp-color-result:hover{border:1px solid #a4afb7}.elementor-panel .wp-color-result:active,.elementor-panel .wp-color-result:focus{outline:0}.elementor-panel .wp-picker-clear.button,.elementor-panel .wp-picker-default.button{height:26px;width:48px;padding:0;background-color:#d5dadf;border-radius:0 3px 3px 0;margin:0}.elementor-panel .wp-color-picker{float:left;width:100px;max-width:100px;border-radius:3px 0 0 3px;line-height:1}.elementor-panel .wp-picker-holder *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-open~.wp-picker-holder{clear:both;margin-bottom:15px}.elementor-panel .elementor-control .wp-picker-container:not(.wp-picker-active){float:left}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active{-webkit-transform:translateY(6px);-ms-transform:translateY(6px);transform:translateY(6px)}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active .wp-color-result{margin-right:3px}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:2}.elementor-panel .elementor-panel-footer-sub-menu{border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item[data-device-mode=mobile-landscape] .fa-mobile{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:right;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:right;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:right;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-save{width:90px;padding:0 10px}.elementor-panel #elementor-panel-footer-save .elementor-button{font-size:11px;text-transform:uppercase;width:100%;height:26px;background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-footer-publish .elementor-icon,.elementor-panel #elementor-panel-footer-publish .elementor-title{color:#39b54a}.elementor-panel #elementor-panel-footer-discard .elementor-icon,.elementor-panel #elementor-panel-footer-discard .elementor-title{color:#b01b1b}#elementor-mode-switcher{position:absolute;right:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:-3px 1px 5px rgba(0,0,0,.1);box-shadow:-3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover,body.elementor-editor-preview #elementor-mode-switcher{background-color:#9b0a46;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .fa{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-delete,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner,.elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete{display:none}.elementor-revision-item__gravatar{border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-right:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-item__tools-delete{cursor:pointer}.elementor-revision-date{font-size:11px}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-preview{background-color:#333;position:absolute;height:100%;top:0;right:0;border:0}.elementor-device-desktop #elementor-preview{overflow-y:hidden}body:not(.elementor-device-desktop) #elementor-preview{overflow-y:auto}#elementor-preview-responsive-wrapper{position:absolute;top:0;bottom:0;left:0;right:0;-webkit-transition:all .5s ease 0s;-o-transition:all .5s ease 0s;transition:all .5s ease 0s}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%}.elementor-device-tablet #elementor-preview-responsive-wrapper{width:768px;height:1025px;padding:40px 10px 70px}.elementor-device-mobile #elementor-preview-responsive-wrapper{width:360px;height:640px;padding:40px 10px 70px}body:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{border-radius:30px;background-color:#111;margin:30px auto 80px;-webkit-box-sizing:content-box;box-sizing:content-box}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:5}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:5px 8px 4px;text-align:center;border-radius:3px}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}#elementor-introduction .dialog-widget-header{padding:40px 0 0}#elementor-introduction .dialog-widget-content{width:700px;max-width:100%}#elementor-introduction .elementor-video-wrapper{padding-bottom:62.4%}#elementor-introduction .dialog-message{margin-top:40px}#elementor-introduction-title{color:#9b0a46;font-size:27px;font-weight:700}#elementor-introduction-subtitle{margin-top:12px;font-size:16px;color:#a4afb7}#elementor-template-library-modal .dialog-widget-content{width:990px;background-color:#f1f3f5}#elementor-template-library-modal .dialog-widget-header{padding:0;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .dialog-message{height:630px;max-height:85vh;overflow:auto;padding:15px}#elementor-template-library-modal a,#elementor-template-library-modal a:hover{color:inherit}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#9b0a46}#elementor-template-library-modal .elementor-button{text-transform:uppercase}#elementor-template-library-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}#elementor-template-library-header-logo-area{text-align:right;padding-right:15px}#elementor-template-library-header-logo-area>*{float:right}#elementor-template-library-header-logo-area>*>*{vertical-align:middle}#elementor-template-library-header-logo{font-size:15px;text-transform:uppercase;color:#495157;font-weight:700;cursor:pointer}#elementor-template-library-header-logo i{padding-left:10px;color:#9b0a46;font-size:20px}#elementor-template-library-header-menu-area{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-template-library-header-menu{text-align:center}.elementor-template-library-menu-item{display:inline-block;padding:17px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}#elementor-template-library-header-items-area{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-template-library-header-item{position:relative;border-right:1px solid #e6e9ec;height:50px;-webkit-box-sizing:content-box;box-sizing:content-box;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-header-item:not(:hover){color:#a4afb7}.elementor-template-library-header-item>i{font-size:18px}#elementor-template-library-header-close-modal,#elementor-template-library-header-save{width:56px}#elementor-template-library-header-close-modal,#elementor-template-library-header-preview-insert-wrapper,#elementor-template-library-header-save{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px}#elementor-template-library-header-preview-back{padding:16.5px 0 15px 16.5px;border-left:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-left:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-loading .elementor-loading-title{color:#a4afb7}#elementor-template-library-loading .elementor-loader-box{background-color:#d5dadf}#elementor-template-library-templates-container{overflow:hidden}#elementor-template-library-templates-container[data-template-source=local]{-webkit-box-shadow:1px 1px 5px rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.1);margin:15px}#elementor-template-library-templates-container:not([data-template-source=remote])+#elementor-template-library-footer-banner{display:none}.elementor-template-library-template-remote{float:right;width:25%;padding:0 15px;margin-top:15px}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body{position:relative}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{position:absolute;content:"pro";text-transform:uppercase;top:5px;left:5px;background-color:#9b0a46;color:#d5dadf;padding:1px 4px;font-size:9px;border-radius:2px}.elementor-template-library-template-remote .elementor-template-library-template-body{height:250px;border:3px solid #fff;position:relative;-webkit-box-shadow:0 1px 6px rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.2)}.elementor-template-library-template-remote .elementor-template-library-template-body:not(:hover) .elementor-template-library-template-controls{opacity:0}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;background-size:cover;background-position-x:50%}.elementor-template-library-template-remote .elementor-template-library-template-controls{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.elementor-template-library-template-remote .elementor-template-library-template-action{font-size:11px;width:150px;padding:11px}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:relative;height:180px;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-template-library-template-remote .elementor-template-library-template-name{margin:13px 0 10px;font-size:12px;text-align:center;color:#6d7882}.elementor-template-library-template-local{background-color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid #d5dadf;height:50px;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-controls{visibility:hidden}.elementor-template-library-template-local>*{text-align:start}.elementor-template-library-template-local .elementor-template-library-template-icon{text-align:center;width:6%}.elementor-template-library-template-local .elementor-template-library-template-name{font-size:13px;font-weight:500;width:35%}.elementor-template-library-template-local .elementor-template-library-template-type{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls{direction:ltr;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-template-library-template-local .elementor-template-library-template-controls>*{direction:rtl}.elementor-template-library-template-local .elementor-template-library-template-controls>div{display:inline-block;margin-right:15px;cursor:pointer;font-weight:500;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover){color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-right:6px}.elementor-template-library-template-local .elementor-template-library-template-delete:hover{color:#b01b1b}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 20px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{width:1440px;height:150%;-webkit-transform:scale(.666) translateX(25%) translateY(-25%);-ms-transform:scale(.666) translateX(25%) translateY(-25%);transform:scale(.666) translateX(25%) translateY(-25%)}.elementor-template-library-blank-title{font-size:30px;margin-top:55px}.elementor-template-library-blank-excerpt{font-size:18px;color:#a4afb7;margin-top:20px;font-weight:300}#elementor-template-library-save-template-form{margin-top:55px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:60px;font-size:18px}#elementor-template-library-save-template-name{width:460px;background-color:#fff;font-weight:300;color:#a4afb7;padding-right:25px;border-radius:0 3px 3px 0;border:none}#elementor-template-library-save-template-name:focus{border:1px solid #e6e9ec}#elementor-template-library-save-template-submit{width:150px;border-radius:3px 0 0 3px;font-weight:500}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}.elementor-template-library-blank-footer{position:absolute;bottom:90px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-size:13px;font-style:italic}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty-icon{font-size:96px;margin-top:40px;color:#d5dadf}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
+ @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:4}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0 none}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body a{color:#71d7f7}body a:hover{color:#9b0a46}body.elementor-editor-active #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-active #elementor-preview{right:280px}}@media (min-width:1440px){body.elementor-editor-active #elementor-preview{right:300px}}body.elementor-editor-active #elementor-panel{right:0}body.elementor-editor-active #elementor-mode-switcher-preview .fa:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-preview #elementor-panel{right:-280px}}@media (min-width:1440px){body.elementor-editor-preview #elementor-panel{right:-300px}}body.elementor-editor-preview #elementor-panel>.ui-resizable-e,body.elementor-editor-preview #elementor-panel>.ui-resizable-w{display:none}body.elementor-editor-preview #elementor-mode-switcher-preview .fa:before{content:""}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:right .5s,width .5s;-o-transition:right .5s,width .5s;transition:right .5s,width .5s}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:4}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:100px}.elementor-loader-wrapper .elementor-loader{height:100px;position:relative}.elementor-loader-wrapper .elementor-loader-box{background-color:#495157;position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}.elementor-loader-wrapper .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-wrapper .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.elementor-loading-title{color:#495157;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;font-size:10px;-webkit-animation:b 1.5s linear infinite;animation:b 1.5s linear infinite}@-webkit-keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}@keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}#elementor-preview-loading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-widget-header{font-size:13px;color:#6d7882}#elementor-saved-popup .dialog-message{height:155px;width:155px;background-color:#fff;border-radius:10px}#elementor-saved-popup .elementor-dialog-message{padding:15px}#elementor-saved-popup .elementor-dialog-message .fa{font-size:85px;padding:10px}#elementor-saved-popup .elementor-dialog-message-text{text-transform:uppercase}.elementor-button{outline:none;border:none;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.5s;-o-transition-duration:.5s;transition-duration:.5s}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button{color:#fff}.elementor-button.elementor-button-success[disabled],.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]),.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-go-pro{color:#fff;background-color:#fcb92c}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;text-transform:uppercase;padding:6.5px 15px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button i{margin-left:10px}.elementor-input-style,input,select,textarea{border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#495157;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}.elementor-input-style,input,textarea{padding:5px 8px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{border:1px solid #d5dadf;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-transition:border-color .05s ease-in-out;-o-transition:.05s border-color ease-in-out;transition:border-color .05s ease-in-out}input[type=checkbox]:focus,input[type=radio]:focus{border-color:#a4afb7}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{height:27px}.ps-container{-ms-touch-action:none;overflow:hidden!important}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block}.ps-container.ps-in-scrolling{pointer-events:none}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;bottom:3px;height:8px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;bottom:0;height:8px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;right:3px;width:8px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;right:0;width:8px}.ps-container:hover.ps-in-scrolling{pointer-events:none}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:3;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:3;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#39b54a;border-left-color:#39b54a;border-radius:50%;-webkit-animation:c .4s linear infinite;animation:c .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:5}.elementor-panel{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#9b0a46;-webkit-transition:none;-o-transition:none;transition:none}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel#elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel>.ui-resizable-e,.elementor-panel>.ui-resizable-w{position:absolute;top:0;height:100%;width:7px;left:-5px;cursor:ew-resize}.elementor-panel #elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}.elementor-panel .elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.elementor-panel #elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel .elementor-panel-hide{display:none}.elementor-panel .elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel .elementor-panel-heading:not(.elementor-open) .elementor-panel-heading-toggle .fa:before{content:""}.elementor-panel .elementor-panel-heading.elementor-open .elementor-panel-heading-toggle .fa:before{content:"\f0d7"}.elementor-panel .elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel .elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-control-title{font-size:12px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .select2-container{width:100%!important}.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.elementor-panel .select2-container.select2-container--focus .select2-selection--multiple,.elementor-panel .select2-container.select2-container--focus .select2-selection--single,.elementor-panel .select2-container.select2-container--open .select2-selection--multiple,.elementor-panel .select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;border-radius:0}.elementor-panel .select2-selection--single{height:27px}.elementor-panel .select2-selection__rendered{line-height:27px}.elementor-panel .select2-selection__arrow{height:27px;top:0}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel .elementor-panel-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:right}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box{padding:30px 20px;text-align:center}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-icon{font-size:52px;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-message{margin-top:20px;line-height:1.4;font-size:11px}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link{background-color:#fcb92c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link:hover{background-color:#fdca5e}.elementor-panel #elementor-panel-get-pro-elements .elementor-panel-nerd-box-message{text-transform:uppercase}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#9b0a46;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:66px}.elementor-panel #elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}.elementor-panel #elementor-panel-elements{overflow:hidden;padding:0 5px}.elementor-panel .elementor-element-wrapper{float:right;width:50%;padding:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element{border-radius:3px;background-color:#fff;cursor:move}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#9b0a46}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px;color:#556068}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;color:#556068;display:table-cell;vertical-align:middle;height:40px}.elementor-panel #elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}.elementor-panel #elementor-panel-elements-search-wrapper i{position:absolute;left:0;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:left 1s;-o-transition:left 1s;transition:left 1s}.elementor-panel #elementor-panel-elements-search-input{font-size:11px;border-radius:0;padding:10px 0 10px 27px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:hsla(0,0%,100%,.7);padding-left:15px}.elementor-panel #elementor-panel-elements-search-input:focus+i{left:15px}.elementor-panel .elementor-panel-category:first-child .panel-elements-category-title{padding-top:14px}.elementor-panel .panel-elements-category-title-basic{display:none}.elementor-panel .panel-elements-category-title{padding:12px 15px;text-transform:uppercase;font-size:11px}.elementor-panel .panel-elements-category-items{overflow:hidden;padding:0 5px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:right}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:left}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px;text-transform:uppercase}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item{display:inline-block}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-left:13px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-left:19px}}.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:4px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:6px}}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item .elementor-panel-heading:not(.elementor-open)+.elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-page-menu{-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:50px;cursor:pointer;margin-bottom:1px}.elementor-panel .elementor-panel-menu-item:not(:hover){background-color:#fff}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:55px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:FontAwesome;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\f040"}.elementor-panel .elementor-tab-control-style a:before{content:"\f042"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\f013"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\f10a"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\f0db"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\f2d2"}.elementor-panel .elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-panel .elementor-control.elementor-control-separator-default:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:#e6e9ec}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp{margin-top:15px}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp:before{background-color:transparent}.elementor-panel .elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-panel .elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:3px;width:100%;top:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:3px;width:100%;bottom:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after+.elementor-control-type-tabs{padding-top:15px}.elementor-panel .elementor-control.elementor-control-deprecated,.elementor-panel .elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-panel .elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-hidden-control{display:none}.elementor-panel .elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-panel .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-mobile) .elementor-panel .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-tablet) .elementor-panel .elementor-control.elementor-control-responsive-tablet{display:none}.elementor-panel .elementor-control-wp{line-height:1.5}.elementor-panel .elementor-control-wp p{margin:15px 0}.elementor-panel .elementor-control-field{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:10px}.elementor-panel .elementor-label-block.elementor-control-hidden-label>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:45%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:55%}.elementor-panel .elementor-control-field-description{margin-top:10px}.elementor-panel .elementor-required{color:#b01b1b}.elementor-panel .elementor-choices{display:table;width:100%;height:27px;background-color:#a4afb7;text-align:center;border-spacing:1px;border-radius:3px}.elementor-panel .elementor-choices input{display:none}.elementor-panel .elementor-choices input:checked+.elementor-choices-label{color:#fff}.elementor-panel .elementor-choices input:not(:checked)+.elementor-choices-label{background-color:#fff;color:#a4afb7}.elementor-panel .elementor-choices .elementor-choices-label{display:table-cell;vertical-align:middle;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer}.elementor-panel .elementor-slider{display:inline-block;margin-top:10px;height:4px;background-color:#a4afb7;border-radius:5px;position:relative;width:67%}.elementor-panel .elementor-slider .ui-slider-handle{height:16px;width:16px;background-color:#fff;display:inline-block;top:50%;-webkit-transform:translateY(-50%) translateX(-8px);-ms-transform:translateY(-50%) translateX(-8px);transform:translateY(-50%) translateX(-8px);position:absolute;-webkit-box-shadow:1px 1px 6px rgba(0,0,0,.3);box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:50%;cursor:pointer}.elementor-panel .elementor-slider-input{width:33%;float:left}.elementor-panel .elementor-slider-input input{width:80%;float:left}.elementor-panel .elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-panel .elementor-units-choices input{display:none}.elementor-panel .elementor-units-choices input:not(:checked)+label{color:#c2cbd2}.elementor-panel .elementor-units-choices input:checked+label{text-decoration:underline}.elementor-panel .elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-panel .elementor-control-responsive-switchers{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 5px}.elementor-panel .elementor-responsive-switcher{display:inline-block;border-radius:50%;height:18px;width:18px;background-color:#a4afb7;cursor:pointer;position:relative;margin-right:5px;color:#fff;font-size:8px;text-align:center;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}.elementor-panel .elementor-responsive-switcher:hover{background-color:#c2cbd2}.elementor-panel .elementor-responsive-switcher i{line-height:18px}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher{background:#c2cbd2}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher:not(.elementor-responsive-switcher-desktop){display:none}.elementor-device-mobile .elementor-panel .elementor-responsive-switcher-mobile,.elementor-device-tablet .elementor-panel .elementor-responsive-switcher-tablet{background-color:#71d7f7}.elementor-panel .elementor-update-preview{margin:15px 15px 0;background-color:#e6e9ec;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-panel .elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-panel .elementor-control-align .elementor-choices,.elementor-panel .elementor-control-position .elementor-choices,.elementor-panel .elementor-control-text_align .elementor-choices{direction:ltr}.elementor-panel .elementor-control-type-media .elementor-control-media{padding:7px;border:1px solid;height:150px}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover){border-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover) .elementor-control-media-upload-button{background-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:hover{border-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media:hover .elementor-control-media-upload-button{background-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media.media-empty .elementor-control-media-image-area,.elementor-panel .elementor-control-type-media .elementor-control-media:not(.media-empty) .elementor-control-media-upload-button{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media>*{height:100%;cursor:pointer;position:relative}.elementor-panel .elementor-control-type-media .fa-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#fff;font-size:20px}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:not(:hover) .elementor-control-media-delete{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:hover .elementor-control-media-image{opacity:.5}.elementor-panel .elementor-control-type-media .elementor-control-media-delete{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:9.5px;font-size:11px;color:#fff;background-color:#a4afb7;text-transform:uppercase}.elementor-panel .elementor-control-type-media .elementor-control-media-image{height:100%;background-size:cover}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-panel .elementor-control-type-dimensions li{float:left;width:20%}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-panel .elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#a4afb7;height:27px}.elementor-panel .elementor-control-type-dimensions li input{border-left:none;border-radius:0;padding:4px 0}.elementor-panel .elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #a4afb7;border-left:none;background-color:#fff;padding:0;outline:none;border-radius:0 3px 3px 0;cursor:pointer}.elementor-panel .elementor-control-type-dimensions li:first-child input{border-left:1px solid #a4afb7;border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-panel .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-external-show input{padding-right:46px}.elementor-panel .elementor-control-type-url .elementor-control-input-wrapper{position:relative}.elementor-panel .elementor-control-type-url .elementor-control-url-more{position:absolute;top:0;right:0;height:26px;width:40px;border-left:1px solid;cursor:pointer;font-size:10px;border-radius:0 3px 3px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-panel .elementor-control-type-url .elementor-control-url-more i{font-size:13px}.elementor-panel .elementor-control-type-url .elementor-control-url-more-input,.elementor-panel .elementor-control-type-url .elementor-control-url-more-input:not(:checked)+.elementor-control-url-more-options{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-more-options{padding-top:10px}.elementor-panel .elementor-control-type-url .elementor-control-url-option{padding:5px;font-size:12px}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url],.elementor-panel .elementor-control-type-url input[type=url]{direction:ltr}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:not(:focus)+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:focus+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:focus+.elementor-control-url-more{border-color:#a4afb7}.elementor-panel .elementor-control-type-section{margin-top:10px;padding:0}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section){padding-top:15px}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:70%}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{height:27px;width:30%}.elementor-panel .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-panel .elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec;border-radius:3px}.elementor-panel .elementor-control-type-wysiwyg #insert-media-button{margin-top:7px;height:auto;line-height:1;font-size:10px;padding:3px 7px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-panel .elementor-control-type-wysiwyg .wp-switch-editor{border:none;color:#6d7882;font-size:10px;padding:3px 9px 4px;border-radius:3px 3px 0 0}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-html,.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-panel .elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-panel .elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-panel .elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-panel .elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-panel .elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-panel .elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-panel .elementor-control-type-icon .select2-selection__rendered .fa{margin-right:3px}.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnails{overflow:hidden;margin-top:20px;cursor:pointer}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:40px;height:40px;background-size:cover;background-position:50% 50%;float:right;margin-bottom:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail:not(:nth-child(5n)){margin-left:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-add{width:100%;height:30px;color:#fff;background-color:#a4afb7;margin-top:10px;text-transform:uppercase}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-clear{color:#b01b1b;cursor:pointer}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset{border:1px solid #e6e9ec;padding:3px;border-radius:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset){display:inline-block;cursor:pointer;height:50px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset) svg{height:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset svg{display:block;width:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset{padding:10px 0 0 2px;font-size:11px;cursor:pointer;color:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset i{margin-left:8px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{color:#495157;font-weight:700;padding:13.5px 20px;position:relative}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{content:"";position:absolute;left:0;right:0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{top:0;background-color:#e6e9ec;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after{bottom:0;height:1px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title{margin:15px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before{height:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input{display:none}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset{border:1px solid #a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:70px;float:right}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:70px}.elementor-panel .elementor-control-type-code{padding:0 10px 15px}.elementor-panel .elementor-control-type-wp_widget .widget-inside{display:block}.elementor-panel .elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-panel .elementor-control-type-tabs{font-size:.8em;color:#a4afb7;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:30px;border-top:1px solid #a4afb7;border-bottom:1px solid #a4afb7;border-left:1px solid #a4afb7;cursor:pointer}.elementor-panel .elementor-control-type-tab:first-child{border-right:1px solid #a4afb7;border-top-right-radius:3px;border-bottom-right-radius:3px}.elementor-panel .elementor-control-type-tab:last-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.elementor-panel .elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;color:#fff}.elementor-panel .elementor-tab-close{display:none!important}.elementor-panel .elementor-control-type-repeater,.elementor-panel .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding:0 10px 15px}.elementor-panel .elementor-control-type-repeater .elementor-control:before,.elementor-panel .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-panel .elementor-control-type-repeater .repeater-fields{margin:10px 0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top-width:0;padding-top:15px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls .wp-picker-container.wp-picker-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);border-width:0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .fa{margin-left:5px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding:10px}.elementor-panel .elementor-control-type-textarea textarea{display:block}.elementor-panel .elementor-control-type-box_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-box_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-text_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-text_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-title{width:70%}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-input-wrapper{width:30%}.elementor-panel .elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-panel .elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;width:49px;height:20px;background-color:#fff;border-radius:18px;cursor:pointer}.elementor-panel .elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-panel .elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after,.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-panel .elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:30px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-order input{display:none}.elementor-panel .elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-panel .elementor-control-type-order select{border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-panel .elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-panel .elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-panel .elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-panel .elementor-control-type-hidden{display:none!important}.elementor-panel .wp-picker-container.wp-picker-active{position:absolute;z-index:1;top:0;left:0;background-color:#fff;border:solid #fff;border-width:0 17px 0 12px;padding-top:10px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4)}.elementor-panel .wp-picker-container.wp-picker-active .wp-color-result{float:right}.elementor-panel .wp-picker-container.wp-picker-active .wp-picker-input-wrap{padding-left:10px;float:left}.elementor-panel .wp-picker-container *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-container .iris-picker{border:none}.elementor-panel .wp-color-result{margin:0;width:48px;height:25px;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;padding:0;border-radius:3px;border:1px solid #d5dadf}.elementor-panel .wp-color-result,.elementor-panel .wp-color-result:focus{-webkit-box-shadow:inset 0 0 0 3px #fff;box-shadow:inset 0 0 0 3px #fff}.elementor-panel .wp-color-result.wp-picker-open:after,.elementor-panel .wp-color-result:after{content:none}.elementor-panel .wp-color-result:hover{border:1px solid #a4afb7}.elementor-panel .wp-color-result:active,.elementor-panel .wp-color-result:focus{outline:0}.elementor-panel .wp-picker-clear.button,.elementor-panel .wp-picker-default.button{height:26px;width:48px;padding:0;background-color:#d5dadf;border-radius:0 3px 3px 0;margin:0}.elementor-panel .wp-color-picker{float:left;width:100px;max-width:100px;border-radius:3px 0 0 3px;line-height:1}.elementor-panel .wp-picker-holder *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-open~.wp-picker-holder{clear:both;margin-bottom:15px}.elementor-panel .elementor-control .wp-picker-container:not(.wp-picker-active){float:left}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active{-webkit-transform:translateY(6px);-ms-transform:translateY(6px);transform:translateY(6px)}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active .wp-color-result{margin-right:3px}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:2}.elementor-panel .elementor-panel-footer-sub-menu{border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item[data-device-mode=mobile-landscape] .fa-mobile{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:right;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:right;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:right;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-save{width:90px;padding:0 10px}.elementor-panel #elementor-panel-footer-save .elementor-button{font-size:11px;text-transform:uppercase;width:100%;height:26px;background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-footer-publish .elementor-icon,.elementor-panel #elementor-panel-footer-publish .elementor-title{color:#39b54a}.elementor-panel #elementor-panel-footer-discard .elementor-icon,.elementor-panel #elementor-panel-footer-discard .elementor-title{color:#b01b1b}#elementor-mode-switcher{position:absolute;right:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:-3px 1px 5px rgba(0,0,0,.1);box-shadow:-3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover,body.elementor-editor-preview #elementor-mode-switcher{background-color:#9b0a46;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .fa{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-delete,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner,.elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete{display:none}.elementor-revision-item__gravatar{border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-right:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-item__tools-delete{cursor:pointer}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}.elementor-history-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;line-height:1.4;cursor:pointer}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .fa:before{content:"\f1da"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:inherit}.elementor-history-item-current .elementor-history-item__icon .fa:before,.elementor-history-item-current:hover .elementor-history-item__icon .fa:before{content:"\f00c"}.elementor-history-item__details{width:95%}.elementor-history-item__title{font-weight:700}.elementor-history-item__action,.elementor-history-item__subtitle{font-weight:lighter}.elementor-history-item__action{font-style:italic;text-decoration:underline}.elementor-history-item .__icon{float:left}.elementor-history-revisions-message{font-size:11px;text-align:center;padding:5px 0}#elementor-preview{background-color:#333;position:absolute;height:100%;top:0;right:0;border:0}.elementor-device-desktop #elementor-preview{overflow-y:hidden}body:not(.elementor-device-desktop) #elementor-preview{overflow-y:auto}#elementor-preview-responsive-wrapper{position:absolute;top:0;bottom:0;left:0;right:0;-webkit-transition:all .5s ease 0s;-o-transition:all .5s ease 0s;transition:all .5s ease 0s}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%}.elementor-device-tablet #elementor-preview-responsive-wrapper{width:768px;height:1025px;padding:40px 10px 70px}.elementor-device-mobile #elementor-preview-responsive-wrapper{width:360px;height:640px;padding:40px 10px 70px}body:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{border-radius:30px;background-color:#111;margin:30px auto 80px;-webkit-box-sizing:content-box;box-sizing:content-box}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:5}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:5px 8px 4px;text-align:center;border-radius:3px}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}#elementor-introduction .dialog-widget-header{padding:40px 0 0}#elementor-introduction .dialog-widget-content{width:700px;max-width:100%}#elementor-introduction .elementor-video-wrapper{padding-bottom:62.4%}#elementor-introduction .dialog-message{margin-top:40px}#elementor-introduction-title{color:#9b0a46;font-size:27px;font-weight:700}#elementor-introduction-subtitle{margin-top:12px;font-size:16px;color:#a4afb7}#elementor-template-library-modal .dialog-widget-content{width:990px;background-color:#f1f3f5}#elementor-template-library-modal .dialog-widget-header{padding:0;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .dialog-message{height:630px;max-height:85vh;overflow:auto;padding:15px}#elementor-template-library-modal a,#elementor-template-library-modal a:hover{color:inherit}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#9b0a46}#elementor-template-library-modal .elementor-button{text-transform:uppercase}#elementor-template-library-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}#elementor-template-library-header-logo-area{text-align:right;padding-right:15px}#elementor-template-library-header-logo-area>*{float:right}#elementor-template-library-header-logo-area>*>*{vertical-align:middle}#elementor-template-library-header-logo{font-size:15px;text-transform:uppercase;color:#495157;font-weight:700;cursor:pointer}#elementor-template-library-header-logo i{padding-left:10px;color:#9b0a46;font-size:20px}#elementor-template-library-header-menu-area{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-template-library-header-menu{text-align:center}.elementor-template-library-menu-item{display:inline-block;padding:17px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}#elementor-template-library-header-items-area{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-template-library-header-item{position:relative;border-right:1px solid #e6e9ec;height:50px;-webkit-box-sizing:content-box;box-sizing:content-box;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-header-item:not(:hover){color:#a4afb7}.elementor-template-library-header-item>i{font-size:18px}#elementor-template-library-header-close-modal,#elementor-template-library-header-save{width:56px}#elementor-template-library-header-close-modal,#elementor-template-library-header-preview-insert-wrapper,#elementor-template-library-header-save{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px}#elementor-template-library-header-preview-back{padding:16.5px 0 15px 16.5px;border-left:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-left:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-loading .elementor-loading-title{color:#a4afb7}#elementor-template-library-loading .elementor-loader-box{background-color:#d5dadf}#elementor-template-library-templates-container{overflow:hidden}#elementor-template-library-templates-container[data-template-source=local]{-webkit-box-shadow:1px 1px 5px rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.1);margin:15px}#elementor-template-library-templates-container:not([data-template-source=remote])+#elementor-template-library-footer-banner{display:none}.elementor-template-library-template-remote{float:right;width:25%;padding:0 15px;margin-top:15px}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body{position:relative}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{position:absolute;content:"pro";text-transform:uppercase;top:5px;left:5px;background-color:#9b0a46;color:#d5dadf;padding:1px 4px;font-size:9px;border-radius:2px}.elementor-template-library-template-remote .elementor-template-library-template-body{height:250px;border:3px solid #fff;position:relative;-webkit-box-shadow:0 1px 6px rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.2)}.elementor-template-library-template-remote .elementor-template-library-template-body:not(:hover) .elementor-template-library-template-controls{opacity:0}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;background-size:cover;background-position-x:50%}.elementor-template-library-template-remote .elementor-template-library-template-controls{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.elementor-template-library-template-remote .elementor-template-library-template-action{font-size:11px;width:150px;padding:11px}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:relative;height:180px;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-template-library-template-remote .elementor-template-library-template-name{margin:13px 0 10px;font-size:12px;text-align:center;color:#6d7882}.elementor-template-library-template-local{background-color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid #d5dadf;height:50px;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-controls{visibility:hidden}.elementor-template-library-template-local>*{text-align:start}.elementor-template-library-template-local .elementor-template-library-template-icon{text-align:center;width:6%}.elementor-template-library-template-local .elementor-template-library-template-name{font-size:13px;font-weight:500;width:35%}.elementor-template-library-template-local .elementor-template-library-template-type{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls{direction:ltr;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-template-library-template-local .elementor-template-library-template-controls>*{direction:rtl}.elementor-template-library-template-local .elementor-template-library-template-controls>div{display:inline-block;margin-right:15px;cursor:pointer;font-weight:500;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover){color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-right:6px}.elementor-template-library-template-local .elementor-template-library-template-delete:hover{color:#b01b1b}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 20px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{width:1440px;height:150%;-webkit-transform:scale(.666) translateX(25%) translateY(-25%);-ms-transform:scale(.666) translateX(25%) translateY(-25%);transform:scale(.666) translateX(25%) translateY(-25%)}.elementor-template-library-blank-title{font-size:30px;margin-top:55px}.elementor-template-library-blank-excerpt{font-size:18px;color:#a4afb7;margin-top:20px;font-weight:300}#elementor-template-library-save-template-form{margin-top:55px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:60px;font-size:18px}#elementor-template-library-save-template-name{width:460px;background-color:#fff;font-weight:300;color:#a4afb7;padding-right:25px;border-radius:0 3px 3px 0;border:none}#elementor-template-library-save-template-name:focus{border:1px solid #e6e9ec}#elementor-template-library-save-template-submit{width:150px;border-radius:3px 0 0 3px;font-weight:500}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}.elementor-template-library-blank-footer{position:absolute;bottom:90px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-size:13px;font-style:italic}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty-icon{font-size:96px;margin-top:40px;color:#d5dadf}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}
assets/css/editor.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
@@ -2078,7 +2078,8 @@ body.elementor-editor-preview #elementor-mode-switcher {
2078
  align-items: center;
2079
  border: 1px solid #d5dadf;
2080
  padding: 10px 15px;
2081
- margin-bottom: 10px; }
 
2082
  .elementor-revision-item:hover:not(.elementor-revision-current-preview) {
2083
  background-color: rgba(230, 233, 236, 0.3); }
2084
  .elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete {
@@ -2102,9 +2103,6 @@ body.elementor-editor-preview #elementor-mode-switcher {
2102
  .elementor-revision-item__tools-delete {
2103
  cursor: pointer; }
2104
 
2105
- .elementor-revision-date {
2106
- font-size: 11px; }
2107
-
2108
  .elementor-revision-meta {
2109
  padding-top: 5px;
2110
  font-size: 10px;
@@ -2113,6 +2111,49 @@ body.elementor-editor-preview #elementor-mode-switcher {
2113
  .elementor-revision-current-preview {
2114
  background-color: #e6e9ec; }
2115
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2116
  #elementor-preview {
2117
  background-color: #333;
2118
  position: absolute;
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
2078
  align-items: center;
2079
  border: 1px solid #d5dadf;
2080
  padding: 10px 15px;
2081
+ margin-bottom: 10px;
2082
+ font-size: 11px; }
2083
  .elementor-revision-item:hover:not(.elementor-revision-current-preview) {
2084
  background-color: rgba(230, 233, 236, 0.3); }
2085
  .elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete {
2103
  .elementor-revision-item__tools-delete {
2104
  cursor: pointer; }
2105
 
 
 
 
2106
  .elementor-revision-meta {
2107
  padding-top: 5px;
2108
  font-size: 10px;
2111
  .elementor-revision-current-preview {
2112
  background-color: #e6e9ec; }
2113
 
2114
+ .elementor-history-item {
2115
+ display: -webkit-box;
2116
+ display: -webkit-flex;
2117
+ display: -ms-flexbox;
2118
+ display: flex;
2119
+ -webkit-box-align: center;
2120
+ -webkit-align-items: center;
2121
+ -ms-flex-align: center;
2122
+ align-items: center;
2123
+ border: 1px solid #d5dadf;
2124
+ padding: 10px 15px;
2125
+ margin-bottom: 10px;
2126
+ font-size: 11px;
2127
+ line-height: 1.4;
2128
+ cursor: pointer; }
2129
+ .elementor-history-item:hover {
2130
+ background-color: rgba(230, 233, 236, 0.3); }
2131
+ .elementor-history-item:hover .elementor-history-item__icon .fa:before {
2132
+ content: '\f1da'; }
2133
+ .elementor-history-item-applied {
2134
+ color: #a4afb7; }
2135
+ .elementor-history-item-current {
2136
+ background: #e6e9ec;
2137
+ cursor: inherit; }
2138
+ .elementor-history-item-current .elementor-history-item__icon .fa:before, .elementor-history-item-current:hover .elementor-history-item__icon .fa:before {
2139
+ content: '\f00c'; }
2140
+ .elementor-history-item__details {
2141
+ width: 95%; }
2142
+ .elementor-history-item__title {
2143
+ font-weight: bold; }
2144
+ .elementor-history-item__subtitle, .elementor-history-item__action {
2145
+ font-weight: lighter; }
2146
+ .elementor-history-item__action {
2147
+ font-style: italic;
2148
+ text-decoration: underline; }
2149
+ .elementor-history-item .__icon {
2150
+ float: right; }
2151
+
2152
+ .elementor-history-revisions-message {
2153
+ font-size: 11px;
2154
+ text-align: center;
2155
+ padding: 5px 0; }
2156
+
2157
  #elementor-preview {
2158
  background-color: #333;
2159
  position: absolute;
assets/css/editor.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
- @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:4}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0 none}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body a{color:#71d7f7}body a:hover{color:#9b0a46}body.elementor-editor-active #elementor-preview{right:0}@media (max-width:1439px){body.elementor-editor-active #elementor-preview{left:280px}}@media (min-width:1440px){body.elementor-editor-active #elementor-preview{left:300px}}body.elementor-editor-active #elementor-panel{left:0}body.elementor-editor-active #elementor-mode-switcher-preview .fa:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-preview #elementor-panel{left:-280px}}@media (min-width:1440px){body.elementor-editor-preview #elementor-panel{left:-300px}}body.elementor-editor-preview #elementor-panel>.ui-resizable-e,body.elementor-editor-preview #elementor-panel>.ui-resizable-w{display:none}body.elementor-editor-preview #elementor-mode-switcher-preview .fa:before{content:""}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:left .5s,width .5s;-o-transition:left .5s,width .5s;transition:left .5s,width .5s}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:4}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:100px}.elementor-loader-wrapper .elementor-loader{height:100px;position:relative}.elementor-loader-wrapper .elementor-loader-box{background-color:#495157;position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}.elementor-loader-wrapper .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-wrapper .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.elementor-loading-title{color:#495157;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;font-size:10px;-webkit-animation:b 1.5s linear infinite;animation:b 1.5s linear infinite}@-webkit-keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}@keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}#elementor-preview-loading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-widget-header{font-size:13px;color:#6d7882}#elementor-saved-popup .dialog-message{height:155px;width:155px;background-color:#fff;border-radius:10px}#elementor-saved-popup .elementor-dialog-message{padding:15px}#elementor-saved-popup .elementor-dialog-message .fa{font-size:85px;padding:10px}#elementor-saved-popup .elementor-dialog-message-text{text-transform:uppercase}.elementor-button{outline:none;border:none;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.5s;-o-transition-duration:.5s;transition-duration:.5s}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button{color:#fff}.elementor-button.elementor-button-success[disabled],.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]),.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-go-pro{color:#fff;background-color:#fcb92c}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;text-transform:uppercase;padding:6.5px 15px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button i{margin-right:10px}.elementor-input-style,input,select,textarea{border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#495157;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}.elementor-input-style,input,textarea{padding:5px 8px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{border:1px solid #d5dadf;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-transition:border-color .05s ease-in-out;-o-transition:.05s border-color ease-in-out;transition:border-color .05s ease-in-out}input[type=checkbox]:focus,input[type=radio]:focus{border-color:#a4afb7}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{height:27px}.ps-container{-ms-touch-action:none;overflow:hidden!important}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block}.ps-container.ps-in-scrolling{pointer-events:none}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;bottom:3px;height:8px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;bottom:0;height:8px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;right:3px;width:8px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;right:0;width:8px}.ps-container:hover.ps-in-scrolling{pointer-events:none}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:3;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:3;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#39b54a;border-left-color:#39b54a;border-radius:50%;-webkit-animation:c .4s linear infinite;animation:c .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:5}.elementor-panel{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#9b0a46;-webkit-transition:none;-o-transition:none;transition:none}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel#elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel>.ui-resizable-e,.elementor-panel>.ui-resizable-w{position:absolute;top:0;height:100%;width:7px;right:-5px;cursor:ew-resize}.elementor-panel #elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}.elementor-panel .elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.elementor-panel #elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel .elementor-panel-hide{display:none}.elementor-panel .elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel .elementor-panel-heading:not(.elementor-open) .elementor-panel-heading-toggle .fa:before{content:""}.elementor-panel .elementor-panel-heading.elementor-open .elementor-panel-heading-toggle .fa:before{content:"\f0d7"}.elementor-panel .elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel .elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-control-title{font-size:12px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .select2-container{width:100%!important}.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.elementor-panel .select2-container.select2-container--focus .select2-selection--multiple,.elementor-panel .select2-container.select2-container--focus .select2-selection--single,.elementor-panel .select2-container.select2-container--open .select2-selection--multiple,.elementor-panel .select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;border-radius:0}.elementor-panel .select2-selection--single{height:27px}.elementor-panel .select2-selection__rendered{line-height:27px}.elementor-panel .select2-selection__arrow{height:27px;top:0}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel .elementor-panel-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:left}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box{padding:30px 20px;text-align:center}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-icon{font-size:52px;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-message{margin-top:20px;line-height:1.4;font-size:11px}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link{background-color:#fcb92c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link:hover{background-color:#fdca5e}.elementor-panel #elementor-panel-get-pro-elements .elementor-panel-nerd-box-message{text-transform:uppercase}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#9b0a46;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:66px}.elementor-panel #elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}.elementor-panel #elementor-panel-elements{overflow:hidden;padding:0 5px}.elementor-panel .elementor-element-wrapper{float:left;width:50%;padding:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element{border-radius:3px;background-color:#fff;cursor:move}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#9b0a46}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px;color:#556068}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;color:#556068;display:table-cell;vertical-align:middle;height:40px}.elementor-panel #elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}.elementor-panel #elementor-panel-elements-search-wrapper i{position:absolute;right:0;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:right 1s;-o-transition:right 1s;transition:right 1s}.elementor-panel #elementor-panel-elements-search-input{font-size:11px;border-radius:0;padding:10px 27px 10px 0;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:hsla(0,0%,100%,.7);padding-left:15px}.elementor-panel #elementor-panel-elements-search-input:focus+i{right:15px}.elementor-panel .elementor-panel-category:first-child .panel-elements-category-title{padding-top:14px}.elementor-panel .panel-elements-category-title-basic{display:none}.elementor-panel .panel-elements-category-title{padding:12px 15px;text-transform:uppercase;font-size:11px}.elementor-panel .panel-elements-category-items{overflow:hidden;padding:0 5px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:left}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:right}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px;text-transform:uppercase}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item{display:inline-block}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-right:13px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-right:19px}}.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:4px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:6px}}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item .elementor-panel-heading:not(.elementor-open)+.elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-page-menu{-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:50px;cursor:pointer;margin-bottom:1px}.elementor-panel .elementor-panel-menu-item:not(:hover){background-color:#fff}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:55px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:FontAwesome;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\f040"}.elementor-panel .elementor-tab-control-style a:before{content:"\f042"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\f013"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\f10a"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\f0db"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\f2d2"}.elementor-panel .elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-panel .elementor-control.elementor-control-separator-default:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:#e6e9ec}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp{margin-top:15px}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp:before{background-color:transparent}.elementor-panel .elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-panel .elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:3px;width:100%;top:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:3px;width:100%;bottom:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after+.elementor-control-type-tabs{padding-top:15px}.elementor-panel .elementor-control.elementor-control-deprecated,.elementor-panel .elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-panel .elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-hidden-control{display:none}.elementor-panel .elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-panel .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-mobile) .elementor-panel .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-tablet) .elementor-panel .elementor-control.elementor-control-responsive-tablet{display:none}.elementor-panel .elementor-control-wp{line-height:1.5}.elementor-panel .elementor-control-wp p{margin:15px 0}.elementor-panel .elementor-control-field{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:10px}.elementor-panel .elementor-label-block.elementor-control-hidden-label>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:45%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:55%}.elementor-panel .elementor-control-field-description{margin-top:10px}.elementor-panel .elementor-required{color:#b01b1b}.elementor-panel .elementor-choices{display:table;width:100%;height:27px;background-color:#a4afb7;text-align:center;border-spacing:1px;border-radius:3px}.elementor-panel .elementor-choices input{display:none}.elementor-panel .elementor-choices input:checked+.elementor-choices-label{color:#fff}.elementor-panel .elementor-choices input:not(:checked)+.elementor-choices-label{background-color:#fff;color:#a4afb7}.elementor-panel .elementor-choices .elementor-choices-label{display:table-cell;vertical-align:middle;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer}.elementor-panel .elementor-slider{display:inline-block;margin-top:10px;height:4px;background-color:#a4afb7;border-radius:5px;position:relative;width:67%}.elementor-panel .elementor-slider .ui-slider-handle{height:16px;width:16px;background-color:#fff;display:inline-block;top:50%;-webkit-transform:translateY(-50%) translateX(-8px);-ms-transform:translateY(-50%) translateX(-8px);transform:translateY(-50%) translateX(-8px);position:absolute;-webkit-box-shadow:1px 1px 6px rgba(0,0,0,.3);box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:50%;cursor:pointer}.elementor-panel .elementor-slider-input{width:33%;float:right}.elementor-panel .elementor-slider-input input{width:80%;float:right}.elementor-panel .elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-panel .elementor-units-choices input{display:none}.elementor-panel .elementor-units-choices input:not(:checked)+label{color:#c2cbd2}.elementor-panel .elementor-units-choices input:checked+label{text-decoration:underline}.elementor-panel .elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-panel .elementor-control-responsive-switchers{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 5px}.elementor-panel .elementor-responsive-switcher{display:inline-block;border-radius:50%;height:18px;width:18px;background-color:#a4afb7;cursor:pointer;position:relative;margin-left:5px;color:#fff;font-size:8px;text-align:center;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}.elementor-panel .elementor-responsive-switcher:hover{background-color:#c2cbd2}.elementor-panel .elementor-responsive-switcher i{line-height:18px}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher{background:#c2cbd2}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher:not(.elementor-responsive-switcher-desktop){display:none}.elementor-device-mobile .elementor-panel .elementor-responsive-switcher-mobile,.elementor-device-tablet .elementor-panel .elementor-responsive-switcher-tablet{background-color:#71d7f7}.elementor-panel .elementor-update-preview{margin:15px 15px 0;background-color:#e6e9ec;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-panel .elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-panel .elementor-control-align .elementor-choices,.elementor-panel .elementor-control-position .elementor-choices,.elementor-panel .elementor-control-text_align .elementor-choices{direction:ltr}.elementor-panel .elementor-control-type-media .elementor-control-media{padding:7px;border:1px solid;height:150px}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover){border-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover) .elementor-control-media-upload-button{background-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:hover{border-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media:hover .elementor-control-media-upload-button{background-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media.media-empty .elementor-control-media-image-area,.elementor-panel .elementor-control-type-media .elementor-control-media:not(.media-empty) .elementor-control-media-upload-button{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media>*{height:100%;cursor:pointer;position:relative}.elementor-panel .elementor-control-type-media .fa-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#fff;font-size:20px}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:not(:hover) .elementor-control-media-delete{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:hover .elementor-control-media-image{opacity:.5}.elementor-panel .elementor-control-type-media .elementor-control-media-delete{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:9.5px;font-size:11px;color:#fff;background-color:#a4afb7;text-transform:uppercase}.elementor-panel .elementor-control-type-media .elementor-control-media-image{height:100%;background-size:cover}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-panel .elementor-control-type-dimensions li{float:left;width:20%}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-panel .elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#a4afb7;height:27px}.elementor-panel .elementor-control-type-dimensions li input{border-left:none;border-radius:0;padding:4px 0}.elementor-panel .elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #a4afb7;border-left:none;background-color:#fff;padding:0;outline:none;border-radius:0 3px 3px 0;cursor:pointer}.elementor-panel .elementor-control-type-dimensions li:first-child input{border-left:1px solid #a4afb7;border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-panel .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-external-show input{padding-right:46px}.elementor-panel .elementor-control-type-url .elementor-control-input-wrapper{position:relative}.elementor-panel .elementor-control-type-url .elementor-control-url-more{position:absolute;top:0;right:0;height:26px;width:40px;border-left:1px solid;cursor:pointer;font-size:10px;border-radius:0 3px 3px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-panel .elementor-control-type-url .elementor-control-url-more i{font-size:13px}.elementor-panel .elementor-control-type-url .elementor-control-url-more-input,.elementor-panel .elementor-control-type-url .elementor-control-url-more-input:not(:checked)+.elementor-control-url-more-options{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-more-options{padding-top:10px}.elementor-panel .elementor-control-type-url .elementor-control-url-option{padding:5px;font-size:12px}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url],.elementor-panel .elementor-control-type-url input[type=url]{direction:ltr}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:not(:focus)+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:focus+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:focus+.elementor-control-url-more{border-color:#a4afb7}.elementor-panel .elementor-control-type-section{margin-top:10px;padding:0}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section){padding-top:15px}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:70%}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{height:27px;width:30%}.elementor-panel .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-panel .elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec;border-radius:3px}.elementor-panel .elementor-control-type-wysiwyg #insert-media-button{margin-top:7px;height:auto;line-height:1;font-size:10px;padding:3px 7px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-panel .elementor-control-type-wysiwyg .wp-switch-editor{border:none;color:#6d7882;font-size:10px;padding:3px 9px 4px;border-radius:3px 3px 0 0}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-html,.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-panel .elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-panel .elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-panel .elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-panel .elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-panel .elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-panel .elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-panel .elementor-control-type-icon .select2-selection__rendered .fa{margin-right:3px}.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnails{overflow:hidden;margin-top:20px;cursor:pointer}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:40px;height:40px;background-size:cover;background-position:50% 50%;float:left;margin-bottom:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail:not(:nth-child(5n)){margin-right:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-add{width:100%;height:30px;color:#fff;background-color:#a4afb7;margin-top:10px;text-transform:uppercase}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-clear{color:#b01b1b;cursor:pointer}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset{border:1px solid #e6e9ec;padding:3px;border-radius:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset){display:inline-block;cursor:pointer;height:50px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset) svg{height:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset svg{display:block;width:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset{padding:10px 0 0 2px;font-size:11px;cursor:pointer;color:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset i{margin-right:8px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{color:#495157;font-weight:700;padding:13.5px 20px;position:relative}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{content:"";position:absolute;left:0;right:0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{top:0;background-color:#e6e9ec;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after{bottom:0;height:1px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title{margin:15px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before{height:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input{display:none}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset{border:1px solid #a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:70px;float:left}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:70px}.elementor-panel .elementor-control-type-code{padding:0 10px 15px}.elementor-panel .elementor-control-type-wp_widget .widget-inside{display:block}.elementor-panel .elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-panel .elementor-control-type-tabs{font-size:.8em;color:#a4afb7;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:30px;border-top:1px solid #a4afb7;border-bottom:1px solid #a4afb7;border-right:1px solid #a4afb7;cursor:pointer}.elementor-panel .elementor-control-type-tab:first-child{border-left:1px solid #a4afb7;border-top-left-radius:3px;border-bottom-left-radius:3px}.elementor-panel .elementor-control-type-tab:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.elementor-panel .elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;color:#fff}.elementor-panel .elementor-tab-close{display:none!important}.elementor-panel .elementor-control-type-repeater,.elementor-panel .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding:0 10px 15px}.elementor-panel .elementor-control-type-repeater .elementor-control:before,.elementor-panel .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-panel .elementor-control-type-repeater .repeater-fields{margin:10px 0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top-width:0;padding-top:15px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls .wp-picker-container.wp-picker-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);border-width:0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .fa{margin-right:5px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding:10px}.elementor-panel .elementor-control-type-textarea textarea{display:block}.elementor-panel .elementor-control-type-box_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-box_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-text_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-text_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-title{width:70%}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-input-wrapper{width:30%}.elementor-panel .elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-panel .elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;width:49px;height:20px;background-color:#fff;border-radius:18px;cursor:pointer}.elementor-panel .elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-panel .elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after,.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-panel .elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:30px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-order input{display:none}.elementor-panel .elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-panel .elementor-control-type-order select{border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-panel .elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-panel .elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-panel .elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-panel .elementor-control-type-hidden{display:none!important}.elementor-panel .wp-picker-container.wp-picker-active{position:absolute;z-index:1;top:0;left:0;background-color:#fff;border:solid #fff;border-width:0 17px 0 12px;padding-top:10px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4)}.elementor-panel .wp-picker-container.wp-picker-active .wp-color-result{float:right}.elementor-panel .wp-picker-container.wp-picker-active .wp-picker-input-wrap{padding-left:10px;float:left}.elementor-panel .wp-picker-container *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-container .iris-picker{border:none}.elementor-panel .wp-color-result{margin:0;width:48px;height:25px;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;padding:0;border-radius:3px;border:1px solid #d5dadf}.elementor-panel .wp-color-result,.elementor-panel .wp-color-result:focus{-webkit-box-shadow:inset 0 0 0 3px #fff;box-shadow:inset 0 0 0 3px #fff}.elementor-panel .wp-color-result.wp-picker-open:after,.elementor-panel .wp-color-result:after{content:none}.elementor-panel .wp-color-result:hover{border:1px solid #a4afb7}.elementor-panel .wp-color-result:active,.elementor-panel .wp-color-result:focus{outline:0}.elementor-panel .wp-picker-clear.button,.elementor-panel .wp-picker-default.button{height:26px;width:48px;padding:0;background-color:#d5dadf;border-radius:0 3px 3px 0;margin:0}.elementor-panel .wp-color-picker{float:left;width:100px;max-width:100px;border-radius:3px 0 0 3px;line-height:1}.elementor-panel .wp-picker-holder *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-open~.wp-picker-holder{clear:both;margin-bottom:15px}.elementor-panel .elementor-control .wp-picker-container:not(.wp-picker-active){float:right}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active{-webkit-transform:translateY(6px);-ms-transform:translateY(6px);transform:translateY(6px)}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active .wp-color-result{margin-right:3px}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:2}.elementor-panel .elementor-panel-footer-sub-menu{border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item[data-device-mode=mobile-landscape] .fa-mobile{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:left;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:left;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:left;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-save{width:90px;padding:0 10px}.elementor-panel #elementor-panel-footer-save .elementor-button{font-size:11px;text-transform:uppercase;width:100%;height:26px;background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-footer-publish .elementor-icon,.elementor-panel #elementor-panel-footer-publish .elementor-title{color:#39b54a}.elementor-panel #elementor-panel-footer-discard .elementor-icon,.elementor-panel #elementor-panel-footer-discard .elementor-title{color:#b01b1b}#elementor-mode-switcher{position:absolute;left:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:3px 1px 5px rgba(0,0,0,.1);box-shadow:3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover,body.elementor-editor-preview #elementor-mode-switcher{background-color:#9b0a46;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .fa{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-delete,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner,.elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete{display:none}.elementor-revision-item__gravatar{border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-left:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-item__tools-delete{cursor:pointer}.elementor-revision-date{font-size:11px}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-preview{background-color:#333;position:absolute;height:100%;top:0;right:0;border:0}.elementor-device-desktop #elementor-preview{overflow-y:hidden}body:not(.elementor-device-desktop) #elementor-preview{overflow-y:auto}#elementor-preview-responsive-wrapper{position:absolute;top:0;bottom:0;left:0;right:0;-webkit-transition:all .5s ease 0s;-o-transition:all .5s ease 0s;transition:all .5s ease 0s}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%}.elementor-device-tablet #elementor-preview-responsive-wrapper{width:768px;height:1025px;padding:40px 10px 70px}.elementor-device-mobile #elementor-preview-responsive-wrapper{width:360px;height:640px;padding:40px 10px 70px}body:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{border-radius:30px;background-color:#111;margin:30px auto 80px;-webkit-box-sizing:content-box;box-sizing:content-box}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:5}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:5px 8px 4px;text-align:center;border-radius:3px}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}#elementor-introduction .dialog-widget-header{padding:40px 0 0}#elementor-introduction .dialog-widget-content{width:700px;max-width:100%}#elementor-introduction .elementor-video-wrapper{padding-bottom:62.4%}#elementor-introduction .dialog-message{margin-top:40px}#elementor-introduction-title{color:#9b0a46;font-size:27px;font-weight:700}#elementor-introduction-subtitle{margin-top:12px;font-size:16px;color:#a4afb7}#elementor-template-library-modal .dialog-widget-content{width:990px;background-color:#f1f3f5}#elementor-template-library-modal .dialog-widget-header{padding:0;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .dialog-message{height:630px;max-height:85vh;overflow:auto;padding:15px}#elementor-template-library-modal a,#elementor-template-library-modal a:hover{color:inherit}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#9b0a46}#elementor-template-library-modal .elementor-button{text-transform:uppercase}#elementor-template-library-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}#elementor-template-library-header-logo-area{text-align:left;padding-left:15px}#elementor-template-library-header-logo-area>*{float:left}#elementor-template-library-header-logo-area>*>*{vertical-align:middle}#elementor-template-library-header-logo{font-size:15px;text-transform:uppercase;color:#495157;font-weight:700;cursor:pointer}#elementor-template-library-header-logo i{padding-right:10px;color:#9b0a46;font-size:20px}#elementor-template-library-header-menu-area{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-template-library-header-menu{text-align:center}.elementor-template-library-menu-item{display:inline-block;padding:17px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}#elementor-template-library-header-items-area{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-template-library-header-item{position:relative;border-left:1px solid #e6e9ec;height:50px;-webkit-box-sizing:content-box;box-sizing:content-box;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-header-item:not(:hover){color:#a4afb7}.elementor-template-library-header-item>i{font-size:18px}#elementor-template-library-header-close-modal,#elementor-template-library-header-save{width:56px}#elementor-template-library-header-close-modal,#elementor-template-library-header-preview-insert-wrapper,#elementor-template-library-header-save{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px}#elementor-template-library-header-preview-back{padding:16.5px 16.5px 15px 0;border-right:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-right:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-loading .elementor-loading-title{color:#a4afb7}#elementor-template-library-loading .elementor-loader-box{background-color:#d5dadf}#elementor-template-library-templates-container{overflow:hidden}#elementor-template-library-templates-container[data-template-source=local]{-webkit-box-shadow:1px 1px 5px rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.1);margin:15px}#elementor-template-library-templates-container:not([data-template-source=remote])+#elementor-template-library-footer-banner{display:none}.elementor-template-library-template-remote{float:left;width:25%;padding:0 15px;margin-top:15px}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body{position:relative}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{position:absolute;content:"pro";text-transform:uppercase;top:5px;right:5px;background-color:#9b0a46;color:#d5dadf;padding:1px 4px;font-size:9px;border-radius:2px}.elementor-template-library-template-remote .elementor-template-library-template-body{height:250px;border:3px solid #fff;position:relative;-webkit-box-shadow:0 1px 6px rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.2)}.elementor-template-library-template-remote .elementor-template-library-template-body:not(:hover) .elementor-template-library-template-controls{opacity:0}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;background-size:cover;background-position-x:50%}.elementor-template-library-template-remote .elementor-template-library-template-controls{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.elementor-template-library-template-remote .elementor-template-library-template-action{font-size:11px;width:150px;padding:11px}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:relative;height:180px;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-template-library-template-remote .elementor-template-library-template-name{margin:13px 0 10px;font-size:12px;text-align:center;color:#6d7882}.elementor-template-library-template-local{background-color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid #d5dadf;height:50px;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-controls{visibility:hidden}.elementor-template-library-template-local>*{text-align:start}.elementor-template-library-template-local .elementor-template-library-template-icon{text-align:center;width:6%}.elementor-template-library-template-local .elementor-template-library-template-name{font-size:13px;font-weight:500;width:35%}.elementor-template-library-template-local .elementor-template-library-template-type{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls{direction:rtl;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-template-library-template-local .elementor-template-library-template-controls>*{direction:ltr}.elementor-template-library-template-local .elementor-template-library-template-controls>div{display:inline-block;margin-left:15px;cursor:pointer;font-weight:500;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover){color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-left:6px}.elementor-template-library-template-local .elementor-template-library-template-delete:hover{color:#b01b1b}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 20px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{width:1440px;height:150%;-webkit-transform:scale(.666) translateX(-25%) translateY(-25%);-ms-transform:scale(.666) translateX(-25%) translateY(-25%);transform:scale(.666) translateX(-25%) translateY(-25%)}.elementor-template-library-blank-title{font-size:30px;margin-top:55px}.elementor-template-library-blank-excerpt{font-size:18px;color:#a4afb7;margin-top:20px;font-weight:300}#elementor-template-library-save-template-form{margin-top:55px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:60px;font-size:18px}#elementor-template-library-save-template-name{width:460px;background-color:#fff;font-weight:300;color:#a4afb7;padding-left:25px;border-radius:3px 0 0 3px;border:none}#elementor-template-library-save-template-name:focus{border:1px solid #e6e9ec}#elementor-template-library-save-template-submit{width:150px;border-radius:0 3px 3px 0;font-weight:500}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}.elementor-template-library-blank-footer{position:absolute;bottom:90px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-size:13px;font-style:italic}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty-icon{font-size:96px;margin-top:40px;color:#d5dadf}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
+ @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:4}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0 none}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body a{color:#71d7f7}body a:hover{color:#9b0a46}body.elementor-editor-active #elementor-preview{right:0}@media (max-width:1439px){body.elementor-editor-active #elementor-preview{left:280px}}@media (min-width:1440px){body.elementor-editor-active #elementor-preview{left:300px}}body.elementor-editor-active #elementor-panel{left:0}body.elementor-editor-active #elementor-mode-switcher-preview .fa:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}@media (max-width:1439px){body.elementor-editor-preview #elementor-panel{left:-280px}}@media (min-width:1440px){body.elementor-editor-preview #elementor-panel{left:-300px}}body.elementor-editor-preview #elementor-panel>.ui-resizable-e,body.elementor-editor-preview #elementor-panel>.ui-resizable-w{display:none}body.elementor-editor-preview #elementor-mode-switcher-preview .fa:before{content:""}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:left .5s,width .5s;-o-transition:left .5s,width .5s;transition:left .5s,width .5s}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:4}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:100px}.elementor-loader-wrapper .elementor-loader{height:100px;position:relative}.elementor-loader-wrapper .elementor-loader-box{background-color:#495157;position:absolute;-webkit-animation:a 1.8s linear infinite;animation:a 1.8s linear infinite}.elementor-loader-wrapper .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-wrapper .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-wrapper .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}@-webkit-keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes a{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.elementor-loading-title{color:#495157;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;font-size:10px;-webkit-animation:b 1.5s linear infinite;animation:b 1.5s linear infinite}@-webkit-keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}@keyframes b{0%{opacity:1}50%{opacity:.6}to{opacity:1}}#elementor-preview-loading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-widget-header{font-size:13px;color:#6d7882}#elementor-saved-popup .dialog-message{height:155px;width:155px;background-color:#fff;border-radius:10px}#elementor-saved-popup .elementor-dialog-message{padding:15px}#elementor-saved-popup .elementor-dialog-message .fa{font-size:85px;padding:10px}#elementor-saved-popup .elementor-dialog-message-text{text-transform:uppercase}.elementor-button{outline:none;border:none;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.5s;-o-transition-duration:.5s;transition-duration:.5s}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button{color:#fff}.elementor-button.elementor-button-success[disabled],.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]),.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active,.elementor-panel #elementor-panel-footer-save.elementor-save-active .elementor-button:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-go-pro{color:#fff;background-color:#fcb92c}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;text-transform:uppercase;padding:6.5px 15px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button i{margin-right:10px}.elementor-input-style,input,select,textarea{border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#495157;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}.elementor-input-style,input,textarea{padding:5px 8px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{border:1px solid #d5dadf;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-transition:border-color .05s ease-in-out;-o-transition:.05s border-color ease-in-out;transition:border-color .05s ease-in-out}input[type=checkbox]:focus,input[type=radio]:focus{border-color:#a4afb7}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{height:27px}.ps-container{-ms-touch-action:none;overflow:hidden!important}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block}.ps-container.ps-in-scrolling{pointer-events:none}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;bottom:3px;height:8px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;bottom:0;height:8px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;right:3px;width:8px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;border-radius:4px;-webkit-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;right:0;width:8px}.ps-container:hover.ps-in-scrolling{pointer-events:none}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:3;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:3;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#39b54a;border-left-color:#39b54a;border-radius:50%;-webkit-animation:c .4s linear infinite;animation:c .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:5}.elementor-panel{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#9b0a46;-webkit-transition:none;-o-transition:none;transition:none}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel#elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel>.ui-resizable-e,.elementor-panel>.ui-resizable-w{position:absolute;top:0;height:100%;width:7px;right:-5px;cursor:ew-resize}.elementor-panel #elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}.elementor-panel .elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.elementor-panel #elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel .elementor-panel-hide{display:none}.elementor-panel .elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel .elementor-panel-heading:not(.elementor-open) .elementor-panel-heading-toggle .fa:before{content:""}.elementor-panel .elementor-panel-heading.elementor-open .elementor-panel-heading-toggle .fa:before{content:"\f0d7"}.elementor-panel .elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel .elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-control-title{font-size:12px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .select2-container{width:100%!important}.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.elementor-panel .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.elementor-panel .select2-container.select2-container--focus .select2-selection--multiple,.elementor-panel .select2-container.select2-container--focus .select2-selection--single,.elementor-panel .select2-container.select2-container--open .select2-selection--multiple,.elementor-panel .select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.elementor-panel .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;border-radius:0}.elementor-panel .select2-selection--single{height:27px}.elementor-panel .select2-selection__rendered{line-height:27px}.elementor-panel .select2-selection__arrow{height:27px;top:0}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel .elementor-panel-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:left}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box{padding:30px 20px;text-align:center}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-icon{font-size:52px;color:#a4afb7}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700}.elementor-panel .elementor-panel-nerd-box .elementor-panel-nerd-box-message{margin-top:20px;line-height:1.4;font-size:11px}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link{background-color:#fcb92c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-panel .elementor-panel-nerd-box .elementor-button.elementor-panel-nerd-box-link:hover{background-color:#fdca5e}.elementor-panel #elementor-panel-get-pro-elements .elementor-panel-nerd-box-message{text-transform:uppercase}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#9b0a46;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:66px}.elementor-panel #elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}.elementor-panel #elementor-panel-elements{overflow:hidden;padding:0 5px}.elementor-panel .elementor-element-wrapper{float:left;width:50%;padding:5px;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element{border-radius:3px;background-color:#fff;cursor:move}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#9b0a46}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px;color:#556068}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;color:#556068;display:table-cell;vertical-align:middle;height:40px}.elementor-panel #elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}.elementor-panel #elementor-panel-elements-search-wrapper i{position:absolute;right:0;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:right 1s;-o-transition:right 1s;transition:right 1s}.elementor-panel #elementor-panel-elements-search-input{font-size:11px;border-radius:0;padding:10px 27px 10px 0;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:hsla(0,0%,100%,.7);padding-left:15px}.elementor-panel #elementor-panel-elements-search-input:focus+i{right:15px}.elementor-panel .elementor-panel-category:first-child .panel-elements-category-title{padding-top:14px}.elementor-panel .panel-elements-category-title-basic{display:none}.elementor-panel .panel-elements-category-title{padding:12px 15px;text-transform:uppercase;font-size:11px}.elementor-panel .panel-elements-category-items{overflow:hidden;padding:0 5px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:left}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:right}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px;text-transform:uppercase}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item{display:inline-block}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-right:13px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-item:not(:nth-child(4n)){margin-right:19px}}.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}@media (max-width:1439px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:4px}}@media (min-width:1440px){.elementor-panel .elementor-panel-scheme-color .wp-picker-container.wp-picker-active .wp-color-result{margin-right:6px}}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item .elementor-panel-heading:not(.elementor-open)+.elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-page-menu{-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:50px;cursor:pointer;margin-bottom:1px}.elementor-panel .elementor-panel-menu-item:not(:hover){background-color:#fff}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:55px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:FontAwesome;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\f040"}.elementor-panel .elementor-tab-control-style a:before{content:"\f042"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\f013"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\f10a"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\f0db"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\f2d2"}.elementor-panel .elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-panel .elementor-control.elementor-control-separator-default:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:#e6e9ec}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp{margin-top:15px}.elementor-panel .elementor-control.elementor-control-separator-default.elementor-control-wp:before{background-color:transparent}.elementor-panel .elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-panel .elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:3px;width:100%;top:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:3px;width:100%;bottom:0;left:0;background-color:#d5dadf}.elementor-panel .elementor-control.elementor-control-separator-after+.elementor-control-type-tabs{padding-top:15px}.elementor-panel .elementor-control.elementor-control-deprecated,.elementor-panel .elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-panel .elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-panel .elementor-control.elementor-hidden-control{display:none}.elementor-panel .elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-panel .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-mobile) .elementor-panel .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-tablet) .elementor-panel .elementor-control.elementor-control-responsive-tablet{display:none}.elementor-panel .elementor-control-wp{line-height:1.5}.elementor-panel .elementor-control-wp p{margin:15px 0}.elementor-panel .elementor-control-field{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-panel .elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-top:10px}.elementor-panel .elementor-label-block.elementor-control-hidden-label>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:45%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-panel .elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:55%}.elementor-panel .elementor-control-field-description{margin-top:10px}.elementor-panel .elementor-required{color:#b01b1b}.elementor-panel .elementor-choices{display:table;width:100%;height:27px;background-color:#a4afb7;text-align:center;border-spacing:1px;border-radius:3px}.elementor-panel .elementor-choices input{display:none}.elementor-panel .elementor-choices input:checked+.elementor-choices-label{color:#fff}.elementor-panel .elementor-choices input:not(:checked)+.elementor-choices-label{background-color:#fff;color:#a4afb7}.elementor-panel .elementor-choices .elementor-choices-label{display:table-cell;vertical-align:middle;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer}.elementor-panel .elementor-slider{display:inline-block;margin-top:10px;height:4px;background-color:#a4afb7;border-radius:5px;position:relative;width:67%}.elementor-panel .elementor-slider .ui-slider-handle{height:16px;width:16px;background-color:#fff;display:inline-block;top:50%;-webkit-transform:translateY(-50%) translateX(-8px);-ms-transform:translateY(-50%) translateX(-8px);transform:translateY(-50%) translateX(-8px);position:absolute;-webkit-box-shadow:1px 1px 6px rgba(0,0,0,.3);box-shadow:1px 1px 6px rgba(0,0,0,.3);border-radius:50%;cursor:pointer}.elementor-panel .elementor-slider-input{width:33%;float:right}.elementor-panel .elementor-slider-input input{width:80%;float:right}.elementor-panel .elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-panel .elementor-units-choices input{display:none}.elementor-panel .elementor-units-choices input:not(:checked)+label{color:#c2cbd2}.elementor-panel .elementor-units-choices input:checked+label{text-decoration:underline}.elementor-panel .elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-panel .elementor-control-responsive-switchers{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 5px}.elementor-panel .elementor-responsive-switcher{display:inline-block;border-radius:50%;height:18px;width:18px;background-color:#a4afb7;cursor:pointer;position:relative;margin-left:5px;color:#fff;font-size:8px;text-align:center;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}.elementor-panel .elementor-responsive-switcher:hover{background-color:#c2cbd2}.elementor-panel .elementor-responsive-switcher i{line-height:18px}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher{background:#c2cbd2}.elementor-device-desktop #elementor-panel .elementor-panel-controls-stack:not(.elementor-responsive-switchers-open) .elementor-responsive-switcher:not(.elementor-responsive-switcher-desktop){display:none}.elementor-device-mobile .elementor-panel .elementor-responsive-switcher-mobile,.elementor-device-tablet .elementor-panel .elementor-responsive-switcher-tablet{background-color:#71d7f7}.elementor-panel .elementor-update-preview{margin:15px 15px 0;background-color:#e6e9ec;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-panel .elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-panel .elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-panel .elementor-control-align .elementor-choices,.elementor-panel .elementor-control-position .elementor-choices,.elementor-panel .elementor-control-text_align .elementor-choices{direction:ltr}.elementor-panel .elementor-control-type-media .elementor-control-media{padding:7px;border:1px solid;height:150px}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover){border-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:not(:hover) .elementor-control-media-upload-button{background-color:#d5dadf}.elementor-panel .elementor-control-type-media .elementor-control-media:hover{border-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media:hover .elementor-control-media-upload-button{background-color:#a4afb7}.elementor-panel .elementor-control-type-media .elementor-control-media.media-empty .elementor-control-media-image-area,.elementor-panel .elementor-control-type-media .elementor-control-media:not(.media-empty) .elementor-control-media-upload-button{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media>*{height:100%;cursor:pointer;position:relative}.elementor-panel .elementor-control-type-media .fa-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#fff;font-size:20px}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:not(:hover) .elementor-control-media-delete{display:none}.elementor-panel .elementor-control-type-media .elementor-control-media-image-area:hover .elementor-control-media-image{opacity:.5}.elementor-panel .elementor-control-type-media .elementor-control-media-delete{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:9.5px;font-size:11px;color:#fff;background-color:#a4afb7;text-transform:uppercase}.elementor-panel .elementor-control-type-media .elementor-control-media-image{height:100%;background-size:cover}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-panel .elementor-control-type-dimensions li{float:left;width:20%}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-panel .elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#a4afb7;height:27px}.elementor-panel .elementor-control-type-dimensions li input{border-left:none;border-radius:0;padding:4px 0}.elementor-panel .elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-panel .elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #a4afb7;border-left:none;background-color:#fff;padding:0;outline:none;border-radius:0 3px 3px 0;cursor:pointer}.elementor-panel .elementor-control-type-dimensions li:first-child input{border-left:1px solid #a4afb7;border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-panel .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-panel .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-external-show input{padding-right:46px}.elementor-panel .elementor-control-type-url .elementor-control-input-wrapper{position:relative}.elementor-panel .elementor-control-type-url .elementor-control-url-more{position:absolute;top:0;right:0;height:26px;width:40px;border-left:1px solid;cursor:pointer;font-size:10px;border-radius:0 3px 3px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-panel .elementor-control-type-url .elementor-control-url-more i{font-size:13px}.elementor-panel .elementor-control-type-url .elementor-control-url-more-input,.elementor-panel .elementor-control-type-url .elementor-control-url-more-input:not(:checked)+.elementor-control-url-more-options{display:none}.elementor-panel .elementor-control-type-url .elementor-control-url-more-options{padding-top:10px}.elementor-panel .elementor-control-type-url .elementor-control-url-option{padding:5px;font-size:12px}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url],.elementor-panel .elementor-control-type-url input[type=url]{direction:ltr}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:not(:focus)+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-panel .elementor-control-type-url .elementor-input[data-setting=url]:focus+.elementor-control-url-more,.elementor-panel .elementor-control-type-url input[type=url]:focus+.elementor-control-url-more{border-color:#a4afb7}.elementor-panel .elementor-control-type-section{margin-top:10px;padding:0}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section){padding-top:15px}.elementor-panel .elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-title{width:70%}.elementor-panel .elementor-control-type-color>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{height:27px;width:30%}.elementor-panel .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-panel .elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec;border-radius:3px}.elementor-panel .elementor-control-type-wysiwyg #insert-media-button{margin-top:7px;height:auto;line-height:1;font-size:10px;padding:3px 7px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-panel .elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-panel .elementor-control-type-wysiwyg .wp-switch-editor{border:none;color:#6d7882;font-size:10px;padding:3px 9px 4px;border-radius:3px 3px 0 0}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .html-active .switch-html,.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-panel .elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-panel .elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-panel .elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-panel .elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-panel .elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:active,.elementor-panel .elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-panel .elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-panel .elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-panel .elementor-control-type-icon .select2-selection__rendered .fa{margin-right:3px}.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-panel .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnails{overflow:hidden;margin-top:20px;cursor:pointer}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:40px;height:40px;background-size:cover;background-position:50% 50%;float:left;margin-bottom:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-thumbnail:not(:nth-child(5n)){margin-right:10px}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-add{width:100%;height:30px;color:#fff;background-color:#a4afb7;margin-top:10px;text-transform:uppercase}.elementor-panel .elementor-control-type-gallery .elementor-control-gallery-clear{color:#b01b1b;cursor:pointer}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset{border:1px solid #e6e9ec;padding:3px;border-radius:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset){display:inline-block;cursor:pointer;height:50px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset:not(.elementor-control-structure-current-preset) svg{height:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-current-preset svg{display:block;width:100%}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset{padding:10px 0 0 2px;font-size:11px;cursor:pointer;color:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-reset i{margin-right:8px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{color:#495157;font-weight:700;padding:13.5px 20px;position:relative}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{content:"";position:absolute;left:0;right:0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{top:0;background-color:#e6e9ec;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:after,.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:after{bottom:0;height:1px;background-color:#e6e9ec}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,50%,.1)}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title{margin:15px -20px 0}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets-title:before{height:3px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input{display:none}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset{border:1px solid #a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-more-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-top:15px}.elementor-panel .elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-panel .elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:70px;float:left}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-panel .elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:70px}.elementor-panel .elementor-control-type-code{padding:0 10px 15px}.elementor-panel .elementor-control-type-wp_widget .widget-inside{display:block}.elementor-panel .elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-panel .elementor-control-type-tabs{font-size:.8em;color:#a4afb7;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:30px;border-top:1px solid #a4afb7;border-bottom:1px solid #a4afb7;border-right:1px solid #a4afb7;cursor:pointer}.elementor-panel .elementor-control-type-tab:first-child{border-left:1px solid #a4afb7;border-top-left-radius:3px;border-bottom-left-radius:3px}.elementor-panel .elementor-control-type-tab:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.elementor-panel .elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;color:#fff}.elementor-panel .elementor-tab-close{display:none!important}.elementor-panel .elementor-control-type-repeater,.elementor-panel .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding:0 10px 15px}.elementor-panel .elementor-control-type-repeater .elementor-control:before,.elementor-panel .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-panel .elementor-control-type-repeater .repeater-fields{margin:10px 0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top-width:0;padding-top:15px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-controls .wp-picker-container.wp-picker-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);border-width:0}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .fa{margin-right:5px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-panel .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-panel .elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding:10px}.elementor-panel .elementor-control-type-textarea textarea{display:block}.elementor-panel .elementor-control-type-box_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-box_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-text_shadow .elementor-control-input-wrapper{overflow:hidden}.elementor-panel .elementor-control-type-text_shadow .elementor-shadow-slider{margin-top:10px}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-title{width:70%}.elementor-panel .elementor-control-type-switcher.elementor-label-inline>.elementor-control-content .elementor-control-field .elementor-control-input-wrapper{width:30%}.elementor-panel .elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-panel .elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;width:49px;height:20px;background-color:#fff;border-radius:18px;cursor:pointer}.elementor-panel .elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-panel .elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after,.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-panel .elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-panel .elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-panel .elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:30px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-panel .elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel .elementor-control-type-order input{display:none}.elementor-panel .elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-panel .elementor-control-type-order select{border-radius:3px 0 0 3px}.elementor-panel .elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-panel .elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-panel .elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-panel .elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-panel .elementor-control-type-hidden{display:none!important}.elementor-panel .wp-picker-container.wp-picker-active{position:absolute;z-index:1;top:0;left:0;background-color:#fff;border:solid #fff;border-width:0 17px 0 12px;padding-top:10px;-webkit-box-shadow:0 0 5px rgba(0,0,0,.4);box-shadow:0 0 5px rgba(0,0,0,.4)}.elementor-panel .wp-picker-container.wp-picker-active .wp-color-result{float:right}.elementor-panel .wp-picker-container.wp-picker-active .wp-picker-input-wrap{padding-left:10px;float:left}.elementor-panel .wp-picker-container *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-container .iris-picker{border:none}.elementor-panel .wp-color-result{margin:0;width:48px;height:25px;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;padding:0;border-radius:3px;border:1px solid #d5dadf}.elementor-panel .wp-color-result,.elementor-panel .wp-color-result:focus{-webkit-box-shadow:inset 0 0 0 3px #fff;box-shadow:inset 0 0 0 3px #fff}.elementor-panel .wp-color-result.wp-picker-open:after,.elementor-panel .wp-color-result:after{content:none}.elementor-panel .wp-color-result:hover{border:1px solid #a4afb7}.elementor-panel .wp-color-result:active,.elementor-panel .wp-color-result:focus{outline:0}.elementor-panel .wp-picker-clear.button,.elementor-panel .wp-picker-default.button{height:26px;width:48px;padding:0;background-color:#d5dadf;border-radius:0 3px 3px 0;margin:0}.elementor-panel .wp-color-picker{float:left;width:100px;max-width:100px;border-radius:3px 0 0 3px;line-height:1}.elementor-panel .wp-picker-holder *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-panel .wp-picker-open~.wp-picker-holder{clear:both;margin-bottom:15px}.elementor-panel .elementor-control .wp-picker-container:not(.wp-picker-active){float:right}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active{-webkit-transform:translateY(6px);-ms-transform:translateY(6px);transform:translateY(6px)}.elementor-panel .elementor-control .wp-picker-container.wp-picker-active .wp-color-result{margin-right:3px}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:2}.elementor-panel .elementor-panel-footer-sub-menu{border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item[data-device-mode=mobile-landscape] .fa-mobile{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:left;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:left;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:left;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-save{width:90px;padding:0 10px}.elementor-panel #elementor-panel-footer-save .elementor-button{font-size:11px;text-transform:uppercase;width:100%;height:26px;background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-footer-publish .elementor-icon,.elementor-panel #elementor-panel-footer-publish .elementor-title{color:#39b54a}.elementor-panel #elementor-panel-footer-discard .elementor-icon,.elementor-panel #elementor-panel-footer-discard .elementor-title{color:#b01b1b}#elementor-mode-switcher{position:absolute;left:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:3px 1px 5px rgba(0,0,0,.1);box-shadow:3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover,body.elementor-editor-preview #elementor-mode-switcher{background-color:#9b0a46;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .fa{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-delete,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner,.elementor-revision-item:not(:hover) .elementor-revision-item__tools-delete{display:none}.elementor-revision-item__gravatar{border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-left:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-item__tools-delete{cursor:pointer}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}.elementor-history-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;line-height:1.4;cursor:pointer}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .fa:before{content:"\f1da"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:inherit}.elementor-history-item-current .elementor-history-item__icon .fa:before,.elementor-history-item-current:hover .elementor-history-item__icon .fa:before{content:"\f00c"}.elementor-history-item__details{width:95%}.elementor-history-item__title{font-weight:700}.elementor-history-item__action,.elementor-history-item__subtitle{font-weight:lighter}.elementor-history-item__action{font-style:italic;text-decoration:underline}.elementor-history-item .__icon{float:right}.elementor-history-revisions-message{font-size:11px;text-align:center;padding:5px 0}#elementor-preview{background-color:#333;position:absolute;height:100%;top:0;right:0;border:0}.elementor-device-desktop #elementor-preview{overflow-y:hidden}body:not(.elementor-device-desktop) #elementor-preview{overflow-y:auto}#elementor-preview-responsive-wrapper{position:absolute;top:0;bottom:0;left:0;right:0;-webkit-transition:all .5s ease 0s;-o-transition:all .5s ease 0s;transition:all .5s ease 0s}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%}.elementor-device-tablet #elementor-preview-responsive-wrapper{width:768px;height:1025px;padding:40px 10px 70px}.elementor-device-mobile #elementor-preview-responsive-wrapper{width:360px;height:640px;padding:40px 10px 70px}body:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{border-radius:30px;background-color:#111;margin:30px auto 80px;-webkit-box-sizing:content-box;box-sizing:content-box}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:5}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:5px 8px 4px;text-align:center;border-radius:3px}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}#elementor-introduction .dialog-widget-header{padding:40px 0 0}#elementor-introduction .dialog-widget-content{width:700px;max-width:100%}#elementor-introduction .elementor-video-wrapper{padding-bottom:62.4%}#elementor-introduction .dialog-message{margin-top:40px}#elementor-introduction-title{color:#9b0a46;font-size:27px;font-weight:700}#elementor-introduction-subtitle{margin-top:12px;font-size:16px;color:#a4afb7}#elementor-template-library-modal .dialog-widget-content{width:990px;background-color:#f1f3f5}#elementor-template-library-modal .dialog-widget-header{padding:0;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative;z-index:1}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .dialog-message{height:630px;max-height:85vh;overflow:auto;padding:15px}#elementor-template-library-modal a,#elementor-template-library-modal a:hover{color:inherit}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#9b0a46}#elementor-template-library-modal .elementor-button{text-transform:uppercase}#elementor-template-library-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}#elementor-template-library-header-logo-area{text-align:left;padding-left:15px}#elementor-template-library-header-logo-area>*{float:left}#elementor-template-library-header-logo-area>*>*{vertical-align:middle}#elementor-template-library-header-logo{font-size:15px;text-transform:uppercase;color:#495157;font-weight:700;cursor:pointer}#elementor-template-library-header-logo i{padding-right:10px;color:#9b0a46;font-size:20px}#elementor-template-library-header-menu-area{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-template-library-header-menu{text-align:center}.elementor-template-library-menu-item{display:inline-block;padding:17px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f3f3f3),to(#fff));background-image:-webkit-linear-gradient(top,#f3f3f3,#fff);background-image:-o-linear-gradient(top,#f3f3f3,#fff);background-image:linear-gradient(180deg,#f3f3f3,#fff);border-bottom:3px solid #9b0a46}#elementor-template-library-header-items-area{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-template-library-header-item{position:relative;border-left:1px solid #e6e9ec;height:50px;-webkit-box-sizing:content-box;box-sizing:content-box;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-header-item:not(:hover){color:#a4afb7}.elementor-template-library-header-item>i{font-size:18px}#elementor-template-library-header-close-modal,#elementor-template-library-header-save{width:56px}#elementor-template-library-header-close-modal,#elementor-template-library-header-preview-insert-wrapper,#elementor-template-library-header-save{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px}#elementor-template-library-header-preview-back{padding:16.5px 16.5px 15px 0;border-right:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-right:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-loading .elementor-loading-title{color:#a4afb7}#elementor-template-library-loading .elementor-loader-box{background-color:#d5dadf}#elementor-template-library-templates-container{overflow:hidden}#elementor-template-library-templates-container[data-template-source=local]{-webkit-box-shadow:1px 1px 5px rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.1);margin:15px}#elementor-template-library-templates-container:not([data-template-source=remote])+#elementor-template-library-footer-banner{display:none}.elementor-template-library-template-remote{float:left;width:25%;padding:0 15px;margin-top:15px}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body{position:relative}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{position:absolute;content:"pro";text-transform:uppercase;top:5px;right:5px;background-color:#9b0a46;color:#d5dadf;padding:1px 4px;font-size:9px;border-radius:2px}.elementor-template-library-template-remote .elementor-template-library-template-body{height:250px;border:3px solid #fff;position:relative;-webkit-box-shadow:0 1px 6px rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.2)}.elementor-template-library-template-remote .elementor-template-library-template-body:not(:hover) .elementor-template-library-template-controls{opacity:0}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;background-size:cover;background-position-x:50%}.elementor-template-library-template-remote .elementor-template-library-template-controls{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.elementor-template-library-template-remote .elementor-template-library-template-action{font-size:11px;width:150px;padding:11px}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:relative;height:180px;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-template-library-template-remote .elementor-template-library-template-name{margin:13px 0 10px;font-size:12px;text-align:center;color:#6d7882}.elementor-template-library-template-local{background-color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-bottom:1px solid #d5dadf;height:50px;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-controls{visibility:hidden}.elementor-template-library-template-local>*{text-align:start}.elementor-template-library-template-local .elementor-template-library-template-icon{text-align:center;width:6%}.elementor-template-library-template-local .elementor-template-library-template-name{font-size:13px;font-weight:500;width:35%}.elementor-template-library-template-local .elementor-template-library-template-type{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls{direction:rtl;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-template-library-template-local .elementor-template-library-template-controls>*{direction:ltr}.elementor-template-library-template-local .elementor-template-library-template-controls>div{display:inline-block;margin-left:15px;cursor:pointer;font-weight:500;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover){color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-left:6px}.elementor-template-library-template-local .elementor-template-library-template-delete:hover{color:#b01b1b}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 20px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{width:1440px;height:150%;-webkit-transform:scale(.666) translateX(-25%) translateY(-25%);-ms-transform:scale(.666) translateX(-25%) translateY(-25%);transform:scale(.666) translateX(-25%) translateY(-25%)}.elementor-template-library-blank-title{font-size:30px;margin-top:55px}.elementor-template-library-blank-excerpt{font-size:18px;color:#a4afb7;margin-top:20px;font-weight:300}#elementor-template-library-save-template-form{margin-top:55px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:60px;font-size:18px}#elementor-template-library-save-template-name{width:460px;background-color:#fff;font-weight:300;color:#a4afb7;padding-left:25px;border-radius:3px 0 0 3px;border:none}#elementor-template-library-save-template-name:focus{border:1px solid #e6e9ec}#elementor-template-library-save-template-submit{width:150px;border-radius:0 3px 3px 0;font-weight:500}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}.elementor-template-library-blank-footer{position:absolute;bottom:90px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-size:13px;font-style:italic}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty-icon{font-size:96px;margin-top:40px;color:#d5dadf}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}
assets/css/frontend-rtl.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
@@ -871,7 +871,8 @@ body.admin-bar .dialog-close-button {
871
  margin: 0;
872
  line-height: 1; }
873
  .elementor-widget-heading .elementor-heading-title > a {
874
- color: inherit; }
 
875
  .elementor-widget-heading .elementor-heading-title.elementor-size-small {
876
  font-size: 15px; }
877
  .elementor-widget-heading .elementor-heading-title.elementor-size-medium {
@@ -1658,6 +1659,10 @@ body.admin-bar .dialog-close-button {
1658
  background-color: #1ab7ea; }
1659
  .elementor-social-icon-vk {
1660
  background-color: #45668e; }
 
 
 
 
1661
  .elementor-social-icon-whatsapp {
1662
  background-color: #25d366; }
1663
  .elementor-social-icon-wordpress {
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
871
  margin: 0;
872
  line-height: 1; }
873
  .elementor-widget-heading .elementor-heading-title > a {
874
+ color: inherit;
875
+ font-size: inherit; }
876
  .elementor-widget-heading .elementor-heading-title.elementor-size-small {
877
  font-size: 15px; }
878
  .elementor-widget-heading .elementor-heading-title.elementor-size-medium {
1659
  background-color: #1ab7ea; }
1660
  .elementor-social-icon-vk {
1661
  background-color: #45668e; }
1662
+ .elementor-social-icon-weibo {
1663
+ background-color: #df2029; }
1664
+ .elementor-social-icon-weixin {
1665
+ background-color: #7bb32e; }
1666
  .elementor-social-icon-whatsapp {
1667
  background-color: #25d366; }
1668
  .elementor-social-icon-wordpress {
assets/css/frontend-rtl.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
- @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor .elementor-background-video{position:absolute;max-width:none;top:50%;left:50%;-webkit-transform:translateY(-50%) translateX(-50%);-ms-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%)}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;opacity:.8;text-shadow:1px 0 6px rgba(0,0,0,.3);-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:FontAwesome;-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.elementor-custom-embed-play.elementor-playing i:before{content:"\f1ce"}.elementor-swiper-button{position:absolute;z-index:1;cursor:pointer;font-size:25px;color:#fff;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:40px}.elementor-swiper-button-next{right:40px}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e800";font-family:eicons;font-size:12px;margin-top:5px}.elementor:after{position:absolute;opacity:0;width:0;height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (min-width:1025px){.elementor:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){.elementor:after{content:"tablet"}}@media (max-width:767px){.elementor:after{content:"mobile"}}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-wrap,.elementor-widget-wrap{width:100%;position:relative}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-column{position:relative;min-height:1px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (max-width:767px){.elementor-column{width:100%}.elementor-reverse-mobile>.elementor-container>.elementor-row{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.elementor-form-fields-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>textarea{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\f0d7";font-family:FontAwesome;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none}.elementor-field-subgroup{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;border-radius:2px}.elementor-field-textual.elementor-size-sm{font-size:15px;min-height:40px;padding:5px 14px;border-radius:3px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}@media screen and (max-width:1024px){.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}@media screen and (max-width:767px){.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\f00c";display:inline-block;font-family:fontawesome;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\f00d"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0 none}.elementor-form .elementor-button>span{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button .elementor-align-icon-right{-webkit-box-ordinal-group:1;-webkit-order:0;-ms-flex-order:0;order:0}.elementor-form .elementor-button .elementor-align-icon-left{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-widget-heading .elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title>a{color:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:block}.elementor-widget-image .elementor-image img{vertical-align:middle}.elementor-widget-image .elementor-image.elementor-image-shape-circle{border-radius:50%}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;color:#fff;text-align:center;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff;opacity:.9}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}.elementor-button.elementor-size-sm{font-size:15px;padding:12px 24px;border-radius:3px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}.elementor-button .elementor-align-icon-right{float:right;margin-left:5px}.elementor-button .elementor-align-icon-left{float:left;margin-right:5px}.elementor-button .elementor-button-text{display:inline-block}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider-separator{display:inline-block}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;color:#222;line-height:1}.elementor-counter .elementor-counter-number-prefix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:right}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;left:10px;top:10px;padding:3px;font-size:13px;line-height:1;background:transparent;color:inherit;border:none}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:30px;line-height:30px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;padding-right:15px}.elementor-progress-percentage{padding-left:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-wrapper{height:25px;line-height:25px}.elementor-progress-text{padding-right:10px}}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px none #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:right}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.active:after,.elementor-widget-tabs .elementor-tab-desktop-title.active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid;border-bottom-style:none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-style:solid;border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:solid;border-top-style:none}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-accordion{text-align:right}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-accordion-title{padding:15px 20px;font-weight:700;line-height:1;cursor:pointer}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon .fa:before{content:"\f067"}.elementor-accordion .elementor-accordion-title.active .elementor-accordion-icon .fa:before{content:"\f068"}.elementor-accordion .elementor-accordion-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-accordion-title{padding:12px 15px}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-accordion-content{padding:7px 15px}}.elementor-toggle{text-align:right}.elementor-toggle .elementor-toggle-title{font-weight:700;line-height:1;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon .fa:before{content:""}.elementor-toggle .elementor-toggle-title.active{border-bottom:none}.elementor-toggle .elementor-toggle-title.active .elementor-toggle-icon .fa:before{content:"\f0d7"}.elementor-toggle .elementor-toggle-content{padding:0 15px 15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-toggle-title{padding:12px}.elementor-toggle .elementor-toggle-content{padding:0 12px 10px}}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i{width:1em;height:1em}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{border-radius:50%}.elementor-widget-icon-list.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget-icon-list:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget-icon-list:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}.elementor-widget-icon-list .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget-icon-list .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget-icon-list .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget-icon-list .elementor-icon-list-item,.elementor-widget-icon-list .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-list .elementor-icon-list-item a{width:100%}.elementor-widget-icon-list .elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget-icon-list .elementor-icon-list-icon{text-align:center}.elementor-widget-icon-list .elementor-icon-list-icon i{vertical-align:middle}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-aspect-ratio-169 .elementor-video-wrapper{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-video-wrapper{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-video-wrapper{padding-bottom:66.6666%}.elementor-image-carousel-wrapper .slick-image-stretch .slick-slide .slick-slide-image{width:100%}.swiper-container .swiper-slide figure{line-height:0}.elementor-widget-image-box .elementor-image-box-content,.swiper-container .swiper-slide figure img{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em}.elementor-testimonial-wrapper.elementor-testimonial-text-align-left{text-align:left}.elementor-testimonial-wrapper.elementor-testimonial-text-align-right{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;border-radius:50%}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-left:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{font-size:25px;text-align:center;padding:.5em;margin-left:5px;cursor:pointer}.elementor-social-icon i{color:#fff}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-google-plus{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-linkedin{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#55acee}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-shape-rounded .elementor-icon.elementor-social-icon{border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{border-radius:50%}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:right;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff url(../images/ajax-loader.gif) 50% no-repeat}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:FontAwesome;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\f104"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\f105"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\f105"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\f104"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:FontAwesome;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\f111";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:.2}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1;background:#007aff}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 5px}.swiper-pagination-progress{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progress .swiper-pagination-progressbar{background:#007aff;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progress{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progress{width:4px;height:100%;left:0;top:0}.swiper-pagination-progress.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar{background:#fff}.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:a 1s steps(12) infinite;animation:a 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox .dialog-widget-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.4s;animation-duration:.4s}.elementor-lightbox .dialog-message:not(.elementor-video-wrapper){height:100%}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;color:#fff;font-size:25px;padding:5px;z-index:2;line-height:1;opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .dialog-lightbox-close-button:hover{opacity:.9}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:80px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}.elementor-lightbox .elementor-lightbox-image{max-height:100%}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}@media (min-width:768px){.elementor-lightbox .elementor-video-container{width:50%}}@media (max-width:767px){.elementor-lightbox .elementor-video-container{width:100%}}.elementor-lightbox .elementor-swiper-button{opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .elementor-swiper-button:hover{opacity:.9}.elementor-lightbox .elementor-swiper-button-prev{left:40px}.elementor-lightbox .elementor-swiper-button-next{right:40px}@media (min-width:767px){.elementor-lightbox .dialog-lightbox-close-button{top:35px;right:35px}}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-bottom{bottom:-1px}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}@media (max-width:767px){body:not(.elementor-editor-active) .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){body:not(.elementor-editor-active) .elementor-hidden-tablet{display:none}}@media (min-width:1025px){body:not(.elementor-editor-active) .elementor-hidden-desktop{display:none}}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
+ @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-left:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor .elementor-background-video{position:absolute;max-width:none;top:50%;left:50%;-webkit-transform:translateY(-50%) translateX(-50%);-ms-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%)}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;opacity:.8;text-shadow:1px 0 6px rgba(0,0,0,.3);-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:FontAwesome;-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.elementor-custom-embed-play.elementor-playing i:before{content:"\f1ce"}.elementor-swiper-button{position:absolute;z-index:1;cursor:pointer;font-size:25px;color:#fff;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:40px}.elementor-swiper-button-next{right:40px}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e800";font-family:eicons;font-size:12px;margin-top:5px}.elementor:after{position:absolute;opacity:0;width:0;height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (min-width:1025px){.elementor:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){.elementor:after{content:"tablet"}}@media (max-width:767px){.elementor:after{content:"mobile"}}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-wrap,.elementor-widget-wrap{width:100%;position:relative}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-column{position:relative;min-height:1px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (max-width:767px){.elementor-column{width:100%}.elementor-reverse-mobile>.elementor-container>.elementor-row{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.elementor-form-fields-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>textarea{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\f0d7";font-family:FontAwesome;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none}.elementor-field-subgroup{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;border-radius:2px}.elementor-field-textual.elementor-size-sm{font-size:15px;min-height:40px;padding:5px 14px;border-radius:3px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}@media screen and (max-width:1024px){.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}@media screen and (max-width:767px){.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\f00c";display:inline-block;font-family:fontawesome;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\f00d"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0 none}.elementor-form .elementor-button>span{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button .elementor-align-icon-right{-webkit-box-ordinal-group:1;-webkit-order:0;-ms-flex-order:0;order:0}.elementor-form .elementor-button .elementor-align-icon-left{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-widget-heading .elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title>a{color:inherit;font-size:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:block}.elementor-widget-image .elementor-image img{vertical-align:middle}.elementor-widget-image .elementor-image.elementor-image-shape-circle{border-radius:50%}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;color:#fff;text-align:center;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff;opacity:.9}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}.elementor-button.elementor-size-sm{font-size:15px;padding:12px 24px;border-radius:3px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}.elementor-button .elementor-align-icon-right{float:right;margin-left:5px}.elementor-button .elementor-align-icon-left{float:left;margin-right:5px}.elementor-button .elementor-button-text{display:inline-block}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider-separator{display:inline-block}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;color:#222;line-height:1}.elementor-counter .elementor-counter-number-prefix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:right}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;left:10px;top:10px;padding:3px;font-size:13px;line-height:1;background:transparent;color:inherit;border:none}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:30px;line-height:30px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;padding-right:15px}.elementor-progress-percentage{padding-left:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-wrapper{height:25px;line-height:25px}.elementor-progress-text{padding-right:10px}}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px none #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:right}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.active:after,.elementor-widget-tabs .elementor-tab-desktop-title.active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid;border-bottom-style:none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-style:solid;border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:solid;border-top-style:none}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-accordion{text-align:right}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-accordion-title{padding:15px 20px;font-weight:700;line-height:1;cursor:pointer}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon .fa:before{content:"\f067"}.elementor-accordion .elementor-accordion-title.active .elementor-accordion-icon .fa:before{content:"\f068"}.elementor-accordion .elementor-accordion-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-accordion-title{padding:12px 15px}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-accordion-content{padding:7px 15px}}.elementor-toggle{text-align:right}.elementor-toggle .elementor-toggle-title{font-weight:700;line-height:1;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon .fa:before{content:""}.elementor-toggle .elementor-toggle-title.active{border-bottom:none}.elementor-toggle .elementor-toggle-title.active .elementor-toggle-icon .fa:before{content:"\f0d7"}.elementor-toggle .elementor-toggle-content{padding:0 15px 15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-toggle-title{padding:12px}.elementor-toggle .elementor-toggle-content{padding:0 12px 10px}}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i{width:1em;height:1em}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{border-radius:50%}.elementor-widget-icon-list.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget-icon-list:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget-icon-list:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}.elementor-widget-icon-list .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget-icon-list .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget-icon-list .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget-icon-list .elementor-icon-list-item,.elementor-widget-icon-list .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-list .elementor-icon-list-item a{width:100%}.elementor-widget-icon-list .elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget-icon-list .elementor-icon-list-icon{text-align:center}.elementor-widget-icon-list .elementor-icon-list-icon i{vertical-align:middle}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-aspect-ratio-169 .elementor-video-wrapper{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-video-wrapper{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-video-wrapper{padding-bottom:66.6666%}.elementor-image-carousel-wrapper .slick-image-stretch .slick-slide .slick-slide-image{width:100%}.swiper-container .swiper-slide figure{line-height:0}.elementor-widget-image-box .elementor-image-box-content,.swiper-container .swiper-slide figure img{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em}.elementor-testimonial-wrapper.elementor-testimonial-text-align-left{text-align:left}.elementor-testimonial-wrapper.elementor-testimonial-text-align-right{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;border-radius:50%}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-left:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{font-size:25px;text-align:center;padding:.5em;margin-left:5px;cursor:pointer}.elementor-social-icon i{color:#fff}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-google-plus{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-linkedin{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#55acee}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#df2029}.elementor-social-icon-weixin{background-color:#7bb32e}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-shape-rounded .elementor-icon.elementor-social-icon{border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{border-radius:50%}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:right;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff url(../images/ajax-loader.gif) 50% no-repeat}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:FontAwesome;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\f104"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\f105"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\f105"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\f104"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:FontAwesome;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\f111";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:.2}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1;background:#007aff}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 5px}.swiper-pagination-progress{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progress .swiper-pagination-progressbar{background:#007aff;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progress{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progress{width:4px;height:100%;left:0;top:0}.swiper-pagination-progress.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar{background:#fff}.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:a 1s steps(12) infinite;animation:a 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox .dialog-widget-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.4s;animation-duration:.4s}.elementor-lightbox .dialog-message:not(.elementor-video-wrapper){height:100%}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;color:#fff;font-size:25px;padding:5px;z-index:2;line-height:1;opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .dialog-lightbox-close-button:hover{opacity:.9}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:80px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}.elementor-lightbox .elementor-lightbox-image{max-height:100%}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}@media (min-width:768px){.elementor-lightbox .elementor-video-container{width:50%}}@media (max-width:767px){.elementor-lightbox .elementor-video-container{width:100%}}.elementor-lightbox .elementor-swiper-button{opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .elementor-swiper-button:hover{opacity:.9}.elementor-lightbox .elementor-swiper-button-prev{left:40px}.elementor-lightbox .elementor-swiper-button-next{right:40px}@media (min-width:767px){.elementor-lightbox .dialog-lightbox-close-button{top:35px;right:35px}}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-bottom{bottom:-1px}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}@media (max-width:767px){body:not(.elementor-editor-active) .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){body:not(.elementor-editor-active) .elementor-hidden-tablet{display:none}}@media (min-width:1025px){body:not(.elementor-editor-active) .elementor-hidden-desktop{display:none}}
assets/css/frontend.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
@@ -871,7 +871,8 @@ body.admin-bar .dialog-close-button {
871
  margin: 0;
872
  line-height: 1; }
873
  .elementor-widget-heading .elementor-heading-title > a {
874
- color: inherit; }
 
875
  .elementor-widget-heading .elementor-heading-title.elementor-size-small {
876
  font-size: 15px; }
877
  .elementor-widget-heading .elementor-heading-title.elementor-size-medium {
@@ -1658,6 +1659,10 @@ body.admin-bar .dialog-close-button {
1658
  background-color: #1ab7ea; }
1659
  .elementor-social-icon-vk {
1660
  background-color: #45668e; }
 
 
 
 
1661
  .elementor-social-icon-whatsapp {
1662
  background-color: #25d366; }
1663
  .elementor-social-icon-wordpress {
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  @charset "UTF-8";
3
  .dialog-widget {
4
  position: fixed;
871
  margin: 0;
872
  line-height: 1; }
873
  .elementor-widget-heading .elementor-heading-title > a {
874
+ color: inherit;
875
+ font-size: inherit; }
876
  .elementor-widget-heading .elementor-heading-title.elementor-size-small {
877
  font-size: 15px; }
878
  .elementor-widget-heading .elementor-heading-title.elementor-size-medium {
1659
  background-color: #1ab7ea; }
1660
  .elementor-social-icon-vk {
1661
  background-color: #45668e; }
1662
+ .elementor-social-icon-weibo {
1663
+ background-color: #df2029; }
1664
+ .elementor-social-icon-weixin {
1665
+ background-color: #7bb32e; }
1666
  .elementor-social-icon-whatsapp {
1667
  background-color: #25d366; }
1668
  .elementor-social-icon-wordpress {
assets/css/frontend.min.css CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
- @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor .elementor-background-video{position:absolute;max-width:none;top:50%;left:50%;-webkit-transform:translateY(-50%) translateX(-50%);-ms-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%)}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;opacity:.8;text-shadow:1px 0 6px rgba(0,0,0,.3);-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:FontAwesome;-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.elementor-custom-embed-play.elementor-playing i:before{content:"\f1ce"}.elementor-swiper-button{position:absolute;z-index:1;cursor:pointer;font-size:25px;color:#fff;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:40px}.elementor-swiper-button-next{right:40px}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e800";font-family:eicons;font-size:12px;margin-top:5px}.elementor:after{position:absolute;opacity:0;width:0;height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (min-width:1025px){.elementor:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){.elementor:after{content:"tablet"}}@media (max-width:767px){.elementor:after{content:"mobile"}}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-wrap,.elementor-widget-wrap{width:100%;position:relative}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-column{position:relative;min-height:1px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (max-width:767px){.elementor-column{width:100%}.elementor-reverse-mobile>.elementor-container>.elementor-row{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.elementor-form-fields-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>textarea{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\f0d7";font-family:FontAwesome;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none}.elementor-field-subgroup{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;border-radius:2px}.elementor-field-textual.elementor-size-sm{font-size:15px;min-height:40px;padding:5px 14px;border-radius:3px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}@media screen and (max-width:1024px){.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}@media screen and (max-width:767px){.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\f00c";display:inline-block;font-family:fontawesome;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\f00d"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0 none}.elementor-form .elementor-button>span{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button .elementor-align-icon-right{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-form .elementor-button .elementor-align-icon-left{-webkit-box-ordinal-group:1;-webkit-order:0;-ms-flex-order:0;order:0}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-widget-heading .elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title>a{color:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:block}.elementor-widget-image .elementor-image img{vertical-align:middle}.elementor-widget-image .elementor-image.elementor-image-shape-circle{border-radius:50%}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;color:#fff;text-align:center;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff;opacity:.9}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}.elementor-button.elementor-size-sm{font-size:15px;padding:12px 24px;border-radius:3px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}.elementor-button .elementor-align-icon-right{float:right;margin-left:5px}.elementor-button .elementor-align-icon-left{float:left;margin-right:5px}.elementor-button .elementor-button-text{display:inline-block}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider-separator{display:inline-block}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;color:#222;line-height:1}.elementor-counter .elementor-counter-number-prefix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:13px;line-height:1;background:transparent;color:inherit;border:none}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:30px;line-height:30px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;padding-left:15px}.elementor-progress-percentage{padding-right:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-wrapper{height:25px;line-height:25px}.elementor-progress-text{padding-left:10px}}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px none #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:left}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.active:after,.elementor-widget-tabs .elementor-tab-desktop-title.active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid;border-bottom-style:none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-style:solid;border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:solid;border-top-style:none}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-accordion-title{padding:15px 20px;font-weight:700;line-height:1;cursor:pointer}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon .fa:before{content:"\f067"}.elementor-accordion .elementor-accordion-title.active .elementor-accordion-icon .fa:before{content:"\f068"}.elementor-accordion .elementor-accordion-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-accordion-title{padding:12px 15px}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-accordion-content{padding:7px 15px}}.elementor-toggle{text-align:left}.elementor-toggle .elementor-toggle-title{font-weight:700;line-height:1;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon .fa:before{content:""}.elementor-toggle .elementor-toggle-title.active{border-bottom:none}.elementor-toggle .elementor-toggle-title.active .elementor-toggle-icon .fa:before{content:"\f0d7"}.elementor-toggle .elementor-toggle-content{padding:0 15px 15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-toggle-title{padding:12px}.elementor-toggle .elementor-toggle-content{padding:0 12px 10px}}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i{width:1em;height:1em}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{border-radius:50%}.elementor-widget-icon-list.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget-icon-list:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget-icon-list:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}.elementor-widget-icon-list .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget-icon-list .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget-icon-list .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget-icon-list .elementor-icon-list-item,.elementor-widget-icon-list .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-list .elementor-icon-list-item a{width:100%}.elementor-widget-icon-list .elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget-icon-list .elementor-icon-list-icon{text-align:center}.elementor-widget-icon-list .elementor-icon-list-icon i{vertical-align:middle}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-aspect-ratio-169 .elementor-video-wrapper{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-video-wrapper{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-video-wrapper{padding-bottom:66.6666%}.elementor-image-carousel-wrapper .slick-image-stretch .slick-slide .slick-slide-image{width:100%}.swiper-container .swiper-slide figure{line-height:0}.elementor-widget-image-box .elementor-image-box-content,.swiper-container .swiper-slide figure img{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em}.elementor-testimonial-wrapper.elementor-testimonial-text-align-left{text-align:left}.elementor-testimonial-wrapper.elementor-testimonial-text-align-right{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;border-radius:50%}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-right:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:left}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{font-size:25px;text-align:center;padding:.5em;margin-right:5px;cursor:pointer}.elementor-social-icon i{color:#fff}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-google-plus{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-linkedin{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#55acee}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-shape-rounded .elementor-icon.elementor-social-icon{border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{border-radius:50%}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff url(../images/ajax-loader.gif) 50% no-repeat}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:FontAwesome;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\f104"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\f105"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\f105"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\f104"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:FontAwesome;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\f111";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:.2}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1;background:#007aff}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 5px}.swiper-pagination-progress{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progress .swiper-pagination-progressbar{background:#007aff;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progress{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progress{width:4px;height:100%;left:0;top:0}.swiper-pagination-progress.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar{background:#fff}.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:a 1s steps(12) infinite;animation:a 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox .dialog-widget-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.4s;animation-duration:.4s}.elementor-lightbox .dialog-message:not(.elementor-video-wrapper){height:100%}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;color:#fff;font-size:25px;padding:5px;z-index:2;line-height:1;opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .dialog-lightbox-close-button:hover{opacity:.9}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:80px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}.elementor-lightbox .elementor-lightbox-image{max-height:100%}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}@media (min-width:768px){.elementor-lightbox .elementor-video-container{width:50%}}@media (max-width:767px){.elementor-lightbox .elementor-video-container{width:100%}}.elementor-lightbox .elementor-swiper-button{opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .elementor-swiper-button:hover{opacity:.9}.elementor-lightbox .elementor-swiper-button-prev{left:40px}.elementor-lightbox .elementor-swiper-button-next{right:40px}@media (min-width:767px){.elementor-lightbox .dialog-lightbox-close-button{top:35px;right:35px}}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-bottom{bottom:-1px}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}@media (max-width:767px){body:not(.elementor-editor-active) .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){body:not(.elementor-editor-active) .elementor-hidden-tablet{display:none}}@media (min-width:1025px){body:not(.elementor-editor-active) .elementor-hidden-desktop{display:none}}
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
+ @charset "UTF-8";.dialog-widget{position:fixed;height:100%;width:100%;top:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999}.dialog-widget-content{background-color:#fff;position:absolute;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message,.dialog-widget-header{text-align:center}.dialog-message{font-size:12px;line-height:1.5}.dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-buttons-wrapper>button{border:none;background:none;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-buttons-wrapper>button:first-child{color:#6d7882}.dialog-buttons-wrapper>button.dialog-ok{color:#b01b1b}.dialog-buttons-wrapper>button.dialog-take_over{color:#39b54a}.dialog-buttons-wrapper>button:active{background-color:rgba(230,233,236,.5)}.dialog-buttons-wrapper>button::-moz-focus-inner{border:0}.dialog-widget-header{padding:20px 0;font-weight:500}.dialog-close-button{cursor:pointer;position:absolute;top:15px;right:15px;font-size:15px}.dialog-close-button:not(:hover){opacity:.4}body.admin-bar .dialog-close-button{top:30px}@media (max-width:767px){body.admin-bar .dialog-close-button{top:40px}}.dialog-confirm-widget .dialog-widget-header,.dialog-options-widget .dialog-widget-header{font-size:15px;color:#495157}.dialog-confirm-widget .dialog-buttons-wrapper>button,.dialog-options-widget .dialog-buttons-wrapper>button{width:50%}.dialog-confirm-widget .dialog-buttons-wrapper>button:first-child,.dialog-options-widget .dialog-buttons-wrapper>button:first-child{border-right:1px solid #e6e9ec}.dialog-confirm-widget .dialog-buttons-wrapper>button:hover,.dialog-options-widget .dialog-buttons-wrapper>button:hover{background-color:#f4f6f7}.dialog-alert-widget,.dialog-confirm-widget,.dialog-options-widget{-webkit-user-select:none;-moz-user-select:none}.dialog-alert-widget .dialog-widget-content,.dialog-confirm-widget .dialog-widget-content,.dialog-options-widget .dialog-widget-content{margin:auto;width:375px}.dialog-alert-widget .dialog-message,.dialog-confirm-widget .dialog-message,.dialog-options-widget .dialog-message{padding:0 20px;min-height:50px}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.elementor-video-wrapper{position:relative;height:0}.elementor-video-wrapper iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0}.elementor-hidden{display:none}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor .elementor-background-video{position:absolute;max-width:none;top:50%;left:50%;-webkit-transform:translateY(-50%) translateX(-50%);-ms-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%)}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;opacity:.8;text-shadow:1px 0 6px rgba(0,0,0,.3);-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:FontAwesome;-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.elementor-custom-embed-play.elementor-playing i:before{content:"\f1ce"}.elementor-swiper-button{position:absolute;z-index:1;cursor:pointer;font-size:25px;color:#fff;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:40px}.elementor-swiper-button-next{right:40px}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e800";font-family:eicons;font-size:12px;margin-top:5px}.elementor:after{position:absolute;opacity:0;width:0;height:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (min-width:1025px){.elementor:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){.elementor:after{content:"tablet"}}@media (max-width:767px){.elementor:after{content:"mobile"}}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-wrap,.elementor-widget-wrap{width:100%;position:relative}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-column{position:relative;min-height:1px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (max-width:767px){.elementor-column{width:100%}.elementor-reverse-mobile>.elementor-container>.elementor-row{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.elementor-form-fields-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above>.elementor-field-group>textarea{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\f0d7";font-family:FontAwesome;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none}.elementor-field-subgroup{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;border-radius:2px}.elementor-field-textual.elementor-size-sm{font-size:15px;min-height:40px;padding:5px 14px;border-radius:3px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}@media screen and (max-width:1024px){.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}@media screen and (max-width:767px){.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-stretch .elementor-field-type-submit button{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\f00c";display:inline-block;font-family:fontawesome;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\f00d"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0 none}.elementor-form .elementor-button>span{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button .elementor-align-icon-right{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-form .elementor-button .elementor-align-icon-left{-webkit-box-ordinal-group:1;-webkit-order:0;-ms-flex-order:0;order:0}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-widget-heading .elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title>a{color:inherit;font-size:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:block}.elementor-widget-image .elementor-image img{vertical-align:middle}.elementor-widget-image .elementor-image.elementor-image-shape-circle{border-radius:50%}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;color:#fff;text-align:center;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff;opacity:.9}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}.elementor-button.elementor-size-sm{font-size:15px;padding:12px 24px;border-radius:3px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}.elementor-button .elementor-align-icon-right{float:right;margin-left:5px}.elementor-button .elementor-align-icon-left{float:left;margin-right:5px}.elementor-button .elementor-button-text{display:inline-block}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider-separator{display:inline-block}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;color:#222;line-height:1}.elementor-counter .elementor-counter-number-prefix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:13px;line-height:1;background:transparent;color:inherit;border:none}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:30px;line-height:30px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;padding-left:15px}.elementor-progress-percentage{padding-right:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-wrapper{height:25px;line-height:25px}.elementor-progress-text{padding-left:10px}}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px none #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:left}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.active:after,.elementor-widget-tabs .elementor-tab-desktop-title.active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid;border-bottom-style:none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-style:solid;border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:solid;border-top-style:none}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-accordion-title{padding:15px 20px;font-weight:700;line-height:1;cursor:pointer}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon .fa:before{content:"\f067"}.elementor-accordion .elementor-accordion-title.active .elementor-accordion-icon .fa:before{content:"\f068"}.elementor-accordion .elementor-accordion-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-accordion-title{padding:12px 15px}.elementor-accordion .elementor-accordion-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-accordion-content{padding:7px 15px}}.elementor-toggle{text-align:left}.elementor-toggle .elementor-toggle-title{font-weight:700;line-height:1;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-toggle-title .elementor-toggle-icon .fa:before{content:""}.elementor-toggle .elementor-toggle-title.active{border-bottom:none}.elementor-toggle .elementor-toggle-title.active .elementor-toggle-icon .fa:before{content:"\f0d7"}.elementor-toggle .elementor-toggle-content{padding:0 15px 15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-toggle-title{padding:12px}.elementor-toggle .elementor-toggle-content{padding:0 12px 10px}}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i{width:1em;height:1em}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{border-radius:50%}.elementor-widget-icon-list.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget-icon-list:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget-icon-list:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}.elementor-widget-icon-list .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget-icon-list .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget-icon-list .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget-icon-list .elementor-icon-list-item,.elementor-widget-icon-list .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-list .elementor-icon-list-item a{width:100%}.elementor-widget-icon-list .elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget-icon-list .elementor-icon-list-icon{text-align:center}.elementor-widget-icon-list .elementor-icon-list-icon i{vertical-align:middle}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-aspect-ratio-169 .elementor-video-wrapper{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-video-wrapper{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-video-wrapper{padding-bottom:66.6666%}.elementor-image-carousel-wrapper .slick-image-stretch .slick-slide .slick-slide-image{width:100%}.swiper-container .swiper-slide figure{line-height:0}.elementor-widget-image-box .elementor-image-box-content,.swiper-container .swiper-slide figure img{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em}.elementor-testimonial-wrapper.elementor-testimonial-text-align-left{text-align:left}.elementor-testimonial-wrapper.elementor-testimonial-text-align-right{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;border-radius:50%}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-right:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:left}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{font-size:25px;text-align:center;padding:.5em;margin-right:5px;cursor:pointer}.elementor-social-icon i{color:#fff}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-google-plus{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-linkedin{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#55acee}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#df2029}.elementor-social-icon-weixin{background-color:#7bb32e}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-shape-rounded .elementor-icon.elementor-social-icon{border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{border-radius:50%}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff url(../images/ajax-loader.gif) 50% no-repeat}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:FontAwesome;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\f104"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\f105"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\f105"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\f104"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:FontAwesome;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\f111";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:.2}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1;background:#007aff}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 5px}.swiper-pagination-progress{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progress .swiper-pagination-progressbar{background:#007aff;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progress{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progress{width:4px;height:100%;left:0;top:0}.swiper-pagination-progress.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar{background:#fff}.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:a 1s steps(12) infinite;animation:a 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox .dialog-widget-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.4s;animation-duration:.4s}.elementor-lightbox .dialog-message:not(.elementor-video-wrapper){height:100%}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;color:#fff;font-size:25px;padding:5px;z-index:2;line-height:1;opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .dialog-lightbox-close-button:hover{opacity:.9}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:80px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}.elementor-lightbox .elementor-lightbox-image{max-height:100%}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}@media (min-width:768px){.elementor-lightbox .elementor-video-container{width:50%}}@media (max-width:767px){.elementor-lightbox .elementor-video-container{width:100%}}.elementor-lightbox .elementor-swiper-button{opacity:.5;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-lightbox .elementor-swiper-button:hover{opacity:.9}.elementor-lightbox .elementor-swiper-button-prev{left:40px}.elementor-lightbox .elementor-swiper-button-next{right:40px}@media (min-width:767px){.elementor-lightbox .dialog-lightbox-close-button{top:35px;right:35px}}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-bottom{bottom:-1px}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}@media (max-width:767px){body:not(.elementor-editor-active) .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){body:not(.elementor-editor-active) .elementor-hidden-tablet{display:none}}@media (min-width:1025px){body:not(.elementor-editor-active) .elementor-hidden-desktop{display:none}}
assets/js/admin-feedback.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  /* global jQuery, ElementorAdminFeedbackArgs */
4
  ( function( $ ) {
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  /* global jQuery, ElementorAdminFeedbackArgs */
4
  ( function( $ ) {
assets/js/admin-feedback.min.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  !function e(t,a,i){function n(r,c){if(!a[r]){if(!t[r]){var d="function"==typeof require&&require;if(!c&&d)return d(r,!0);if(o)return o(r,!0);var s=new Error("Cannot find module '"+r+"'");throw s.code="MODULE_NOT_FOUND",s}var l=a[r]={exports:{}};t[r][0].call(l.exports,function(e){var a=t[r][1][e];return n(a||e)},l,l.exports,e,t,a,i)}return a[r].exports}for(var o="function"==typeof require&&require,r=0;r<i.length;r++)n(i[r]);return n}({1:[function(e,t,a){!function(e){"use strict";var t={dialogsManager:new DialogsManager.Instance,cacheElements:function(){this.cache={$deactivateLink:e("#the-list").find('[data-slug="elementor"] span.deactivate a'),$dialogHeader:e("#elementor-deactivate-feedback-dialog-header"),$dialogForm:e("#elementor-deactivate-feedback-dialog-form")}},bindEvents:function(){var e=this;e.cache.$deactivateLink.on("click",function(t){t.preventDefault(),e.getModal().show()})},deactivate:function(){location.href=this.cache.$deactivateLink.attr("href")},initModal:function(){var e,t=this;t.getModal=function(){return e||(e=t.dialogsManager.createWidget("options",{id:"elementor-deactivate-feedback-modal",headerMessage:t.cache.$dialogHeader,message:t.cache.$dialogForm,hide:{onButtonClick:!1},position:{my:"center",at:"center"},onReady:function(){DialogsManager.getWidgetType("options").prototype.onReady.apply(this,arguments),this.addButton({name:"submit",text:ElementorAdminFeedbackArgs.i18n.submit_n_deactivate,callback:_.bind(t.sendFeedback,t)}),ElementorAdminFeedbackArgs.is_tracker_opted_in||this.addButton({name:"skip",text:ElementorAdminFeedbackArgs.i18n.skip_n_deactivate,callback:function(){t.deactivate()}})}})),e}},sendFeedback:function(){var t=this,a=t.cache.$dialogForm.serialize();t.getModal().getElements("submit").text("").addClass("elementor-loading"),e.post(ajaxurl,a,_.bind(this.deactivate,this))},init:function(){this.initModal(),this.cacheElements(),this.bindEvents()}};e(function(){t.init()})}(jQuery)},{}]},{},[1]);
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  !function e(t,a,i){function n(r,c){if(!a[r]){if(!t[r]){var d="function"==typeof require&&require;if(!c&&d)return d(r,!0);if(o)return o(r,!0);var s=new Error("Cannot find module '"+r+"'");throw s.code="MODULE_NOT_FOUND",s}var l=a[r]={exports:{}};t[r][0].call(l.exports,function(e){var a=t[r][1][e];return n(a||e)},l,l.exports,e,t,a,i)}return a[r].exports}for(var o="function"==typeof require&&require,r=0;r<i.length;r++)n(i[r]);return n}({1:[function(e,t,a){!function(e){"use strict";var t={dialogsManager:new DialogsManager.Instance,cacheElements:function(){this.cache={$deactivateLink:e("#the-list").find('[data-slug="elementor"] span.deactivate a'),$dialogHeader:e("#elementor-deactivate-feedback-dialog-header"),$dialogForm:e("#elementor-deactivate-feedback-dialog-form")}},bindEvents:function(){var e=this;e.cache.$deactivateLink.on("click",function(t){t.preventDefault(),e.getModal().show()})},deactivate:function(){location.href=this.cache.$deactivateLink.attr("href")},initModal:function(){var e,t=this;t.getModal=function(){return e||(e=t.dialogsManager.createWidget("options",{id:"elementor-deactivate-feedback-modal",headerMessage:t.cache.$dialogHeader,message:t.cache.$dialogForm,hide:{onButtonClick:!1},position:{my:"center",at:"center"},onReady:function(){DialogsManager.getWidgetType("options").prototype.onReady.apply(this,arguments),this.addButton({name:"submit",text:ElementorAdminFeedbackArgs.i18n.submit_n_deactivate,callback:_.bind(t.sendFeedback,t)}),ElementorAdminFeedbackArgs.is_tracker_opted_in||this.addButton({name:"skip",text:ElementorAdminFeedbackArgs.i18n.skip_n_deactivate,callback:function(){t.deactivate()}})}})),e}},sendFeedback:function(){var t=this,a=t.cache.$dialogForm.serialize();t.getModal().getElements("submit").text("").addClass("elementor-loading"),e.post(ajaxurl,a,_.bind(this.deactivate,this))},init:function(){this.initModal(),this.cacheElements(),this.bindEvents()}};e(function(){t.init()})}(jQuery)},{}]},{},[1]);
assets/js/admin.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  ( function( $ ) {
4
  'use strict';
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  ( function( $ ) {
4
  'use strict';
assets/js/admin.min.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  !function e(t,n,o){function i(r,c){if(!n[r]){if(!t[r]){var s="function"==typeof require&&require;if(!c&&s)return s(r,!0);if(a)return a(r,!0);var l=new Error("Cannot find module '"+r+"'");throw l.code="MODULE_NOT_FOUND",l}var d=n[r]={exports:{}};t[r][0].call(d.exports,function(e){var n=t[r][1][e];return i(n||e)},d,d.exports,e,t,n,o)}return n[r].exports}for(var a="function"==typeof require&&require,r=0;r<o.length;r++)i(o[r]);return i}({1:[function(e,t,n){!function(t){"use strict";var n={maintenanceMode:null,cacheElements:function(){this.cache={$window:t(window),$body:t("body"),$switchMode:t("#elementor-switch-mode"),$goToEditLink:t("#elementor-go-to-edit-page-link"),$switchModeInput:t("#elementor-switch-mode-input"),$switchModeButton:t("#elementor-switch-mode-button"),$elementorLoader:t(".elementor-loader"),$builderEditor:t("#elementor-editor"),$importButton:t("#elementor-import-template-trigger"),$importArea:t("#elementor-import-template-area"),$settingsForm:t("#elementor-settings-form"),$settingsTabsWrapper:t("#elementor-settings-tabs-wrapper")},this.cache.$settingsFormPages=this.cache.$settingsForm.find(".elementor-settings-form-page"),this.cache.$activeSettingsPage=this.cache.$settingsFormPages.filter(".elementor-active"),this.cache.$settingsTabs=this.cache.$settingsTabsWrapper.children(),this.cache.$activeSettingsTab=this.cache.$settingsTabs.filter(".nav-tab-active")},toggleStatus:function(){var e=this.isElementorMode();this.cache.$body.toggleClass("elementor-editor-active",e).toggleClass("elementor-editor-inactive",!e)},bindEvents:function(){var e=this;e.cache.$switchModeButton.on("click",function(n){if(n.preventDefault(),e.isElementorMode())e.cache.$switchModeInput.val("");else{e.cache.$switchModeInput.val(!0);var o=t("#title");o.val()||o.val("Elementor #"+t("#post_ID").val()),wp.autosave.server.triggerSave(),e.animateLoader(),t(document).on("heartbeat-tick.autosave",function(){e.cache.$window.off("beforeunload.edit-post"),window.location=e.cache.$goToEditLink.attr("href")})}e.toggleStatus()}),e.cache.$goToEditLink.on("click",function(){e.animateLoader()}),t("div.notice.elementor-message-dismissed").on("click","button.notice-dismiss",function(e){e.preventDefault(),t.post(ajaxurl,{action:"elementor_set_admin_notice_viewed",notice_id:t(this).closest(".elementor-message-dismissed").data("notice_id")})}),t("#elementor-clear-cache-button").on("click",function(e){e.preventDefault();var n=t(this);n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_clear_cache",_nonce:n.data("nonce")}).done(function(){n.removeClass("loading").addClass("success")})}),t("#elementor-library-sync-button").on("click",function(e){e.preventDefault();var n=t(this);n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_reset_library",_nonce:n.data("nonce")}).done(function(){n.removeClass("loading").addClass("success")})}),t("#elementor-replace-url-button").on("click",function(e){e.preventDefault();var n=t(this),o=n.parents("tr"),i=o.find('[name="from"]'),a=o.find('[name="to"]');n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_replace_url",from:i.val(),to:a.val(),_nonce:n.data("nonce")}).done(function(e){n.removeClass("loading"),e.success&&n.addClass("success"),(new DialogsManager.Instance).createWidget("alert",{message:e.data}).show()})}),e.cache.$settingsTabs.on({click:function(e){e.preventDefault(),e.currentTarget.focus()},focus:function(){var t=location.href.replace(/#.*/,"");history.pushState({},"",t+this.hash),e.goToSettingsTabFromHash()}}),t(".elementor-rollback-button").on("click",function(e){e.preventDefault();var n=t(this);(new DialogsManager.Instance).createWidget("confirm",{headerMessage:ElementorAdminConfig.i18n.rollback_to_previous_version,message:ElementorAdminConfig.i18n.rollback_confirm,strings:{confirm:ElementorAdminConfig.i18n.yes,cancel:ElementorAdminConfig.i18n.cancel},onConfirm:function(){n.addClass("loading"),location.href=n.attr("href")}}).show()}),t(".elementor_css_print_method select").on("change",function(){var e=t(".elementor-css-print-method-description");e.hide(),e.filter('[data-value="'+t(this).val()+'"]').show()}).trigger("change")},init:function(){this.cacheElements(),this.bindEvents(),this.initTemplatesImport(),this.initMaintenanceMode(),this.goToSettingsTabFromHash()},initTemplatesImport:function(){if(this.cache.$body.hasClass("post-type-elementor_library")){var e=this,n=e.cache.$importButton,o=e.cache.$importArea;e.cache.$formAnchor=t("h1"),t("#wpbody-content").find(".page-title-action").after(n),e.cache.$formAnchor.after(o),n.on("click",function(){t("#elementor-import-template-area").toggle()})}},initMaintenanceMode:function(){var t=e("elementor-admin/maintenance-mode");this.maintenanceMode=new t},isElementorMode:function(){return!!this.cache.$switchModeInput.val()},animateLoader:function(){this.cache.$goToEditLink.addClass("elementor-animate")},goToSettingsTabFromHash:function(){var e=location.hash.slice(1);e&&this.goToSettingsTab(e)},goToSettingsTab:function(e){var t=this.cache.$settingsFormPages.filter("#"+e);if(t.length){this.cache.$activeSettingsPage.removeClass("elementor-active"),this.cache.$activeSettingsTab.removeClass("nav-tab-active");var n=this.cache.$settingsTabs.filter("#elementor-settings-"+e);t.addClass("elementor-active"),n.addClass("nav-tab-active"),this.cache.$activeSettingsPage=t,this.cache.$activeSettingsTab=n}}};t(function(){n.init()}),window.elementorAdmin=n}(jQuery)},{"elementor-admin/maintenance-mode":2}],2:[function(e,t,n){var o;o=e("elementor-utils/view-module").extend({getDefaultSettings:function(){return{selectors:{modeSelect:".elementor_maintenance_mode_mode select",maintenanceModeTable:"#tab-maintenance_mode table",maintenanceModeDescriptions:".elementor-maintenance-mode-description",excludeModeSelect:".elementor_maintenance_mode_exclude_mode select",excludeRolesArea:".elementor_maintenance_mode_exclude_roles",templateSelect:".elementor_maintenance_mode_template_id select",editTemplateButton:".elementor-edit-template",maintenanceModeError:".elementor-maintenance-mode-error"},classes:{isEnabled:"elementor-maintenance-mode-is-enabled"}}},getDefaultElements:function(){var e={},t=this.getSettings("selectors");return e.$modeSelect=jQuery(t.modeSelect),e.$maintenanceModeTable=e.$modeSelect.parents(t.maintenanceModeTable),e.$excludeModeSelect=e.$maintenanceModeTable.find(t.excludeModeSelect),e.$excludeRolesArea=e.$maintenanceModeTable.find(t.excludeRolesArea),e.$templateSelect=e.$maintenanceModeTable.find(t.templateSelect),e.$editTemplateButton=e.$maintenanceModeTable.find(t.editTemplateButton),e.$maintenanceModeDescriptions=e.$maintenanceModeTable.find(t.maintenanceModeDescriptions),e.$maintenanceModeError=e.$maintenanceModeTable.find(t.maintenanceModeError),e},bindEvents:function(){var e=this.getSettings(),t=this.elements;t.$modeSelect.on("change",function(){t.$maintenanceModeTable.toggleClass(e.classes.isEnabled,!!t.$modeSelect.val()),t.$maintenanceModeDescriptions.hide(),t.$maintenanceModeDescriptions.filter('[data-value="'+t.$modeSelect.val()+'"]').show()}).trigger("change"),t.$excludeModeSelect.on("change",function(){t.$excludeRolesArea.toggle("custom"===t.$excludeModeSelect.val())}).trigger("change"),t.$templateSelect.on("change",function(){var e=t.$templateSelect.val();if(!e)return t.$editTemplateButton.hide(),void t.$maintenanceModeError.show();var n=ElementorAdminConfig.home_url+"?p="+e+"&elementor";t.$editTemplateButton.prop("href",n).show(),t.$maintenanceModeError.hide()}).trigger("change")}}),t.exports=o},{"elementor-utils/view-module":4}],3:[function(e,t,n){var o=function(){var e,t=jQuery,n=arguments,o=this,i={},a=function(){t.each(o,function(e){var t=o[e];"function"==typeof t&&(o[e]=function(){return t.apply(o,arguments)})})},r=function(){e=o.getDefaultSettings();var i=n[0];i&&t.extend(e,i)};this.getItems=function(e,t){if(t){var n=t.split("."),o=n.splice(0,1);if(!n.length)return e[o];if(!e[o])return;return this.getItems(e[o],n.join("."))}return e},this.getSettings=function(t){return this.getItems(e,t)},this.setSettings=function(n,i,a){if(a||(a=e),"object"==typeof n)return t.extend(a,n),o;var r=n.split("."),c=r.splice(0,1);return r.length?(a[c]||(a[c]={}),o.setSettings(r.join("."),i,a[c])):(a[c]=i,o)},this.forceMethodImplementation=function(e){var t=e.callee.name;throw new ReferenceError("The method "+t+" must to be implemented in the inheritor child.")},this.on=function(e,t){return i[e]||(i[e]=[]),i[e].push(t),o},this.off=function(e,t){if(!i[e])return o;if(!t)return delete i[e],o;var n=i[e].indexOf(t);return-1!==n&&delete i[e][n],o},this.trigger=function(e){var n="on"+e[0].toUpperCase()+e.slice(1),a=Array.prototype.slice.call(arguments,1);o[n]&&o[n].apply(o,a);var r=i[e];r&&t.each(r,function(e,t){t.apply(o,a)})},o.__construct.apply(o,n),a(),r(),o.trigger("init")};o.prototype.__construct=function(){},o.prototype.getDefaultSettings=function(){return{}},o.extendsCount=0,o.extend=function(e){var t=jQuery,n=this,i=function(){return n.apply(this,arguments)};t.extend(i,n),(i.prototype=Object.create(t.extend({},n.prototype,e))).constructor=i;var a=++o.extendsCount;return i.prototype.getConstructorID=function(){return a},i.__super__=n.prototype,i},t.exports=o},{}],4:[function(e,t,n){var o;o=e("./module").extend({elements:null,getDefaultElements:function(){return{}},bindEvents:function(){},onInit:function(){this.initElements(),this.bindEvents()},initElements:function(){this.elements=this.getDefaultElements()}}),t.exports=o},{"./module":3}]},{},[1]);
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  !function e(t,n,o){function i(r,c){if(!n[r]){if(!t[r]){var s="function"==typeof require&&require;if(!c&&s)return s(r,!0);if(a)return a(r,!0);var l=new Error("Cannot find module '"+r+"'");throw l.code="MODULE_NOT_FOUND",l}var d=n[r]={exports:{}};t[r][0].call(d.exports,function(e){var n=t[r][1][e];return i(n||e)},d,d.exports,e,t,n,o)}return n[r].exports}for(var a="function"==typeof require&&require,r=0;r<o.length;r++)i(o[r]);return i}({1:[function(e,t,n){!function(t){"use strict";var n={maintenanceMode:null,cacheElements:function(){this.cache={$window:t(window),$body:t("body"),$switchMode:t("#elementor-switch-mode"),$goToEditLink:t("#elementor-go-to-edit-page-link"),$switchModeInput:t("#elementor-switch-mode-input"),$switchModeButton:t("#elementor-switch-mode-button"),$elementorLoader:t(".elementor-loader"),$builderEditor:t("#elementor-editor"),$importButton:t("#elementor-import-template-trigger"),$importArea:t("#elementor-import-template-area"),$settingsForm:t("#elementor-settings-form"),$settingsTabsWrapper:t("#elementor-settings-tabs-wrapper")},this.cache.$settingsFormPages=this.cache.$settingsForm.find(".elementor-settings-form-page"),this.cache.$activeSettingsPage=this.cache.$settingsFormPages.filter(".elementor-active"),this.cache.$settingsTabs=this.cache.$settingsTabsWrapper.children(),this.cache.$activeSettingsTab=this.cache.$settingsTabs.filter(".nav-tab-active")},toggleStatus:function(){var e=this.isElementorMode();this.cache.$body.toggleClass("elementor-editor-active",e).toggleClass("elementor-editor-inactive",!e)},bindEvents:function(){var e=this;e.cache.$switchModeButton.on("click",function(n){if(n.preventDefault(),e.isElementorMode())e.cache.$switchModeInput.val("");else{e.cache.$switchModeInput.val(!0);var o=t("#title");o.val()||o.val("Elementor #"+t("#post_ID").val()),wp.autosave.server.triggerSave(),e.animateLoader(),t(document).on("heartbeat-tick.autosave",function(){e.cache.$window.off("beforeunload.edit-post"),window.location=e.cache.$goToEditLink.attr("href")})}e.toggleStatus()}),e.cache.$goToEditLink.on("click",function(){e.animateLoader()}),t("div.notice.elementor-message-dismissed").on("click","button.notice-dismiss",function(e){e.preventDefault(),t.post(ajaxurl,{action:"elementor_set_admin_notice_viewed",notice_id:t(this).closest(".elementor-message-dismissed").data("notice_id")})}),t("#elementor-clear-cache-button").on("click",function(e){e.preventDefault();var n=t(this);n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_clear_cache",_nonce:n.data("nonce")}).done(function(){n.removeClass("loading").addClass("success")})}),t("#elementor-library-sync-button").on("click",function(e){e.preventDefault();var n=t(this);n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_reset_library",_nonce:n.data("nonce")}).done(function(){n.removeClass("loading").addClass("success")})}),t("#elementor-replace-url-button").on("click",function(e){e.preventDefault();var n=t(this),o=n.parents("tr"),i=o.find('[name="from"]'),a=o.find('[name="to"]');n.removeClass("success").addClass("loading"),t.post(ajaxurl,{action:"elementor_replace_url",from:i.val(),to:a.val(),_nonce:n.data("nonce")}).done(function(e){n.removeClass("loading"),e.success&&n.addClass("success"),(new DialogsManager.Instance).createWidget("alert",{message:e.data}).show()})}),e.cache.$settingsTabs.on({click:function(e){e.preventDefault(),e.currentTarget.focus()},focus:function(){var t=location.href.replace(/#.*/,"");history.pushState({},"",t+this.hash),e.goToSettingsTabFromHash()}}),t(".elementor-rollback-button").on("click",function(e){e.preventDefault();var n=t(this);(new DialogsManager.Instance).createWidget("confirm",{headerMessage:ElementorAdminConfig.i18n.rollback_to_previous_version,message:ElementorAdminConfig.i18n.rollback_confirm,strings:{confirm:ElementorAdminConfig.i18n.yes,cancel:ElementorAdminConfig.i18n.cancel},onConfirm:function(){n.addClass("loading"),location.href=n.attr("href")}}).show()}),t(".elementor_css_print_method select").on("change",function(){var e=t(".elementor-css-print-method-description");e.hide(),e.filter('[data-value="'+t(this).val()+'"]').show()}).trigger("change")},init:function(){this.cacheElements(),this.bindEvents(),this.initTemplatesImport(),this.initMaintenanceMode(),this.goToSettingsTabFromHash()},initTemplatesImport:function(){if(this.cache.$body.hasClass("post-type-elementor_library")){var e=this,n=e.cache.$importButton,o=e.cache.$importArea;e.cache.$formAnchor=t("h1"),t("#wpbody-content").find(".page-title-action").after(n),e.cache.$formAnchor.after(o),n.on("click",function(){t("#elementor-import-template-area").toggle()})}},initMaintenanceMode:function(){var t=e("elementor-admin/maintenance-mode");this.maintenanceMode=new t},isElementorMode:function(){return!!this.cache.$switchModeInput.val()},animateLoader:function(){this.cache.$goToEditLink.addClass("elementor-animate")},goToSettingsTabFromHash:function(){var e=location.hash.slice(1);e&&this.goToSettingsTab(e)},goToSettingsTab:function(e){var t=this.cache.$settingsFormPages.filter("#"+e);if(t.length){this.cache.$activeSettingsPage.removeClass("elementor-active"),this.cache.$activeSettingsTab.removeClass("nav-tab-active");var n=this.cache.$settingsTabs.filter("#elementor-settings-"+e);t.addClass("elementor-active"),n.addClass("nav-tab-active"),this.cache.$activeSettingsPage=t,this.cache.$activeSettingsTab=n}}};t(function(){n.init()}),window.elementorAdmin=n}(jQuery)},{"elementor-admin/maintenance-mode":2}],2:[function(e,t,n){var o;o=e("elementor-utils/view-module").extend({getDefaultSettings:function(){return{selectors:{modeSelect:".elementor_maintenance_mode_mode select",maintenanceModeTable:"#tab-maintenance_mode table",maintenanceModeDescriptions:".elementor-maintenance-mode-description",excludeModeSelect:".elementor_maintenance_mode_exclude_mode select",excludeRolesArea:".elementor_maintenance_mode_exclude_roles",templateSelect:".elementor_maintenance_mode_template_id select",editTemplateButton:".elementor-edit-template",maintenanceModeError:".elementor-maintenance-mode-error"},classes:{isEnabled:"elementor-maintenance-mode-is-enabled"}}},getDefaultElements:function(){var e={},t=this.getSettings("selectors");return e.$modeSelect=jQuery(t.modeSelect),e.$maintenanceModeTable=e.$modeSelect.parents(t.maintenanceModeTable),e.$excludeModeSelect=e.$maintenanceModeTable.find(t.excludeModeSelect),e.$excludeRolesArea=e.$maintenanceModeTable.find(t.excludeRolesArea),e.$templateSelect=e.$maintenanceModeTable.find(t.templateSelect),e.$editTemplateButton=e.$maintenanceModeTable.find(t.editTemplateButton),e.$maintenanceModeDescriptions=e.$maintenanceModeTable.find(t.maintenanceModeDescriptions),e.$maintenanceModeError=e.$maintenanceModeTable.find(t.maintenanceModeError),e},bindEvents:function(){var e=this.getSettings(),t=this.elements;t.$modeSelect.on("change",function(){t.$maintenanceModeTable.toggleClass(e.classes.isEnabled,!!t.$modeSelect.val()),t.$maintenanceModeDescriptions.hide(),t.$maintenanceModeDescriptions.filter('[data-value="'+t.$modeSelect.val()+'"]').show()}).trigger("change"),t.$excludeModeSelect.on("change",function(){t.$excludeRolesArea.toggle("custom"===t.$excludeModeSelect.val())}).trigger("change"),t.$templateSelect.on("change",function(){var e=t.$templateSelect.val();if(!e)return t.$editTemplateButton.hide(),void t.$maintenanceModeError.show();var n=ElementorAdminConfig.home_url+"?p="+e+"&elementor";t.$editTemplateButton.prop("href",n).show(),t.$maintenanceModeError.hide()}).trigger("change")}}),t.exports=o},{"elementor-utils/view-module":4}],3:[function(e,t,n){var o=function(){var e,t=jQuery,n=arguments,o=this,i={},a=function(){t.each(o,function(e){var t=o[e];"function"==typeof t&&(o[e]=function(){return t.apply(o,arguments)})})},r=function(){e=o.getDefaultSettings();var i=n[0];i&&t.extend(e,i)};this.getItems=function(e,t){if(t){var n=t.split("."),o=n.splice(0,1);if(!n.length)return e[o];if(!e[o])return;return this.getItems(e[o],n.join("."))}return e},this.getSettings=function(t){return this.getItems(e,t)},this.setSettings=function(n,i,a){if(a||(a=e),"object"==typeof n)return t.extend(a,n),o;var r=n.split("."),c=r.splice(0,1);return r.length?(a[c]||(a[c]={}),o.setSettings(r.join("."),i,a[c])):(a[c]=i,o)},this.forceMethodImplementation=function(e){var t=e.callee.name;throw new ReferenceError("The method "+t+" must to be implemented in the inheritor child.")},this.on=function(e,t){return i[e]||(i[e]=[]),i[e].push(t),o},this.off=function(e,t){if(!i[e])return o;if(!t)return delete i[e],o;var n=i[e].indexOf(t);return-1!==n&&delete i[e][n],o},this.trigger=function(e){var n="on"+e[0].toUpperCase()+e.slice(1),a=Array.prototype.slice.call(arguments,1);o[n]&&o[n].apply(o,a);var r=i[e];r&&t.each(r,function(e,t){t.apply(o,a)})},o.__construct.apply(o,n),a(),r(),o.trigger("init")};o.prototype.__construct=function(){},o.prototype.getDefaultSettings=function(){return{}},o.extendsCount=0,o.extend=function(e){var t=jQuery,n=this,i=function(){return n.apply(this,arguments)};t.extend(i,n),(i.prototype=Object.create(t.extend({},n.prototype,e))).constructor=i;var a=++o.extendsCount;return i.prototype.getConstructorID=function(){return a},i.__super__=n.prototype,i},t.exports=o},{}],4:[function(e,t,n){var o;o=e("./module").extend({elements:null,getDefaultElements:function(){return{}},bindEvents:function(){},onInit:function(){this.initElements(),this.bindEvents()},initElements:function(){this.elements=this.getDefaultElements()}}),t.exports=o},{"./module":3}]},{},[1]);
assets/js/editor.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! elementor - v1.6.4 - 09-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  var HandleAddDuplicateBehavior;
4
 
@@ -28,7 +28,11 @@ HandleAddDuplicateBehavior = Marionette.Behavior.extend( {
28
  elements: []
29
  };
30
 
 
 
31
  this.view.addChildModel( newItem, options );
 
 
32
  }
33
  } );
34
 
@@ -47,7 +51,11 @@ HandleDuplicateBehavior = Marionette.Behavior.extend( {
47
  var currentIndex = this.view.collection.indexOf( childView.model ),
48
  newModel = childView.model.clone();
49
 
 
 
50
  this.view.addChildModel( newModel, { at: currentIndex + 1 } );
 
 
51
  }
52
  } );
53
 
@@ -322,11 +330,11 @@ SortableBehavior = Marionette.Behavior.extend( {
322
  ui.placeholder.height( itemHeight );
323
  }
324
 
325
- elementor.channels.data.trigger( model.get( 'elType' ) + ':drag:start' );
326
-
327
  elementor.channels.data
328
  .reply( 'dragging:model', model )
329
- .reply( 'dragging:parent:view', this.view );
 
 
330
  },
331
 
332
  onSortOver: function( event ) {
@@ -373,9 +381,10 @@ SortableBehavior = Marionette.Behavior.extend( {
373
  return;
374
  }
375
 
376
- var newIndex = ui.item.parent().children().index( ui.item );
377
 
378
- this.view.addChildElement( model.toJSON( { copyHtmlCache: true } ), { at: newIndex } );
 
379
 
380
  var senderSection = elementor.channels.data.request( 'dragging:parent:view' );
381
 
@@ -384,6 +393,10 @@ SortableBehavior = Marionette.Behavior.extend( {
384
  model.destroy();
385
 
386
  senderSection.isManualRemoving = false;
 
 
 
 
387
  },
388
 
389
  onSortUpdate: function( event, ui ) {
@@ -395,6 +408,8 @@ SortableBehavior = Marionette.Behavior.extend( {
395
  collection = this.view.collection,
396
  newIndex = $childElement.parent().children().index( $childElement );
397
 
 
 
398
  var child = this.view.children.findByModelCid( model.cid );
399
 
400
  child._isRendering = true;
@@ -404,6 +419,8 @@ SortableBehavior = Marionette.Behavior.extend( {
404
  this.view.addChildElement( model, { at: newIndex } );
405
 
406
  elementor.setFlagEditorChange( true );
 
 
407
  }
408
  },
409
 
@@ -419,7486 +436,7023 @@ SortableBehavior = Marionette.Behavior.extend( {
419
  module.exports = SortableBehavior;
420
 
421
  },{}],6:[function(require,module,exports){
422
- var RevisionModel = require( './model' );
423
 
424
- module.exports = Backbone.Collection.extend( {
425
- model: RevisionModel
426
- } );
 
427
 
428
- },{"./model":9}],7:[function(require,module,exports){
429
- module.exports = Marionette.ItemView.extend( {
430
- template: '#tmpl-elementor-panel-revisions-no-revisions',
431
 
432
- id: 'elementor-panel-revisions-no-revisions',
 
 
 
 
433
 
434
- className: 'elementor-panel-nerd-box'
435
- } );
 
 
436
 
437
- },{}],8:[function(require,module,exports){
438
- var RevisionsCollection = require( './collection' ),
439
- RevisionsPageView = require( './panel-page' ),
440
- RevisionsEmptyView = require( './empty-view' ),
441
- RevisionsManager;
442
 
443
- RevisionsManager = function() {
444
- var self = this,
445
- revisions;
446
 
447
- var addPanelPage = function() {
448
- elementor.getPanelView().addPage( 'revisionsPage', {
449
- getView: function() {
450
- if ( revisions.length ) {
451
- return RevisionsPageView;
452
- }
453
 
454
- return RevisionsEmptyView;
455
- },
456
- title: elementor.translate( 'revision_history' ),
457
- options: {
458
- collection: revisions
 
 
 
 
 
 
459
  }
460
  } );
461
- };
462
 
463
- var onEditorSaved = function( data ) {
464
- if ( data.last_revision ) {
465
- self.addRevision( data.last_revision );
466
  }
467
 
468
- var revisionsToKeep = revisions.filter( function( revision ) {
469
- return -1 !== data.revisions_ids.indexOf( revision.get( 'id' ) );
470
- } );
471
-
472
- revisions.reset( revisionsToKeep );
473
- };
474
-
475
- var attachEvents = function() {
476
- elementor.channels.editor.on( 'saved', onEditorSaved );
477
- };
478
-
479
- var addHotKeys = function() {
480
- var H_KEY = 72,
481
- UP_ARROW_KEY = 38,
482
- DOWN_ARROW_KEY = 40;
483
-
484
- var navigationHandler = {
485
- isWorthHandling: function() {
486
- var panel = elementor.getPanelView();
487
-
488
- if ( 'revisionsPage' !== panel.getCurrentPageName() ) {
489
- return false;
490
- }
491
-
492
- var revisionsPage = panel.getCurrentPageView();
493
 
494
- return revisionsPage.currentPreviewId && revisionsPage.currentPreviewItem && revisionsPage.children.length > 1;
495
- },
496
- handle: function( event ) {
497
- elementor.getPanelView().getCurrentPageView().navigate( UP_ARROW_KEY === event.which );
498
- }
499
- };
500
 
501
- elementor.hotKeys.addHotKeyHandler( UP_ARROW_KEY, 'revisionNavigation', navigationHandler );
 
 
502
 
503
- elementor.hotKeys.addHotKeyHandler( DOWN_ARROW_KEY, 'revisionNavigation', navigationHandler );
 
 
504
 
505
- elementor.hotKeys.addHotKeyHandler( H_KEY, 'showRevisionsPage', {
506
- isWorthHandling: function( event ) {
507
- return elementor.hotKeys.isControlEvent( event ) && event.shiftKey;
508
- },
509
- handle: function() {
510
- elementor.getPanelView().setPage( 'revisionsPage' );
511
- }
512
- } );
513
- };
514
 
515
- this.addRevision = function( revisionData ) {
516
- revisions.add( revisionData, { at: 0 } );
 
 
517
 
518
- var panel = elementor.getPanelView();
 
 
 
 
 
 
 
 
519
 
520
- if ( panel.getCurrentPageView() instanceof RevisionsEmptyView ) {
521
- panel.setPage( 'revisionsPage' );
522
- }
523
  };
524
 
525
- this.deleteRevision = function( revisionModel, options ) {
526
- var params = {
527
- data: {
528
- id: revisionModel.get( 'id' )
529
  },
530
- success: function() {
531
- if ( options.success ) {
532
- options.success();
533
- }
534
 
535
- revisionModel.destroy();
536
 
537
- if ( ! revisions.length ) {
538
- elementor.getPanelView().setPage( 'revisionsPage' );
 
 
539
  }
540
  }
541
  };
542
 
543
- if ( options.error ) {
544
- params.error = options.error;
545
- }
 
 
 
546
 
547
- elementor.ajax.send( 'delete_revision', params );
 
548
  };
549
 
550
  this.init = function() {
551
- revisions = new RevisionsCollection( elementor.config.revisions );
 
552
 
553
- attachEvents();
 
 
 
554
 
555
- addHotKeys();
 
556
 
557
- elementor.on( 'preview:loaded', addPanelPage );
 
558
  };
559
- };
560
 
561
- module.exports = new RevisionsManager();
 
562
 
563
- },{"./collection":6,"./empty-view":7,"./panel-page":10}],9:[function(require,module,exports){
564
- var RevisionModel;
 
 
 
 
 
 
565
 
566
- RevisionModel = Backbone.Model.extend();
 
 
 
567
 
568
- RevisionModel.prototype.sync = function() {
569
- return null;
570
- };
571
 
572
- module.exports = RevisionModel;
 
573
 
574
- },{}],10:[function(require,module,exports){
575
- module.exports = Marionette.CompositeView.extend( {
576
- id: 'elementor-panel-revisions',
577
 
578
- template: '#tmpl-elementor-panel-revisions',
 
 
 
 
 
579
 
580
- childView: require( './view' ),
581
 
582
- childViewContainer: '#elementor-revisions-list',
583
 
584
- ui: {
585
- discard: '.elementor-panel-scheme-discard .elementor-button',
586
- apply: '.elementor-panel-scheme-save .elementor-button'
587
- },
588
 
589
- events: {
590
- 'click @ui.discard': 'onDiscardClick',
591
- 'click @ui.apply': 'onApplyClick'
592
- },
 
 
 
 
 
593
 
594
- isRevisionApplied: false,
 
595
 
596
- jqueryXhr: null,
 
 
 
597
 
598
- currentPreviewId: null,
 
 
599
 
600
- currentPreviewItem: null,
601
 
602
- initialize: function() {
603
- this.listenTo( elementor.channels.editor, 'saved', this.onEditorSaved );
604
- },
605
 
606
- getRevisionViewData: function( revisionView ) {
607
- var self = this,
608
- revisionID = revisionView.model.get( 'id' );
609
 
610
- self.jqueryXhr = elementor.ajax.send( 'get_revision_data', {
 
 
 
 
611
  data: {
612
- id: revisionID
613
- },
614
- success: function( data ) {
615
- self.setEditorData( data );
 
616
 
617
- self.setRevisionsButtonsActive( true );
 
 
618
 
619
- self.jqueryXhr = null;
 
620
 
621
- revisionView.$el.removeClass( 'elementor-revision-item-loading' );
 
 
 
 
 
 
 
 
 
 
622
 
623
- self.enterReviewMode();
624
- },
625
- error: function( data ) {
626
- revisionView.$el.removeClass( 'elementor-revision-item-loading' );
627
 
628
- if ( 'abort' === self.jqueryXhr.statusText ) {
629
- return;
630
- }
 
 
 
 
631
 
632
- self.currentPreviewItem = null;
 
633
 
634
- self.currentPreviewId = null;
 
 
 
 
 
 
635
 
636
- alert( 'An error occurred' );
637
- }
638
- } );
639
- },
640
 
641
- setRevisionsButtonsActive: function( active ) {
642
- this.ui.apply.add( this.ui.discard ).prop( 'disabled', ! active );
643
- },
644
 
645
- setEditorData: function( data ) {
646
- var collection = elementor.getRegion( 'sections' ).currentView.collection;
 
647
 
648
- collection.reset( data );
649
- },
 
 
 
650
 
651
- deleteRevision: function( revisionView ) {
652
- var self = this;
653
 
654
- revisionView.$el.addClass( 'elementor-revision-item-loading' );
 
 
655
 
656
- elementor.revisions.deleteRevision( revisionView.model, {
657
- success: function() {
658
- if ( revisionView.model.get( 'id' ) === self.currentPreviewId ) {
659
- self.onDiscardClick();
660
  }
 
 
 
661
 
662
- self.currentPreviewId = null;
663
- },
664
- error: function( data ) {
665
- revisionView.$el.removeClass( 'elementor-revision-item-loading' );
666
 
667
- alert( 'An error occurred' );
 
 
 
 
 
 
 
 
 
 
 
 
668
  }
669
  } );
670
- },
671
 
672
- enterReviewMode: function() {
673
- elementor.changeEditMode( 'review' );
674
- },
675
 
676
- exitReviewMode: function() {
677
- elementor.changeEditMode( 'edit' );
678
- },
679
 
680
- navigate: function( reverse ) {
681
- var currentPreviewItemIndex = this.collection.indexOf( this.currentPreviewItem.model ),
682
- requiredIndex = reverse ? currentPreviewItemIndex - 1 : currentPreviewItemIndex + 1;
683
 
684
- if ( requiredIndex < 0 ) {
685
- requiredIndex = this.collection.length - 1;
686
  }
 
687
 
688
- if ( requiredIndex >= this.collection.length ) {
689
- requiredIndex = 0;
690
- }
691
 
692
- this.children.findByIndex( requiredIndex ).ui.detailsArea.trigger( 'click' );
693
- },
 
 
 
694
 
695
- onEditorSaved: function() {
696
- this.exitReviewMode();
 
697
 
698
- this.setRevisionsButtonsActive( false );
699
- },
 
700
 
701
- onApplyClick: function() {
702
- elementor.getPanelView().getChildView( 'footer' )._publishBuilder();
 
 
 
 
703
 
704
- this.isRevisionApplied = true;
 
 
 
 
705
 
706
- this.currentPreviewId = null;
707
- },
708
 
709
- onDiscardClick: function() {
710
- this.setEditorData( elementor.config.data );
711
 
712
- elementor.setFlagEditorChange( this.isRevisionApplied );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
713
 
714
- this.isRevisionApplied = false;
715
 
716
- this.setRevisionsButtonsActive( false );
 
 
 
 
 
 
 
 
 
 
 
 
717
 
718
- this.currentPreviewId = null;
 
719
 
720
- this.exitReviewMode();
 
 
 
721
 
722
- if ( this.currentPreviewItem ) {
723
- this.currentPreviewItem.$el.removeClass( 'elementor-revision-current-preview' );
724
- }
725
  },
726
 
727
- onDestroy: function() {
728
- if ( this.currentPreviewId ) {
729
- this.onDiscardClick();
730
- }
731
  },
732
 
733
- onRenderCollection: function() {
734
- if ( ! this.currentPreviewId ) {
735
- return;
736
- }
737
 
738
- var currentPreviewModel = this.collection.findWhere({ id: this.currentPreviewId });
739
 
740
- this.currentPreviewItem = this.children.findByModelCid( currentPreviewModel.cid );
741
 
742
- this.currentPreviewItem.$el.addClass( 'elementor-revision-current-preview' );
743
  },
744
 
745
- onChildviewDetailsAreaClick: function( childView ) {
746
- var self = this,
747
- revisionID = childView.model.get( 'id' );
748
 
749
- if ( revisionID === self.currentPreviewId ) {
750
- return;
751
- }
 
752
 
753
- if ( this.jqueryXhr ) {
754
- this.jqueryXhr.abort();
755
- }
756
 
757
- if ( self.currentPreviewItem ) {
758
- self.currentPreviewItem.$el.removeClass( 'elementor-revision-current-preview' );
759
- }
 
760
 
761
- childView.$el.addClass( 'elementor-revision-current-preview elementor-revision-item-loading' );
 
 
762
 
763
- if ( elementor.isEditorChanged() && null === self.currentPreviewId ) {
764
- elementor.saveEditor( {
765
- status: 'autosave',
766
- onSuccess: function() {
767
- self.getRevisionViewData( childView );
768
- }
769
- } );
770
- } else {
771
- self.getRevisionViewData( childView );
772
- }
773
 
774
- self.currentPreviewItem = childView;
775
 
776
- self.currentPreviewId = revisionID;
 
 
777
  },
778
 
779
- onChildviewDeleteClick: function( childView ) {
780
- var self = this,
781
- type = childView.model.get( 'type' ),
782
- id = childView.model.get( 'id' );
783
 
784
- var removeDialog = elementor.dialogsManager.createWidget( 'confirm', {
785
- message: elementor.translate( 'dialog_confirm_delete', [ type ] ),
786
- headerMessage: elementor.translate( 'delete_element', [ type ] ),
787
- strings: {
788
- confirm: elementor.translate( 'delete' ),
789
- cancel: elementor.translate( 'cancel' )
790
- },
791
- defaultOption: 'confirm',
792
- onConfirm: function() {
793
- self.deleteRevision( childView );
794
- }
795
- } );
796
 
797
- removeDialog.show();
 
 
 
 
 
 
798
  }
799
  } );
800
 
801
- },{"./view":11}],11:[function(require,module,exports){
802
- module.exports = Marionette.ItemView.extend( {
803
- template: '#tmpl-elementor-panel-revisions-revision-item',
804
 
805
- className: 'elementor-revision-item',
 
806
 
807
- ui: {
808
- detailsArea: '.elementor-revision-item__details',
809
- deleteButton: '.elementor-revision-item__tools-delete'
 
 
 
 
810
  },
811
 
812
- triggers: {
813
- 'click @ui.detailsArea': 'detailsArea:click',
814
- 'click @ui.deleteButton': 'delete:click'
815
  }
816
  } );
817
 
 
 
818
  },{}],12:[function(require,module,exports){
819
- var InsertTemplateHandler;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
820
 
821
- InsertTemplateHandler = Marionette.Behavior.extend( {
822
  ui: {
823
- insertButton: '.elementor-template-library-template-insert'
824
  },
825
 
826
  events: {
827
- 'click @ui.insertButton': 'onInsertButtonClick'
828
  },
829
 
830
- onInsertButtonClick: function() {
831
- if ( this.view.model.get( 'hasPageSettings' ) ) {
832
- InsertTemplateHandler.showImportDialog( this.view.model );
 
 
 
833
  return;
834
  }
835
 
836
- elementor.templates.importTemplate( this.view.model );
837
- }
838
- }, {
839
- dialog: null,
840
 
841
- showImportDialog: function( model ) {
842
- var dialog = InsertTemplateHandler.getDialog();
843
 
844
- dialog.onConfirm = function() {
845
- elementor.templates.importTemplate( model, { withPageSettings: true } );
846
- };
847
 
848
- dialog.onCancel = function() {
849
- elementor.templates.importTemplate( model );
850
- };
851
 
852
- dialog.show();
853
  },
854
 
855
- initDialog: function() {
856
- InsertTemplateHandler.dialog = elementor.dialogsManager.createWidget( 'confirm', {
857
- id: 'elementor-insert-template-settings-dialog',
858
- headerMessage: elementor.translate( 'import_template_dialog_header' ),
859
- message: elementor.translate( 'import_template_dialog_message' ) + '<br>' + elementor.translate( 'import_template_dialog_message_attention' ),
860
- strings: {
861
- confirm: elementor.translate( 'yes' ),
862
- cancel: elementor.translate( 'no' )
863
- }
864
- } );
865
- },
866
 
867
- getDialog: function() {
868
- if ( ! InsertTemplateHandler.dialog ) {
869
- InsertTemplateHandler.initDialog();
870
- }
871
 
872
- return InsertTemplateHandler.dialog;
873
  }
874
  } );
875
 
876
- module.exports = InsertTemplateHandler;
877
 
878
- },{}],13:[function(require,module,exports){
879
- var TemplateLibraryTemplateModel = require( 'elementor-templates/models/template' ),
880
- TemplateLibraryCollection;
881
 
882
- TemplateLibraryCollection = Backbone.Collection.extend( {
883
- model: TemplateLibraryTemplateModel
 
 
 
 
 
 
 
 
884
  } );
885
 
886
- module.exports = TemplateLibraryCollection;
887
 
888
- },{"elementor-templates/models/template":15}],14:[function(require,module,exports){
889
- var TemplateLibraryLayoutView = require( 'elementor-templates/views/layout' ),
890
- TemplateLibraryCollection = require( 'elementor-templates/collections/templates' ),
891
- TemplateLibraryManager;
892
 
893
- TemplateLibraryManager = function() {
894
- var self = this,
895
- modal,
896
- deleteDialog,
897
- errorDialog,
898
- layout,
899
- startIntent = {},
900
- templateTypes = {},
901
- templatesCollection;
902
 
903
- var initLayout = function() {
904
- layout = new TemplateLibraryLayoutView();
905
- };
906
 
907
- var registerDefaultTemplateTypes = function() {
908
- var data = {
909
- saveDialog: {
910
- description: elementor.translate( 'save_your_template_description' )
911
- },
912
- ajaxParams: {
913
- success: function( data ) {
914
- self.getTemplatesCollection().add( data );
915
 
916
- self.setTemplatesSource( 'local' );
 
 
917
 
918
- self.showTemplates();
919
- },
920
- error: function( data ) {
921
- self.showErrorDialog( data );
922
- }
923
- }
924
- };
925
 
926
- _.each( [ 'page', 'section' ], function( type ) {
927
- var safeData = Backbone.$.extend( true, {}, data, {
928
- saveDialog: {
929
- title: elementor.translate( 'save_your_template', [ elementor.translate( type ) ] )
930
- }
931
- } );
932
 
933
- self.registerTemplateType( type, safeData );
934
- } );
935
- };
936
 
937
- this.init = function() {
938
- registerDefaultTemplateTypes();
939
- };
940
 
941
- this.getTemplateTypes = function( type ) {
942
- if ( type ) {
943
- return templateTypes[ type ];
944
- }
945
 
946
- return templateTypes;
947
- };
948
 
949
- this.registerTemplateType = function( type, data ) {
950
- templateTypes[ type ] = data;
951
- };
 
 
952
 
953
- this.deleteTemplate = function( templateModel ) {
954
- var dialog = self.getDeleteDialog();
 
955
 
956
- dialog.onConfirm = function() {
957
- elementor.ajax.send( 'delete_template', {
958
- data: {
959
- source: templateModel.get( 'source' ),
960
- template_id: templateModel.get( 'template_id' )
961
- },
962
- success: function() {
963
- templatesCollection.remove( templateModel, { silent: true } );
964
 
965
- self.showTemplates();
966
- }
967
- } );
968
- };
969
 
970
- dialog.show();
971
- };
972
 
973
- this.importTemplate = function( templateModel, options ) {
974
- options = options || {};
975
 
976
- layout.showLoadingView();
 
977
 
978
- self.requestTemplateContent( templateModel.get( 'source' ), templateModel.get( 'template_id' ), {
979
- data: {
980
- page_settings: options.withPageSettings
981
- },
982
- success: function( data ) {
983
- self.closeModal();
984
 
985
- elementor.sections.currentView.addChildModel( data.content, startIntent.importOptions || {} );
 
 
986
 
987
- if ( options.withPageSettings ) {
988
- elementor.settings.page.model.set( data.page_settings );
989
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
990
  },
991
  error: function( data ) {
992
- self.showErrorDialog( data );
993
  }
994
  } );
995
- };
996
-
997
- this.saveTemplate = function( type, data ) {
998
- var templateType = templateTypes[ type ];
999
-
1000
- _.extend( data, {
1001
- source: 'local',
1002
- type: type
1003
- } );
1004
 
1005
- if ( templateType.prepareSavedData ) {
1006
- data = templateType.prepareSavedData( data );
1007
- }
1008
 
1009
- data.content = JSON.stringify( data.content );
 
1010
 
1011
- var ajaxParams = { data: data };
 
1012
 
1013
- if ( templateType.ajaxParams ) {
1014
- _.extend( ajaxParams, templateType.ajaxParams );
1015
- }
1016
 
1017
- elementor.ajax.send( 'save_template', ajaxParams );
1018
- };
1019
 
1020
- this.requestTemplateContent = function( source, id, ajaxOptions ) {
1021
- var options = {
1022
- data: {
1023
- source: source,
1024
- edit_mode: true,
1025
- template_id: id
1026
- }
1027
- };
1028
 
1029
- if ( ajaxOptions ) {
1030
- Backbone.$.extend( true, options, ajaxOptions );
1031
- }
1032
 
1033
- return elementor.ajax.send( 'get_template_data', options );
1034
- };
1035
 
1036
- this.getDeleteDialog = function() {
1037
- if ( ! deleteDialog ) {
1038
- deleteDialog = elementor.dialogsManager.createWidget( 'confirm', {
1039
- id: 'elementor-template-library-delete-dialog',
1040
- headerMessage: elementor.translate( 'delete_template' ),
1041
- message: elementor.translate( 'delete_template_confirm' ),
1042
- strings: {
1043
- confirm: elementor.translate( 'delete' )
1044
- }
1045
- } );
1046
- }
1047
 
1048
- return deleteDialog;
1049
- };
 
 
1050
 
1051
- this.getErrorDialog = function() {
1052
- if ( ! errorDialog ) {
1053
- errorDialog = elementor.dialogsManager.createWidget( 'alert', {
1054
- id: 'elementor-template-library-error-dialog',
1055
- headerMessage: elementor.translate( 'an_error_occurred' )
1056
- } );
1057
- }
1058
 
1059
- return errorDialog;
1060
- };
1061
 
1062
- this.getModal = function() {
1063
- if ( ! modal ) {
1064
- modal = elementor.dialogsManager.createWidget( 'lightbox', {
1065
- id: 'elementor-template-library-modal',
1066
- closeButton: false
1067
- } );
1068
- }
1069
 
1070
- return modal;
1071
- };
1072
 
1073
- this.getLayout = function() {
1074
- return layout;
1075
- };
 
1076
 
1077
- this.getTemplatesCollection = function() {
1078
- return templatesCollection;
1079
- };
1080
 
1081
- this.requestRemoteTemplates = function( callback, forceUpdate ) {
1082
- if ( templatesCollection && ! forceUpdate ) {
1083
- if ( callback ) {
1084
- callback();
1085
- }
1086
 
1087
- return;
1088
- }
 
1089
 
1090
- elementor.ajax.send( 'get_templates', {
1091
- success: function( data ) {
1092
- templatesCollection = new TemplateLibraryCollection( data );
1093
 
1094
- if ( callback ) {
1095
- callback();
1096
- }
1097
- }
1098
- } );
1099
- };
1100
 
1101
- this.startModal = function( customStartIntent ) {
1102
- startIntent = customStartIntent || {};
 
1103
 
1104
- self.getModal().show();
1105
 
1106
- self.setTemplatesSource( 'remote' );
1107
 
1108
- if ( ! layout ) {
1109
- initLayout();
1110
- }
1111
 
1112
- layout.showLoadingView();
1113
 
1114
- self.requestRemoteTemplates( function() {
1115
- if ( startIntent.onReady ) {
1116
- startIntent.onReady();
1117
- }
1118
- } );
1119
- };
1120
 
1121
- this.closeModal = function() {
1122
- self.getModal().hide();
1123
- };
1124
 
1125
- this.setTemplatesSource = function( source, trigger ) {
1126
- var channel = elementor.channels.templates;
1127
 
1128
- channel.reply( 'filter:source', source );
1129
 
1130
- if ( trigger ) {
1131
- channel.trigger( 'filter:change' );
1132
- }
1133
- };
 
1134
 
1135
- this.showTemplates = function() {
1136
- layout.showTemplatesView( templatesCollection );
1137
- };
1138
 
1139
- this.showTemplatesModal = function() {
1140
- self.startModal( {
1141
- onReady: self.showTemplates
1142
- } );
1143
- };
1144
 
1145
- this.showErrorDialog = function( errorMessage ) {
1146
- if ( 'object' === typeof errorMessage ) {
1147
- var message = '';
1148
 
1149
- _.each( errorMessage, function( error ) {
1150
- message += '<div>' + error.message + '.</div>';
1151
- } );
1152
 
1153
- errorMessage = message;
1154
- } else if ( errorMessage ) {
1155
- errorMessage += '.';
1156
- } else {
1157
- errorMessage = '<i>&#60;The error message is empty&#62;</i>';
1158
  }
1159
 
1160
- self.getErrorDialog()
1161
- .setMessage( elementor.translate( 'templates_request_error' ) + '<div id="elementor-template-library-error-info">' + errorMessage + '</div>' )
1162
- .show();
1163
- };
1164
- };
1165
-
1166
- module.exports = new TemplateLibraryManager();
1167
-
1168
- },{"elementor-templates/collections/templates":13,"elementor-templates/views/layout":16}],15:[function(require,module,exports){
1169
- var TemplateLibraryTemplateModel;
1170
-
1171
- TemplateLibraryTemplateModel = Backbone.Model.extend( {
1172
- defaults: {
1173
- template_id: 0,
1174
- name: '',
1175
- title: '',
1176
- source: '',
1177
- type: '',
1178
- author: '',
1179
- thumbnail: '',
1180
- url: '',
1181
- export_link: '',
1182
- categories: [],
1183
- keywords: []
1184
- }
1185
- } );
1186
-
1187
- module.exports = TemplateLibraryTemplateModel;
1188
-
1189
- },{}],16:[function(require,module,exports){
1190
- var TemplateLibraryHeaderView = require( 'elementor-templates/views/parts/header' ),
1191
- TemplateLibraryHeaderLogoView = require( 'elementor-templates/views/parts/header-parts/logo' ),
1192
- TemplateLibraryHeaderSaveView = require( 'elementor-templates/views/parts/header-parts/save' ),
1193
- TemplateLibraryHeaderMenuView = require( 'elementor-templates/views/parts/header-parts/menu' ),
1194
- TemplateLibraryHeaderPreviewView = require( 'elementor-templates/views/parts/header-parts/preview' ),
1195
- TemplateLibraryHeaderBackView = require( 'elementor-templates/views/parts/header-parts/back' ),
1196
- TemplateLibraryLoadingView = require( 'elementor-templates/views/parts/loading' ),
1197
- TemplateLibraryCollectionView = require( 'elementor-templates/views/parts/templates' ),
1198
- TemplateLibrarySaveTemplateView = require( 'elementor-templates/views/parts/save-template' ),
1199
- TemplateLibraryImportView = require( 'elementor-templates/views/parts/import' ),
1200
- TemplateLibraryPreviewView = require( 'elementor-templates/views/parts/preview' ),
1201
- TemplateLibraryLayoutView;
1202
-
1203
- TemplateLibraryLayoutView = Marionette.LayoutView.extend( {
1204
- el: '#elementor-template-library-modal',
1205
-
1206
- regions: {
1207
- modalContent: '.dialog-message',
1208
- modalHeader: '.dialog-widget-header'
1209
  },
1210
 
1211
  initialize: function() {
1212
- this.getRegion( 'modalHeader' ).show( new TemplateLibraryHeaderView() );
1213
- },
1214
-
1215
- getHeaderView: function() {
1216
- return this.getRegion( 'modalHeader' ).currentView;
1217
  },
1218
 
1219
- getTemplateActionButton: function( templateData ) {
1220
- var viewId = '#tmpl-elementor-template-library-' + ( templateData.isPro ? 'get-pro-button' : 'insert-button' );
1221
 
1222
- viewId = elementor.hooks.applyFilters( 'elementor/editor/template-library/template/action-button', viewId, templateData );
 
 
1223
 
1224
- var template = Marionette.TemplateCache.get( viewId );
1225
 
1226
- return Marionette.Renderer.render( template );
1227
- },
 
1228
 
1229
- showLoadingView: function() {
1230
- this.modalContent.show( new TemplateLibraryLoadingView() );
 
1231
  },
1232
 
1233
- showTemplatesView: function( templatesCollection ) {
1234
- this.modalContent.show( new TemplateLibraryCollectionView( {
1235
- collection: templatesCollection
1236
- } ) );
1237
 
1238
- var headerView = this.getHeaderView();
 
 
1239
 
1240
- headerView.tools.show( new TemplateLibraryHeaderSaveView() );
1241
- headerView.menuArea.show( new TemplateLibraryHeaderMenuView() );
1242
- headerView.logoArea.show( new TemplateLibraryHeaderLogoView() );
1243
  },
1244
 
1245
- showImportView: function() {
1246
- this.modalContent.show( new TemplateLibraryImportView() );
1247
  },
1248
 
1249
- showSaveTemplateView: function( elementModel ) {
1250
- this.modalContent.show( new TemplateLibrarySaveTemplateView( { model: elementModel } ) );
1251
-
1252
- var headerView = this.getHeaderView();
1253
-
1254
- headerView.tools.reset();
1255
- headerView.menuArea.reset();
1256
- headerView.logoArea.show( new TemplateLibraryHeaderLogoView() );
1257
  },
1258
 
1259
- showPreviewView: function( templateModel ) {
1260
- this.modalContent.show( new TemplateLibraryPreviewView( {
1261
- url: templateModel.get( 'url' )
1262
- } ) );
1263
-
1264
- var headerView = this.getHeaderView();
1265
-
1266
- headerView.menuArea.reset();
1267
-
1268
- headerView.tools.show( new TemplateLibraryHeaderPreviewView( {
1269
- model: templateModel
1270
- } ) );
1271
 
1272
- headerView.logoArea.show( new TemplateLibraryHeaderBackView() );
1273
  }
1274
  } );
1275
 
1276
- module.exports = TemplateLibraryLayoutView;
1277
 
1278
- },{"elementor-templates/views/parts/header":22,"elementor-templates/views/parts/header-parts/back":17,"elementor-templates/views/parts/header-parts/logo":18,"elementor-templates/views/parts/header-parts/menu":19,"elementor-templates/views/parts/header-parts/preview":20,"elementor-templates/views/parts/header-parts/save":21,"elementor-templates/views/parts/import":23,"elementor-templates/views/parts/loading":24,"elementor-templates/views/parts/preview":25,"elementor-templates/views/parts/save-template":26,"elementor-templates/views/parts/templates":28}],17:[function(require,module,exports){
1279
- var TemplateLibraryHeaderBackView;
 
1280
 
1281
- TemplateLibraryHeaderBackView = Marionette.ItemView.extend( {
1282
- template: '#tmpl-elementor-template-library-header-back',
 
1283
 
1284
- id: 'elementor-template-library-header-preview-back',
 
 
1285
 
1286
- events: {
1287
- 'click': 'onClick'
1288
  },
1289
 
1290
- onClick: function() {
1291
- elementor.templates.showTemplates();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1292
  }
1293
  } );
1294
 
1295
- module.exports = TemplateLibraryHeaderBackView;
1296
 
1297
- },{}],18:[function(require,module,exports){
1298
- var TemplateLibraryHeaderLogoView;
 
1299
 
1300
- TemplateLibraryHeaderLogoView = Marionette.ItemView.extend( {
1301
- template: '#tmpl-elementor-template-library-header-logo',
1302
 
1303
- id: 'elementor-template-library-header-logo',
 
 
 
 
1304
 
1305
- events: {
1306
- 'click': 'onClick'
 
 
1307
  },
1308
 
1309
- onClick: function() {
1310
- elementor.templates.setTemplatesSource( 'remote' );
1311
- elementor.templates.showTemplates();
 
 
 
1312
  }
1313
  } );
1314
 
1315
- module.exports = TemplateLibraryHeaderLogoView;
1316
-
1317
- },{}],19:[function(require,module,exports){
1318
- var TemplateLibraryHeaderMenuView;
1319
 
1320
- TemplateLibraryHeaderMenuView = Marionette.ItemView.extend( {
1321
- options: {
1322
- activeClass: 'elementor-active'
1323
- },
1324
 
1325
- template: '#tmpl-elementor-template-library-header-menu',
 
1326
 
1327
- id: 'elementor-template-library-header-menu',
 
 
 
1328
 
1329
- ui: {
1330
- menuItems: '.elementor-template-library-menu-item'
1331
- },
1332
 
1333
- events: {
1334
- 'click @ui.menuItems': 'onMenuItemClick'
1335
- },
1336
 
1337
- $activeItem: null,
 
 
 
 
 
1338
 
1339
- activateMenuItem: function( $item ) {
1340
- var activeClass = this.getOption( 'activeClass' );
1341
-
1342
- if ( this.$activeItem === $item ) {
1343
- return;
1344
- }
1345
 
1346
- if ( this.$activeItem ) {
1347
- this.$activeItem.removeClass( activeClass );
1348
- }
 
 
 
 
 
 
 
 
 
 
1349
 
1350
- $item.addClass( activeClass );
 
 
 
 
 
 
 
1351
 
1352
- this.$activeItem = $item;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1353
  },
1354
 
1355
- onRender: function() {
1356
- var currentSource = elementor.channels.templates.request( 'filter:source' ),
1357
- $sourceItem = this.ui.menuItems.filter( '[data-template-source="' + currentSource + '"]' );
1358
 
1359
- this.activateMenuItem( $sourceItem );
 
1360
  },
1361
 
1362
- onMenuItemClick: function( event ) {
1363
- var item = event.currentTarget;
1364
 
1365
- this.activateMenuItem( Backbone.$( item ) );
 
1366
 
1367
- elementor.templates.setTemplatesSource( item.dataset.templateSource, true );
1368
- }
1369
- } );
1370
 
1371
- module.exports = TemplateLibraryHeaderMenuView;
 
1372
 
1373
- },{}],20:[function(require,module,exports){
1374
- var TemplateLibraryInsertTemplateBehavior = require( 'elementor-templates/behaviors/insert-template' ),
1375
- TemplateLibraryHeaderPreviewView;
1376
 
1377
- TemplateLibraryHeaderPreviewView = Marionette.ItemView.extend( {
1378
- template: '#tmpl-elementor-template-library-header-preview',
1379
 
1380
- id: 'elementor-template-library-header-preview',
 
 
1381
 
1382
- behaviors: {
1383
- insertTemplate: {
1384
- behaviorClass: TemplateLibraryInsertTemplateBehavior
1385
  }
1386
- }
1387
- } );
1388
 
1389
- module.exports = TemplateLibraryHeaderPreviewView;
 
 
1390
 
1391
- },{"elementor-templates/behaviors/insert-template":12}],21:[function(require,module,exports){
1392
- var TemplateLibraryHeaderSaveView;
 
 
1393
 
1394
- TemplateLibraryHeaderSaveView = Marionette.ItemView.extend( {
1395
- template: '#tmpl-elementor-template-library-header-save',
1396
 
1397
- id: 'elementor-template-library-header-save',
 
1398
 
1399
- className: 'elementor-template-library-header-item',
 
 
1400
 
1401
- events: {
1402
- 'click': 'onClick'
1403
  },
1404
 
1405
- onClick: function() {
1406
- elementor.templates.getLayout().showSaveTemplateView();
1407
- }
1408
- } );
1409
 
1410
- module.exports = TemplateLibraryHeaderSaveView;
1411
 
1412
- },{}],22:[function(require,module,exports){
1413
- var TemplateLibraryHeaderView;
1414
 
1415
- TemplateLibraryHeaderView = Marionette.LayoutView.extend( {
 
 
 
1416
 
1417
- id: 'elementor-template-library-header',
1418
 
1419
- template: '#tmpl-elementor-template-library-header',
1420
 
1421
- regions: {
1422
- logoArea: '#elementor-template-library-header-logo-area',
1423
- tools: '#elementor-template-library-header-tools',
1424
- menuArea: '#elementor-template-library-header-menu-area'
1425
- },
1426
 
1427
- ui: {
1428
- closeModal: '#elementor-template-library-header-close-modal'
1429
  },
1430
 
1431
- events: {
1432
- 'click @ui.closeModal': 'onCloseModalClick'
1433
  },
1434
 
1435
- onCloseModalClick: function() {
1436
- elementor.templates.closeModal();
1437
- }
1438
- } );
1439
-
1440
- module.exports = TemplateLibraryHeaderView;
1441
-
1442
- },{}],23:[function(require,module,exports){
1443
- var TemplateLibraryImportView;
1444
-
1445
- TemplateLibraryImportView = Marionette.ItemView.extend( {
1446
- template: '#tmpl-elementor-template-library-import',
1447
 
1448
- id: 'elementor-template-library-import',
 
 
 
1449
 
1450
- ui: {
1451
- uploadForm: '#elementor-template-library-import-form'
1452
  },
1453
 
1454
- events: {
1455
- 'submit @ui.uploadForm': 'onFormSubmit'
1456
- },
1457
 
1458
- onFormSubmit: function( event ) {
1459
- event.preventDefault();
1460
 
1461
- elementor.templates.getLayout().showLoadingView();
1462
 
1463
- elementor.ajax.send( 'import_template', {
1464
- data: new FormData( this.ui.uploadForm[ 0 ] ),
1465
- processData: false,
1466
- contentType: false,
1467
- success: function( data ) {
1468
- elementor.templates.getTemplatesCollection().add( data.item );
1469
 
1470
- elementor.templates.showTemplates();
1471
- },
1472
- error: function( data ) {
1473
- elementor.templates.showErrorDialog( data );
1474
- }
1475
- } );
1476
- }
1477
- } );
1478
 
1479
- module.exports = TemplateLibraryImportView;
 
1480
 
1481
- },{}],24:[function(require,module,exports){
1482
- var TemplateLibraryLoadingView;
1483
 
1484
- TemplateLibraryLoadingView = Marionette.ItemView.extend( {
1485
- id: 'elementor-template-library-loading',
1486
 
1487
- template: '#tmpl-elementor-template-library-loading'
1488
- } );
1489
 
1490
- module.exports = TemplateLibraryLoadingView;
1491
 
1492
- },{}],25:[function(require,module,exports){
1493
- var TemplateLibraryPreviewView;
1494
 
1495
- TemplateLibraryPreviewView = Marionette.ItemView.extend( {
1496
- template: '#tmpl-elementor-template-library-preview',
1497
 
1498
- id: 'elementor-template-library-preview',
1499
 
1500
- ui: {
1501
- iframe: '> iframe'
1502
  },
1503
 
1504
- onRender: function() {
1505
- this.ui.iframe.attr( 'src', this.getOption( 'url' ) );
1506
- }
1507
- } );
1508
-
1509
- module.exports = TemplateLibraryPreviewView;
1510
-
1511
- },{}],26:[function(require,module,exports){
1512
- var TemplateLibrarySaveTemplateView;
1513
 
1514
- TemplateLibrarySaveTemplateView = Marionette.ItemView.extend( {
1515
- id: 'elementor-template-library-save-template',
 
 
1516
 
1517
- template: '#tmpl-elementor-template-library-save-template',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1518
 
1519
- ui: {
1520
- form: '#elementor-template-library-save-template-form',
1521
- submitButton: '#elementor-template-library-save-template-submit'
1522
  },
1523
 
1524
- events: {
1525
- 'submit @ui.form': 'onFormSubmit'
1526
- },
 
 
 
 
 
 
1527
 
1528
- getSaveType: function() {
1529
- return this.model ? this.model.get( 'elType' ) : 'page';
1530
- },
1531
 
1532
- templateHelpers: function() {
1533
- var saveType = this.getSaveType(),
1534
- templateType = elementor.templates.getTemplateTypes( saveType );
 
 
1535
 
1536
- return templateType.saveDialog;
1537
- },
 
 
 
 
 
1538
 
1539
- onFormSubmit: function( event ) {
1540
- event.preventDefault();
 
 
 
 
 
 
1541
 
1542
- var formData = this.ui.form.elementorSerializeObject(),
1543
- saveType = this.model ? this.model.get( 'elType' ) : 'page',
1544
- JSONParams = { removeDefault: true };
1545
 
1546
- formData.content = this.model ? [ this.model.toJSON( JSONParams ) ] : elementor.elements.toJSON( JSONParams );
 
 
 
1547
 
1548
- this.ui.submitButton.addClass( 'elementor-button-state' );
 
 
 
 
 
 
 
 
 
1549
 
1550
- elementor.templates.saveTemplate( saveType, formData );
1551
- }
1552
- } );
 
 
 
 
 
 
1553
 
1554
- module.exports = TemplateLibrarySaveTemplateView;
1555
 
1556
- },{}],27:[function(require,module,exports){
1557
- var TemplateLibraryTemplatesEmptyView;
 
1558
 
1559
- TemplateLibraryTemplatesEmptyView = Marionette.ItemView.extend( {
1560
- id: 'elementor-template-library-templates-empty',
 
 
1561
 
1562
- template: '#tmpl-elementor-template-library-templates-empty'
1563
- } );
 
 
 
 
 
 
 
 
1564
 
1565
- module.exports = TemplateLibraryTemplatesEmptyView;
 
 
 
 
 
 
 
 
 
1566
 
1567
- },{}],28:[function(require,module,exports){
1568
- var TemplateLibraryTemplateLocalView = require( 'elementor-templates/views/template/local' ),
1569
- TemplateLibraryTemplateRemoteView = require( 'elementor-templates/views/template/remote' ),
1570
- TemplateLibraryTemplatesEmptyView = require( 'elementor-templates/views/parts/templates-empty' ),
1571
- TemplateLibraryCollectionView;
1572
 
1573
- TemplateLibraryCollectionView = Marionette.CompositeView.extend( {
1574
- template: '#tmpl-elementor-template-library-templates',
1575
 
1576
- id: 'elementor-template-library-templates',
 
 
 
 
 
1577
 
1578
- childViewContainer: '#elementor-template-library-templates-container',
 
 
1579
 
1580
- emptyView: TemplateLibraryTemplatesEmptyView,
 
 
1581
 
1582
- getChildView: function( childModel ) {
1583
- if ( 'remote' === childModel.get( 'source' ) ) {
1584
- return TemplateLibraryTemplateRemoteView;
1585
- }
1586
 
1587
- return TemplateLibraryTemplateLocalView;
 
 
 
 
1588
  },
1589
 
1590
- initialize: function() {
1591
- this.listenTo( elementor.channels.templates, 'filter:change', this._renderChildren );
1592
- },
1593
 
1594
- filterByName: function( model ) {
1595
- var filterValue = elementor.channels.templates.request( 'filter:text' );
1596
 
1597
- if ( ! filterValue ) {
1598
- return true;
1599
- }
1600
 
1601
- filterValue = filterValue.toLowerCase();
 
1602
 
1603
- if ( model.get( 'title' ).toLowerCase().indexOf( filterValue ) >= 0 ) {
1604
- return true;
1605
- }
1606
 
1607
- return _.any( model.get( 'keywords' ), function( keyword ) {
1608
- return keyword.toLowerCase().indexOf( filterValue ) >= 0;
1609
- } );
1610
- },
1611
 
1612
- filterBySource: function( model ) {
1613
- var filterValue = elementor.channels.templates.request( 'filter:source' );
1614
 
1615
- if ( ! filterValue ) {
1616
- return true;
1617
- }
1618
 
1619
- return filterValue === model.get( 'source' );
1620
- },
1621
 
1622
- filterByType: function( model ) {
1623
- return false !== elementor.templates.getTemplateTypes( model.get( 'type' ) ).showInLibrary;
1624
- },
1625
 
1626
- filter: function( childModel ) {
1627
- return this.filterByName( childModel ) && this.filterBySource( childModel ) && this.filterByType( childModel );
 
1628
  },
1629
 
1630
- onRenderCollection: function() {
1631
- var isEmpty = this.children.isEmpty();
1632
 
1633
- this.$childViewContainer.attr( 'data-template-source', isEmpty ? 'empty' : elementor.channels.templates.request( 'filter:source' ) );
1634
- }
1635
- } );
1636
 
1637
- module.exports = TemplateLibraryCollectionView;
1638
 
1639
- },{"elementor-templates/views/parts/templates-empty":27,"elementor-templates/views/template/local":30,"elementor-templates/views/template/remote":31}],29:[function(require,module,exports){
1640
- var TemplateLibraryInsertTemplateBehavior = require( 'elementor-templates/behaviors/insert-template' ),
1641
- TemplateLibraryTemplateView;
 
1642
 
1643
- TemplateLibraryTemplateView = Marionette.ItemView.extend( {
1644
- className: function() {
1645
- var classes = 'elementor-template-library-template elementor-template-library-template-' + this.model.get( 'source' );
1646
 
1647
- if ( this.model.get( 'isPro' ) ) {
1648
- classes += ' elementor-template-library-pro-template';
1649
- }
1650
 
1651
- return classes;
1652
- },
1653
 
1654
- ui: function() {
1655
- return {
1656
- previewButton: '.elementor-template-library-template-preview'
1657
- };
1658
- },
1659
 
1660
- events: function() {
1661
- return {
1662
- 'click @ui.previewButton': 'onPreviewButtonClick'
1663
- };
1664
- },
1665
 
1666
- behaviors: {
1667
- insertTemplate: {
1668
- behaviorClass: TemplateLibraryInsertTemplateBehavior
1669
- }
1670
- }
1671
- } );
1672
-
1673
- module.exports = TemplateLibraryTemplateView;
1674
-
1675
- },{"elementor-templates/behaviors/insert-template":12}],30:[function(require,module,exports){
1676
- var TemplateLibraryTemplateView = require( 'elementor-templates/views/template/base' ),
1677
- TemplateLibraryTemplateLocalView;
1678
 
1679
- TemplateLibraryTemplateLocalView = TemplateLibraryTemplateView.extend( {
1680
- template: '#tmpl-elementor-template-library-template-local',
1681
 
1682
- ui: function() {
1683
- return _.extend( TemplateLibraryTemplateView.prototype.ui.apply( this, arguments ), {
1684
- deleteButton: '.elementor-template-library-template-delete'
1685
- } );
1686
- },
1687
 
1688
- events: function() {
1689
- return _.extend( TemplateLibraryTemplateView.prototype.events.apply( this, arguments ), {
1690
- 'click @ui.deleteButton': 'onDeleteButtonClick'
1691
  } );
1692
- },
1693
-
1694
- onDeleteButtonClick: function() {
1695
- elementor.templates.deleteTemplate( this.model );
1696
- },
1697
-
1698
- onPreviewButtonClick: function() {
1699
- open( this.model.get( 'url' ), '_blank' );
1700
- }
1701
- } );
1702
 
1703
- module.exports = TemplateLibraryTemplateLocalView;
 
 
1704
 
1705
- },{"elementor-templates/views/template/base":29}],31:[function(require,module,exports){
1706
- var TemplateLibraryTemplateView = require( 'elementor-templates/views/template/base' ),
1707
- TemplateLibraryTemplateRemoteView;
1708
 
1709
- TemplateLibraryTemplateRemoteView = TemplateLibraryTemplateView.extend( {
1710
- template: '#tmpl-elementor-template-library-template-remote',
 
 
 
1711
 
1712
- onPreviewButtonClick: function() {
1713
- elementor.templates.getLayout().showPreviewView( this.model );
1714
- }
1715
- } );
1716
 
1717
- module.exports = TemplateLibraryTemplateRemoteView;
1718
 
1719
- },{"elementor-templates/views/template/base":29}],32:[function(require,module,exports){
1720
- /* global ElementorConfig */
1721
- var App;
1722
 
1723
- Marionette.TemplateCache.prototype.compileTemplate = function( rawTemplate, options ) {
1724
- options = {
1725
- evaluate: /<#([\s\S]+?)#>/g,
1726
- interpolate: /{{{([\s\S]+?)}}}/g,
1727
- escape: /{{([^}]+?)}}(?!})/g
1728
- };
1729
 
1730
- return _.template( rawTemplate, options );
1731
- };
1732
 
1733
- App = Marionette.Application.extend( {
1734
- helpers: require( 'elementor-editor-utils/helpers' ),
1735
- heartbeat: require( 'elementor-editor-utils/heartbeat' ),
1736
- imagesManager: require( 'elementor-editor-utils/images-manager' ),
1737
- debug: require( 'elementor-editor-utils/debug' ),
1738
- schemes: require( 'elementor-editor-utils/schemes' ),
1739
- presetsFactory: require( 'elementor-editor-utils/presets-factory' ),
1740
- introduction: require( 'elementor-editor-utils/introduction' ),
1741
- templates: require( 'elementor-templates/manager' ),
1742
- ajax: require( 'elementor-editor-utils/ajax' ),
1743
- conditions: require( 'elementor-editor-utils/conditions' ),
1744
- revisions: require( 'elementor-revisions/manager' ),
1745
- hotKeys: require( 'elementor-editor-utils/hot-keys' ),
1746
 
1747
- channels: {
1748
- editor: Backbone.Radio.channel( 'ELEMENTOR:editor' ),
1749
- data: Backbone.Radio.channel( 'ELEMENTOR:data' ),
1750
- panelElements: Backbone.Radio.channel( 'ELEMENTOR:panelElements' ),
1751
- dataEditMode: Backbone.Radio.channel( 'ELEMENTOR:editmode' ),
1752
- deviceMode: Backbone.Radio.channel( 'ELEMENTOR:deviceMode' ),
1753
- templates: Backbone.Radio.channel( 'ELEMENTOR:templates' )
1754
  },
1755
 
1756
- // Exporting modules that can be used externally
1757
- modules: {
1758
- element: require( 'elementor-models/element' ),
1759
- WidgetView: require( 'elementor-views/widget' ),
1760
- panel: {
1761
- Menu: require( 'elementor-panel/pages/menu/menu' )
1762
- },
1763
- controls: {
1764
- Base: require( 'elementor-views/controls/base' ),
1765
- BaseMultiple: require( 'elementor-views/controls/base-multiple' ),
1766
- Color: require( 'elementor-views/controls/color' ),
1767
- Dimensions: require( 'elementor-views/controls/dimensions' ),
1768
- Image_dimensions: require( 'elementor-views/controls/image-dimensions' ),
1769
- Media: require( 'elementor-views/controls/media' ),
1770
- Slider: require( 'elementor-views/controls/slider' ),
1771
- Wysiwyg: require( 'elementor-views/controls/wysiwyg' ),
1772
- Choose: require( 'elementor-views/controls/choose' ),
1773
- Url: require( 'elementor-views/controls/base-multiple' ),
1774
- Font: require( 'elementor-views/controls/font' ),
1775
- Section: require( 'elementor-views/controls/section' ),
1776
- Tab: require( 'elementor-views/controls/tab' ),
1777
- Repeater: require( 'elementor-views/controls/repeater' ),
1778
- Wp_widget: require( 'elementor-views/controls/wp_widget' ),
1779
- Icon: require( 'elementor-views/controls/icon' ),
1780
- Gallery: require( 'elementor-views/controls/gallery' ),
1781
- Select2: require( 'elementor-views/controls/select2' ),
1782
- Date_time: require( 'elementor-views/controls/date-time' ),
1783
- Code: require( 'elementor-views/controls/code' ),
1784
- Box_shadow: require( 'elementor-views/controls/box-shadow' ),
1785
- Text_shadow: require( 'elementor-views/controls/box-shadow' ),
1786
- Structure: require( 'elementor-views/controls/structure' ),
1787
- Animation: require( 'elementor-views/controls/select2' ),
1788
- Hover_animation: require( 'elementor-views/controls/select2' ),
1789
- Order: require( 'elementor-views/controls/order' ),
1790
- Switcher: require( 'elementor-views/controls/switcher' ),
1791
- Number: require( 'elementor-views/controls/number' )
1792
- },
1793
- templateLibrary: {
1794
- ElementsCollectionView: require( 'elementor-panel/pages/elements/views/elements' )
1795
  }
1796
  },
1797
 
1798
- _defaultDeviceMode: 'desktop',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1799
 
1800
- addControlView: function( controlID, ControlView ) {
1801
- this.modules.controls[ controlID[0].toUpperCase() + controlID.slice( 1 ) ] = ControlView;
1802
  },
1803
 
1804
- getElementData: function( modelElement ) {
1805
- var elType = modelElement.get( 'elType' );
 
 
 
1806
 
1807
- if ( 'widget' === elType ) {
1808
- var widgetType = modelElement.get( 'widgetType' );
 
1809
 
1810
- if ( ! this.config.widgets[ widgetType ] ) {
1811
- return false;
 
 
1812
  }
 
 
1813
 
1814
- return this.config.widgets[ widgetType ];
1815
- }
 
1816
 
1817
- if ( ! this.config.elements[ elType ] ) {
1818
- return false;
1819
- }
 
 
 
 
 
 
 
 
 
 
1820
 
1821
- return this.config.elements[ elType ];
 
 
 
 
 
 
1822
  },
1823
 
1824
- getElementControls: function( modelElement ) {
1825
- var self = this,
1826
- elementData = self.getElementData( modelElement );
1827
 
1828
- if ( ! elementData ) {
1829
- return false;
1830
  }
1831
 
1832
- var elType = modelElement.get( 'elType' ),
1833
- isInner = modelElement.get( 'isInner' ),
1834
- controls = {};
1835
-
1836
- _.each( elementData.controls, function( controlData, controlKey ) {
1837
- if ( isInner && controlData.hide_in_inner || ! isInner && controlData.hide_in_top ) {
1838
- return;
1839
- }
1840
 
1841
- controls[ controlKey ] = _.extend( {}, self.config.controls[ controlData.type ], controlData );
1842
- } );
 
1843
 
1844
- return controls;
 
1845
  },
1846
 
1847
- getControlView: function( controlID ) {
1848
- return this.modules.controls[ controlID[0].toUpperCase() + controlID.slice( 1 ) ] || this.modules.controls.Base;
 
 
 
 
1849
  },
1850
 
1851
- getPanelView: function() {
1852
- return this.getRegion( 'panel' ).currentView;
1853
- },
1854
 
1855
- initComponents: function() {
1856
- var EventManager = require( 'elementor-utils/hooks' ),
1857
- Settings = require( 'elementor-editor/settings/settings' );
1858
 
1859
- this.hooks = new EventManager();
 
 
 
1860
 
1861
- this.settings = new Settings();
 
 
 
 
1862
 
1863
- /**
1864
- * @deprecated - use `this.settings.page` instead
1865
- */
1866
- this.pageSettings = this.settings.page;
1867
 
1868
- this.templates.init();
 
 
 
 
 
 
 
1869
 
1870
- this.initDialogsManager();
1871
 
1872
- this.heartbeat.init();
1873
 
1874
- this.ajax.init();
 
 
 
 
 
1875
 
1876
- this.revisions.init();
 
1877
 
1878
- this.hotKeys.init();
1879
  },
1880
 
1881
- initDialogsManager: function() {
1882
- this.dialogsManager = new DialogsManager.Instance();
1883
  },
1884
 
1885
- initElements: function() {
1886
- var ElementModel = elementor.modules.element,
1887
- config = this.config.data;
1888
 
1889
- // If it's an reload, use the not-saved data
1890
- if ( this.elements ) {
1891
- config = this.elements.toJSON();
1892
  }
1893
 
1894
- this.elements = new ElementModel.Collection( config );
1895
- },
 
1896
 
1897
- initPreview: function() {
1898
- this.$previewWrapper = Backbone.$( '#elementor-preview' );
 
 
 
1899
 
1900
- this.$previewResponsiveWrapper = Backbone.$( '#elementor-preview-responsive-wrapper' );
 
 
1901
 
1902
- var previewIframeId = 'elementor-preview-iframe';
 
 
 
1903
 
1904
- // Make sure the iFrame does not exist.
1905
- if ( ! Backbone.$( '#' + previewIframeId ).length ) {
1906
- var previewIFrame = document.createElement( 'iframe' );
 
1907
 
1908
- previewIFrame.id = previewIframeId;
1909
- previewIFrame.src = this.config.preview_link + '&' + ( new Date().getTime() );
1910
 
1911
- this.$previewResponsiveWrapper.append( previewIFrame );
 
1912
  }
1913
 
1914
- this.$preview = Backbone.$( '#' + previewIframeId );
 
 
 
 
1915
 
1916
- this.$preview.on( 'load', _.bind( this.onPreviewLoaded, this ) );
1917
  },
1918
 
1919
- initFrontend: function() {
1920
- var frontendWindow = this.$preview[0].contentWindow;
1921
-
1922
- window.elementorFrontend = frontendWindow.elementorFrontend;
1923
 
1924
- frontendWindow.elementor = this;
 
1925
 
1926
- elementorFrontend.init();
 
1927
 
1928
- elementorFrontend.elementsHandler.initHandlers();
 
 
1929
 
1930
- this.trigger( 'frontend:init' );
1931
- },
 
1932
 
1933
- initClearPageDialog: function() {
1934
- var self = this,
1935
- dialog;
1936
 
1937
- self.getClearPageDialog = function() {
1938
- if ( dialog ) {
1939
- return dialog;
1940
  }
1941
-
1942
- dialog = this.dialogsManager.createWidget( 'confirm', {
1943
- id: 'elementor-clear-page-dialog',
1944
- headerMessage: elementor.translate( 'clear_page' ),
1945
- message: elementor.translate( 'dialog_confirm_clear_page' ),
1946
- position: {
1947
- my: 'center center',
1948
- at: 'center center'
1949
- },
1950
- strings: {
1951
- confirm: elementor.translate( 'delete' ),
1952
- cancel: elementor.translate( 'cancel' )
1953
- },
1954
- onConfirm: function() {
1955
- self.getRegion( 'sections' ).currentView.collection.reset();
1956
- }
1957
- } );
1958
-
1959
- return dialog;
1960
- };
1961
  },
1962
 
1963
- preventClicksInsideEditor: function() {
1964
- this.$previewContents.on( 'click', function( event ) {
1965
- var $target = Backbone.$( event.target ),
1966
- editMode = elementor.channels.dataEditMode.request( 'activeMode' ),
1967
- isClickInsideElementor = !! $target.closest( '#elementor' ).length,
1968
- isTargetInsideDocument = this.contains( $target[0] );
1969
 
1970
- if ( isClickInsideElementor && 'edit' === editMode || ! isTargetInsideDocument ) {
1971
- return;
1972
- }
 
 
 
 
 
 
 
 
 
1973
 
1974
- if ( $target.closest( 'a' ).length ) {
1975
- event.preventDefault();
1976
- }
1977
 
1978
- if ( ! isClickInsideElementor ) {
1979
- var panelView = elementor.getPanelView();
 
1980
 
1981
- if ( 'elements' !== panelView.getCurrentPageName() ) {
1982
- panelView.setPage( 'elements' );
1983
- }
1984
- }
1985
- } );
1986
- },
1987
 
1988
- onStart: function() {
1989
- this.$window = Backbone.$( window );
1990
 
1991
- NProgress.start();
1992
- NProgress.inc( 0.2 );
 
1993
 
1994
- this.config = ElementorConfig;
1995
 
1996
- Backbone.Radio.DEBUG = false;
1997
- Backbone.Radio.tuneIn( 'ELEMENTOR' );
1998
 
1999
- this.initComponents();
 
2000
 
2001
- this.channels.dataEditMode.reply( 'activeMode', 'edit' );
2002
 
2003
- this.listenTo( this.channels.dataEditMode, 'switch', this.onEditModeSwitched );
 
 
 
 
2004
 
2005
- this.setWorkSaver();
 
 
2006
 
2007
- this.initClearPageDialog();
 
 
2008
 
2009
- this.$window.trigger( 'elementor:init' );
 
 
2010
 
2011
- this.initPreview();
 
 
 
 
2012
 
2013
- this.logSite();
 
2014
  },
2015
 
2016
- onPreviewLoaded: function() {
2017
- NProgress.done();
 
2018
 
2019
- this.$previewContents = this.$preview.contents();
 
 
2020
 
2021
- var $previewElementorEl = this.$previewContents.find( '#elementor' );
 
 
2022
 
2023
- if ( ! $previewElementorEl.length ) {
2024
- this.onPreviewElNotFound();
2025
- return;
2026
- }
2027
 
2028
- this.initFrontend();
2029
 
2030
- this.initElements();
 
2031
 
2032
- this.hotKeys.bindListener( elementorFrontend.getElements( '$window' ) );
 
2033
 
2034
- var iframeRegion = new Marionette.Region( {
2035
- // Make sure you get the DOM object out of the jQuery object
2036
- el: $previewElementorEl[0]
2037
- } );
2038
 
2039
- this.schemes.init();
2040
 
2041
- this.schemes.printSchemesStyle();
2042
 
2043
- this.preventClicksInsideEditor();
 
 
 
 
 
 
 
 
 
 
 
2044
 
2045
- var Preview = require( 'elementor-views/preview' ),
2046
- PanelLayoutView = require( 'elementor-layouts/panel/panel' );
 
 
 
 
 
 
 
2047
 
2048
- this.addRegions( {
2049
- sections: iframeRegion,
2050
- panel: '#elementor-panel'
2051
- } );
2052
 
2053
- this.getRegion( 'sections' ).show( new Preview( {
2054
- collection: this.elements
2055
- } ) );
2056
 
2057
- this.getRegion( 'panel' ).show( new PanelLayoutView() );
 
2058
 
2059
- this.$previewContents
2060
- .children() // <html>
2061
- .addClass( 'elementor-html' )
2062
- .children( 'body' )
2063
- .addClass( 'elementor-editor-active' );
 
 
 
 
 
 
 
2064
 
2065
- this.setResizablePanel();
2066
 
2067
- this.changeDeviceMode( this._defaultDeviceMode );
 
 
 
 
 
 
 
 
 
 
2068
 
2069
- Backbone.$( '#elementor-loading, #elementor-preview-loading' ).fadeOut( 600 );
 
2070
 
2071
- _.defer( function() {
2072
- elementorFrontend.getElements( 'window' ).jQuery.holdReady( false );
2073
- } );
2074
 
2075
- this.enqueueTypographyFonts();
2076
- //this.introduction.startOnLoadIntroduction(); // TEMP Removed
2077
 
2078
- this.onEditModeSwitched();
 
 
 
2079
 
2080
- this.trigger( 'preview:loaded' );
2081
- },
2082
 
2083
- onEditModeSwitched: function() {
2084
- var activeMode = this.channels.dataEditMode.request( 'activeMode' );
 
2085
 
2086
- if ( 'edit' === activeMode ) {
2087
- this.exitPreviewMode();
2088
- } else {
2089
- this.enterPreviewMode( 'preview' === activeMode );
2090
- }
2091
- },
2092
 
2093
- onPreviewElNotFound: function() {
2094
- var dialog = this.dialogsManager.createWidget( 'confirm', {
2095
- id: 'elementor-fatal-error-dialog',
2096
- headerMessage: elementor.translate( 'preview_el_not_found_header' ),
2097
- message: elementor.translate( 'preview_el_not_found_message' ),
2098
- position: {
2099
- my: 'center center',
2100
- at: 'center center'
2101
- },
2102
- strings: {
2103
- confirm: elementor.translate( 'learn_more' ),
2104
- cancel: elementor.translate( 'go_back' )
2105
- },
2106
- onConfirm: function() {
2107
- open( elementor.config.help_the_content_url, '_blank' );
2108
- },
2109
- onCancel: function() {
2110
- parent.history.go( -1 );
2111
- },
2112
- hideOnButtonClick: false
2113
- } );
2114
 
2115
- dialog.show();
2116
  },
2117
 
2118
- setFlagEditorChange: function( status ) {
2119
- elementor.channels.editor
2120
- .reply( 'status', status )
2121
- .trigger( 'status:change', status );
2122
  },
2123
 
2124
- isEditorChanged: function() {
2125
- return ( true === elementor.channels.editor.request( 'status' ) );
2126
  },
2127
 
2128
- setWorkSaver: function() {
2129
- this.$window.on( 'beforeunload', function() {
2130
- if ( elementor.isEditorChanged() ) {
2131
- return elementor.translate( 'before_unload_alert' );
2132
- }
2133
- } );
2134
- },
2135
 
2136
- setResizablePanel: function() {
2137
- var self = this,
2138
- side = elementor.config.is_rtl ? 'right' : 'left';
2139
 
2140
- self.panel.$el.resizable( {
2141
- handles: elementor.config.is_rtl ? 'w' : 'e',
2142
- minWidth: 200,
2143
- maxWidth: 680,
2144
- start: function() {
2145
- self.$previewWrapper
2146
- .addClass( 'ui-resizable-resizing' )
2147
- .css( 'pointer-events', 'none' );
2148
- },
2149
- stop: function() {
2150
- self.$previewWrapper
2151
- .removeClass( 'ui-resizable-resizing' )
2152
- .css( 'pointer-events', '' );
2153
 
2154
- elementor.channels.data.trigger( 'scrollbar:update' );
2155
- },
2156
- resize: function( event, ui ) {
2157
- self.$previewWrapper
2158
- .css( side, ui.size.width );
2159
- }
2160
- } );
2161
  },
2162
 
2163
- enterPreviewMode: function( hidePanel ) {
2164
- var $elements = this.$previewContents.find( 'body' );
 
2165
 
2166
- if ( hidePanel ) {
2167
- $elements = $elements.add( 'body' );
2168
- }
2169
 
2170
- $elements
2171
- .removeClass( 'elementor-editor-active' )
2172
- .addClass( 'elementor-editor-preview' );
2173
 
2174
- if ( hidePanel ) {
2175
- // Handle panel resize
2176
- this.$previewWrapper.css( elementor.config.is_rtl ? 'right' : 'left', '' );
2177
 
2178
- this.panel.$el.css( 'width', '' );
2179
- }
2180
  },
2181
 
2182
- exitPreviewMode: function() {
2183
- this.$previewContents
2184
- .find( 'body' )
2185
- .add( 'body' )
2186
- .removeClass( 'elementor-editor-preview' )
2187
- .addClass( 'elementor-editor-active' );
2188
  },
2189
 
2190
- changeEditMode: function( newMode ) {
2191
- var dataEditMode = elementor.channels.dataEditMode,
2192
- oldEditMode = dataEditMode.request( 'activeMode' );
2193
-
2194
- dataEditMode.reply( 'activeMode', newMode );
2195
 
2196
- if ( newMode !== oldEditMode ) {
2197
- dataEditMode.trigger( 'switch', newMode );
2198
- }
2199
  },
2200
 
2201
- saveEditor: function( options ) {
2202
- options = _.extend( {
2203
- status: 'draft',
2204
- onSuccess: null
2205
- }, options );
2206
 
2207
- var self = this,
2208
- newData = elementor.elements.toJSON( { removeDefault: true } );
2209
 
2210
- return this.ajax.send( 'save_builder', {
2211
- data: {
2212
- post_id: this.config.post_id,
2213
- status: options.status,
2214
- data: JSON.stringify( newData )
2215
- },
2216
- success: function( data ) {
2217
- self.setFlagEditorChange( false );
2218
-
2219
- self.config.data = newData;
2220
 
2221
- self.channels.editor.trigger( 'saved', data );
 
 
2222
 
2223
- if ( _.isFunction( options.onSuccess ) ) {
2224
- options.onSuccess.call( this, data );
2225
- }
 
2226
  }
2227
  } );
2228
  },
2229
 
2230
- reloadPreview: function() {
2231
- Backbone.$( '#elementor-preview-loading' ).show();
 
 
 
2232
 
2233
- this.$preview[0].contentWindow.location.reload( true );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2234
  },
2235
 
2236
- clearPage: function() {
2237
- this.getClearPageDialog().show();
 
2238
  },
2239
 
2240
- changeDeviceMode: function( newDeviceMode ) {
2241
- var oldDeviceMode = this.channels.deviceMode.request( 'currentMode' );
 
2242
 
2243
- if ( oldDeviceMode === newDeviceMode ) {
2244
- return;
2245
- }
2246
 
2247
- Backbone.$( 'body' )
2248
- .removeClass( 'elementor-device-' + oldDeviceMode )
2249
- .addClass( 'elementor-device-' + newDeviceMode );
 
2250
 
2251
- this.channels.deviceMode
2252
- .reply( 'previousMode', oldDeviceMode )
2253
- .reply( 'currentMode', newDeviceMode )
2254
- .trigger( 'change' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2255
  },
2256
 
2257
- enqueueTypographyFonts: function() {
2258
- var self = this,
2259
- typographyScheme = this.schemes.getScheme( 'typography' );
2260
 
2261
- _.each( typographyScheme.items, function( item ) {
2262
- self.helpers.enqueueFont( item.value.font_family );
2263
- } );
2264
  },
2265
 
2266
- translate: function( stringKey, templateArgs, i18nStack ) {
2267
- if ( ! i18nStack ) {
2268
- i18nStack = this.config.i18n;
2269
- }
2270
 
2271
- var string = i18nStack[ stringKey ];
 
 
2272
 
2273
- if ( undefined === string ) {
2274
- string = stringKey;
2275
- }
2276
 
2277
- if ( templateArgs ) {
2278
- string = string.replace( /{(\d+)}/g, function( match, number ) {
2279
- return undefined !== templateArgs[ number ] ? templateArgs[ number ] : match;
2280
- } );
2281
  }
2282
 
2283
- return string;
 
2284
  },
2285
 
2286
- compareVersions: function( versionA, versionB, operator ) {
2287
- var prepareVersion = function( version ) {
2288
- version = version + '';
2289
 
2290
- return version.replace( /[^\d.]+/, '.-1.' );
2291
- };
 
2292
 
2293
- versionA = prepareVersion( versionA );
2294
- versionB = prepareVersion( versionB );
2295
 
2296
- if ( versionA === versionB ) {
2297
- return ! operator || /^={2,3}$/.test( operator );
 
 
 
 
 
 
2298
  }
 
2299
 
2300
- var versionAParts = versionA.split( '.' ).map( Number ),
2301
- versionBParts = versionB.split( '.' ).map( Number ),
2302
- longestVersionParts = Math.max( versionAParts.length, versionBParts.length );
2303
 
2304
- for ( var i = 0; i < longestVersionParts; i++ ) {
2305
- var valueA = versionAParts[ i ] || 0,
2306
- valueB = versionBParts[ i ] || 0;
2307
 
2308
- if ( valueA !== valueB ) {
2309
- return this.conditions.compare( valueA, valueB, operator );
2310
- }
 
 
 
2311
  }
2312
- },
2313
 
2314
- logSite: function() {
2315
- var text = '',
2316
- style = '';
 
 
 
2317
 
2318
- if ( -1 !== navigator.userAgent.search( 'Firefox' ) ) {
2319
- var asciiText = [
2320
- ' ;;;;;;;;;;;;;;; ',
2321
- ';;; ;; ;;;',
2322
- ';;; ;;;;;;;;;;;;',
2323
- ';;; ;;;;;;;;;;;;',
2324
- ';;; ;; ;;;',
2325
- ';;; ;;;;;;;;;;;;',
2326
- ';;; ;;;;;;;;;;;;',
2327
- ';;; ;; ;;;',
2328
- ' ;;;;;;;;;;;;;;; '
2329
- ];
2330
 
2331
- text += '%c' + asciiText.join( '\n' ) + '\n';
 
 
2332
 
2333
- style = 'color: #C42961';
2334
- } else {
2335
- text += '%c00';
2336
 
2337
- style = 'line-height: 1.6; font-size: 20px; background-image: url("' + elementor.config.assets_url + 'images/logo-icon.png"); color: transparent; background-repeat: no-repeat; background-size: cover';
2338
- }
2339
 
2340
- text += '%c\nLove using Elementor? Join our growing community of Elementor developers: %chttps://github.com/pojome/elementor';
 
 
2341
 
2342
- setTimeout( console.log.bind( console, text, style, 'color: #9B0A46', '' ) );
2343
- }
 
2344
  } );
2345
 
2346
- module.exports = ( window.elementor = new App() ).start();
2347
 
2348
- },{"elementor-editor-utils/ajax":68,"elementor-editor-utils/conditions":69,"elementor-editor-utils/debug":71,"elementor-editor-utils/heartbeat":72,"elementor-editor-utils/helpers":73,"elementor-editor-utils/hot-keys":74,"elementor-editor-utils/images-manager":75,"elementor-editor-utils/introduction":76,"elementor-editor-utils/presets-factory":79,"elementor-editor-utils/schemes":80,"elementor-editor/settings/settings":67,"elementor-layouts/panel/panel":57,"elementor-models/element":60,"elementor-panel/pages/elements/views/elements":44,"elementor-panel/pages/menu/menu":47,"elementor-revisions/manager":8,"elementor-templates/manager":14,"elementor-utils/hooks":121,"elementor-views/controls/base":93,"elementor-views/controls/base-multiple":91,"elementor-views/controls/box-shadow":94,"elementor-views/controls/choose":95,"elementor-views/controls/code":96,"elementor-views/controls/color":97,"elementor-views/controls/date-time":98,"elementor-views/controls/dimensions":99,"elementor-views/controls/font":100,"elementor-views/controls/gallery":101,"elementor-views/controls/icon":102,"elementor-views/controls/image-dimensions":103,"elementor-views/controls/media":104,"elementor-views/controls/number":105,"elementor-views/controls/order":106,"elementor-views/controls/repeater":108,"elementor-views/controls/section":109,"elementor-views/controls/select2":110,"elementor-views/controls/slider":111,"elementor-views/controls/structure":112,"elementor-views/controls/switcher":113,"elementor-views/controls/tab":114,"elementor-views/controls/wp_widget":115,"elementor-views/controls/wysiwyg":116,"elementor-views/preview":118,"elementor-views/widget":120}],33:[function(require,module,exports){
2349
- var EditModeItemView;
 
 
 
 
 
 
2350
 
2351
- EditModeItemView = Marionette.ItemView.extend( {
2352
- template: '#tmpl-elementor-mode-switcher-content',
2353
 
2354
- id: 'elementor-mode-switcher-inner',
 
 
 
2355
 
2356
  ui: {
2357
- previewButton: '#elementor-mode-switcher-preview-input',
2358
- previewLabel: '#elementor-mode-switcher-preview',
2359
- previewLabelA11y: '#elementor-mode-switcher-preview .elementor-screen-only'
2360
  },
2361
 
2362
  events: {
2363
- 'change @ui.previewButton': 'onPreviewButtonChange'
2364
  },
2365
 
 
 
 
 
 
 
2366
  initialize: function() {
2367
- this.listenTo( elementor.channels.dataEditMode, 'switch', this.onEditModeChanged );
2368
- },
2369
 
2370
- getCurrentMode: function() {
2371
- return this.ui.previewButton.is( ':checked' ) ? 'preview' : 'edit';
2372
- },
2373
 
2374
- setMode: function( mode ) {
2375
- this.ui.previewButton
2376
- .prop( 'checked', 'preview' === mode )
2377
- .trigger( 'change' );
2378
  },
2379
 
2380
- toggleMode: function() {
2381
- this.setMode( this.ui.previewButton.prop( 'checked' ) ? 'edit' : 'preview' );
2382
- },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2383
 
2384
- onRender: function() {
2385
- this.onEditModeChanged();
2386
  },
2387
 
2388
- onPreviewButtonChange: function() {
2389
- elementor.changeEditMode( this.getCurrentMode() );
2390
- },
2391
 
2392
- onEditModeChanged: function() {
2393
- var activeMode = elementor.channels.dataEditMode.request( 'activeMode' ),
2394
- title = elementor.translate( 'preview' === activeMode ? 'back_to_editor' : 'preview' );
 
 
 
2395
 
2396
- this.ui.previewLabel.attr( 'title', title );
2397
- this.ui.previewLabelA11y.text( title );
2398
- }
2399
- } );
 
 
 
 
 
 
 
 
2400
 
2401
- module.exports = EditModeItemView;
 
2402
 
2403
- },{}],34:[function(require,module,exports){
2404
- var PanelFooterItemView;
2405
 
2406
- PanelFooterItemView = Marionette.ItemView.extend( {
2407
- template: '#tmpl-elementor-panel-footer-content',
 
 
 
2408
 
2409
- tagName: 'nav',
 
 
2410
 
2411
- id: 'elementor-panel-footer-tools',
2412
 
2413
- possibleRotateModes: [ 'portrait', 'landscape' ],
 
 
 
2414
 
2415
- ui: {
2416
- menuButtons: '.elementor-panel-footer-tool',
2417
- deviceModeIcon: '#elementor-panel-footer-responsive > i',
2418
- deviceModeButtons: '#elementor-panel-footer-responsive .elementor-panel-footer-sub-menu-item',
2419
- buttonSave: '#elementor-panel-footer-save',
2420
- buttonSaveButton: '#elementor-panel-footer-save .elementor-button',
2421
- buttonPublish: '#elementor-panel-footer-publish',
2422
- watchTutorial: '#elementor-panel-footer-watch-tutorial',
2423
- showTemplates: '#elementor-panel-footer-templates-modal',
2424
- saveTemplate: '#elementor-panel-footer-save-template'
2425
- },
2426
 
2427
- events: {
2428
- 'click @ui.deviceModeButtons': 'onClickResponsiveButtons',
2429
- 'click @ui.buttonSave': 'onClickButtonSave',
2430
- 'click @ui.buttonPublish': 'onClickButtonPublish',
2431
- 'click @ui.watchTutorial': 'onClickWatchTutorial',
2432
- 'click @ui.showTemplates': 'onClickShowTemplates',
2433
- 'click @ui.saveTemplate': 'onClickSaveTemplate'
2434
  },
2435
 
2436
- initialize: function() {
2437
- this._initDialog();
 
 
 
2438
 
2439
- this.listenTo( elementor.channels.editor, 'status:change', this.onEditorChanged )
2440
- .listenTo( elementor.channels.deviceMode, 'change', this.onDeviceModeChange );
2441
  },
2442
 
2443
- _initDialog: function() {
2444
- var dialog;
2445
-
2446
- this.getDialog = function() {
2447
- if ( ! dialog ) {
2448
- var $ = Backbone.$,
2449
- $dialogMessage = $( '<div>', {
2450
- 'class': 'elementor-dialog-message'
2451
- } ),
2452
- $messageIcon = $( '<i>', {
2453
- 'class': 'fa fa-check-circle'
2454
- } ),
2455
- $messageText = $( '<div>', {
2456
- 'class': 'elementor-dialog-message-text'
2457
- } ).text( elementor.translate( 'saved' ) );
2458
-
2459
- $dialogMessage.append( $messageIcon, $messageText );
2460
-
2461
- dialog = elementor.dialogsManager.createWidget( 'simple', {
2462
- id: 'elementor-saved-popup',
2463
- position: {
2464
- element: 'message',
2465
- of: 'widget'
2466
- },
2467
- hide: {
2468
- auto: true,
2469
- autoDelay: 1500
2470
- }
2471
- } );
2472
 
2473
- dialog.setMessage( $dialogMessage );
2474
- }
2475
 
2476
- return dialog;
2477
- };
2478
  },
2479
 
2480
- _publishBuilder: function() {
2481
- var self = this;
 
 
 
2482
 
2483
- var options = {
2484
- status: 'publish',
2485
- onSuccess: function() {
2486
- self.getDialog().show();
2487
 
2488
- self.ui.buttonSaveButton.removeClass( 'elementor-button-state' );
 
 
2489
 
2490
- NProgress.done();
2491
- }
2492
- };
2493
 
2494
- self.ui.buttonSaveButton.addClass( 'elementor-button-state' );
 
 
2495
 
2496
- NProgress.start();
 
2497
 
2498
- elementor.saveEditor( options );
2499
  },
2500
 
2501
- _saveBuilderDraft: function() {
2502
- elementor.saveEditor();
2503
  },
2504
 
2505
- getDeviceModeButton: function( deviceMode ) {
2506
- return this.ui.deviceModeButtons.filter( '[data-device-mode="' + deviceMode + '"]' );
2507
- },
 
2508
 
2509
- onPanelClick: function( event ) {
2510
- var $target = Backbone.$( event.target ),
2511
- isClickInsideOfTool = $target.closest( '.elementor-panel-footer-sub-menu-wrapper' ).length;
2512
 
2513
- if ( isClickInsideOfTool ) {
2514
- return;
2515
- }
2516
 
2517
- var $tool = $target.closest( '.elementor-panel-footer-tool' ),
2518
- isClosedTool = $tool.length && ! $tool.hasClass( 'elementor-open' );
 
 
 
 
 
 
 
 
2519
 
2520
- this.ui.menuButtons.removeClass( 'elementor-open' );
2521
 
2522
- if ( isClosedTool ) {
2523
- $tool.addClass( 'elementor-open' );
2524
- }
2525
- },
2526
 
2527
- onEditorChanged: function() {
2528
- this.ui.buttonSave.toggleClass( 'elementor-save-active', elementor.isEditorChanged() );
2529
- },
2530
 
2531
- onDeviceModeChange: function() {
2532
- var previousDeviceMode = elementor.channels.deviceMode.request( 'previousMode' ),
2533
- currentDeviceMode = elementor.channels.deviceMode.request( 'currentMode' );
2534
 
2535
- this.getDeviceModeButton( previousDeviceMode ).removeClass( 'active' );
2536
 
2537
- this.getDeviceModeButton( currentDeviceMode ).addClass( 'active' );
2538
 
2539
- // Change the footer icon
2540
- this.ui.deviceModeIcon.removeClass( 'eicon-device-' + previousDeviceMode ).addClass( 'eicon-device-' + currentDeviceMode );
2541
  },
2542
 
2543
- onClickButtonSave: function() {
2544
- //this._saveBuilderDraft();
2545
- this._publishBuilder();
2546
- },
2547
 
2548
- onClickButtonPublish: function( event ) {
2549
- // Prevent click on save button
2550
- event.stopPropagation();
2551
-
2552
- this._publishBuilder();
2553
- },
2554
-
2555
- onClickResponsiveButtons: function( event ) {
2556
- var $clickedButton = this.$( event.currentTarget ),
2557
- newDeviceMode = $clickedButton.data( 'device-mode' );
2558
 
2559
- elementor.changeDeviceMode( newDeviceMode );
2560
- },
 
2561
 
2562
- onClickWatchTutorial: function() {
2563
- elementor.introduction.startIntroduction();
2564
- },
2565
 
2566
- onClickShowTemplates: function() {
2567
- elementor.templates.showTemplatesModal();
2568
- },
2569
 
2570
- onClickSaveTemplate: function() {
2571
- elementor.templates.startModal( {
2572
- onReady: function() {
2573
- elementor.templates.getLayout().showSaveTemplateView();
2574
- }
2575
- } );
2576
- },
2577
 
2578
- onRender: function() {
2579
- var self = this;
2580
 
2581
- _.defer( function() {
2582
- elementor.getPanelView().$el.on( 'click', _.bind( self.onPanelClick, self ) );
2583
- } );
2584
  }
2585
  } );
2586
 
2587
- module.exports = PanelFooterItemView;
2588
-
2589
- },{}],35:[function(require,module,exports){
2590
- var PanelHeaderItemView;
2591
 
2592
- PanelHeaderItemView = Marionette.ItemView.extend( {
2593
- template: '#tmpl-elementor-panel-header',
2594
 
2595
- id: 'elementor-panel-header',
 
2596
 
2597
- ui: {
2598
- menuButton: '#elementor-panel-header-menu-button',
2599
- title: '#elementor-panel-header-title',
2600
- addButton: '#elementor-panel-header-add-button'
2601
- },
2602
 
2603
- events: {
2604
- 'click @ui.addButton': 'onClickAdd',
2605
- 'click @ui.menuButton': 'onClickMenu'
2606
- },
2607
 
2608
- setTitle: function( title ) {
2609
- this.ui.title.html( title );
2610
- },
2611
 
2612
- onClickAdd: function() {
2613
- elementor.getPanelView().setPage( 'elements' );
2614
- },
 
 
2615
 
2616
- onClickMenu: function() {
2617
- var panel = elementor.getPanelView(),
2618
- currentPanelPageName = panel.getCurrentPageName(),
2619
- nextPage = 'menu' === currentPanelPageName ? 'elements' : 'menu';
2620
 
2621
- panel.setPage( nextPage );
 
2622
  }
2623
  } );
2624
 
2625
- module.exports = PanelHeaderItemView;
2626
-
2627
- },{}],36:[function(require,module,exports){
2628
- var ControlsStack = require( 'elementor-views/controls-stack' ),
2629
- EditorView;
2630
-
2631
- EditorView = ControlsStack.extend( {
2632
- template: Marionette.TemplateCache.get( '#tmpl-editor-content' ),
2633
-
2634
- id: 'elementor-panel-page-editor',
2635
-
2636
- childViewContainer: '#elementor-controls',
2637
 
2638
- childViewOptions: function() {
2639
- return {
2640
- elementSettingsModel: this.model.get( 'settings' ),
2641
- elementEditSettings: this.model.get( 'editSettings' )
2642
- };
2643
- },
2644
 
2645
- openActiveSection: function() {
2646
- ControlsStack.prototype.openActiveSection.apply( this, arguments );
2647
 
2648
- elementor.channels.editor.trigger( 'section:activated', this.activeSection, this );
2649
- },
2650
 
2651
- isVisibleSectionControl: function( sectionControlModel ) {
2652
- return ControlsStack.prototype.isVisibleSectionControl.apply( this, arguments ) && elementor.helpers.isActiveControl( sectionControlModel, this.model.get( 'settings' ).attributes );
2653
  },
2654
 
2655
- onBeforeRender: function() {
2656
- var controls = elementor.getElementControls( this.model );
2657
 
2658
- if ( ! controls ) {
2659
- throw new Error( 'Editor controls not found' );
2660
  }
2661
 
2662
- // Create new instance of that collection
2663
- this.collection = new Backbone.Collection( _.values( controls ) );
2664
- },
2665
-
2666
- onDestroy: function() {
2667
- var editedElementView = this.getOption( 'editedElementView' );
2668
-
2669
- if ( editedElementView ) {
2670
- editedElementView.$el.removeClass( 'elementor-element-editable' );
2671
  }
2672
 
2673
- this.model.trigger( 'editor:close' );
2674
-
2675
- this.triggerMethod( 'editor:destroy' );
2676
  },
2677
 
2678
- onRender: function() {
2679
- var editedElementView = this.getOption( 'editedElementView' );
2680
 
2681
- if ( editedElementView ) {
2682
- editedElementView.$el.addClass( 'elementor-element-editable' );
2683
  }
2684
- },
2685
-
2686
- onDeviceModeChange: function() {
2687
- ControlsStack.prototype.onDeviceModeChange.apply( this, arguments );
2688
 
2689
- var self = this;
2690
 
2691
- // Timeout according to preview resize css animation duration
2692
- setTimeout( function() {
2693
- elementor.$previewContents.find( 'html, body' ).animate( {
2694
- scrollTop: self.getOption( 'editedElementView' ).$el.offset().top - elementor.$preview[0].contentWindow.innerHeight / 2
2695
- } );
2696
- }, 500 );
2697
  },
2698
 
2699
- onChildviewSettingsChange: function( childView ) {
2700
- var editedElementView = this.getOption( 'editedElementView' ),
2701
- editedElementType = editedElementView.model.get( 'elType' );
2702
-
2703
- if ( 'widget' === editedElementType ) {
2704
- editedElementType = editedElementView.model.get( 'widgetType' );
2705
- }
2706
-
2707
- elementor.channels.editor
2708
- .trigger( 'change', childView, editedElementView )
2709
- .trigger( 'change:' + editedElementType, childView, editedElementView )
2710
- .trigger( 'change:' + editedElementType + ':' + childView.model.get( 'name' ), childView, editedElementView );
2711
  }
2712
  } );
2713
 
2714
- module.exports = EditorView;
2715
-
2716
- },{"elementor-views/controls-stack":90}],37:[function(require,module,exports){
2717
- var PanelElementsCategory = require( '../models/element' ),
2718
- PanelElementsCategoriesCollection;
2719
 
2720
- PanelElementsCategoriesCollection = Backbone.Collection.extend( {
2721
- model: PanelElementsCategory
2722
- } );
2723
 
2724
- module.exports = PanelElementsCategoriesCollection;
2725
 
2726
- },{"../models/element":40}],38:[function(require,module,exports){
2727
- var PanelElementsElementModel = require( '../models/element' ),
2728
- PanelElementsElementsCollection;
2729
 
2730
- PanelElementsElementsCollection = Backbone.Collection.extend( {
2731
- model: PanelElementsElementModel/*,
2732
- comparator: 'title'*/
2733
  } );
2734
 
2735
- module.exports = PanelElementsElementsCollection;
2736
-
2737
- },{"../models/element":40}],39:[function(require,module,exports){
2738
- var PanelElementsCategoriesCollection = require( './collections/categories' ),
2739
- PanelElementsElementsCollection = require( './collections/elements' ),
2740
- PanelElementsCategoriesView = require( './views/categories' ),
2741
- PanelElementsElementsView = elementor.modules.templateLibrary.ElementsCollectionView,
2742
- PanelElementsSearchView = require( './views/search' ),
2743
- PanelElementsGlobalView = require( './views/global' ),
2744
- PanelElementsLayoutView;
2745
 
2746
- PanelElementsLayoutView = Marionette.LayoutView.extend( {
2747
- template: '#tmpl-elementor-panel-elements',
2748
 
2749
- regions: {
2750
- elements: '#elementor-panel-elements-wrapper',
2751
- search: '#elementor-panel-elements-search-area'
2752
- },
2753
 
2754
  ui: {
2755
- tabs: '.elementor-panel-navigation-tab'
2756
  },
2757
 
2758
  events: {
2759
- 'click @ui.tabs': 'onTabClick'
2760
  },
2761
 
2762
- regionViews: {},
 
2763
 
2764
- elementsCollection: null,
 
 
2765
 
2766
- categoriesCollection: null,
 
2767
 
2768
- initialize: function() {
2769
- this.listenTo( elementor.channels.panelElements, 'element:selected', this.destroy );
 
 
2770
 
2771
- this.initElementsCollection();
2772
 
2773
- this.initCategoriesCollection();
 
 
2774
 
2775
- this.initRegionViews();
 
 
 
 
 
 
2776
  },
2777
 
2778
- initRegionViews: function() {
2779
- var regionViews = {
2780
- elements: {
2781
- region: this.elements,
2782
- view: PanelElementsElementsView,
2783
- options: { collection: this.elementsCollection }
2784
- },
2785
- categories: {
2786
- region: this.elements,
2787
- view: PanelElementsCategoriesView,
2788
- options: { collection: this.categoriesCollection }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2789
  },
2790
- search: {
2791
- region: this.search,
2792
- view: PanelElementsSearchView
 
 
 
2793
  },
2794
- global: {
2795
- region: this.elements,
2796
- view: PanelElementsGlobalView
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2797
  }
2798
- };
2799
-
2800
- this.regionViews = elementor.hooks.applyFilters( 'panel/elements/regionViews', regionViews );
2801
  },
2802
 
2803
- initElementsCollection: function() {
2804
- var elementsCollection = new PanelElementsElementsCollection(),
2805
- sectionConfig = elementor.config.elements.section;
 
2806
 
2807
- elementsCollection.add( {
2808
- title: elementor.translate( 'inner_section' ),
2809
- elType: 'section',
2810
- categories: [ 'basic' ],
2811
- icon: sectionConfig.icon
2812
- } );
2813
 
2814
- // TODO: Change the array from server syntax, and no need each loop for initialize
2815
- _.each( elementor.config.widgets, function( element ) {
2816
- elementsCollection.add( {
2817
- title: element.title,
2818
- elType: element.elType,
2819
- categories: element.categories,
2820
- keywords: element.keywords,
2821
- icon: element.icon,
2822
- widgetType: element.widget_type,
2823
- custom: element.custom
2824
- } );
2825
- } );
2826
 
2827
- this.elementsCollection = elementsCollection;
2828
- },
2829
 
2830
- initCategoriesCollection: function() {
2831
- var categories = {};
 
 
2832
 
2833
- this.elementsCollection.each( function( element ) {
2834
- _.each( element.get( 'categories' ), function( category ) {
2835
- if ( ! categories[ category ] ) {
2836
- categories[ category ] = [];
2837
  }
 
2838
 
2839
- categories[ category ].push( element );
2840
- } );
2841
- } );
2842
 
2843
- var categoriesCollection = new PanelElementsCategoriesCollection();
 
2844
 
2845
- _.each( elementor.config.elements_categories, function( categoryConfig, categoryName ) {
2846
- if ( ! categories[ categoryName ] ) {
2847
- return;
2848
- }
2849
 
2850
- categoriesCollection.add( {
2851
- name: categoryName,
2852
- title: categoryConfig.title,
2853
- icon: categoryConfig.icon,
2854
- items: categories[ categoryName ]
2855
- } );
2856
- } );
2857
 
2858
- this.categoriesCollection = categoriesCollection;
2859
- },
 
 
2860
 
2861
- activateTab: function( tabName ) {
2862
- this.ui.tabs
2863
- .removeClass( 'active' )
2864
- .filter( '[data-view="' + tabName + '"]' )
2865
- .addClass( 'active' );
2866
 
2867
- this.showView( tabName );
 
 
 
2868
  },
 
2869
 
2870
- showView: function( viewName ) {
2871
- var viewDetails = this.regionViews[ viewName ],
2872
- options = viewDetails.options || {};
 
2873
 
2874
- viewDetails.region.show( new viewDetails.view( options ) );
 
2875
  },
2876
 
2877
- clearSearchInput: function() {
2878
- this.getChildView( 'search' ).clearInput();
 
 
2879
  },
2880
 
2881
- changeFilter: function( filterValue ) {
2882
- elementor.channels.panelElements
2883
- .reply( 'filter:value', filterValue )
2884
- .trigger( 'filter:change' );
2885
  },
2886
 
2887
- clearFilters: function() {
2888
- this.changeFilter( null );
2889
- this.clearSearchInput();
2890
  },
2891
 
2892
- onChildviewChildrenRender: function() {
2893
- this.updateElementsScrollbar();
 
 
 
 
2894
  },
2895
 
2896
- onChildviewSearchChangeInput: function( child ) {
2897
- this.changeFilter( child.ui.input.val(), 'search' );
 
 
 
 
2898
  },
2899
 
2900
- onDestroy: function() {
2901
- elementor.channels.panelElements.reply( 'filter:value', null );
 
 
2902
  },
2903
 
2904
- onShow: function() {
2905
- this.showView( 'categories' );
2906
 
2907
- this.showView( 'search' );
 
2908
  },
2909
 
2910
- onTabClick: function( event ) {
2911
- this.activateTab( event.currentTarget.dataset.view );
 
 
 
 
 
 
 
2912
  },
2913
 
2914
- updateElementsScrollbar: function() {
2915
- elementor.channels.data.trigger( 'scrollbar:update' );
2916
- }
2917
- } );
2918
 
2919
- module.exports = PanelElementsLayoutView;
2920
 
2921
- },{"./collections/categories":37,"./collections/elements":38,"./views/categories":41,"./views/global":45,"./views/search":46}],40:[function(require,module,exports){
2922
- var PanelElementsElementModel;
2923
 
2924
- PanelElementsElementModel = Backbone.Model.extend( {
2925
- defaults: {
2926
- title: '',
2927
- categories: [],
2928
- keywords: [],
2929
- icon: '',
2930
- elType: 'widget',
2931
- widgetType: ''
2932
- }
2933
- } );
2934
 
2935
- module.exports = PanelElementsElementModel;
 
2936
 
2937
- },{}],41:[function(require,module,exports){
2938
- var PanelElementsCategoryView = require( './category' ),
2939
- PanelElementsCategoriesView;
2940
 
2941
- PanelElementsCategoriesView = Marionette.CompositeView.extend( {
2942
- template: '#tmpl-elementor-panel-categories',
2943
 
2944
- childView: PanelElementsCategoryView,
2945
 
2946
- childViewContainer: '#elementor-panel-categories',
2947
 
2948
- id: 'elementor-panel-elements-categories',
 
2949
 
2950
- initialize: function() {
2951
- this.listenTo( elementor.channels.panelElements, 'filter:change', this.onPanelElementsFilterChange );
 
 
2952
  },
2953
 
2954
- onPanelElementsFilterChange: function() {
2955
- elementor.getPanelView().getCurrentPageView().showView( 'elements' );
2956
- }
2957
- } );
2958
 
2959
- module.exports = PanelElementsCategoriesView;
 
2960
 
2961
- },{"./category":42}],42:[function(require,module,exports){
2962
- var PanelElementsElementsCollection = require( '../collections/elements' ),
2963
- PanelElementsCategoryView;
2964
 
2965
- PanelElementsCategoryView = Marionette.CompositeView.extend( {
2966
- template: '#tmpl-elementor-panel-elements-category',
 
2967
 
2968
- className: 'elementor-panel-category',
 
 
2969
 
2970
- childView: require( 'elementor-panel/pages/elements/views/element' ),
 
 
 
2971
 
2972
- childViewContainer: '.panel-elements-category-items',
 
 
2973
 
2974
- initialize: function() {
2975
- this.collection = new PanelElementsElementsCollection( this.model.get( 'items' ) );
 
 
2976
  }
2977
  } );
2978
 
2979
- module.exports = PanelElementsCategoryView;
2980
-
2981
- },{"../collections/elements":38,"elementor-panel/pages/elements/views/element":43}],43:[function(require,module,exports){
2982
- var PanelElementsElementView;
2983
-
2984
- PanelElementsElementView = Marionette.ItemView.extend( {
2985
- template: '#tmpl-elementor-element-library-element',
2986
 
2987
- className: 'elementor-element-wrapper',
 
 
2988
 
2989
- onRender: function() {
2990
- var self = this;
 
 
2991
 
2992
- this.$el.html5Draggable( {
 
 
2993
 
2994
- onDragStart: function() {
2995
- elementor.channels.panelElements
2996
- .reply( 'element:selected', self )
2997
- .trigger( 'element:drag:start' );
2998
- },
2999
 
3000
- onDragEnd: function() {
3001
- elementor.channels.panelElements.trigger( 'element:drag:end' );
3002
- },
3003
 
3004
- groups: [ 'elementor-element' ]
3005
- } );
3006
  }
3007
  } );
3008
 
3009
- module.exports = PanelElementsElementView;
3010
 
3011
- },{}],44:[function(require,module,exports){
3012
- var PanelElementsElementsView;
 
3013
 
3014
- PanelElementsElementsView = Marionette.CollectionView.extend( {
3015
- childView: require( 'elementor-panel/pages/elements/views/element' ),
 
3016
 
3017
- id: 'elementor-panel-elements',
3018
 
3019
- initialize: function() {
3020
- this.listenTo( elementor.channels.panelElements, 'filter:change', this.onFilterChanged );
3021
  },
3022
 
3023
- filter: function( childModel ) {
3024
- var filterValue = elementor.channels.panelElements.request( 'filter:value' );
3025
 
3026
- if ( ! filterValue ) {
3027
- return true;
3028
- }
3029
 
3030
- if ( -1 !== childModel.get( 'title' ).toLowerCase().indexOf( filterValue.toLowerCase() ) ) {
3031
- return true;
3032
- }
3033
 
3034
- return _.any( childModel.get( 'keywords' ), function( keyword ) {
3035
- return ( -1 !== keyword.toLowerCase().indexOf( filterValue.toLowerCase() ) );
3036
- } );
3037
  },
3038
 
3039
- onFilterChanged: function() {
3040
- var filterValue = elementor.channels.panelElements.request( 'filter:value' );
 
 
3041
 
3042
- if ( ! filterValue ) {
3043
- this.onFilterEmpty();
3044
- }
3045
 
3046
- this._renderChildren();
3047
 
3048
- this.triggerMethod( 'children:render' );
3049
- },
3050
 
3051
- onFilterEmpty: function() {
3052
- elementor.getPanelView().getCurrentPageView().showView( 'categories' );
 
 
 
 
 
 
 
 
 
 
 
3053
  }
3054
  } );
3055
 
3056
- module.exports = PanelElementsElementsView;
3057
-
3058
- },{"elementor-panel/pages/elements/views/element":43}],45:[function(require,module,exports){
3059
- module.exports = Marionette.ItemView.extend( {
3060
- template: '#tmpl-elementor-panel-global',
3061
 
3062
- id: 'elementor-panel-global',
 
3063
 
3064
- initialize: function() {
3065
- elementor.getPanelView().getCurrentPageView().search.reset();
 
3066
  },
3067
 
3068
- onDestroy: function() {
3069
- elementor.getPanelView().getCurrentPageView().showView( 'search' );
3070
  }
3071
  } );
3072
 
3073
- },{}],46:[function(require,module,exports){
3074
- var PanelElementsSearchView;
3075
 
3076
- PanelElementsSearchView = Marionette.ItemView.extend( {
3077
- template: '#tmpl-elementor-panel-element-search',
 
3078
 
3079
- id: 'elementor-panel-elements-search-wrapper',
 
 
 
3080
 
3081
  ui: {
3082
- input: 'input'
3083
  },
3084
 
3085
- events: {
3086
- 'keyup @ui.input': 'onInputChanged'
3087
  },
3088
 
3089
- onInputChanged: function( event ) {
3090
- var ESC_KEY = 27;
3091
-
3092
- if ( ESC_KEY === event.keyCode ) {
3093
- this.clearInput();
3094
  }
3095
-
3096
- this.triggerMethod( 'search:change:input' );
3097
  },
3098
 
3099
- clearInput: function() {
3100
- this.ui.input.val( '' );
 
 
 
 
3101
  }
3102
  } );
3103
 
3104
- module.exports = PanelElementsSearchView;
3105
 
3106
- },{}],47:[function(require,module,exports){
3107
- var PanelMenuItemView = require( 'elementor-panel/pages/menu/views/item' ),
3108
- PanelMenuPageView;
3109
 
3110
- PanelMenuPageView = Marionette.CollectionView.extend( {
3111
- id: 'elementor-panel-page-menu',
 
 
3112
 
3113
- childView: PanelMenuItemView,
 
3114
 
3115
- initialize: function() {
3116
- this.collection = PanelMenuPageView.getItems();
3117
  },
3118
 
3119
- onChildviewClick: function( childView ) {
3120
- var menuItemType = childView.model.get( 'type' );
3121
-
3122
- switch ( menuItemType ) {
3123
- case 'page':
3124
- var pageName = childView.model.get( 'pageName' ),
3125
- pageTitle = childView.model.get( 'title' );
3126
 
3127
- elementor.getPanelView().setPage( pageName, pageTitle );
3128
- break;
3129
-
3130
- case 'link':
3131
- var link = childView.model.get( 'link' ),
3132
- isNewTab = childView.model.get( 'newTab' );
3133
 
3134
- if ( isNewTab ) {
3135
- open( link, '_blank' );
3136
- } else {
3137
- location.href = childView.model.get( 'link' );
3138
- }
3139
 
3140
- break;
 
 
 
3141
 
3142
- default:
3143
- var callback = childView.model.get( 'callback' );
3144
 
3145
- if ( _.isFunction( callback ) ) {
3146
- callback.call( childView );
3147
- }
3148
- }
3149
- }
3150
- }, {
3151
- items: null,
3152
 
3153
- initItems: function() {
3154
- this.items = new Backbone.Collection( [
3155
- {
3156
- name: 'global-colors',
3157
- icon: 'fa fa-paint-brush',
3158
- title: elementor.translate( 'global_colors' ),
3159
- type: 'page',
3160
- pageName: 'colorScheme'
3161
- },
3162
- {
3163
- name: 'global-fonts',
3164
- icon: 'fa fa-font',
3165
- title: elementor.translate( 'global_fonts' ),
3166
- type: 'page',
3167
- pageName: 'typographyScheme'
3168
- },
3169
- {
3170
- name: 'color-picker',
3171
- icon: 'fa fa-eyedropper',
3172
- title: elementor.translate( 'color_picker' ),
3173
- type: 'page',
3174
- pageName: 'colorPickerScheme'
3175
- },
3176
- {
3177
- name: 'revision-history',
3178
- icon: 'fa fa-history',
3179
- title: elementor.translate( 'revision_history' ),
3180
- type: 'page',
3181
- pageName: 'revisionsPage'
3182
- },
3183
- {
3184
- name: 'clear-page',
3185
- icon: 'fa fa-eraser',
3186
- title: elementor.translate( 'clear_page' ),
3187
- callback: function() {
3188
- elementor.clearPage();
3189
- }
3190
- },
3191
- {
3192
- name: 'elementor-settings',
3193
- icon: 'eicon-elementor',
3194
- title: elementor.translate( 'elementor_settings' ),
3195
- type: 'link',
3196
- link: elementor.config.settings_page_link,
3197
- newTab: true
3198
- },
3199
- {
3200
- name: 'about-elementor',
3201
- icon: 'fa fa-info-circle',
3202
- title: elementor.translate( 'about_elementor' ),
3203
- type: 'link',
3204
- link: elementor.config.elementor_site,
3205
- newTab: true
3206
- }
3207
- ] );
3208
  },
3209
 
3210
- getItems: function() {
3211
- if ( ! this.items ) {
3212
- this.initItems();
3213
- }
 
3214
 
3215
- return this.items;
 
3216
  },
3217
 
3218
- addItem: function( itemData, before ) {
3219
- var items = this.getItems(),
3220
- options = {};
 
3221
 
3222
- if ( before ) {
3223
- var beforeItem = items.findWhere( { name: before } );
3224
 
3225
- if ( beforeItem ) {
3226
- options.at = items.indexOf( beforeItem );
3227
- }
3228
  }
3229
 
3230
- items.add( itemData, options );
3231
  }
3232
  } );
3233
 
3234
- module.exports = PanelMenuPageView;
3235
-
3236
- },{"elementor-panel/pages/menu/views/item":48}],48:[function(require,module,exports){
3237
- var PanelMenuItemView;
3238
-
3239
- PanelMenuItemView = Marionette.ItemView.extend( {
3240
- template: '#tmpl-elementor-panel-menu-item',
3241
 
3242
- className: 'elementor-panel-menu-item',
 
 
3243
 
3244
- triggers: {
3245
- click: 'click'
 
3246
  }
3247
  } );
3248
 
3249
- module.exports = PanelMenuItemView;
3250
 
3251
- },{}],49:[function(require,module,exports){
3252
- var childViewTypes = {
3253
- color: require( 'elementor-panel/pages/schemes/items/color' ),
3254
- typography: require( 'elementor-panel/pages/schemes/items/typography' )
3255
- },
3256
- PanelSchemeBaseView;
3257
 
3258
- PanelSchemeBaseView = Marionette.CompositeView.extend( {
3259
- id: function() {
3260
- return 'elementor-panel-scheme-' + this.getType();
3261
- },
3262
 
3263
- className: function() {
3264
- return 'elementor-panel-scheme elementor-panel-scheme-' + this.getUIType();
 
 
 
 
 
3265
  },
3266
 
3267
- childViewContainer: '.elementor-panel-scheme-items',
3268
 
3269
- getTemplate: function() {
3270
- return Marionette.TemplateCache.get( '#tmpl-elementor-panel-schemes-' + this.getType() );
 
 
 
 
 
3271
  },
3272
 
3273
- getChildView: function() {
3274
- return childViewTypes[ this.getUIType() ];
3275
- },
3276
 
3277
- getUIType: function() {
3278
- return this.getType();
3279
- },
3280
 
3281
- ui: function() {
3282
- return {
3283
- saveButton: '.elementor-panel-scheme-save .elementor-button',
3284
- discardButton: '.elementor-panel-scheme-discard .elementor-button',
3285
- resetButton: '.elementor-panel-scheme-reset .elementor-button'
3286
- };
3287
  },
3288
 
3289
- events: function() {
3290
- return {
3291
- 'click @ui.saveButton': 'saveScheme',
3292
- 'click @ui.discardButton': 'discardScheme',
3293
- 'click @ui.resetButton': 'setDefaultScheme'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3294
  };
3295
- },
3296
 
3297
- initialize: function() {
3298
- this.model = new Backbone.Model();
3299
 
3300
- this.resetScheme();
3301
- },
3302
 
3303
- getType: function() {},
 
 
 
3304
 
3305
- getScheme: function() {
3306
- return elementor.schemes.getScheme( this.getType() );
3307
  },
3308
 
3309
- changeChildrenUIValues: function( schemeItems ) {
3310
- var self = this;
3311
 
3312
- _.each( schemeItems, function( value, key ) {
3313
- var model = self.collection.findWhere( { key: key } ),
3314
- childView = self.children.findByModelCid( model.cid );
 
3315
 
3316
- childView.changeUIValue( value );
3317
- } );
3318
- },
3319
 
3320
- discardScheme: function() {
3321
- elementor.schemes.resetSchemes( this.getType() );
 
 
3322
 
3323
- this.onSchemeChange();
 
 
3324
 
3325
- this.ui.saveButton.prop( 'disabled', true );
3326
-
3327
- this._renderChildren();
3328
  },
3329
 
3330
- setSchemeValue: function( key, value ) {
3331
- elementor.schemes.setSchemeValue( this.getType(), key, value );
 
3332
 
3333
- this.onSchemeChange();
 
3334
  },
3335
 
3336
- saveScheme: function() {
3337
- elementor.schemes.saveScheme( this.getType() );
 
3338
 
3339
- this.ui.saveButton.prop( 'disabled', true );
 
3340
 
3341
- this.resetScheme();
 
 
3342
 
3343
- this._renderChildren();
3344
- },
 
3345
 
3346
- setDefaultScheme: function() {
3347
- var defaultScheme = elementor.config.default_schemes[ this.getType() ].items;
3348
 
3349
- this.changeChildrenUIValues( defaultScheme );
3350
- },
 
3351
 
3352
- resetItems: function() {
3353
- this.model.set( 'items', this.getScheme().items );
3354
- },
3355
 
3356
- resetCollection: function() {
3357
- var items = this.model.get( 'items' );
3358
 
3359
- this.collection = new Backbone.Collection();
3360
 
3361
- _.each( items, _.bind( function( item, key ) {
3362
- item.type = this.getType();
3363
- item.key = key;
3364
 
3365
- this.collection.add( item );
3366
- }, this ) );
 
3367
  },
3368
 
3369
- resetScheme: function() {
3370
- this.resetItems();
3371
- this.resetCollection();
3372
- },
3373
 
3374
- onSchemeChange: function() {
3375
- elementor.schemes.printSchemesStyle();
3376
- },
3377
 
3378
- onChildviewValueChange: function( childView, newValue ) {
3379
- this.ui.saveButton.removeProp( 'disabled' );
 
 
3380
 
3381
- this.setSchemeValue( childView.model.get( 'key' ), newValue );
3382
- }
3383
- } );
3384
 
3385
- module.exports = PanelSchemeBaseView;
 
 
 
3386
 
3387
- },{"elementor-panel/pages/schemes/items/color":54,"elementor-panel/pages/schemes/items/typography":55}],50:[function(require,module,exports){
3388
- var PanelSchemeColorsView = require( 'elementor-panel/pages/schemes/colors' ),
3389
- PanelSchemeColorPickerView;
3390
 
3391
- PanelSchemeColorPickerView = PanelSchemeColorsView.extend( {
3392
- getType: function() {
3393
- return 'color-picker';
3394
- },
3395
 
3396
- getUIType: function() {
3397
- return 'color';
3398
  },
3399
 
3400
- onSchemeChange: function() {},
 
 
3401
 
3402
- getViewComparator: function() {
3403
- return this.orderView;
3404
- },
3405
 
3406
- orderView: function( model ) {
3407
- return elementor.helpers.getColorPickerPaletteIndex( model.get( 'key' ) );
3408
- }
3409
- } );
3410
 
3411
- module.exports = PanelSchemeColorPickerView;
 
3412
 
3413
- },{"elementor-panel/pages/schemes/colors":51}],51:[function(require,module,exports){
3414
- var PanelSchemeBaseView = require( 'elementor-panel/pages/schemes/base' ),
3415
- PanelSchemeColorsView;
3416
 
3417
- PanelSchemeColorsView = PanelSchemeBaseView.extend( {
3418
- ui: function() {
3419
- var ui = PanelSchemeBaseView.prototype.ui.apply( this, arguments );
 
3420
 
3421
- ui.systemSchemes = '.elementor-panel-scheme-color-system-scheme';
 
3422
 
3423
- return ui;
3424
  },
3425
 
3426
- events: function() {
3427
- var events = PanelSchemeBaseView.prototype.events.apply( this, arguments );
3428
-
3429
- events[ 'click @ui.systemSchemes' ] = 'onSystemSchemeClick';
3430
-
3431
- return events;
3432
  },
3433
 
3434
- getType: function() {
3435
- return 'color';
3436
  },
3437
 
3438
- onSystemSchemeClick: function( event ) {
3439
- var $schemeClicked = Backbone.$( event.currentTarget ),
3440
- schemeName = $schemeClicked.data( 'schemeName' ),
3441
- scheme = elementor.config.system_schemes[ this.getType() ][ schemeName ].items;
3442
 
3443
- this.changeChildrenUIValues( scheme );
3444
- }
3445
- } );
3446
 
3447
- module.exports = PanelSchemeColorsView;
 
3448
 
3449
- },{"elementor-panel/pages/schemes/base":49}],52:[function(require,module,exports){
3450
- var PanelSchemeDisabledView;
 
3451
 
3452
- PanelSchemeDisabledView = Marionette.ItemView.extend( {
3453
- template: '#tmpl-elementor-panel-schemes-disabled',
3454
 
3455
- id: 'elementor-panel-schemes-disabled',
 
3456
 
3457
- className: 'elementor-panel-nerd-box',
 
3458
 
3459
- disabledTitle: '',
 
3460
 
3461
- templateHelpers: function() {
3462
- return {
3463
- disabledTitle: this.disabledTitle
3464
- };
3465
- }
3466
- } );
3467
 
3468
- module.exports = PanelSchemeDisabledView;
3469
 
3470
- },{}],53:[function(require,module,exports){
3471
- var PanelSchemeItemView;
3472
 
3473
- PanelSchemeItemView = Marionette.ItemView.extend( {
3474
- getTemplate: function() {
3475
- return Marionette.TemplateCache.get( '#tmpl-elementor-panel-scheme-' + this.getUIType() + '-item' );
3476
- },
3477
 
3478
- className: function() {
3479
- return 'elementor-panel-scheme-item';
3480
- }
3481
- } );
3482
 
3483
- module.exports = PanelSchemeItemView;
 
 
3484
 
3485
- },{}],54:[function(require,module,exports){
3486
- var PanelSchemeItemView = require( 'elementor-panel/pages/schemes/items/base' ),
3487
- PanelSchemeColorView;
3488
 
3489
- PanelSchemeColorView = PanelSchemeItemView.extend( {
3490
- getUIType: function() {
3491
- return 'color';
3492
- },
3493
 
3494
- ui: {
3495
- input: '.elementor-panel-scheme-color-value'
3496
- },
 
 
3497
 
3498
- changeUIValue: function( newValue ) {
3499
- this.ui.input.wpColorPicker( 'color', newValue );
3500
- },
 
 
 
 
3501
 
3502
- onBeforeDestroy: function() {
3503
- if ( this.ui.input.wpColorPicker( 'instance' ) ) {
3504
- this.ui.input.wpColorPicker( 'close' );
3505
- }
3506
- },
3507
 
3508
- onRender: function() {
3509
- elementor.helpers.wpColorPicker( this.ui.input, {
3510
- change: _.bind( function( event, ui ) {
3511
- this.triggerMethod( 'value:change', ui.color.toString() );
3512
- }, this )
3513
  } );
3514
- }
3515
- } );
3516
 
3517
- module.exports = PanelSchemeColorView;
3518
 
3519
- },{"elementor-panel/pages/schemes/items/base":53}],55:[function(require,module,exports){
3520
- var PanelSchemeItemView = require( 'elementor-panel/pages/schemes/items/base' ),
3521
- PanelSchemeTypographyView;
3522
 
3523
- PanelSchemeTypographyView = PanelSchemeItemView.extend( {
3524
- getUIType: function() {
3525
- return 'typography';
3526
- },
3527
-
3528
- className: function() {
3529
- var classes = PanelSchemeItemView.prototype.className.apply( this, arguments );
3530
-
3531
- return classes + ' elementor-panel-box';
3532
- },
3533
-
3534
- ui: {
3535
- heading: '.elementor-panel-heading',
3536
- allFields: '.elementor-panel-scheme-typography-item-field',
3537
- inputFields: 'input.elementor-panel-scheme-typography-item-field',
3538
- selectFields: 'select.elementor-panel-scheme-typography-item-field',
3539
- selectFamilyFields: 'select.elementor-panel-scheme-typography-item-field[name="font_family"]'
3540
- },
3541
-
3542
- events: {
3543
- 'input @ui.inputFields': 'onFieldChange',
3544
- 'change @ui.selectFields': 'onFieldChange',
3545
- 'click @ui.heading': 'toggleVisibility'
3546
  },
3547
 
3548
- onRender: function() {
3549
- var self = this;
 
 
 
 
 
 
3550
 
3551
- this.ui.inputFields.add( this.ui.selectFields ).each( function() {
3552
- var $this = Backbone.$( this ),
3553
- name = $this.attr( 'name' ),
3554
- value = self.model.get( 'value' )[ name ];
3555
 
3556
- $this.val( value );
3557
- } );
 
3558
 
3559
- this.ui.selectFamilyFields.select2( {
3560
- dir: elementor.config.is_rtl ? 'rtl' : 'ltr'
 
 
 
3561
  } );
3562
  },
3563
 
3564
- toggleVisibility: function() {
3565
- this.ui.heading.toggleClass( 'elementor-open' );
3566
- },
3567
-
3568
- changeUIValue: function( newValue ) {
3569
- this.ui.allFields.each( function() {
3570
- var $this = Backbone.$( this ),
3571
- thisName = $this.attr( 'name' ),
3572
- newFieldValue = newValue[ thisName ];
3573
-
3574
- $this.val( newFieldValue ).trigger( 'change' );
3575
  } );
3576
  },
3577
 
3578
- onFieldChange: function( event ) {
3579
- var $select = this.$( event.currentTarget ),
3580
- currentValue = elementor.schemes.getSchemeValue( 'typography', this.model.get( 'key' ) ).value,
3581
- fieldKey = $select.attr( 'name' );
3582
-
3583
- currentValue[ fieldKey ] = $select.val();
3584
-
3585
- if ( 'font_family' === fieldKey && ! _.isEmpty( currentValue[ fieldKey ] ) ) {
3586
- elementor.helpers.enqueueFont( currentValue[ fieldKey ] );
3587
- }
3588
-
3589
- this.triggerMethod( 'value:change', currentValue );
3590
- }
3591
- } );
3592
-
3593
- module.exports = PanelSchemeTypographyView;
3594
 
3595
- },{"elementor-panel/pages/schemes/items/base":53}],56:[function(require,module,exports){
3596
- var PanelSchemeBaseView = require( 'elementor-panel/pages/schemes/base' ),
3597
- PanelSchemeTypographyView;
3598
 
3599
- PanelSchemeTypographyView = PanelSchemeBaseView.extend( {
3600
- getType: function() {
3601
- return 'typography';
3602
- }
3603
- } );
3604
 
3605
- module.exports = PanelSchemeTypographyView;
 
3606
 
3607
- },{"elementor-panel/pages/schemes/base":49}],57:[function(require,module,exports){
3608
- var EditModeItemView = require( 'elementor-layouts/edit-mode' ),
3609
- PanelLayoutView;
3610
 
3611
- PanelLayoutView = Marionette.LayoutView.extend( {
3612
- template: '#tmpl-elementor-panel',
3613
 
3614
- id: 'elementor-panel-inner',
 
 
3615
 
3616
- regions: {
3617
- content: '#elementor-panel-content-wrapper',
3618
- header: '#elementor-panel-header-wrapper',
3619
- footer: '#elementor-panel-footer',
3620
- modeSwitcher: '#elementor-mode-switcher'
3621
  },
3622
 
3623
- pages: {},
 
3624
 
3625
- childEvents: {
3626
- 'click:add': function() {
3627
- this.setPage( 'elements' );
3628
- },
3629
- 'editor:destroy': function() {
3630
- this.setPage( 'elements' );
3631
- }
3632
  },
3633
 
3634
- currentPageName: null,
3635
-
3636
- currentPageView: null,
3637
-
3638
- _isScrollbarInitialized: false,
3639
 
3640
- initialize: function() {
3641
- this.initPages();
3642
  },
3643
 
3644
- buildPages: function() {
3645
- var pages = {
3646
- elements: {
3647
- view: require( 'elementor-panel/pages/elements/elements' ),
3648
- title: '<img src="' + elementor.config.assets_url + 'images/logo-panel.svg">'
3649
- },
3650
- editor: {
3651
- view: require( 'elementor-panel/pages/editor' )
3652
- },
3653
- menu: {
3654
- view: elementor.modules.panel.Menu,
3655
- title: '<img src="' + elementor.config.assets_url + 'images/logo-panel.svg">'
3656
- },
3657
- colorScheme: {
3658
- view: require( 'elementor-panel/pages/schemes/colors' )
3659
- },
3660
- typographyScheme: {
3661
- view: require( 'elementor-panel/pages/schemes/typography' )
3662
- },
3663
- colorPickerScheme: {
3664
- view: require( 'elementor-panel/pages/schemes/color-picker' )
3665
- }
3666
- };
3667
-
3668
- var schemesTypes = Object.keys( elementor.schemes.getSchemes() ),
3669
- disabledSchemes = _.difference( schemesTypes, elementor.schemes.getEnabledSchemesTypes() );
3670
-
3671
- _.each( disabledSchemes, function( schemeType ) {
3672
- var scheme = elementor.schemes.getScheme( schemeType );
3673
-
3674
- pages[ schemeType + 'Scheme' ].view = require( 'elementor-panel/pages/schemes/disabled' ).extend( {
3675
- disabledTitle: scheme.disabled_title
3676
- } );
3677
  } );
3678
-
3679
- return pages;
3680
  },
3681
 
3682
- initPages: function() {
3683
- var pages;
3684
-
3685
- this.getPages = function( page ) {
3686
- if ( ! pages ) {
3687
- pages = this.buildPages();
3688
- }
3689
-
3690
- return page ? pages[ page ] : pages;
3691
- };
3692
 
3693
- this.addPage = function( pageName, pageData ) {
3694
- if ( ! pages ) {
3695
- pages = this.buildPages();
3696
  }
 
3697
 
3698
- pages[ pageName ] = pageData;
3699
- };
3700
  },
3701
 
3702
- getHeaderView: function() {
3703
- return this.getChildView( 'header' );
3704
  },
3705
 
3706
- getFooterView: function() {
3707
- return this.getChildView( 'footer' );
3708
- },
3709
 
3710
- getCurrentPageName: function() {
3711
- return this.currentPageName;
3712
  },
3713
 
3714
- getCurrentPageView: function() {
3715
- return this.currentPageView;
3716
- },
3717
 
3718
- setPage: function( page, title, viewOptions ) {
3719
- var pageData = this.getPages( page );
3720
 
3721
- if ( ! pageData ) {
3722
- throw new ReferenceError( 'Elementor panel doesn\'t have page named \'' + page + '\'' );
3723
- }
3724
 
3725
- if ( pageData.options ) {
3726
- viewOptions = _.extend( pageData.options, viewOptions );
3727
- }
 
 
3728
 
3729
- var View = pageData.view;
 
3730
 
3731
- if ( pageData.getView ) {
3732
- View = pageData.getView();
3733
- }
3734
 
3735
- this.currentPageView = new View( viewOptions );
 
 
 
3736
 
3737
- this.showChildView( 'content', this.currentPageView );
 
 
 
 
3738
 
3739
- this.getHeaderView().setTitle( title || pageData.title );
 
3740
 
3741
- this.currentPageName = page;
 
 
 
 
3742
 
3743
- this
3744
- .trigger( 'set:page', this.currentPageView )
3745
- .trigger( 'set:page:' + page, this.currentPageView );
3746
- },
 
 
 
 
 
 
 
3747
 
3748
- openEditor: function( model, view ) {
3749
- var currentPageName = this.getCurrentPageName();
 
3750
 
3751
- if ( 'editor' === currentPageName ) {
3752
- var currentPageView = this.getCurrentPageView(),
3753
- currentEditableModel = currentPageView.model;
3754
 
3755
- if ( currentEditableModel === model ) {
3756
- return;
3757
- }
3758
- }
3759
 
3760
- var elementData = elementor.getElementData( model );
 
 
 
 
3761
 
3762
- this.setPage( 'editor', elementor.translate( 'edit_element', [ elementData.title ] ), {
3763
- model: model,
3764
- editedElementView: view
3765
- } );
3766
 
3767
- var action = 'panel/open_editor/' + model.get( 'elType' );
 
 
 
 
3768
 
3769
- // Example: panel/open_editor/widget
3770
- elementor.hooks.doAction( action, this, model, view );
3771
 
3772
- // Example: panel/open_editor/widget/heading
3773
- elementor.hooks.doAction( action + '/' + model.get( 'widgetType' ), this, model, view );
 
 
 
 
 
3774
  },
3775
 
3776
- onBeforeShow: function() {
3777
- var PanelFooterItemView = require( 'elementor-layouts/panel/footer' ),
3778
- PanelHeaderItemView = require( 'elementor-layouts/panel/header' );
3779
-
3780
- // Edit Mode
3781
- this.showChildView( 'modeSwitcher', new EditModeItemView() );
3782
 
3783
- // Header
3784
- this.showChildView( 'header', new PanelHeaderItemView() );
 
3785
 
3786
- // Footer
3787
- this.showChildView( 'footer', new PanelFooterItemView() );
 
3788
 
3789
- // Added Editor events
3790
- this.updateScrollbar = _.throttle( this.updateScrollbar, 100 );
 
 
3791
 
3792
- this.getRegion( 'content' )
3793
- .on( 'before:show', _.bind( this.onEditorBeforeShow, this ) )
3794
- .on( 'empty', _.bind( this.onEditorEmpty, this ) )
3795
- .on( 'show', _.bind( this.updateScrollbar, this ) );
3796
 
3797
- // Set default page to elements
3798
- this.setPage( 'elements' );
3799
 
3800
- this.listenTo( elementor.channels.data, 'scrollbar:update', this.updateScrollbar );
3801
- },
3802
 
3803
- onEditorBeforeShow: function() {
3804
- _.defer( _.bind( this.updateScrollbar, this ) );
3805
- },
3806
 
3807
- onEditorEmpty: function() {
3808
- this.updateScrollbar();
 
 
3809
  },
3810
 
3811
- updateScrollbar: function() {
3812
- var $panel = this.content.$el;
 
 
 
 
 
 
 
3813
 
3814
- if ( ! this._isScrollbarInitialized ) {
3815
- $panel.perfectScrollbar();
3816
- this._isScrollbarInitialized = true;
3817
 
3818
- return;
 
3819
  }
3820
 
3821
- $panel.perfectScrollbar( 'update' );
3822
- }
3823
- } );
3824
 
3825
- module.exports = PanelLayoutView;
3826
 
3827
- },{"elementor-layouts/edit-mode":33,"elementor-layouts/panel/footer":34,"elementor-layouts/panel/header":35,"elementor-panel/pages/editor":36,"elementor-panel/pages/elements/elements":39,"elementor-panel/pages/schemes/color-picker":50,"elementor-panel/pages/schemes/colors":51,"elementor-panel/pages/schemes/disabled":52,"elementor-panel/pages/schemes/typography":56}],58:[function(require,module,exports){
3828
- var BaseSettingsModel;
3829
 
3830
- BaseSettingsModel = Backbone.Model.extend( {
3831
- options: {},
3832
 
3833
- initialize: function( data, options ) {
3834
- var self = this;
3835
 
3836
- if ( options ) {
3837
- // Keep the options for cloning
3838
- self.options = options;
3839
- }
3840
 
3841
- self.controls = ( options && options.controls ) ? options.controls : elementor.getElementControls( self );
 
3842
 
3843
- self.validators = {};
 
 
 
3844
 
3845
- if ( ! self.controls ) {
3846
- return;
 
 
3847
  }
3848
 
3849
- var attrs = data || {},
3850
- defaults = {};
 
 
3851
 
3852
- _.each( self.controls, function( field ) {
3853
- var control = elementor.config.controls[ field.type ],
3854
- isUIControl = -1 !== control.features.indexOf( 'ui' );
3855
 
3856
- if ( isUIControl ) {
3857
- return;
3858
- }
 
3859
 
3860
- // Check if the value is a plain object ( and not an array )
3861
- var isMultipleControl = jQuery.isPlainObject( control.default_value );
 
3862
 
3863
- if ( isMultipleControl ) {
3864
- defaults[ field.name ] = _.extend( {}, control.default_value, field['default'] || {} );
3865
- } else {
3866
- defaults[ field.name ] = field['default'] || control.default_value;
3867
- }
3868
 
3869
- if ( undefined !== attrs[ field.name ] ) {
3870
- if ( isMultipleControl && ! _.isObject( attrs[ field.name ] ) ) {
3871
- elementor.debug.addCustomError(
3872
- new TypeError( 'An invalid argument supplied as multiple control value' ),
3873
- 'InvalidElementData',
3874
- 'Element `' + ( self.get( 'widgetType' ) || self.get( 'elType' ) ) + '` got <' + attrs[ field.name ] + '> as `' + field.name + '` value. Expected array or object.'
3875
- );
3876
 
3877
- delete attrs[ field.name ];
3878
- }
3879
- }
3880
 
3881
- if ( undefined === attrs[ field.name ] ) {
3882
- attrs[ field.name ] = defaults[ field.name ];
3883
- }
3884
- } );
3885
 
3886
- self.defaults = defaults;
 
 
3887
 
3888
- self.handleRepeaterData( attrs );
 
3889
 
3890
- self.set( attrs );
3891
  },
3892
 
3893
- handleRepeaterData: function( attrs ) {
3894
- _.each( this.controls, function( field ) {
3895
- if ( field.is_repeater ) {
3896
- // TODO: Apply defaults on each field in repeater fields
3897
- if ( ! ( attrs[ field.name ] instanceof Backbone.Collection ) ) {
3898
- attrs[ field.name ] = new Backbone.Collection( attrs[ field.name ], {
3899
- model: function( attrs, options ) {
3900
- options = options || {};
3901
 
3902
- options.controls = field.fields;
 
3903
 
3904
- if ( ! attrs._id ) {
3905
- attrs._id = elementor.helpers.getUniqueID();
3906
- }
3907
 
3908
- return new BaseSettingsModel( attrs, options );
3909
- }
3910
- } );
3911
- }
3912
- }
3913
- } );
3914
- },
3915
-
3916
- getFontControls: function() {
3917
- return _.filter( this.getActiveControls(), function( control ) {
3918
- return 'font' === control.type;
3919
- } );
3920
- },
3921
-
3922
- getStyleControls: function( controls ) {
3923
- var self = this;
3924
-
3925
- controls = controls || self.getActiveControls();
3926
-
3927
- return _.filter( controls, function( control ) {
3928
- if ( control.fields ) {
3929
- control.styleFields = self.getStyleControls( control.fields );
3930
-
3931
- return true;
3932
- }
3933
-
3934
- return self.isStyleControl( control.name, controls );
3935
  } );
3936
  },
3937
 
3938
- isStyleControl: function( attribute, controls ) {
3939
- controls = controls || this.controls;
 
 
3940
 
3941
- var currentControl = _.find( controls, function( control ) {
3942
- return attribute === control.name;
3943
- } );
3944
 
3945
- return currentControl && ! _.isEmpty( currentControl.selectors );
3946
- },
3947
 
3948
- getClassControls: function( controls ) {
3949
- controls = controls || this.controls;
 
3950
 
3951
- return _.filter( controls, function( control ) {
3952
- return ! _.isUndefined( control.prefix_class );
3953
- } );
3954
  },
3955
 
3956
- isClassControl: function( attribute ) {
3957
- var currentControl = _.find( this.controls, function( control ) {
3958
- return attribute === control.name;
3959
- } );
3960
-
3961
- return currentControl && ! _.isUndefined( currentControl.prefix_class );
3962
  },
3963
 
3964
- getControl: function( id ) {
3965
- return _.find( this.controls, function( control ) {
3966
- return id === control.name;
3967
- } );
3968
  },
3969
 
3970
- getActiveControls: function() {
3971
- var self = this,
3972
- controls = {};
3973
 
3974
- _.each( self.controls, function( control, controlKey ) {
3975
- if ( elementor.helpers.isActiveControl( control, self.attributes ) ) {
3976
- controls[ controlKey ] = control;
3977
- }
3978
- } );
3979
 
3980
- return controls;
3981
- },
3982
 
3983
- clone: function() {
3984
- return new BaseSettingsModel( elementor.helpers.cloneObject( this.attributes ), elementor.helpers.cloneObject( this.options ) );
3985
- },
3986
 
3987
- setExternalChange: function( key, value ) {
3988
- this.set( key, value );
 
3989
 
3990
- this.trigger( 'change:external', key, value )
3991
- .trigger( 'change:external:' + key, value );
3992
  },
3993
 
3994
  toJSON: function( options ) {
3995
- var data = Backbone.Model.prototype.toJSON.call( this );
3996
-
3997
- options = options || {};
3998
 
3999
- delete data.widgetType;
4000
- delete data.elType;
4001
- delete data.isInner;
4002
 
4003
  _.each( data, function( attribute, key ) {
4004
  if ( attribute && attribute.toJSON ) {
4005
- data[ key ] = attribute.toJSON();
4006
  }
4007
  } );
4008
 
4009
- if ( options.removeDefault ) {
4010
- var controls = this.controls;
 
 
 
4011
 
4012
- _.each( data, function( value, key ) {
4013
- var control = controls[ key ];
4014
 
4015
- if ( control ) {
4016
- if ( ( 'text' === control.type || 'textarea' === control.type ) && data[ key ] ) {
4017
- return;
4018
- }
4019
 
4020
- if ( data[ key ] && 'object' === typeof data[ key ] ) {
4021
- // First check length difference
4022
- if ( Object.keys( data[ key ] ).length !== Object.keys( control[ 'default' ] ).length ) {
4023
- return;
4024
- }
4025
 
4026
- // If it's equal length, loop over value
4027
- var isEqual = true;
4028
 
4029
- _.each( data[ key ], function( propertyValue, propertyKey ) {
4030
- if ( data[ key ][ propertyKey ] !== control[ 'default' ][ propertyKey ] ) {
4031
- return isEqual = false;
4032
- }
4033
- } );
4034
 
4035
- if ( isEqual ) {
4036
- delete data[ key ];
4037
- }
4038
- } else {
4039
- if ( data[ key ] === control[ 'default' ] ) {
4040
- delete data[ key ];
4041
- }
4042
- }
4043
- }
4044
- } );
4045
  }
4046
 
4047
- return data;
 
 
 
 
 
 
 
 
 
 
 
4048
  }
4049
  } );
4050
 
4051
- module.exports = BaseSettingsModel;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4052
 
4053
- },{}],59:[function(require,module,exports){
4054
  var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4055
- ColumnSettingsModel;
4056
 
4057
- ColumnSettingsModel = BaseSettingsModel.extend( {
4058
- defaults: {
4059
- _column_size: 100
4060
- }
4061
  } );
4062
 
4063
- module.exports = ColumnSettingsModel;
4064
 
4065
- },{"elementor-models/base-settings":58}],60:[function(require,module,exports){
4066
  var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4067
- WidgetSettingsModel = require( 'elementor-models/widget-settings' ),
4068
- ColumnSettingsModel = require( 'elementor-models/column-settings' ),
4069
- SectionSettingsModel = require( 'elementor-models/section-settings' ),
4070
 
4071
- ElementModel,
4072
- ElementCollection;
4073
 
4074
- ElementModel = Backbone.Model.extend( {
4075
- defaults: {
4076
- id: '',
4077
- elType: '',
4078
- isInner: false,
4079
- settings: {},
4080
- defaultEditSettings: {}
4081
- },
4082
 
4083
- remoteRender: false,
4084
- _htmlCache: null,
4085
- _jqueryXhr: null,
4086
- renderOnLeave: false,
4087
 
4088
- initialize: function( options ) {
4089
- var elType = this.get( 'elType' ),
4090
- elements = this.get( 'elements' );
 
4091
 
4092
- if ( undefined !== elements ) {
4093
- this.set( 'elements', new ElementCollection( elements ) );
4094
- }
4095
 
4096
- if ( 'widget' === elType ) {
4097
- this.remoteRender = true;
4098
- this.setHtmlCache( options.htmlCache || '' );
4099
- }
4100
 
4101
- // No need this variable anymore
4102
- delete options.htmlCache;
4103
 
4104
- // Make call to remote server as throttle function
4105
- this.renderRemoteServer = _.throttle( this.renderRemoteServer, 1000 );
4106
 
4107
- this.initSettings();
 
 
4108
 
4109
- this.initEditSettings();
 
4110
 
4111
- this.on( {
4112
- destroy: this.onDestroy,
4113
- 'editor:close': this.onCloseEditor
4114
- } );
4115
  },
4116
 
4117
- initSettings: function() {
4118
- var elType = this.get( 'elType' ),
4119
- settings = this.get( 'settings' ),
4120
- settingModels = {
4121
- widget: WidgetSettingsModel,
4122
- column: ColumnSettingsModel,
4123
- section: SectionSettingsModel
4124
- },
4125
- SettingsModel = settingModels[ elType ] || BaseSettingsModel;
4126
-
4127
- if ( Backbone.$.isEmptyObject( settings ) ) {
4128
- settings = elementor.helpers.cloneObject( settings );
4129
- }
4130
-
4131
- if ( 'widget' === elType ) {
4132
- settings.widgetType = this.get( 'widgetType' );
4133
- }
4134
 
4135
- settings.elType = elType;
4136
- settings.isInner = this.get( 'isInner' );
 
 
 
 
 
 
 
4137
 
4138
- settings = new SettingsModel( settings );
 
4139
 
4140
- this.set( 'settings', settings );
4141
 
4142
- elementorFrontend.config.elements.data[ this.cid ] = settings;
4143
  },
4144
 
4145
- initEditSettings: function() {
4146
- var editSettings = new Backbone.Model( this.get( 'defaultEditSettings' ) );
4147
-
4148
- this.set( 'editSettings', editSettings );
 
4149
 
4150
- elementorFrontend.config.elements.editSettings[ this.cid ] = editSettings;
 
4151
  },
4152
 
4153
- onDestroy: function() {
4154
- // Clean the memory for all use instances
4155
- var settings = this.get( 'settings' ),
4156
- elements = this.get( 'elements' );
4157
 
4158
- if ( undefined !== elements ) {
4159
- _.each( _.clone( elements.models ), function( model ) {
4160
- model.destroy();
4161
- } );
4162
- }
4163
 
4164
- if ( settings instanceof BaseSettingsModel ) {
4165
- settings.destroy();
4166
  }
4167
- },
4168
 
4169
- onCloseEditor: function() {
4170
- this.initEditSettings();
 
 
4171
 
4172
- if ( this.renderOnLeave ) {
4173
- this.renderRemoteServer();
4174
- }
4175
- },
4176
 
4177
- setSetting: function( key, value ) {
4178
- this.get( 'settings' ).setExternalChange( key, value );
4179
- },
 
4180
 
4181
- getSetting: function( key ) {
4182
- var settings = this.get( 'settings' );
4183
 
4184
- if ( undefined === settings.get( key ) ) {
4185
- return '';
4186
- }
4187
 
4188
- return settings.get( key );
 
 
 
 
 
 
 
4189
  },
4190
 
4191
- setHtmlCache: function( htmlCache ) {
4192
- this._htmlCache = htmlCache;
4193
- },
 
 
 
 
 
4194
 
4195
- getHtmlCache: function() {
4196
- return this._htmlCache;
4197
  },
4198
 
4199
- getTitle: function() {
4200
- var elementData = elementor.getElementData( this );
4201
 
4202
- return ( elementData ) ? elementData.title : 'Unknown';
4203
- },
4204
 
4205
- getIcon: function() {
4206
- var elementData = elementor.getElementData( this );
4207
 
4208
- return ( elementData ) ? elementData.icon : 'unknown';
 
 
4209
  },
4210
 
4211
- createRemoteRenderRequest: function() {
4212
- var data = this.toJSON();
4213
 
4214
- return elementor.ajax.send( 'render_widget', {
4215
- data: {
4216
- post_id: elementor.config.post_id,
4217
- data: JSON.stringify( data ),
4218
- _nonce: elementor.config.nonce
4219
- },
4220
- success: _.bind( this.onRemoteGetHtml, this )
 
4221
  } );
 
 
 
 
4222
  },
4223
 
4224
- renderRemoteServer: function() {
4225
- if ( ! this.remoteRender ) {
4226
- return;
4227
- }
4228
 
4229
- this.renderOnLeave = false;
 
 
4230
 
4231
- this.trigger( 'before:remote:render' );
 
4232
 
4233
- if ( this.isRemoteRequestActive() ) {
4234
- this._jqueryXhr.abort();
4235
- }
 
4236
 
4237
- this._jqueryXhr = this.createRemoteRenderRequest();
 
4238
  },
4239
 
4240
- isRemoteRequestActive: function() {
4241
- return this._jqueryXhr && 4 !== this._jqueryXhr.readyState;
4242
  },
4243
 
4244
- onRemoteGetHtml: function( data ) {
4245
- this.setHtmlCache( data.render );
4246
- this.trigger( 'remote:render' );
 
4247
  },
4248
 
4249
- clone: function() {
4250
- var newModel = new this.constructor( elementor.helpers.cloneObject( this.attributes ) );
 
 
4251
 
4252
- newModel.set( 'id', elementor.helpers.getUniqueID() );
 
4253
 
4254
- newModel.setHtmlCache( this.getHtmlCache() );
 
 
 
 
4255
 
4256
- var elements = this.get( 'elements' );
4257
 
4258
- if ( ! _.isEmpty( elements ) ) {
4259
- newModel.set( 'elements', elements.clone() );
4260
  }
 
 
4261
 
4262
- return newModel;
4263
- },
4264
 
4265
- toJSON: function( options ) {
4266
- options = _.extend( { copyHtmlCache: false }, options );
 
 
4267
 
4268
- // Call parent's toJSON method
4269
- var data = Backbone.Model.prototype.toJSON.call( this );
4270
 
4271
- _.each( data, function( attribute, key ) {
4272
- if ( attribute && attribute.toJSON ) {
4273
- data[ key ] = attribute.toJSON( options );
4274
- }
4275
- } );
4276
 
4277
- if ( options.copyHtmlCache ) {
4278
- data.htmlCache = this.getHtmlCache();
4279
- } else {
4280
- delete data.htmlCache;
4281
  }
 
 
 
 
4282
 
4283
  return data;
4284
  }
4285
-
4286
  } );
4287
 
4288
- ElementCollection = Backbone.Collection.extend( {
4289
- add: function( models, options, isCorrectSet ) {
4290
- if ( ( ! options || ! options.silent ) && ! isCorrectSet ) {
4291
- throw 'Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.';
4292
- }
4293
 
4294
- return Backbone.Collection.prototype.add.call( this, models, options );
 
 
 
 
4295
  },
4296
 
4297
- model: function( attrs, options ) {
4298
- var ModelClass = Backbone.Model;
4299
-
4300
- if ( attrs.elType ) {
4301
- ModelClass = elementor.hooks.applyFilters( 'element/model', ElementModel, attrs );
4302
- }
4303
 
4304
- return new ModelClass( attrs, options );
 
4305
  },
4306
 
4307
- clone: function() {
4308
- var tempCollection = Backbone.Collection.prototype.clone.apply( this, arguments ),
4309
- newCollection = new ElementCollection();
4310
 
4311
- tempCollection.forEach( function( model ) {
4312
- newCollection.add( model.clone(), null, true );
4313
- } );
4314
 
4315
- return newCollection;
 
4316
  }
4317
  } );
4318
 
4319
- ElementCollection.prototype.sync = function() {
4320
- return null;
4321
- };
4322
 
4323
- ElementCollection.prototype.fetch = function() {
4324
- return null;
4325
- };
4326
 
4327
- ElementCollection.prototype.save = function() {
4328
- return null;
4329
- };
 
 
 
 
 
 
 
4330
 
4331
- ElementModel.prototype.sync = function() {
4332
- return null;
4333
- };
4334
- ElementModel.prototype.fetch = function() {
4335
- return null;
4336
- };
4337
- ElementModel.prototype.save = function() {
4338
- return null;
4339
- };
4340
 
4341
- module.exports = {
4342
- Model: ElementModel,
4343
- Collection: ElementCollection
4344
- };
4345
 
4346
- },{"elementor-models/base-settings":58,"elementor-models/column-settings":59,"elementor-models/section-settings":61,"elementor-models/widget-settings":62}],61:[function(require,module,exports){
4347
- var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4348
- SectionSettingsModel;
4349
 
4350
- SectionSettingsModel = BaseSettingsModel.extend( {
4351
- defaults: {}
4352
- } );
4353
 
4354
- module.exports = SectionSettingsModel;
4355
 
4356
- },{"elementor-models/base-settings":58}],62:[function(require,module,exports){
4357
- var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4358
- WidgetSettingsModel;
 
 
 
 
4359
 
4360
- WidgetSettingsModel = BaseSettingsModel.extend( {
 
4361
 
4362
- } );
 
 
 
 
4363
 
4364
- module.exports = WidgetSettingsModel;
 
 
 
4365
 
4366
- },{"elementor-models/base-settings":58}],63:[function(require,module,exports){
4367
- var ViewModule = require( 'elementor-utils/view-module' ),
4368
- SettingsModel = require( 'elementor-models/base-settings' ),
4369
- ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' );
 
 
4370
 
4371
- module.exports = ViewModule.extend( {
4372
- controlsCSS: null,
 
4373
 
4374
- model: null,
4375
 
4376
- hasChange: false,
 
4377
 
4378
- changeCallbacks: {},
 
4379
 
4380
- addChangeCallback: function( attribute, callback ) {
4381
- this.changeCallbacks[ attribute ] = callback;
4382
- },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4383
 
4384
- bindEvents: function() {
4385
- elementor.on( 'preview:loaded', this.onElementorPreviewLoaded );
 
4386
 
4387
- this.model.on( 'change', this.onModelChange );
4388
- },
 
4389
 
4390
- addPanelPage: function() {
4391
- var name = this.getSettings( 'name' );
 
 
 
4392
 
4393
- elementor.getPanelView().addPage( name + '_settings', {
4394
- view: elementor.settings.panelPages[ name ] || elementor.settings.panelPages.base,
4395
- title: this.getSettings( 'panelPage.title' ),
4396
- options: {
4397
- model: this.model,
4398
- name: name
 
 
 
 
 
 
 
 
 
 
 
4399
  }
4400
  } );
4401
- },
4402
 
4403
- updateStylesheet: function() {
4404
- this.controlsCSS.stylesheet.empty();
 
4405
 
4406
- this.controlsCSS.addStyleRules( this.model.getStyleControls(), this.model.attributes, this.model.controls, [ /{{WRAPPER}}/g ], [ this.getSettings( 'cssWrapperSelector' ) ] );
4407
 
4408
- this.controlsCSS.addStyleToDocument();
4409
- },
 
 
4410
 
4411
- initModel: function() {
4412
- this.model = new SettingsModel( this.getSettings( 'settings' ), {
4413
- controls: this.getSettings( 'controls' )
4414
- } );
 
 
 
4415
  },
4416
 
4417
- initControlsCSSParser: function() {
4418
- this.controlsCSS = new ControlsCSSParser( { id: this.getSettings( 'name' ) } );
 
 
4419
  },
4420
 
4421
- getDataToSave: function( data ) {
4422
- return data;
 
 
 
 
 
 
 
4423
  },
4424
 
4425
- save: function( callback ) {
4426
  var self = this;
4427
 
4428
- if ( ! self.hasChange ) {
4429
- return;
4430
- }
 
 
 
 
 
 
 
 
 
4431
 
4432
- var settings = this.model.toJSON( { removeDefault: true } ),
4433
- data = this.getDataToSave( {
4434
- data: JSON.stringify( settings )
4435
- } );
4436
 
4437
- NProgress.start();
 
4438
 
4439
- elementor.ajax.send( 'save_' + this.getSettings( 'name' ) + '_settings', {
4440
- data: data,
4441
- success: function() {
4442
- NProgress.done();
4443
-
4444
- self.setSettings( 'settings', settings );
4445
-
4446
- self.hasChange = false;
4447
-
4448
- if ( callback ) {
4449
- callback.apply( self, arguments );
4450
- }
4451
- },
4452
- error: function() {
4453
- alert( 'An error occurred' );
4454
- }
4455
- } );
4456
- },
4457
-
4458
- addPanelMenuItem: function() {
4459
- var menuSettings = this.getSettings( 'panelPage.menu' ),
4460
- menuItemOptions = {
4461
- icon: menuSettings.icon,
4462
- title: this.getSettings( 'panelPage.title' ),
4463
- type: 'page',
4464
- pageName: this.getSettings( 'name' ) + '_settings'
4465
- };
4466
-
4467
- elementor.modules.panel.Menu.addItem( menuItemOptions, menuSettings.beforeItem );
4468
  },
4469
 
4470
- onInit: function() {
4471
- this.initModel();
4472
-
4473
- this.initControlsCSSParser();
4474
 
4475
- this.addPanelMenuItem();
 
 
4476
 
4477
- this.debounceSave = _.debounce( this.save, 3000 );
 
 
4478
 
4479
- ViewModule.prototype.onInit.apply( this, arguments );
4480
  },
4481
 
4482
- onModelChange: function( model ) {
4483
- var self = this;
4484
-
4485
- self.hasChange = true;
4486
-
4487
- this.controlsCSS.stylesheet.empty();
4488
-
4489
- _.each( model.changed, function( value, key ) {
4490
- if ( self.changeCallbacks[ key ] ) {
4491
- self.changeCallbacks[ key ].call( self, value );
4492
- }
4493
- } );
4494
 
4495
- self.updateStylesheet();
 
4496
 
4497
- self.debounceSave();
 
4498
  },
4499
 
4500
- onElementorPreviewLoaded: function() {
4501
- this.updateStylesheet();
4502
 
4503
- this.addPanelPage();
4504
  }
4505
  } );
4506
 
4507
- },{"elementor-editor-utils/controls-css-parser":70,"elementor-models/base-settings":58,"elementor-utils/view-module":123}],64:[function(require,module,exports){
4508
- var ControlsStack = require( 'elementor-views/controls-stack' );
4509
 
4510
- module.exports = ControlsStack.extend( {
4511
- id: function() {
4512
- return 'elementor-panel-' + this.getOption( 'name' ) + '-settings';
4513
- },
4514
 
4515
- getTemplate: function() {
4516
- return '#tmpl-elementor-panel-' + this.getOption( 'name' ) + '-settings';
4517
- },
4518
 
4519
- childViewContainer: function() {
4520
- return '#elementor-panel-' + this.getOption( 'name' ) + '-settings-controls';
4521
- },
 
4522
 
4523
- childViewOptions: function() {
4524
- return {
4525
- elementSettingsModel: this.model
4526
- };
4527
- },
4528
 
4529
- initialize: function() {
4530
- this.collection = new Backbone.Collection( _.values( this.model.controls ) );
4531
- }
4532
- } );
4533
 
4534
- },{"elementor-views/controls-stack":90}],65:[function(require,module,exports){
4535
- var BaseSettings = require( 'elementor-editor/settings/base/manager' );
4536
 
4537
- module.exports = BaseSettings.extend( {
4538
- changeCallbacks: {
4539
- elementor_page_title_selector: function( newValue ) {
4540
- var newSelector = newValue || 'h1.entry-title',
4541
- titleSelectors = elementor.settings.page.model.controls.hide_title.selectors = {};
4542
 
4543
- titleSelectors[ newSelector ] = 'display: none';
 
 
4544
 
4545
- elementor.settings.page.updateStylesheet();
 
 
 
4546
  }
4547
- }
4548
- } );
4549
 
4550
- },{"elementor-editor/settings/base/manager":63}],66:[function(require,module,exports){
4551
- var BaseSettings = require( 'elementor-editor/settings/base/manager' );
 
4552
 
4553
- module.exports = BaseSettings.extend( {
4554
- changeCallbacks: {
4555
- post_title: function( newValue ) {
4556
- var $title = elementorFrontend.getElements( '$document' ).find( elementor.config.page_title_selector );
4557
 
4558
- $title.text( newValue );
4559
- },
4560
 
4561
- template: function() {
4562
- this.save( function() {
4563
- elementor.reloadPreview();
4564
 
4565
- elementor.once( 'preview:loaded', function() {
4566
- elementor.getPanelView().setPage( 'page_settings' );
4567
- } );
4568
- } );
4569
- }
4570
- },
4571
 
4572
- getDataToSave: function( data ) {
4573
- data.id = elementor.config.post_id;
 
4574
 
4575
- return data;
4576
- }
4577
- } );
 
4578
 
4579
- },{"elementor-editor/settings/base/manager":63}],67:[function(require,module,exports){
4580
- var Module = require( 'elementor-utils/module' );
4581
 
4582
- module.exports = Module.extend( {
4583
- modules: {
4584
- base: require( 'elementor-editor/settings/base/manager' ),
4585
- general: require( 'elementor-editor/settings/general/manager' ),
4586
- page: require( 'elementor-editor/settings/page/manager' )
4587
- },
4588
 
4589
- panelPages: {
4590
- base: require( 'elementor-editor/settings/base/panel' )
4591
- },
 
4592
 
4593
- onInit: function() {
4594
- this.initSettings();
4595
- },
4596
 
4597
- initSettings: function() {
4598
- var self = this;
4599
 
4600
- _.each( elementor.config.settings, function( config, name ) {
4601
- var Manager = self.modules[ name ] || self.modules.base;
 
 
4602
 
4603
- self[ name ] = new Manager( config );
4604
- } );
4605
- }
4606
- } );
4607
 
4608
- },{"elementor-editor/settings/base/manager":63,"elementor-editor/settings/base/panel":64,"elementor-editor/settings/general/manager":65,"elementor-editor/settings/page/manager":66,"elementor-utils/module":122}],68:[function(require,module,exports){
4609
- var Ajax;
4610
 
4611
- Ajax = {
4612
- config: {},
 
 
 
 
4613
 
4614
- initConfig: function() {
4615
- this.config = {
4616
- ajaxParams: {
4617
- type: 'POST',
4618
- url: elementor.config.ajaxurl,
4619
- data: {}
4620
- },
4621
- actionPrefix: 'elementor_'
4622
  };
4623
- },
4624
 
4625
- init: function() {
4626
- this.initConfig();
4627
- },
4628
 
4629
- send: function( action, options ) {
4630
- var ajaxParams = elementor.helpers.cloneObject( this.config.ajaxParams );
 
4631
 
4632
- options = options || {};
 
 
4633
 
4634
- action = this.config.actionPrefix + action;
 
4635
 
4636
- Backbone.$.extend( ajaxParams, options );
 
 
4637
 
4638
- if ( ajaxParams.data instanceof FormData ) {
4639
- ajaxParams.data.append( 'action', action );
4640
- ajaxParams.data.append( '_nonce', elementor.config.nonce );
4641
- } else {
4642
- ajaxParams.data.action = action;
4643
- ajaxParams.data._nonce = elementor.config.nonce;
4644
  }
4645
 
4646
- var successCallback = ajaxParams.success,
4647
- errorCallback = ajaxParams.error;
 
 
 
 
 
 
4648
 
4649
- if ( successCallback || errorCallback ) {
4650
- ajaxParams.success = function( response ) {
4651
- if ( response.success && successCallback ) {
4652
- successCallback( response.data );
4653
- }
4654
 
4655
- if ( ( ! response.success ) && errorCallback ) {
4656
- errorCallback( response.data );
4657
- }
4658
- };
4659
 
4660
- if ( errorCallback ) {
4661
- ajaxParams.error = function( data ) {
4662
- errorCallback( data );
4663
- };
4664
- }
4665
- }
4666
 
4667
- return Backbone.$.ajax( ajaxParams );
4668
- }
4669
- };
4670
 
4671
- module.exports = Ajax;
 
4672
 
4673
- },{}],69:[function(require,module,exports){
4674
- var Conditions;
 
4675
 
4676
- Conditions = function() {
4677
- var self = this;
 
 
 
 
 
 
 
 
 
 
4678
 
4679
- this.compare = function( leftValue, rightValue, operator ) {
4680
- switch ( operator ) {
4681
- /* jshint ignore:start */
4682
- case '==':
4683
- return leftValue == rightValue;
4684
- case '!=':
4685
- return leftValue != rightValue;
4686
- /* jshint ignore:end */
4687
- case '!==':
4688
- return leftValue !== rightValue;
4689
- case 'in':
4690
- return -1 !== rightValue.indexOf( leftValue );
4691
- case '!in':
4692
- return -1 === rightValue.indexOf( leftValue );
4693
- case '<':
4694
- return leftValue < rightValue;
4695
- case '<=':
4696
- return leftValue <= rightValue;
4697
- case '>':
4698
- return leftValue > rightValue;
4699
- case '>=':
4700
- return leftValue >= rightValue;
4701
- default:
4702
- return leftValue === rightValue;
4703
- }
4704
- };
4705
 
4706
- this.check = function( conditions, comparisonObject ) {
4707
- var isOrCondition = 'or' === conditions.relation,
4708
- conditionSucceed = ! isOrCondition;
 
 
 
4709
 
4710
- Backbone.$.each( conditions.terms, function() {
4711
- var term = this,
4712
- comparisonResult;
4713
 
4714
- if ( term.terms ) {
4715
- comparisonResult = self.check( term, comparisonObject );
4716
- } else {
4717
- var parsedName = term.name.match( /(\w+)(?:\[(\w+)])?/ ),
4718
- value = comparisonObject[ parsedName[ 1 ] ];
 
 
 
 
 
4719
 
4720
- if ( parsedName[ 2 ] ) {
4721
- value = value[ parsedName[ 2 ] ];
4722
- }
4723
 
4724
- comparisonResult = self.compare( value, term.value, term.operator );
4725
- }
4726
 
4727
- if ( isOrCondition ) {
4728
- if ( comparisonResult ) {
4729
- conditionSucceed = true;
4730
- }
4731
 
4732
- return ! comparisonResult;
4733
- }
 
 
 
 
 
 
 
4734
 
4735
- if ( ! comparisonResult ) {
4736
- return conditionSucceed = false;
4737
  }
4738
  } );
4739
-
4740
- return conditionSucceed;
4741
  };
 
 
4742
  };
4743
 
4744
- module.exports = new Conditions();
4745
 
4746
- },{}],70:[function(require,module,exports){
4747
- var ViewModule = require( 'elementor-utils/view-module' ),
4748
- Stylesheet = require( 'elementor-editor-utils/stylesheet' ),
4749
- ControlsCSSParser;
4750
 
4751
- ControlsCSSParser = ViewModule.extend( {
4752
- stylesheet: null,
4753
 
4754
- getDefaultSettings: function() {
4755
- return {
4756
- id: 0
4757
- };
4758
- },
4759
 
4760
- getDefaultElements: function() {
4761
- return {
4762
- $stylesheetElement: Backbone.$( '<style>', { id: 'elementor-style-' + this.getSettings( 'id' ) } )
 
 
 
4763
  };
4764
- },
4765
 
4766
- initStylesheet: function() {
4767
- var viewportBreakpoints = elementor.config.viewportBreakpoints;
 
 
 
 
 
 
 
 
 
4768
 
4769
- this.stylesheet = new Stylesheet();
 
 
 
4770
 
4771
- this.stylesheet
4772
- .addDevice( 'mobile', 0 )
4773
- .addDevice( 'tablet', viewportBreakpoints.md )
4774
- .addDevice( 'desktop', viewportBreakpoints.lg );
 
 
 
4775
  },
4776
 
4777
- addStyleRules: function( controls, values, controlsStack, placeholders, replacements ) {
4778
- var self = this;
 
 
4779
 
4780
- _.each( controls, function( control ) {
4781
- if ( control.styleFields && control.styleFields.length ) {
4782
- values[ control.name ].each( function( itemModel ) {
4783
- self.addStyleRules(
4784
- control.styleFields,
4785
- itemModel.attributes,
4786
- controlsStack,
4787
- placeholders.concat( [ '{{CURRENT_ITEM}}' ] ),
4788
- replacements.concat( [ '.elementor-repeater-item-' + itemModel.get( '_id' ) ] )
4789
- );
4790
- } );
4791
  }
4792
-
4793
- self.addControlStyleRules( control, values, controlsStack, placeholders, replacements );
4794
  } );
4795
- },
4796
 
4797
- addControlStyleRules: function( control, values, controlsStack, placeholders, replacements ) {
4798
- var self = this;
 
 
 
 
 
 
4799
 
4800
- ControlsCSSParser.addControlStyleRules( self.stylesheet, control, controlsStack, function( control ) {
4801
- return self.getStyleControlValue( control, values );
4802
- }, placeholders, replacements );
4803
  },
4804
 
4805
- getStyleControlValue: function( control, values ) {
4806
- var value = values[ control.name ];
4807
-
4808
- if ( control.selectors_dictionary ) {
4809
- value = control.selectors_dictionary[ value ] || value;
4810
- }
4811
 
4812
- if ( ! _.isNumber( value ) && _.isEmpty( value ) ) {
4813
- return;
4814
- }
 
 
4815
 
4816
- return value;
4817
- },
4818
 
4819
- addStyleToDocument: function() {
4820
- elementor.$previewContents.find( 'head' ).append( this.elements.$stylesheetElement );
4821
 
4822
- this.elements.$stylesheetElement.text( this.stylesheet );
4823
- },
4824
 
4825
- removeStyleFromDocument: function() {
4826
- this.elements.$stylesheetElement.remove();
 
 
 
 
 
4827
  },
4828
 
4829
- onInit: function() {
4830
- ViewModule.prototype.onInit.apply( this, arguments );
4831
-
4832
- this.initStylesheet();
4833
- }
4834
- } );
4835
-
4836
- ControlsCSSParser.addControlStyleRules = function( stylesheet, control, controlsStack, valueCallback, placeholders, replacements ) {
4837
- var value = valueCallback( control );
4838
-
4839
- if ( undefined === value ) {
4840
- return;
4841
- }
4842
-
4843
- _.each( control.selectors, function( cssProperty, selector ) {
4844
- var outputCssProperty;
4845
 
4846
- try {
4847
- outputCssProperty = cssProperty.replace( /{{(?:([^.}]+)\.)?([^}]*)}}/g, function( originalPhrase, controlName, placeholder ) {
4848
- var parserControl = control,
4849
- valueToInsert = value;
4850
 
4851
- if ( controlName ) {
4852
- parserControl = _.findWhere( controlsStack, { name: controlName } );
 
 
 
 
 
 
4853
 
4854
- if ( ! parserControl ) {
4855
- return '';
4856
- }
4857
 
4858
- valueToInsert = valueCallback( parserControl );
 
4859
  }
4860
 
4861
- var parsedValue = elementor.getControlView( parserControl.type ).getStyleValue( placeholder.toLowerCase(), valueToInsert );
4862
 
4863
- if ( '' === parsedValue ) {
4864
- throw '';
4865
- }
 
 
4866
 
4867
- return parsedValue;
4868
- } );
4869
- } catch ( e ) {
4870
- return;
4871
  }
 
 
4872
 
4873
- if ( _.isEmpty( outputCssProperty ) ) {
4874
- return;
 
4875
  }
4876
 
4877
- var devicePattern = /^(?:\([^)]+\)){1,2}/,
4878
- deviceRules = selector.match( devicePattern ),
4879
- query = {};
4880
 
4881
- if ( deviceRules ) {
4882
- deviceRules = deviceRules[0];
 
4883
 
4884
- selector = selector.replace( devicePattern, '' );
 
4885
 
4886
- var pureDevicePattern = /\(([^)]+)\)/g,
4887
- pureDeviceRules = [],
4888
- matches;
4889
 
4890
- while ( matches = pureDevicePattern.exec( deviceRules ) ) {
4891
- pureDeviceRules.push( matches[1] );
4892
  }
4893
 
4894
- _.each( pureDeviceRules, function( deviceRule ) {
4895
- if ( 'desktop' === deviceRule ) {
4896
- return;
4897
- }
4898
 
4899
- var device = deviceRule.replace( /\+$/, '' ),
4900
- endPoint = device === deviceRule ? 'max' : 'min';
4901
 
4902
- query[ endPoint ] = device;
4903
- } );
 
4904
  }
4905
 
4906
- _.each( placeholders, function( placeholder, index ) {
4907
- // Check if it's a RegExp
4908
- var regexp = placeholder.source ? placeholder.source : placeholder,
4909
- placeholderPattern = new RegExp( regexp, 'g' );
4910
 
4911
- selector = selector.replace( placeholderPattern, replacements[ index ] );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4912
  } );
 
4913
 
4914
- if ( ! Object.keys( query ).length && control.responsive ) {
4915
- query = elementor.helpers.cloneObject( control.responsive );
4916
 
4917
- if ( 'desktop' === query.max ) {
4918
- delete query.max;
4919
- }
 
 
4920
  }
4921
 
4922
- stylesheet.addRules( selector, outputCssProperty, query );
4923
- } );
4924
- };
 
4925
 
4926
- module.exports = ControlsCSSParser;
 
 
4927
 
4928
- },{"elementor-editor-utils/stylesheet":81,"elementor-utils/view-module":123}],71:[function(require,module,exports){
4929
- var Debug = function() {
4930
- var self = this,
4931
- errorStack = [],
4932
- settings = {},
4933
- elements = {};
4934
 
4935
- var initSettings = function() {
4936
- settings = {
4937
- debounceDelay: 500,
4938
- urlsToWatch: [
4939
- 'elementor/assets'
4940
- ]
4941
- };
4942
- };
4943
 
4944
- var initElements = function() {
4945
- elements.$window = jQuery( window );
4946
- };
 
 
 
 
 
 
 
 
4947
 
4948
- var onError = function( event ) {
4949
- var originalEvent = event.originalEvent,
4950
- error = originalEvent.error;
4951
 
4952
- if ( ! error ) {
4953
- return;
4954
- }
4955
 
4956
- var isInWatchList = false,
4957
- urlsToWatch = settings.urlsToWatch;
 
4958
 
4959
- jQuery.each( urlsToWatch, function() {
4960
- if ( -1 !== error.stack.indexOf( this ) ) {
4961
- isInWatchList = true;
4962
 
4963
- return false;
 
4964
  }
 
 
 
 
4965
  } );
 
4966
 
4967
- if ( ! isInWatchList ) {
4968
- return;
4969
- }
 
4970
 
4971
- self.addError( {
4972
- type: error.name,
4973
- message: error.message,
4974
- url: originalEvent.filename,
4975
- line: originalEvent.lineno,
4976
- column: originalEvent.colno
4977
- } );
4978
- };
4979
 
4980
- var bindEvents = function() {
4981
- elements.$window.on( 'error', onError );
4982
- };
 
 
4983
 
4984
- var init = function() {
4985
- initSettings();
 
4986
 
4987
- initElements();
 
 
 
 
 
 
 
 
 
4988
 
4989
- bindEvents();
 
 
4990
 
4991
- self.sendErrors = _.debounce( self.sendErrors, settings.debounceDelay );
4992
- };
4993
 
4994
- this.addURLToWatch = function( url ) {
4995
- settings.urlsToWatch.push( url );
4996
- };
 
 
 
 
 
 
 
4997
 
4998
- this.addCustomError = function( error, category, tag ) {
4999
- var errorInfo = {
5000
- type: error.name,
5001
- message: error.message,
5002
- url: error.fileName || error.sourceURL,
5003
- line: error.lineNumber || error.line,
5004
- column: error.columnNumber || error.column,
5005
- customFields: {
5006
- category: category || 'general',
5007
- tag: tag
5008
- }
5009
- };
5010
 
5011
- if ( ! errorInfo.url ) {
5012
- var stackInfo = error.stack.match( /\n {4}at (.*?(?=:(\d+):(\d+)))/ );
5013
 
5014
- if ( stackInfo ) {
5015
- errorInfo.url = stackInfo[1];
5016
- errorInfo.line = stackInfo[2];
5017
- errorInfo.column = stackInfo[3];
5018
- }
5019
- }
5020
 
5021
- this.addError( errorInfo );
5022
- };
5023
 
5024
- this.addError = function( errorParams ) {
5025
- var defaultParams = {
5026
- type: 'Error',
5027
- timestamp: Math.floor( new Date().getTime() / 1000 ),
5028
- message: null,
5029
- url: null,
5030
- line: null,
5031
- column: null,
5032
- customFields: {}
5033
- };
5034
 
5035
- errorStack.push( jQuery.extend( true, defaultParams, errorParams ) );
5036
 
5037
- self.sendErrors();
5038
- };
5039
 
5040
- this.sendErrors = function() {
5041
- // Avoid recursions on errors in ajax
5042
- elements.$window.off( 'error', onError );
5043
 
5044
- jQuery.ajax( {
5045
- url: ElementorConfig.ajaxurl,
5046
- method: 'POST',
5047
- data: {
5048
- action: 'elementor_debug_log',
5049
- data: errorStack
5050
- },
5051
- success: function() {
5052
- errorStack = [];
5053
 
5054
- // Restore error handler
5055
- elements.$window.on( 'error', onError );
 
 
5056
  }
5057
- } );
5058
- };
5059
-
5060
- init();
5061
- };
5062
-
5063
- module.exports = new Debug();
5064
 
5065
- },{}],72:[function(require,module,exports){
5066
- var heartbeat;
5067
 
5068
- heartbeat = {
 
 
 
 
5069
 
5070
- init: function() {
5071
- var modal;
 
5072
 
5073
- this.getModal = function() {
5074
- if ( ! modal ) {
5075
- modal = this.initModal();
5076
- }
5077
 
5078
- return modal;
5079
- };
5080
 
5081
- Backbone.$( document ).on( {
5082
- 'heartbeat-send': function( event, data ) {
5083
- data.elementor_post_lock = {
5084
- post_ID: elementor.config.post_id
5085
- };
5086
- },
5087
- 'heartbeat-tick': function( event, response ) {
5088
- if ( response.locked_user ) {
5089
- if ( elementor.isEditorChanged() ) {
5090
- elementor.saveEditor( { status: 'autosave' } );
5091
- }
5092
 
5093
- heartbeat.showLockMessage( response.locked_user );
5094
- } else {
5095
- heartbeat.getModal().hide();
5096
  }
5097
 
5098
- elementor.config.nonce = response.elementor_nonce;
5099
  }
5100
- } );
5101
 
5102
- if ( elementor.config.locked_user ) {
5103
- heartbeat.showLockMessage( elementor.config.locked_user );
5104
  }
5105
- },
5106
-
5107
- initModal: function() {
5108
- var modal = elementor.dialogsManager.createWidget( 'options', {
5109
- headerMessage: elementor.translate( 'take_over' )
5110
- } );
5111
-
5112
- modal.addButton( {
5113
- name: 'go_back',
5114
- text: elementor.translate( 'go_back' ),
5115
- callback: function() {
5116
- parent.history.go( -1 );
5117
- }
5118
- } );
5119
 
5120
- modal.addButton( {
5121
- name: 'take_over',
5122
- text: elementor.translate( 'take_over' ),
5123
- callback: function() {
5124
- wp.heartbeat.enqueue( 'elementor_force_post_lock', true );
5125
- wp.heartbeat.connectNow();
5126
- }
5127
- } );
5128
-
5129
- return modal;
5130
- },
5131
-
5132
- showLockMessage: function( lockedUser ) {
5133
- var modal = heartbeat.getModal();
5134
 
5135
- modal
5136
- .setMessage( elementor.translate( 'dialog_user_taken_over', [ lockedUser ] ) )
5137
- .show();
5138
- }
5139
- };
5140
 
5141
- module.exports = heartbeat;
 
 
5142
 
5143
- },{}],73:[function(require,module,exports){
5144
- var helpers;
 
5145
 
5146
- helpers = {
5147
- _enqueuedFonts: [],
5148
 
5149
- elementsHierarchy: {
5150
- section: {
5151
- column: {
5152
- widget: null,
5153
- section: null
5154
- }
5155
  }
5156
- },
5157
 
5158
- enqueueFont: function( font ) {
5159
- if ( -1 !== this._enqueuedFonts.indexOf( font ) ) {
5160
  return;
5161
  }
5162
 
5163
- var fontType = elementor.config.controls.font.fonts[ font ],
5164
- fontUrl,
5165
-
5166
- subsets = {
5167
- 'ru_RU': 'cyrillic',
5168
- 'uk': 'cyrillic',
5169
- 'bg_BG': 'cyrillic',
5170
- 'vi': 'vietnamese',
5171
- 'el': 'greek',
5172
- 'he_IL': 'hebrew'
5173
- };
5174
 
5175
- switch ( fontType ) {
5176
- case 'googlefonts' :
5177
- fontUrl = 'https://fonts.googleapis.com/css?family=' + font + ':100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';
5178
-
5179
- if ( subsets[ elementor.config.locale ] ) {
5180
- fontUrl += '&subset=' + subsets[ elementor.config.locale ];
5181
- }
5182
 
5183
- break;
 
 
 
 
5184
 
5185
- case 'earlyaccess' :
5186
- var fontLowerString = font.replace( /\s+/g, '' ).toLowerCase();
5187
- fontUrl = 'https://fonts.googleapis.com/earlyaccess/' + fontLowerString + '.css';
 
 
 
5188
  break;
5189
- }
5190
-
5191
- if ( ! _.isEmpty( fontUrl ) ) {
5192
- elementor.$previewContents.find( 'link:last' ).after( '<link href="' + fontUrl + '" rel="stylesheet" type="text/css">' );
5193
- }
5194
- this._enqueuedFonts.push( font );
5195
- },
5196
 
5197
- getElementChildType: function( elementType, container ) {
5198
- if ( ! container ) {
5199
- container = this.elementsHierarchy;
 
5200
  }
5201
 
5202
- if ( undefined !== container[ elementType ] ) {
 
5203
 
5204
- if ( Backbone.$.isPlainObject( container[ elementType ] ) ) {
5205
- return Object.keys( container[ elementType ] );
5206
- }
5207
 
5208
- return null;
 
 
 
 
5209
  }
5210
 
5211
- for ( var type in container ) {
5212
-
5213
- if ( ! container.hasOwnProperty( type ) ) {
5214
- continue;
5215
- }
5216
-
5217
- if ( ! Backbone.$.isPlainObject( container[ type ] ) ) {
5218
- continue;
5219
- }
5220
 
5221
- var result = this.getElementChildType( elementType, container[ type ] );
 
 
 
5222
 
5223
- if ( result ) {
5224
- return result;
 
 
 
 
5225
  }
5226
- }
 
5227
 
5228
- return null;
5229
- },
5230
 
5231
- getUniqueID: function() {
5232
- var id;
5233
 
5234
- // TODO: Check conflict models
5235
- //while ( true ) {
5236
- id = Math.random().toString( 36 ).substr( 2, 7 );
5237
- //if ( 1 > $( 'li.item-id-' + id ).length ) {
5238
- return id;
5239
- //}
5240
- //}
5241
- },
5242
 
5243
- stringReplaceAll: function( string, replaces ) {
5244
- var re = new RegExp( Object.keys( replaces ).join( '|' ), 'gi' );
 
5245
 
5246
- return string.replace( re, function( matched ) {
5247
- return replaces[ matched ];
 
 
 
5248
  } );
5249
- },
5250
 
5251
- isActiveControl: function( controlModel, values ) {
5252
- var condition;
 
5253
 
5254
- // TODO: Better way to get this?
5255
- if ( _.isFunction( controlModel.get ) ) {
5256
- condition = controlModel.get( 'condition' );
5257
- } else {
5258
- condition = controlModel.condition;
5259
- }
5260
 
5261
- // Repeater items conditions
5262
- if ( controlModel.conditions ) {
5263
- return elementor.conditions.check( controlModel.conditions, values );
5264
- }
5265
 
5266
- if ( _.isEmpty( condition ) ) {
5267
- return true;
 
5268
  }
5269
 
5270
- var hasFields = _.filter( condition, function( conditionValue, conditionName ) {
5271
- var conditionNameParts = conditionName.match( /([a-z_0-9]+)(?:\[([a-z_]+)])?(!?)$/i ),
5272
- conditionRealName = conditionNameParts[1],
5273
- conditionSubKey = conditionNameParts[2],
5274
- isNegativeCondition = !! conditionNameParts[3],
5275
- controlValue = values[ conditionRealName ];
5276
-
5277
- if ( conditionSubKey ) {
5278
- controlValue = controlValue[ conditionSubKey ];
5279
- }
5280
 
5281
- // If it's a non empty array - check if the conditionValue contains the controlValue,
5282
- // If the controlValue is a non empty array - check if the controlValue contains the conditionValue
5283
- // otherwise check if they are equal. ( and give the ability to check if the value is an empty array )
5284
- var isContains;
5285
- if ( _.isArray( conditionValue ) && ! _.isEmpty( conditionValue ) ) {
5286
- isContains = _.contains( conditionValue, controlValue );
5287
- } else if ( _.isArray( controlValue ) && ! _.isEmpty( controlValue ) ) {
5288
- isContains = _.contains( controlValue, conditionValue );
5289
- } else {
5290
- isContains = _.isEqual( conditionValue, controlValue );
5291
- }
5292
 
5293
- return isNegativeCondition ? isContains : ! isContains;
5294
- } );
 
 
 
5295
 
5296
- return _.isEmpty( hasFields );
5297
- },
5298
 
5299
- cloneObject: function( object ) {
5300
- return JSON.parse( JSON.stringify( object ) );
5301
- },
5302
 
5303
- disableElementEvents: function( $element ) {
5304
- $element.each( function() {
5305
- var currentPointerEvents = this.style.pointerEvents;
 
5306
 
5307
- if ( 'none' === currentPointerEvents ) {
5308
- return;
5309
- }
 
5310
 
5311
- Backbone.$( this )
5312
- .data( 'backup-pointer-events', currentPointerEvents )
5313
- .css( 'pointer-events', 'none' );
5314
- } );
5315
- },
5316
 
5317
- enableElementEvents: function( $element ) {
5318
- $element.each( function() {
5319
- var $this = Backbone.$( this ),
5320
- backupPointerEvents = $this.data( 'backup-pointer-events' );
 
5321
 
5322
- if ( undefined === backupPointerEvents ) {
5323
- return;
5324
- }
5325
 
5326
- $this
5327
- .removeData( 'backup-pointer-events' )
5328
- .css( 'pointer-events', backupPointerEvents );
5329
- } );
5330
- },
5331
 
5332
- getColorPickerPaletteIndex: function( paletteKey ) {
5333
- return [ '7', '8', '1', '5', '2', '3', '6', '4' ].indexOf( paletteKey );
5334
- },
 
 
5335
 
5336
- wpColorPicker: function( $element, options ) {
5337
  var self = this,
5338
- colorPickerScheme = elementor.schemes.getScheme( 'color-picker' ),
5339
- items = _.sortBy( colorPickerScheme.items, function( item ) {
5340
- return self.getColorPickerPaletteIndex( item.key );
5341
- } ),
5342
- defaultOptions = {
5343
- width: window.innerWidth >= 1440 ? 271 : 251,
5344
- palettes: _.pluck( items, 'value' )
5345
  };
5346
 
5347
- if ( options ) {
5348
- _.extend( defaultOptions, options );
5349
- }
5350
-
5351
- return $element.wpColorPicker( defaultOptions );
5352
- }
5353
- };
5354
 
5355
- module.exports = helpers;
 
 
5356
 
5357
- },{}],74:[function(require,module,exports){
5358
- var HotKeys = function( $ ) {
5359
- var self = this,
5360
- hotKeysHandlers = {};
5361
-
5362
- var keysDictionary = {
5363
- del: 46,
5364
- d: 68,
5365
- l: 76,
5366
- m: 77,
5367
- p: 80,
5368
- s: 83
5369
- };
5370
 
5371
- var isMac = function() {
5372
- return -1 !== navigator.userAgent.indexOf( 'Mac OS X' );
5373
- };
 
 
5374
 
5375
- var initHotKeysHandlers = function() {
 
 
 
 
5376
 
5377
- hotKeysHandlers[ keysDictionary.del ] = {
5378
- deleteElement: {
5379
- isWorthHandling: function( event ) {
5380
- var isEditorOpen = 'editor' === elementor.getPanelView().getCurrentPageName(),
5381
- isInputTarget = $( event.target ).is( ':input, .elementor-input' );
5382
 
5383
- return isEditorOpen && ! isInputTarget;
5384
- },
5385
- handle: function() {
5386
- elementor.getPanelView().getCurrentPageView().getOption( 'editedElementView' ).confirmRemove();
5387
- }
5388
  }
5389
  };
5390
 
5391
- hotKeysHandlers[ keysDictionary.d ] = {
5392
- /* Waiting for CTRL+Z / CTRL+Y
5393
- duplicateElement: {
5394
- isWorthHandling: function( event ) {
5395
- return self.isControlEvent( event );
5396
- },
5397
- handle: function() {
5398
- var panel = elementor.getPanelView();
5399
 
5400
- if ( 'editor' !== panel.getCurrentPageName() ) {
5401
- return;
5402
- }
5403
 
5404
- panel.getCurrentPageView().getOption( 'editedElementView' ).duplicate();
5405
- }
5406
- }*/
5407
- };
5408
 
5409
- hotKeysHandlers[ keysDictionary.l ] = {
5410
- showTemplateLibrary: {
5411
- isWorthHandling: function( event ) {
5412
- return self.isControlEvent( event ) && event.shiftKey;
5413
- },
5414
- handle: function() {
5415
- elementor.templates.showTemplatesModal();
5416
- }
5417
- }
5418
  };
5419
 
5420
- hotKeysHandlers[ keysDictionary.m ] = {
5421
- changeDeviceMode: {
5422
- devices: [ 'desktop', 'tablet', 'mobile' ],
5423
- isWorthHandling: function( event ) {
5424
- return self.isControlEvent( event ) && event.shiftKey;
5425
- },
5426
- handle: function() {
5427
- var currentDeviceMode = elementor.channels.deviceMode.request( 'currentMode' ),
5428
- modeIndex = this.devices.indexOf( currentDeviceMode );
5429
 
5430
- modeIndex++;
 
5431
 
5432
- if ( modeIndex >= this.devices.length ) {
5433
- modeIndex = 0;
5434
- }
5435
 
5436
- elementor.changeDeviceMode( this.devices[ modeIndex ] );
5437
- }
5438
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5439
  };
5440
 
5441
- hotKeysHandlers[ keysDictionary.p ] = {
5442
- changeEditMode: {
5443
- isWorthHandling: function( event ) {
5444
- return self.isControlEvent( event );
5445
- },
5446
- handle: function() {
5447
- elementor.getPanelView().modeSwitcher.currentView.toggleMode();
5448
- }
5449
- }
5450
  };
5451
 
5452
- hotKeysHandlers[ keysDictionary.s ] = {
5453
- saveEditor: {
5454
- isWorthHandling: function( event ) {
5455
- return self.isControlEvent( event );
5456
- },
5457
- handle: function() {
5458
- elementor.getPanelView().getFooterView()._publishBuilder();
5459
- }
5460
- }
5461
  };
5462
- };
5463
 
5464
- var applyHotKey = function( event ) {
5465
- var handlers = hotKeysHandlers[ event.which ];
 
5466
 
5467
- if ( ! handlers ) {
5468
- return;
5469
- }
5470
 
5471
- _.each( handlers, function( handler ) {
5472
- if ( handler.isWorthHandling && ! handler.isWorthHandling( event ) ) {
5473
- return;
5474
  }
5475
 
5476
- // Fix for some keyboard sources that consider alt key as ctrl key
5477
- if ( ! handler.allowAltKey && event.altKey ) {
5478
- return;
5479
  }
5480
 
5481
- event.preventDefault();
5482
 
5483
- handler.handle( event );
5484
- } );
5485
- };
5486
 
5487
- var bindEvents = function() {
5488
- self.bindListener( elementor.$window );
5489
- };
5490
 
5491
- this.isControlEvent = function( event ) {
5492
- return event[ isMac() ? 'metaKey' : 'ctrlKey' ];
5493
- };
5494
 
5495
- this.addHotKeyHandler = function( keyCode, handlerName, handler ) {
5496
- if ( ! hotKeysHandlers[ keyCode ] ) {
5497
- hotKeysHandlers[ keyCode ] = {};
5498
- }
5499
 
5500
- hotKeysHandlers[ keyCode ][ handlerName ] = handler;
5501
- };
 
 
 
5502
 
5503
- this.bindListener = function( $listener ) {
5504
- $listener.on( 'keydown', applyHotKey );
5505
- };
5506
 
5507
- this.init = function() {
5508
- initHotKeysHandlers();
 
 
5509
 
5510
- bindEvents();
5511
- };
5512
- };
5513
 
5514
- module.exports = new HotKeys( jQuery );
 
 
5515
 
5516
- },{}],75:[function(require,module,exports){
5517
- var ImagesManager;
5518
 
5519
- ImagesManager = function() {
5520
- var self = this;
5521
 
5522
- var cache = {};
5523
 
5524
- var debounceDelay = 300;
 
5525
 
5526
- var registeredItems = [];
 
 
 
5527
 
5528
- var getNormalizedSize = function( image ) {
5529
- var size,
5530
- imageSize = image.size;
5531
 
5532
- if ( 'custom' === imageSize ) {
5533
- var customDimension = image.dimension;
5534
 
5535
- if ( customDimension.width || customDimension.height ) {
5536
- size = 'custom_' + customDimension.width + 'x' + customDimension.height;
5537
- } else {
5538
- return 'full';
5539
- }
5540
- } else {
5541
- size = imageSize;
5542
- }
5543
 
5544
- return size;
5545
- };
5546
 
5547
- self.onceTriggerChange = _.once( function( model ) {
5548
- window.setTimeout( function() {
5549
- model.get( 'settings' ).trigger( 'change' );
5550
- }, 700 );
5551
- } );
5552
 
5553
- self.getImageUrl = function( image ) {
5554
- // Register for AJAX checking
5555
- self.registerItem( image );
5556
 
5557
- var imageUrl = self.getItem( image );
 
 
5558
 
5559
- // If it's not in cache, like a new dropped widget or a custom size - get from settings
5560
- if ( ! imageUrl ) {
 
5561
 
5562
- if ( 'custom' === image.size ) {
5563
 
5564
- if ( elementor.getPanelView() && 'editor' === elementor.getPanelView().currentPageName && image.model ) {
5565
- // Trigger change again, so it's will load from the cache
5566
- self.onceTriggerChange( image.model );
5567
- }
5568
 
5569
- return ;
5570
- }
 
 
 
 
5571
 
5572
- // If it's a new dropped widget
5573
- imageUrl = image.url;
5574
- }
 
5575
 
5576
- return imageUrl;
5577
- };
5578
 
5579
- self.getItem = function( image ) {
5580
- var size = getNormalizedSize( image ),
5581
- id = image.id;
5582
 
5583
- if ( ! size ) {
5584
- return false;
5585
- }
 
5586
 
5587
- if ( cache[ id ] && cache[ id ][ size ] ) {
5588
- return cache[ id ][ size ];
5589
- }
5590
 
5591
- return false;
5592
- };
5593
 
5594
- self.registerItem = function( image ) {
5595
- if ( '' === image.id ) {
5596
- // It's a new dropped widget
5597
- return;
5598
- }
5599
 
5600
- if ( self.getItem( image ) ) {
5601
- // It's already in cache
5602
- return;
5603
- }
5604
 
5605
- registeredItems.push( image );
 
5606
 
5607
- self.debounceGetRemoteItems();
5608
- };
 
5609
 
5610
- self.getRemoteItems = function() {
5611
- var requestedItems = [],
5612
- registeredItemsLength = Object.keys( registeredItems ).length,
5613
- image,
5614
- index;
5615
 
5616
- // It's one item, so we can render it from remote server
5617
- if ( 0 === registeredItemsLength ) {
5618
- return;
5619
- } else if ( 1 === registeredItemsLength ) {
5620
- for ( index in registeredItems ) {
5621
- image = registeredItems[ index ];
5622
- break;
5623
- }
5624
 
5625
- if ( image && image.model ) {
5626
- image.model.renderRemoteServer();
5627
  return;
5628
  }
5629
- }
5630
 
5631
- for ( index in registeredItems ) {
5632
- image = registeredItems[ index ];
5633
 
5634
- var size = getNormalizedSize( image ),
5635
- id = image.id,
5636
- isFirstTime = ! cache[ id ] || 0 === Object.keys( cache[ id ] ).length;
5637
 
5638
- requestedItems.push( {
5639
- id: id,
5640
- size: size,
5641
- is_first_time: isFirstTime
5642
- } );
5643
- }
5644
 
5645
- window.elementor.ajax.send(
5646
- 'get_images_details', {
5647
- data: {
5648
- items: requestedItems
5649
- },
5650
- success: function( data ) {
5651
- var id,
5652
- size;
5653
 
5654
- for ( id in data ) {
5655
- if ( ! cache[ id ] ) {
5656
- cache[ id ] = {};
5657
- }
5658
 
5659
- for ( size in data[ id ] ) {
5660
- cache[ id ][ size ] = data[ id ][ size ];
5661
- }
5662
- }
5663
- registeredItems = [];
5664
- }
5665
  }
5666
- );
5667
- };
5668
 
5669
- self.debounceGetRemoteItems = _.debounce( self.getRemoteItems, debounceDelay );
5670
- };
5671
 
5672
- module.exports = new ImagesManager();
5673
 
5674
- },{}],76:[function(require,module,exports){
5675
- var Introduction;
 
5676
 
5677
- Introduction = function() {
5678
- var self = this,
5679
- modal;
5680
 
5681
- var initModal = function() {
5682
- modal = elementor.dialogsManager.createWidget( 'lightbox', {
5683
- id: 'elementor-introduction',
5684
- closeButton: true,
5685
- closeButtonClass: 'eicon-close'
5686
- } );
5687
 
5688
- modal.getElements( 'closeButton' ).on( 'click', function() {
5689
- self.setIntroductionViewed();
5690
- } );
 
5691
 
5692
- modal.on( 'hide', function() {
5693
- modal.getElements( 'message' ).empty(); // In order to stop the video
5694
- } );
5695
- };
5696
 
5697
- this.getSettings = function() {
5698
- return elementor.config.introduction;
5699
- };
 
 
 
 
 
5700
 
5701
- this.getModal = function() {
5702
- if ( ! modal ) {
5703
- initModal();
5704
- }
5705
 
5706
- return modal;
5707
- };
5708
 
5709
- this.startIntroduction = function() {
5710
- var settings = this.getSettings();
5711
 
5712
- this.getModal()
5713
- .setHeaderMessage( settings.title )
5714
- .setMessage( settings.content )
5715
- .show();
5716
- };
5717
 
5718
- this.startOnLoadIntroduction = function() {
5719
- var settings = this.getSettings();
5720
 
5721
- if ( ! settings.is_user_should_view ) {
5722
- return;
5723
- }
 
5724
 
5725
- setTimeout( _.bind( function() {
5726
- this.startIntroduction();
5727
- }, this ), settings.delay );
5728
- };
 
 
 
5729
 
5730
- this.setIntroductionViewed = function() {
5731
- elementor.ajax.send( 'introduction_viewed' );
5732
- };
5733
- };
5734
 
5735
- module.exports = new Introduction();
5736
 
5737
- },{}],77:[function(require,module,exports){
5738
- /**
5739
- * HTML5 - Drag and Drop
5740
- */
5741
- ;(function( $ ) {
5742
 
5743
- var hasFullDataTransferSupport = function( event ) {
5744
- try {
5745
- event.originalEvent.dataTransfer.setData( 'test', 'test' );
 
5746
 
5747
- event.originalEvent.dataTransfer.clearData( 'test' );
5748
-
5749
- return true;
5750
- } catch ( e ) {
5751
- return false;
5752
- }
5753
- };
5754
-
5755
- var Draggable = function( userSettings ) {
5756
- var self = this,
5757
- settings = {},
5758
- elementsCache = {},
5759
- defaultSettings = {
5760
- element: '',
5761
- groups: null,
5762
- onDragStart: null,
5763
- onDragEnd: null
5764
- };
5765
-
5766
- var initSettings = function() {
5767
- $.extend( true, settings, defaultSettings, userSettings );
5768
- };
5769
-
5770
- var initElementsCache = function() {
5771
- elementsCache.$element = $( settings.element );
5772
- };
5773
-
5774
- var buildElements = function() {
5775
- elementsCache.$element.attr( 'draggable', true );
5776
- };
5777
-
5778
- var onDragEnd = function( event ) {
5779
- if ( $.isFunction( settings.onDragEnd ) ) {
5780
- settings.onDragEnd.call( elementsCache.$element, event, self );
5781
- }
5782
- };
5783
-
5784
- var onDragStart = function( event ) {
5785
- var groups = settings.groups || [],
5786
- dataContainer = {
5787
- groups: groups
5788
- };
5789
 
5790
- if ( hasFullDataTransferSupport( event ) ) {
5791
- event.originalEvent.dataTransfer.setData( JSON.stringify( dataContainer ), true );
5792
  }
5793
 
5794
- if ( $.isFunction( settings.onDragStart ) ) {
5795
- settings.onDragStart.call( elementsCache.$element, event, self );
5796
- }
5797
  };
5798
 
5799
- var attachEvents = function() {
5800
  elementsCache.$element
5801
- .on( 'dragstart', onDragStart )
5802
- .on( 'dragend', onDragEnd );
 
 
5803
  };
5804
 
5805
- var init = function() {
5806
- initSettings();
5807
 
5808
- initElementsCache();
 
 
 
5809
 
5810
- buildElements();
 
 
5811
 
5812
- attachEvents();
5813
- };
 
5814
 
5815
- this.destroy = function() {
5816
- elementsCache.$element.off( 'dragstart', onDragStart );
5817
 
5818
- elementsCache.$element.removeAttr( 'draggable' );
5819
- };
5820
 
5821
- init();
5822
- };
5823
 
5824
- var Droppable = function( userSettings ) {
5825
- var self = this,
5826
- settings = {},
5827
- elementsCache = {},
5828
- currentElement,
5829
- currentSide,
5830
- defaultSettings = {
5831
- element: '',
5832
- items: '>',
5833
- horizontalSensitivity: '10%',
5834
- axis: [ 'vertical', 'horizontal' ],
5835
- placeholder: true,
5836
- currentElementClass: 'html5dnd-current-element',
5837
- placeholderClass: 'html5dnd-placeholder',
5838
- hasDraggingOnChildClass: 'html5dnd-has-dragging-on-child',
5839
- groups: null,
5840
- isDroppingAllowed: null,
5841
- onDragEnter: null,
5842
- onDragging: null,
5843
- onDropping: null,
5844
- onDragLeave: null
5845
- };
5846
 
5847
- var initSettings = function() {
5848
- $.extend( settings, defaultSettings, userSettings );
5849
- };
5850
 
5851
- var initElementsCache = function() {
5852
- elementsCache.$element = $( settings.element );
5853
 
5854
- elementsCache.$placeholder = $( '<div>', { 'class': settings.placeholderClass } );
5855
- };
5856
 
5857
- var hasHorizontalDetection = function() {
5858
- return -1 !== settings.axis.indexOf( 'horizontal' );
5859
  };
 
 
5860
 
5861
- var hasVerticalDetection = function() {
5862
- return -1 !== settings.axis.indexOf( 'vertical' );
5863
- };
 
 
 
 
 
5864
 
5865
- var checkHorizontal = function( offsetX, elementWidth ) {
5866
- var isPercentValue,
5867
- sensitivity;
 
5868
 
5869
- if ( ! hasHorizontalDetection() ) {
5870
- return false;
5871
- }
 
 
 
 
 
 
 
 
5872
 
5873
- if ( ! hasVerticalDetection() ) {
5874
- return offsetX > elementWidth / 2 ? 'right' : 'left';
 
 
 
 
5875
  }
5876
 
5877
- sensitivity = settings.horizontalSensitivity.match( /\d+/ );
5878
 
5879
- if ( ! sensitivity ) {
5880
- return false;
5881
- }
5882
 
5883
- sensitivity = sensitivity[0];
 
5884
 
5885
- isPercentValue = /%$/.test( settings.horizontalSensitivity );
 
 
 
 
 
5886
 
5887
- if ( isPercentValue ) {
5888
- sensitivity = elementWidth / sensitivity;
5889
- }
5890
 
5891
- if ( offsetX > elementWidth - sensitivity ) {
5892
- return 'right';
5893
- } else if ( offsetX < sensitivity ) {
5894
- return 'left';
5895
- }
5896
 
5897
- return false;
 
 
 
 
 
 
 
 
5898
  };
 
5899
 
5900
- var setSide = function( event ) {
5901
- var $element = $( currentElement ),
5902
- elementHeight = $element.outerHeight() - elementsCache.$placeholder.outerHeight(),
5903
- elementWidth = $element.outerWidth();
5904
-
5905
- event = event.originalEvent;
5906
 
5907
- if ( currentSide = checkHorizontal( event.offsetX, elementWidth ) ) {
5908
- return;
 
5909
  }
 
5910
 
5911
- if ( ! hasVerticalDetection() ) {
5912
- currentSide = null;
5913
 
5914
- return;
5915
- }
5916
 
5917
- var elementPosition = currentElement.getBoundingClientRect();
 
 
5918
 
5919
- currentSide = event.clientY > elementPosition.top + elementHeight / 2 ? 'bottom' : 'top';
5920
- };
 
5921
 
5922
- var insertPlaceholder = function() {
5923
- if ( ! settings.placeholder ) {
5924
- return;
5925
- }
5926
 
5927
- var insertMethod = 'top' === currentSide ? 'prependTo' : 'appendTo';
 
5928
 
5929
- elementsCache.$placeholder[ insertMethod ]( currentElement );
5930
- };
5931
 
5932
- var isDroppingAllowed = function( event ) {
5933
- var dataTransferTypes,
5934
- draggableGroups,
5935
- isGroupMatch,
5936
- isDroppingAllowed;
5937
 
5938
- if ( settings.groups && hasFullDataTransferSupport( event ) ) {
5939
- dataTransferTypes = event.originalEvent.dataTransfer.types;
 
 
 
5940
 
5941
- isGroupMatch = false;
 
 
 
5942
 
5943
- dataTransferTypes = Array.prototype.slice.apply( dataTransferTypes ); // Convert to array, since Firefox hold it as DOMStringList
 
5944
 
5945
- dataTransferTypes.forEach( function( type ) {
5946
- try {
5947
- draggableGroups = JSON.parse( type );
5948
 
5949
- if ( ! draggableGroups.groups.slice ) {
5950
- return;
5951
- }
5952
 
5953
- settings.groups.forEach( function( groupName ) {
 
5954
 
5955
- if ( -1 !== draggableGroups.groups.indexOf( groupName ) ) {
5956
- isGroupMatch = true;
5957
 
5958
- return false; // stops the forEach from extra loops
5959
- }
5960
- } );
5961
- } catch ( e ) {
5962
- }
5963
- } );
5964
 
5965
- if ( ! isGroupMatch ) {
5966
- return false;
5967
- }
5968
- }
5969
 
5970
- if ( $.isFunction( settings.isDroppingAllowed ) ) {
 
5971
 
5972
- isDroppingAllowed = settings.isDroppingAllowed.call( currentElement, currentSide, event, self );
 
5973
 
5974
- if ( ! isDroppingAllowed ) {
5975
- return false;
5976
- }
 
 
 
5977
  }
5978
 
5979
- return true;
5980
- };
5981
 
5982
- var onDragEnter = function( event ) {
5983
- event.stopPropagation();
5984
 
5985
- if ( currentElement ) {
5986
- return;
5987
- }
5988
 
5989
- currentElement = this;
5990
 
5991
- elementsCache.$element.parents().each( function() {
5992
- var droppableInstance = $( this ).data( 'html5Droppable' );
5993
 
5994
- if ( ! droppableInstance ) {
5995
- return;
5996
- }
5997
 
5998
- droppableInstance.doDragLeave();
5999
- } );
6000
 
6001
- setSide( event );
 
 
6002
 
6003
- if ( ! isDroppingAllowed( event ) ) {
6004
- return;
6005
- }
6006
 
6007
- insertPlaceholder();
 
 
 
6008
 
6009
- elementsCache.$element.addClass( settings.hasDraggingOnChildClass );
 
 
 
 
 
 
 
6010
 
6011
- $( currentElement ).addClass( settings.currentElementClass );
 
 
6012
 
6013
- if ( $.isFunction( settings.onDragEnter ) ) {
6014
- settings.onDragEnter.call( currentElement, currentSide, event, self );
6015
- }
6016
- };
6017
 
6018
- var onDragOver = function( event ) {
6019
- event.stopPropagation();
6020
 
6021
- if ( ! currentElement ) {
6022
- onDragEnter.call( this, event );
6023
- }
6024
 
6025
- var oldSide = currentSide;
 
 
 
 
6026
 
6027
- setSide( event );
 
6028
 
6029
- if ( ! isDroppingAllowed( event ) ) {
6030
- return;
6031
- }
 
6032
 
6033
- event.preventDefault();
 
 
 
 
6034
 
6035
- if ( oldSide !== currentSide ) {
6036
- insertPlaceholder();
6037
- }
 
6038
 
6039
- if ( $.isFunction( settings.onDragging ) ) {
6040
- settings.onDragging.call( this, currentSide, event, self );
6041
- }
6042
- };
6043
 
6044
- var onDragLeave = function( event ) {
6045
- var elementPosition = this.getBoundingClientRect();
 
 
 
6046
 
6047
- if ( 'dragleave' === event.type && ! (
6048
- event.clientX < elementPosition.left ||
6049
- event.clientX >= elementPosition.right ||
6050
- event.clientY < elementPosition.top ||
6051
- event.clientY >= elementPosition.bottom
6052
- ) ) {
6053
- return;
6054
- }
6055
 
6056
- $( currentElement ).removeClass( settings.currentElementClass );
 
 
6057
 
6058
- self.doDragLeave();
6059
- };
 
6060
 
6061
- var onDrop = function( event ) {
6062
- setSide( event );
 
 
6063
 
6064
- if ( ! isDroppingAllowed( event ) ) {
6065
- return;
6066
- }
6067
 
6068
- event.preventDefault();
 
6069
 
6070
- if ( $.isFunction( settings.onDropping ) ) {
6071
- settings.onDropping.call( this, currentSide, event, self );
6072
- }
6073
- };
6074
 
6075
- var attachEvents = function() {
6076
- elementsCache.$element
6077
- .on( 'dragenter', settings.items, onDragEnter )
6078
- .on( 'dragover', settings.items, onDragOver )
6079
- .on( 'drop', settings.items, onDrop )
6080
- .on( 'dragleave drop', settings.items, onDragLeave );
6081
- };
6082
 
6083
- var init = function() {
6084
- initSettings();
6085
 
6086
- initElementsCache();
 
6087
 
6088
- attachEvents();
6089
- };
6090
 
6091
- this.doDragLeave = function() {
6092
- if ( settings.placeholder ) {
6093
- elementsCache.$placeholder.remove();
6094
- }
6095
 
6096
- elementsCache.$element.removeClass( settings.hasDraggingOnChildClass );
 
 
6097
 
6098
- if ( $.isFunction( settings.onDragLeave ) ) {
6099
- settings.onDragLeave.call( currentElement, event, self );
6100
- }
6101
 
6102
- currentElement = currentSide = null;
6103
- };
6104
 
6105
- this.destroy = function() {
6106
- elementsCache.$element
6107
- .off( 'dragenter', settings.items, onDragEnter )
6108
- .off( 'dragover', settings.items, onDragOver )
6109
- .off( 'drop', settings.items, onDrop )
6110
- .off( 'dragleave drop', settings.items, onDragLeave );
6111
- };
6112
 
6113
- init();
6114
- };
6115
 
6116
- var plugins = {
6117
- html5Draggable: Draggable,
6118
- html5Droppable: Droppable
 
 
 
 
 
 
6119
  };
6120
 
6121
- $.each( plugins, function( pluginName, Plugin ) {
6122
- $.fn[ pluginName ] = function( options ) {
6123
- options = options || {};
 
6124
 
6125
- this.each( function() {
6126
- var instance = $.data( this, pluginName ),
6127
- hasInstance = instance instanceof Plugin;
6128
 
6129
- if ( hasInstance ) {
 
6130
 
6131
- if ( 'destroy' === options ) {
 
 
 
 
6132
 
6133
- instance.destroy();
 
 
 
6134
 
6135
- $.removeData( this, pluginName );
6136
- }
 
6137
 
6138
- return;
6139
- }
6140
 
6141
- options.element = this;
 
6142
 
6143
- $.data( this, pluginName, new Plugin( options ) );
 
6144
  } );
6145
 
6146
- return this;
6147
  };
6148
- } );
6149
- })( jQuery );
6150
-
6151
- },{}],78:[function(require,module,exports){
6152
- /*!
6153
- * jQuery Serialize Object v1.0.1
6154
- */
6155
- (function( $ ) {
6156
- $.fn.elementorSerializeObject = function() {
6157
- var serializedArray = this.serializeArray(),
6158
- data = {};
6159
-
6160
- var parseObject = function( dataContainer, key, value ) {
6161
- var isArrayKey = /^[^\[\]]+\[]/.test( key ),
6162
- isObjectKey = /^[^\[\]]+\[[^\[\]]+]/.test( key ),
6163
- keyName = key.replace( /\[.*/, '' );
6164
-
6165
- if ( isArrayKey ) {
6166
- if ( ! dataContainer[ keyName ] ) {
6167
- dataContainer[ keyName ] = [];
6168
- }
6169
- } else {
6170
- if ( ! isObjectKey ) {
6171
- if ( dataContainer.push ) {
6172
- dataContainer.push( value );
6173
- } else {
6174
- dataContainer[ keyName ] = value;
6175
- }
6176
 
6177
- return;
6178
- }
6179
 
6180
- if ( ! dataContainer[ keyName ] ) {
6181
- dataContainer[ keyName ] = {};
6182
- }
6183
- }
6184
 
6185
- var nextKeys = key.match( /\[[^\[\]]*]/g );
 
 
 
6186
 
6187
- nextKeys[ 0 ] = nextKeys[ 0 ].replace( /\[|]/g, '' );
 
6188
 
6189
- return parseObject( dataContainer[ keyName ], nextKeys.join( '' ), value );
6190
  };
6191
 
6192
- $.each( serializedArray, function() {
6193
- parseObject( data, this.name, this.value );
6194
- } );
6195
- return data;
6196
- };
6197
- })( jQuery );
6198
-
6199
- },{}],79:[function(require,module,exports){
6200
- var presetsFactory;
6201
-
6202
- presetsFactory = {
6203
-
6204
- getPresetsDictionary: function() {
6205
- return {
6206
- 11: 100 / 9,
6207
- 12: 100 / 8,
6208
- 14: 100 / 7,
6209
- 16: 100 / 6,
6210
- 33: 100 / 3,
6211
- 66: 2 / 3 * 100,
6212
- 83: 5 / 6 * 100
6213
- };
6214
- },
6215
 
6216
- getAbsolutePresetValues: function( preset ) {
6217
- var clonedPreset = elementor.helpers.cloneObject( preset ),
6218
- presetDictionary = this.getPresetsDictionary();
6219
 
6220
- _.each( clonedPreset, function( unitValue, unitIndex ) {
6221
- if ( presetDictionary[ unitValue ] ) {
6222
- clonedPreset[ unitIndex ] = presetDictionary[ unitValue ];
6223
  }
6224
- } );
6225
 
6226
- return clonedPreset;
6227
- },
 
 
 
6228
 
6229
- getPresets: function( columnsCount, presetIndex ) {
6230
- var presets = elementor.helpers.cloneObject( elementor.config.elements.section.presets );
 
6231
 
6232
- if ( columnsCount ) {
6233
- presets = presets[ columnsCount ];
6234
- }
6235
 
6236
- if ( presetIndex ) {
6237
- presets = presets[ presetIndex ];
6238
- }
6239
 
6240
- return presets;
6241
- },
6242
 
6243
- getPresetByStructure: function( structure ) {
6244
- var parsedStructure = this.getParsedStructure( structure );
 
6245
 
6246
- return this.getPresets( parsedStructure.columnsCount, parsedStructure.presetIndex );
6247
- },
6248
 
6249
- getParsedStructure: function( structure ) {
6250
- structure += ''; // Make sure this is a string
 
6251
 
6252
- return {
6253
- columnsCount: structure.slice( 0, -1 ),
6254
- presetIndex: structure.substr( -1 )
 
 
6255
  };
6256
- },
6257
 
6258
- getPresetSVG: function( preset, svgWidth, svgHeight, separatorWidth ) {
6259
- svgWidth = svgWidth || 100;
6260
- svgHeight = svgHeight || 50;
6261
- separatorWidth = separatorWidth || 2;
6262
 
6263
- var absolutePresetValues = this.getAbsolutePresetValues( preset ),
6264
- presetSVGPath = this._generatePresetSVGPath( absolutePresetValues, svgWidth, svgHeight, separatorWidth );
6265
 
6266
- return this._createSVGPreset( presetSVGPath, svgWidth, svgHeight );
6267
- },
 
6268
 
6269
- _createSVGPreset: function( presetPath, svgWidth, svgHeight ) {
6270
- var svg = document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' );
 
 
6271
 
6272
- svg.setAttributeNS( 'http://www.w3.org/2000/xmlns/', 'xmlns:xlink', 'http://www.w3.org/1999/xlink' );
6273
- svg.setAttribute( 'viewBox', '0 0 ' + svgWidth + ' ' + svgHeight );
6274
 
6275
- var path = document.createElementNS( 'http://www.w3.org/2000/svg', 'path' );
 
 
6276
 
6277
- path.setAttribute( 'd', presetPath );
6278
 
6279
- svg.appendChild( path );
 
6280
 
6281
- return svg;
6282
- },
 
6283
 
6284
- _generatePresetSVGPath: function( preset, svgWidth, svgHeight, separatorWidth ) {
6285
- var DRAW_SIZE = svgWidth - separatorWidth * ( preset.length - 1 );
6286
 
6287
- var xPointer = 0,
6288
- dOutput = '';
 
6289
 
6290
- for ( var i = 0; i < preset.length; i++ ) {
6291
- if ( i ) {
6292
- dOutput += ' ';
6293
  }
6294
 
6295
- var increment = preset[ i ] / 100 * DRAW_SIZE;
 
6296
 
6297
- xPointer += increment;
 
6298
 
6299
- dOutput += 'M' + ( +xPointer.toFixed( 4 ) ) + ',0';
 
 
 
6300
 
6301
- dOutput += 'V' + svgHeight;
 
6302
 
6303
- dOutput += 'H' + ( +( xPointer - increment ).toFixed( 4 ) );
 
 
6304
 
6305
- dOutput += 'V0Z';
 
6306
 
6307
- xPointer += separatorWidth;
6308
- }
6309
 
6310
- return dOutput;
6311
- }
6312
- };
6313
 
6314
- module.exports = presetsFactory;
 
 
 
 
6315
 
6316
- },{}],80:[function(require,module,exports){
6317
- var Schemes,
6318
- Stylesheet = require( 'elementor-editor-utils/stylesheet' ),
6319
- ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' );
6320
 
6321
- Schemes = function() {
6322
- var self = this,
6323
- stylesheet = new Stylesheet(),
6324
- schemes = {},
6325
- settings = {
6326
- selectorWrapperPrefix: '.elementor-widget-'
6327
- },
6328
- elements = {};
6329
 
6330
- var buildUI = function() {
6331
- elements.$previewHead.append( elements.$style );
6332
- };
6333
 
6334
- var initElements = function() {
6335
- elements.$style = Backbone.$( '<style>', {
6336
- id: 'elementor-style-scheme'
6337
- });
6338
 
6339
- elements.$previewHead = elementor.$previewContents.find( 'head' );
6340
- };
 
 
6341
 
6342
- var initSchemes = function() {
6343
- schemes = elementor.helpers.cloneObject( elementor.config.schemes.items );
6344
- };
6345
 
6346
- var fetchControlStyles = function( control, controlsStack, widgetType ) {
6347
- ControlsCSSParser.addControlStyleRules( stylesheet, control, controlsStack, function( control ) {
6348
- return self.getSchemeValue( control.scheme.type, control.scheme.value, control.scheme.key ).value;
6349
- }, [ '{{WRAPPER}}' ], [ settings.selectorWrapperPrefix + widgetType ] );
6350
- };
6351
 
6352
- var fetchWidgetControlsStyles = function( widget ) {
6353
- var widgetSchemeControls = self.getWidgetSchemeControls( widget );
 
6354
 
6355
- _.each( widgetSchemeControls, function( control ) {
6356
- fetchControlStyles( control, widgetSchemeControls, widget.widget_type );
6357
- } );
6358
- };
6359
 
6360
- var fetchAllWidgetsSchemesStyle = function() {
6361
- _.each( elementor.config.widgets, function( widget ) {
6362
- fetchWidgetControlsStyles( widget );
6363
- } );
 
 
6364
  };
6365
 
6366
- this.init = function() {
6367
- initElements();
6368
- buildUI();
6369
- initSchemes();
6370
 
6371
- return self;
6372
- };
6373
 
6374
- this.getWidgetSchemeControls = function( widget ) {
6375
- return _.filter( widget.controls, function( control ) {
6376
- return _.isObject( control.scheme );
6377
  } );
6378
- };
6379
 
6380
- this.getSchemes = function() {
6381
- return schemes;
6382
  };
6383
 
6384
- this.getEnabledSchemesTypes = function() {
6385
- return elementor.config.schemes.enabled_schemes;
6386
- };
6387
 
6388
- this.getScheme = function( schemeType ) {
6389
- return schemes[ schemeType ];
 
 
 
 
 
6390
  };
6391
 
6392
- this.getSchemeValue = function( schemeType, value, key ) {
6393
- if ( this.getEnabledSchemesTypes().indexOf( schemeType ) < 0 ) {
6394
- return false;
6395
- }
6396
 
6397
- var scheme = self.getScheme( schemeType ),
6398
- schemeValue = scheme.items[ value ];
 
6399
 
6400
- if ( key && _.isObject( schemeValue ) ) {
6401
- var clonedSchemeValue = elementor.helpers.cloneObject( schemeValue );
6402
 
6403
- clonedSchemeValue.value = schemeValue.value[ key ];
 
6404
 
6405
- return clonedSchemeValue;
 
6406
  }
 
6407
 
6408
- return schemeValue;
6409
- };
6410
-
6411
- this.printSchemesStyle = function() {
6412
- stylesheet.empty();
6413
-
6414
- fetchAllWidgetsSchemesStyle();
6415
-
6416
- elements.$style.text( stylesheet );
6417
- };
6418
 
6419
- this.resetSchemes = function( schemeName ) {
6420
- schemes[ schemeName ] = elementor.helpers.cloneObject( elementor.config.schemes.items[ schemeName ] );
6421
- };
6422
 
6423
- this.saveScheme = function( schemeName ) {
6424
- elementor.config.schemes.items[ schemeName ].items = elementor.helpers.cloneObject( schemes[ schemeName ].items );
6425
 
6426
- var itemsToSave = {};
 
6427
 
6428
- _.each( schemes[ schemeName ].items, function( item, key ) {
6429
- itemsToSave[ key ] = item.value;
6430
- } );
 
6431
 
6432
- NProgress.start();
6433
 
6434
- elementor.ajax.send( 'apply_scheme', {
6435
- data: {
6436
- scheme_name: schemeName,
6437
- data: JSON.stringify( itemsToSave )
6438
- },
6439
- success: function() {
6440
- NProgress.done();
6441
- }
6442
- } );
6443
- };
6444
 
6445
- this.setSchemeValue = function( schemeName, itemKey, value ) {
6446
- schemes[ schemeName ].items[ itemKey ].value = value;
6447
- };
6448
- };
6449
 
6450
- module.exports = new Schemes();
 
 
6451
 
6452
- },{"elementor-editor-utils/controls-css-parser":70,"elementor-editor-utils/stylesheet":81}],81:[function(require,module,exports){
6453
- ( function( $ ) {
 
 
 
 
 
 
6454
 
6455
- var Stylesheet = function() {
6456
- var self = this,
6457
- rules = {},
6458
- rawCSS = {},
6459
- devices = {};
 
6460
 
6461
- var getDeviceMaxValue = function( deviceName ) {
6462
- var deviceNames = Object.keys( devices ),
6463
- deviceNameIndex = deviceNames.indexOf( deviceName ),
6464
- nextIndex = deviceNameIndex + 1;
6465
 
6466
- if ( nextIndex >= deviceNames.length ) {
6467
- throw new RangeError( 'Max value for this device is out of range.' );
6468
- }
6469
 
6470
- return devices[ deviceNames[ nextIndex ] ] - 1;
6471
- };
 
6472
 
6473
- var queryToHash = function( query ) {
6474
- var hash = [];
 
6475
 
6476
- $.each( query, function( endPoint ) {
6477
- hash.push( endPoint + '_' + this );
6478
- } );
6479
 
6480
- return hash.join( '-' );
 
 
 
 
6481
  };
 
6482
 
6483
- var hashToQuery = function( hash ) {
6484
- var query = {};
 
6485
 
6486
- hash = hash.split( '-' ).filter( String );
 
 
6487
 
6488
- hash.forEach( function( singleQuery ) {
6489
- var queryParts = singleQuery.split( '_' ),
6490
- endPoint = queryParts[0],
6491
- deviceName = queryParts[1];
 
 
 
 
 
 
6492
 
6493
- query[ endPoint ] = 'max' === endPoint ? getDeviceMaxValue( deviceName ) : devices[ deviceName ];
6494
- } );
6495
 
6496
- return query;
6497
- };
 
 
6498
 
6499
- var addQueryHash = function( queryHash ) {
6500
- rules[ queryHash ] = {};
 
 
 
 
 
 
6501
 
6502
- var hashes = Object.keys( rules );
 
 
6503
 
6504
- if ( hashes.length < 2 ) {
6505
- return;
6506
- }
6507
 
6508
- // Sort the devices from narrowest to widest
6509
- hashes.sort( function( a, b ) {
6510
- if ( 'all' === a ) {
6511
- return -1;
6512
- }
6513
 
6514
- if ( 'all' === b ) {
6515
- return 1;
6516
- }
6517
 
6518
- var aQuery = hashToQuery( a ),
6519
- bQuery = hashToQuery( b );
 
 
 
 
6520
 
6521
- return bQuery.max - aQuery.max;
6522
- } );
6523
 
6524
- var sortedRules = {};
 
6525
 
6526
- hashes.forEach( function( deviceName ) {
6527
- sortedRules[ deviceName ] = rules[ deviceName ];
6528
- } );
6529
 
6530
- rules = sortedRules;
6531
- };
 
 
6532
 
6533
- var getQueryHashStyleFormat = function( queryHash ) {
6534
- var query = hashToQuery( queryHash ),
6535
- styleFormat = [];
6536
 
6537
- $.each( query, function( endPoint ) {
6538
- styleFormat.push( '(' + endPoint + '-width:' + this + 'px)' );
6539
- } );
 
6540
 
6541
- return '@media' + styleFormat.join( ' and ' );
6542
- };
 
6543
 
6544
- this.addDevice = function( deviceName, deviceValue ) {
6545
- devices[ deviceName ] = deviceValue;
6546
 
6547
- var deviceNames = Object.keys( devices );
6548
 
6549
- if ( deviceNames.length < 2 ) {
6550
- return self;
6551
- }
6552
 
6553
- // Sort the devices from narrowest to widest
6554
- deviceNames.sort( function( a, b ) {
6555
- return devices[ a ] - devices[ b ];
6556
- } );
 
 
 
6557
 
6558
- var sortedDevices = {};
 
6559
 
6560
- deviceNames.forEach( function( deviceName ) {
6561
- sortedDevices[ deviceName ] = devices[ deviceName ];
6562
- } );
 
6563
 
6564
- devices = sortedDevices;
 
 
6565
 
6566
- return self;
6567
- };
6568
 
6569
- this.addRawCSS = function( key, css ) {
6570
- rawCSS[ key ] = css;
6571
- };
6572
 
6573
- this.addRules = function( selector, styleRules, query ) {
6574
- var queryHash = 'all';
6575
 
6576
- if ( ! _.isEmpty( query ) ) {
6577
- queryHash = queryToHash( query );
6578
- }
6579
 
6580
- if ( ! rules[ queryHash ] ) {
6581
- addQueryHash( queryHash );
6582
- }
6583
 
6584
- if ( ! styleRules ) {
6585
- var parsedRules = selector.match( /[^{]+\{[^}]+}/g );
 
6586
 
6587
- $.each( parsedRules, function() {
6588
- var parsedRule = this.match( /([^{]+)\{([^}]+)}/ );
6589
 
6590
- if ( parsedRule ) {
6591
- self.addRules( parsedRule[1].trim(), parsedRule[2].trim(), query );
6592
- }
6593
- } );
6594
 
6595
- return;
6596
- }
 
6597
 
6598
- if ( ! rules[ queryHash ][ selector ] ) {
6599
- rules[ queryHash ][ selector ] = {};
6600
- }
6601
 
6602
- if ( 'string' === typeof styleRules ) {
6603
- styleRules = styleRules.split( ';' ).filter( String );
6604
 
6605
- var orderedRules = {};
 
6606
 
6607
- try {
6608
- $.each( styleRules, function() {
6609
- var property = this.split( /:(.*)?/ );
6610
 
6611
- orderedRules[ property[0].trim() ] = property[1].trim().replace( ';', '' );
6612
- } );
6613
- } catch ( error ) { // At least one of the properties is incorrect
6614
- return;
6615
- }
6616
 
6617
- styleRules = orderedRules;
6618
- }
6619
 
6620
- $.extend( rules[ queryHash ][ selector ], styleRules );
 
 
6621
 
6622
- return self;
6623
- };
 
 
 
 
6624
 
6625
- this.getRules = function() {
6626
- return rules;
6627
- };
6628
 
6629
- this.empty = function() {
6630
- rules = {};
6631
- rawCSS = {};
6632
- };
6633
 
6634
- this.toString = function() {
6635
- var styleText = '';
6636
 
6637
- $.each( rules, function( queryHash ) {
6638
- var deviceText = Stylesheet.parseRules( this );
 
6639
 
6640
- if ( 'all' !== queryHash ) {
6641
- deviceText = getQueryHashStyleFormat( queryHash ) + '{' + deviceText + '}';
6642
- }
6643
 
6644
- styleText += deviceText;
6645
- } );
 
6646
 
6647
- $.each( rawCSS, function() {
6648
- styleText += this;
6649
- } );
 
 
6650
 
6651
- return styleText;
 
 
 
 
 
 
 
6652
  };
6653
- };
6654
 
6655
- Stylesheet.parseRules = function( rules ) {
6656
- var parsedRules = '';
6657
 
6658
- $.each( rules, function( selector ) {
6659
- var selectorContent = Stylesheet.parseProperties( this );
6660
-
6661
- if ( selectorContent ) {
6662
- parsedRules += selector + '{' + selectorContent + '}';
6663
- }
6664
- } );
6665
 
6666
- return parsedRules;
6667
- };
 
6668
 
6669
- Stylesheet.parseProperties = function( properties ) {
6670
- var parsedProperties = '';
 
 
 
 
 
 
6671
 
6672
- $.each( properties, function( propertyKey ) {
6673
- if ( this ) {
6674
- parsedProperties += propertyKey + ':' + this + ';';
6675
- }
6676
- } );
6677
 
6678
- return parsedProperties;
6679
- };
 
6680
 
6681
- module.exports = Stylesheet;
6682
- } )( jQuery );
 
6683
 
6684
- },{}],82:[function(require,module,exports){
6685
- var Module = require( 'elementor-utils/module' ),
6686
- Validator;
 
 
 
 
6687
 
6688
- Validator = Module.extend( {
6689
- errors: [],
6690
 
6691
- __construct: function( settings ) {
6692
- var customValidationMethod = settings.customValidationMethod;
 
 
 
 
6693
 
6694
- if ( customValidationMethod ) {
6695
- this.validationMethod = customValidationMethod;
6696
- }
6697
  },
6698
 
6699
- isValid: function() {
6700
- var validationErrors = this.validationMethod.apply( this, arguments );
 
6701
 
6702
- if ( validationErrors.length ) {
6703
- this.errors = validationErrors;
 
 
 
6704
 
6705
- return false;
 
6706
  }
6707
 
6708
- return true;
 
 
 
 
 
6709
  },
6710
 
6711
- validationMethod: function() {
6712
- return [];
6713
- }
6714
- } );
6715
 
6716
- module.exports = Validator;
 
6717
 
6718
- },{"elementor-utils/module":122}],83:[function(require,module,exports){
6719
- var AddSectionView;
 
 
6720
 
6721
- AddSectionView = Marionette.ItemView.extend( {
6722
- template: Marionette.TemplateCache.get( '#tmpl-elementor-add-section' ),
 
 
 
 
 
 
6723
 
6724
- attributes: {
6725
- 'data-view': 'choose-action'
6726
- },
6727
 
6728
- ui: {
6729
- addNewSection: '.elementor-add-new-section',
6730
- closeButton: '.elementor-add-section-close',
6731
- addSectionButton: '.elementor-add-section-button',
6732
- addTemplateButton: '.elementor-add-template-button',
6733
- selectPreset: '.elementor-select-preset',
6734
- presets: '.elementor-preset'
6735
- },
6736
 
6737
- events: {
6738
- 'click @ui.addSectionButton': 'onAddSectionButtonClick',
6739
- 'click @ui.addTemplateButton': 'onAddTemplateButtonClick',
6740
- 'click @ui.closeButton': 'onCloseButtonClick',
6741
- 'click @ui.presets': 'onPresetSelected'
6742
- },
6743
 
6744
- className: function() {
6745
- return 'elementor-add-section elementor-visible-desktop';
6746
- },
6747
 
6748
- addSection: function( properties, options ) {
6749
- return elementor.sections.currentView.addSection( properties, options );
6750
- },
6751
 
6752
- setView: function( view ) {
6753
- this.$el.attr( 'data-view', view );
6754
- },
6755
 
6756
- showSelectPresets: function() {
6757
- this.setView( 'select-preset' );
6758
  },
6759
 
6760
- closeSelectPresets: function() {
6761
- this.setView( 'choose-action' );
6762
- },
6763
 
6764
- getTemplatesModalOptions: function() {
6765
- return {
6766
- onReady: function() {
6767
- elementor.templates.showTemplates();
6768
- }
6769
- };
6770
- },
6771
 
6772
- onAddSectionButtonClick: function() {
6773
- this.showSelectPresets();
 
 
 
6774
  },
6775
 
6776
- onAddTemplateButtonClick: function() {
6777
- elementor.templates.startModal( this.getTemplatesModalOptions() );
6778
  },
6779
 
6780
- onRender: function() {
6781
- this.$el.html5Droppable( {
6782
- axis: [ 'vertical' ],
6783
- groups: [ 'elementor-element' ],
6784
- placeholder: false,
6785
- currentElementClass: 'elementor-html5dnd-current-element',
6786
- hasDraggingOnChildClass: 'elementor-dragging-on-child',
6787
- onDropping: _.bind( this.onDropping, this )
6788
- } );
6789
  },
6790
 
6791
- onPresetSelected: function( event ) {
6792
- this.closeSelectPresets();
 
6793
 
6794
- var selectedStructure = event.currentTarget.dataset.structure,
6795
- parsedStructure = elementor.presetsFactory.getParsedStructure( selectedStructure ),
6796
- elements = [],
6797
- loopIndex;
6798
 
6799
- for ( loopIndex = 0; loopIndex < parsedStructure.columnsCount; loopIndex++ ) {
6800
- elements.push( {
6801
- id: elementor.helpers.getUniqueID(),
6802
- elType: 'column',
6803
- settings: {},
6804
- elements: []
6805
- } );
6806
- }
6807
 
6808
- var newSection = this.addSection( { elements: elements } );
 
 
6809
 
6810
- newSection.setStructure( selectedStructure );
6811
- newSection.redefineLayout();
6812
  },
6813
 
6814
- onDropping: function() {
6815
- this.addSection().addElementFromPanel();
6816
- }
6817
- } );
6818
-
6819
- module.exports = AddSectionView;
6820
 
6821
- },{}],84:[function(require,module,exports){
6822
- var BaseAddSectionView = require( 'elementor-views/add-section/base' );
6823
 
6824
- module.exports = BaseAddSectionView.extend( {
6825
- id: 'elementor-add-new-section',
6826
 
6827
- onCloseButtonClick: function() {
6828
- this.closeSelectPresets();
6829
- }
6830
- } );
6831
 
6832
- },{"elementor-views/add-section/base":83}],85:[function(require,module,exports){
6833
- var BaseAddSectionView = require( 'elementor-views/add-section/base' );
6834
 
6835
- module.exports = BaseAddSectionView.extend( {
6836
- options: {
6837
- atIndex: null
6838
  },
6839
 
6840
- className: function() {
6841
- return BaseAddSectionView.prototype.className.apply( this, arguments ) + ' elementor-add-section-inline';
6842
- },
6843
 
6844
- addSection: function( properties, options ) {
6845
- options = options || {};
6846
 
6847
- options.at = this.getOption( 'atIndex' );
 
6848
 
6849
- return BaseAddSectionView.prototype.addSection.call( this, properties, options );
6850
- },
 
6851
 
6852
- getTemplatesModalOptions: function() {
6853
- return _.extend( BaseAddSectionView.prototype.getTemplatesModalOptions.apply( this, arguments ), {
6854
- importOptions: {
6855
- at: this.getOption( 'atIndex' )
6856
  }
 
 
6857
  } );
6858
- },
6859
 
6860
- fadeToDeath: function() {
6861
- var self = this;
 
 
6862
 
6863
- self.$el.slideUp( function() {
6864
- self.destroy();
 
 
 
 
 
 
 
 
 
 
 
6865
  } );
6866
  },
6867
 
6868
- onCloseButtonClick: function() {
6869
- this.fadeToDeath();
6870
- },
6871
 
6872
- onPresetSelected: function() {
6873
- BaseAddSectionView.prototype.onPresetSelected.apply( this, arguments );
6874
 
6875
- this.destroy();
 
6876
  },
6877
 
6878
- onAddTemplateButtonClick: function() {
6879
- BaseAddSectionView.prototype.onAddTemplateButtonClick.apply( this, arguments );
6880
 
6881
- this.destroy();
 
 
 
6882
  },
6883
 
6884
- onDropping: function() {
6885
- BaseAddSectionView.prototype.onDropping.apply( this, arguments );
6886
-
6887
- this.destroy();
6888
- }
6889
- } );
6890
 
6891
- },{"elementor-views/add-section/base":83}],86:[function(require,module,exports){
6892
- module.exports = Marionette.CompositeView.extend( {
 
 
 
6893
 
6894
- getBehavior: function( name ) {
6895
- return this._behaviors[ Object.keys( this.behaviors() ).indexOf( name ) ];
6896
  },
6897
 
6898
- addChildModel: function( model, options ) {
6899
- return this.collection.add( model, options, true );
6900
  },
6901
 
6902
- addChildElement: function( itemData, options ) {
6903
- options = options || {};
 
6904
 
6905
- var myChildType = this.getChildType(),
6906
- elType = itemData.get ? itemData.get( 'elType' ) : itemData.elType;
 
 
 
 
6907
 
6908
- if ( -1 === myChildType.indexOf( elType ) ) {
6909
- delete options.at;
6910
 
6911
- return this.children.last().addChildElement( itemData, options );
6912
- }
6913
 
6914
- var newModel = this.addChildModel( itemData, options ),
6915
- newView = this.children.findByModel( newModel );
6916
 
6917
- newView.edit();
 
 
6918
 
6919
- return newView;
6920
- }
6921
- } );
6922
 
6923
- },{}],87:[function(require,module,exports){
6924
- var BaseSettingsModel = require( 'elementor-models/base-settings' ),
6925
- ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' ),
6926
- Validator = require( 'elementor-editor-utils/validator' ),
6927
- BaseContainer = require( 'elementor-views/base-container' ),
6928
- BaseElementView;
6929
 
6930
- BaseElementView = BaseContainer.extend( {
6931
- tagName: 'div',
 
6932
 
6933
- controlsCSSParser: null,
 
 
 
 
6934
 
6935
- toggleEditTools: true,
 
 
6936
 
6937
- className: function() {
6938
- return this.getElementUniqueID();
 
 
 
 
 
6939
  },
6940
 
6941
- attributes: function() {
6942
- var type = this.model.get( 'elType' );
6943
 
6944
- if ( 'widget' === type ) {
6945
- type = this.model.get( 'widgetType' );
6946
- }
6947
 
6948
- return {
6949
- 'data-id': this.getID(),
6950
- 'data-element_type': type
6951
- };
6952
- },
6953
 
6954
- ui: function() {
6955
- return {
6956
- triggerButton: '> .elementor-element-overlay .elementor-editor-element-trigger',
6957
- duplicateButton: '> .elementor-element-overlay .elementor-editor-element-duplicate',
6958
- removeButton: '> .elementor-element-overlay .elementor-editor-element-remove',
6959
- saveButton: '> .elementor-element-overlay .elementor-editor-element-save',
6960
- settingsList: '> .elementor-element-overlay .elementor-editor-element-settings',
6961
- addButton: '> .elementor-element-overlay .elementor-editor-element-add'
6962
- };
6963
  },
6964
 
6965
- behaviors: function() {
6966
- var behaviors = {};
6967
-
6968
- return elementor.hooks.applyFilters( 'elements/base/behaviors', behaviors, this );
6969
  },
6970
 
6971
- getBehavior: function( name ) {
6972
- return this._behaviors[ Object.keys( this.behaviors() ).indexOf( name ) ];
6973
  },
6974
 
6975
- events: function() {
6976
- return {
6977
- 'click @ui.removeButton': 'onClickRemove',
6978
- 'click @ui.saveButton': 'onClickSave',
6979
- 'click @ui.duplicateButton': 'onClickDuplicate',
6980
- 'click @ui.triggerButton': 'onClickEdit'
6981
- };
6982
- },
6983
 
6984
- getElementType: function() {
6985
- return this.model.get( 'elType' );
6986
  },
6987
 
6988
- getChildType: function() {
6989
- return elementor.helpers.getElementChildType( this.getElementType() );
6990
- },
6991
 
6992
- getChildView: function( model ) {
6993
- var ChildView,
6994
- elType = model.get( 'elType' );
6995
 
6996
- if ( 'section' === elType ) {
6997
- ChildView = require( 'elementor-views/section' );
6998
- } else if ( 'column' === elType ) {
6999
- ChildView = require( 'elementor-views/column' );
7000
- } else {
7001
- ChildView = elementor.modules.WidgetView;
7002
  }
7003
 
7004
- return elementor.hooks.applyFilters( 'element/view', ChildView, model, this );
7005
  },
7006
 
7007
- templateHelpers: function() {
7008
- return {
7009
- elementModel: this.model,
7010
- editModel: this.getEditModel()
7011
- };
7012
- },
7013
 
7014
- getTemplateType: function() {
7015
- return 'js';
7016
  },
7017
 
7018
- getEditModel: function() {
7019
- return this.model;
7020
- },
7021
 
7022
- initialize: function() {
7023
- // grab the child collection from the parent model
7024
- // so that we can render the collection as children
7025
- // of this parent element
7026
- this.collection = this.model.get( 'elements' );
7027
 
7028
- if ( this.collection ) {
7029
- this.listenTo( this.collection, 'add remove reset', this.onCollectionChanged, this );
7030
- }
7031
 
7032
- var editModel = this.getEditModel();
7033
 
7034
- this.listenTo( editModel.get( 'settings' ), 'change', this.onSettingsChanged, this );
7035
- this.listenTo( editModel.get( 'editSettings' ), 'change', this.onEditSettingsChanged, this );
7036
 
7037
- this.initRemoveDialog();
7038
 
7039
- this.initControlsCSSParser();
7040
  },
7041
 
7042
- edit: function() {
7043
- elementor.getPanelView().openEditor( this.getEditModel(), this );
 
 
 
 
 
 
 
 
7044
  },
7045
 
7046
- addElementFromPanel: function( options ) {
7047
- var elementView = elementor.channels.panelElements.request( 'element:selected' );
 
 
7048
 
7049
- var itemData = {
7050
- id: elementor.helpers.getUniqueID(),
7051
- elType: elementView.model.get( 'elType' )
7052
- };
7053
 
7054
- if ( 'widget' === itemData.elType ) {
7055
- itemData.widgetType = elementView.model.get( 'widgetType' );
7056
- } else if ( 'section' === itemData.elType ) {
7057
- itemData.elements = [];
7058
- itemData.isInner = true;
7059
- } else {
7060
- return;
7061
- }
7062
 
7063
- var customData = elementView.model.get( 'custom' );
 
7064
 
7065
- if ( customData ) {
7066
- _.extend( itemData, customData );
7067
- }
 
 
 
 
 
 
 
 
 
 
7068
 
7069
- var newView = this.addChildElement( itemData, options );
 
7070
 
7071
- if ( 'section' === newView.getElementType() && newView.isInner() ) {
7072
- newView.addEmptyColumn();
7073
- }
 
 
 
 
 
 
 
7074
 
 
 
7075
  },
7076
 
7077
- addControlValidator: function( controlName, validationCallback ) {
7078
- validationCallback = _.bind( validationCallback, this );
 
 
 
 
7079
 
7080
- var validator = new Validator( { customValidationMethod: validationCallback } ),
7081
- validators = this.getEditModel().get( 'settings' ).validators;
 
 
 
 
 
7082
 
7083
- if ( ! validators[ controlName ] ) {
7084
- validators[ controlName ] = [];
7085
  }
7086
 
7087
- validators[ controlName ].push( validator );
 
 
7088
  },
7089
 
7090
- isCollectionFilled: function() {
7091
- return false;
7092
  },
7093
 
7094
- isInner: function() {
7095
- return !! this.model.get( 'isInner' );
7096
  },
7097
 
7098
- initRemoveDialog: function() {
7099
- var removeDialog;
 
 
7100
 
7101
- this.getRemoveDialog = function() {
7102
- if ( ! removeDialog ) {
7103
- var elementTitle = this.model.getTitle();
7104
 
7105
- removeDialog = elementor.dialogsManager.createWidget( 'confirm', {
7106
- message: elementor.translate( 'dialog_confirm_delete', [ elementTitle.toLowerCase() ] ),
7107
- headerMessage: elementor.translate( 'delete_element', [ elementTitle ] ),
7108
- strings: {
7109
- confirm: elementor.translate( 'delete' ),
7110
- cancel: elementor.translate( 'cancel' )
7111
- },
7112
- defaultOption: 'confirm',
7113
- onConfirm: _.bind( function() {
7114
- var parent = this._parent;
7115
 
7116
- parent.isManualRemoving = true;
 
7117
 
7118
- this.model.destroy();
7119
 
7120
- parent.isManualRemoving = false;
7121
- }, this )
7122
- } );
7123
- }
7124
 
7125
- return removeDialog;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7126
  };
7127
- },
7128
 
7129
- initControlsCSSParser: function() {
7130
- this.controlsCSSParser = new ControlsCSSParser( { id: this.model.cid } );
7131
  },
7132
 
7133
- enqueueFonts: function() {
7134
- var editModel = this.getEditModel(),
7135
- settings = editModel.get( 'settings' );
7136
-
7137
- _.each( settings.getFontControls(), _.bind( function( control ) {
7138
- var fontFamilyName = editModel.getSetting( control.name );
7139
-
7140
- if ( _.isEmpty( fontFamilyName ) ) {
7141
- return;
7142
- }
7143
 
7144
- elementor.helpers.enqueueFont( fontFamilyName );
7145
- }, this ) );
7146
  },
7147
 
7148
- renderStyles: function( settings ) {
7149
- var self = this;
7150
- if ( ! settings ) {
7151
- settings = this.getEditModel().get( 'settings' );
7152
- }
7153
 
7154
- self.controlsCSSParser.stylesheet.empty();
 
7155
 
7156
- self.controlsCSSParser.addStyleRules( settings.getStyleControls(), settings.attributes, self.getEditModel().get( 'settings' ).controls, [ /{{ID}}/g, /{{WRAPPER}}/g ], [ self.getID(), '#elementor .' + self.getElementUniqueID() ] );
7157
 
7158
- self.controlsCSSParser.addStyleToDocument();
7159
 
7160
- var extraCSS = elementor.hooks.applyFilters( 'editor/style/styleText', '', this );
 
7161
 
7162
- if ( extraCSS ) {
7163
- self.controlsCSSParser.elements.$stylesheetElement.append( extraCSS );
7164
- }
7165
  },
7166
 
7167
- renderCustomClasses: function() {
7168
- var self = this;
7169
 
7170
- self.$el.addClass( 'elementor-element' );
 
7171
 
7172
- var settings = self.getEditModel().get( 'settings' ),
7173
- classControls = settings.getClassControls();
 
7174
 
7175
- // Remove all previous classes
7176
- _.each( classControls, function( control ) {
7177
- var previousClassValue = settings.previous( control.name );
7178
 
7179
- if ( control.classes_dictionary ) {
7180
- if ( undefined !== control.classes_dictionary[ previousClassValue ] ) {
7181
- previousClassValue = control.classes_dictionary[ previousClassValue ];
7182
- }
7183
- }
7184
 
7185
- self.$el.removeClass( control.prefix_class + previousClassValue );
7186
- } );
7187
 
7188
- // Add new classes
7189
- _.each( classControls, function( control ) {
7190
- var value = settings.attributes[ control.name ],
7191
- classValue = value;
7192
 
7193
- if ( control.classes_dictionary ) {
7194
- if ( undefined !== control.classes_dictionary[ value ] ) {
7195
- classValue = control.classes_dictionary[ value ];
7196
- }
7197
- }
7198
 
7199
- var isVisible = elementor.helpers.isActiveControl( control, settings.attributes );
7200
 
7201
- if ( isVisible && ! _.isEmpty( classValue ) ) {
7202
- self.$el
7203
- .addClass( control.prefix_class + classValue )
7204
- .addClass( _.result( self, 'className' ) );
7205
  }
7206
  } );
7207
  },
7208
 
7209
- renderCustomElementID: function() {
7210
- var customElementID = this.getEditModel().get( 'settings' ).get( '_element_id' );
 
 
7211
 
7212
- this.$el.attr( 'id', customElementID );
7213
  },
7214
 
7215
- getModelForRender: function() {
7216
- return elementor.hooks.applyFilters( 'element/templateHelpers/editModel', this.getEditModel(), this );
 
 
 
7217
  },
7218
 
7219
- renderUIOnly: function() {
7220
- var editModel = this.getModelForRender();
 
7221
 
7222
- this.renderStyles( editModel.get( 'settings' ) );
7223
- this.renderCustomClasses();
7224
- this.renderCustomElementID();
7225
- this.enqueueFonts();
7226
- },
7227
-
7228
- renderUI: function() {
7229
- this.renderStyles();
7230
- this.renderCustomClasses();
7231
- this.renderCustomElementID();
7232
- this.enqueueFonts();
7233
- },
7234
-
7235
- runReadyTrigger: function() {
7236
- _.defer( _.bind( function() {
7237
- elementorFrontend.elementsHandler.runReadyTrigger( this.$el );
7238
- }, this ) );
7239
- },
7240
-
7241
- getID: function() {
7242
- return this.model.get( 'id' );
7243
- },
7244
-
7245
- getElementUniqueID: function() {
7246
- return 'elementor-element-' + this.getID();
7247
  },
7248
 
7249
- duplicate: function() {
7250
- this.trigger( 'request:duplicate' );
7251
- },
7252
 
7253
- confirmRemove: function() {
7254
- this.getRemoveDialog().show();
7255
  },
7256
 
7257
- renderOnChange: function( settings ) {
7258
- // Make sure is correct model
7259
- if ( settings instanceof BaseSettingsModel ) {
7260
- var hasChanged = settings.hasChanged(),
7261
- isContentChanged = ! hasChanged,
7262
- isRenderRequired = ! hasChanged;
7263
 
7264
- _.each( settings.changedAttributes(), function( settingValue, settingKey ) {
7265
- var control = settings.getControl( settingKey );
7266
 
7267
- if ( ! control ) {
7268
- isRenderRequired = true;
7269
 
7270
- return;
7271
- }
7272
 
7273
- if ( 'none' !== control.render_type ) {
7274
- isRenderRequired = true;
7275
- }
 
 
 
 
 
 
 
7276
 
7277
- if ( -1 !== [ 'none', 'ui' ].indexOf( control.render_type ) ) {
7278
- return;
7279
- }
7280
 
7281
- if ( 'template' === control.render_type || ! settings.isStyleControl( settingKey ) && ! settings.isClassControl( settingKey ) && '_element_id' !== settingKey ) {
7282
- isContentChanged = true;
7283
  }
7284
- } );
7285
-
7286
- if ( ! isRenderRequired ) {
7287
- return;
7288
- }
7289
 
7290
- if ( ! isContentChanged ) {
7291
- this.renderUIOnly();
7292
- return;
7293
  }
7294
- }
7295
-
7296
- // Re-render the template
7297
- var templateType = this.getTemplateType(),
7298
- editModel = this.getEditModel();
7299
-
7300
- if ( 'js' === templateType ) {
7301
- this.getEditModel().setHtmlCache();
7302
- this.render();
7303
- editModel.renderOnLeave = true;
7304
- } else {
7305
- editModel.renderRemoteServer();
7306
- }
7307
  },
7308
 
7309
- onRender: function() {
7310
- var self = this;
7311
-
7312
- self.renderUI();
7313
 
7314
- self.runReadyTrigger();
7315
 
7316
- if ( self.toggleEditTools ) {
7317
- self.ui.settingsList.hoverIntent( function() {
7318
- self.ui.triggerButton.addClass( 'elementor-active' );
7319
- }, function() {
7320
- self.ui.triggerButton.removeClass( 'elementor-active' );
7321
- }, { timeout: 500 } );
7322
  }
7323
  },
7324
 
7325
- onCollectionChanged: function() {
7326
- elementor.setFlagEditorChange( true );
7327
- },
7328
-
7329
- onEditSettingsChanged: function( changedModel ) {
7330
- this.renderOnChange( changedModel );
7331
- },
7332
-
7333
- onSettingsChanged: function( changedModel ) {
7334
- elementor.setFlagEditorChange( true );
7335
-
7336
- this.renderOnChange( changedModel );
7337
- },
7338
 
7339
- onClickEdit: function( event ) {
7340
- if ( ! Backbone.$( event.target ).closest( '.elementor-clickable' ).length ) {
7341
- event.preventDefault();
7342
 
7343
- event.stopPropagation();
7344
  }
7345
 
7346
- var activeMode = elementor.channels.dataEditMode.request( 'activeMode' );
7347
-
7348
- if ( 'edit' !== activeMode ) {
7349
- return;
7350
  }
7351
 
7352
- this.edit();
7353
- },
7354
-
7355
- onClickDuplicate: function( event ) {
7356
- event.preventDefault();
7357
- event.stopPropagation();
7358
-
7359
- this.duplicate();
7360
- },
7361
-
7362
- onClickRemove: function( event ) {
7363
- event.preventDefault();
7364
- event.stopPropagation();
7365
-
7366
- this.confirmRemove();
7367
- },
7368
-
7369
- onClickSave: function( event ) {
7370
- event.preventDefault();
7371
-
7372
- var model = this.model;
7373
-
7374
- elementor.templates.startModal( {
7375
- onReady: function() {
7376
- elementor.templates.getLayout().showSaveTemplateView( model );
7377
  }
7378
- } );
7379
- },
7380
 
7381
- onDestroy: function() {
7382
- this.controlsCSSParser.removeStyleFromDocument();
7383
  }
7384
  } );
7385
 
7386
- module.exports = BaseElementView;
7387
 
7388
- },{"elementor-editor-utils/controls-css-parser":70,"elementor-editor-utils/validator":82,"elementor-models/base-settings":58,"elementor-views/base-container":86,"elementor-views/column":89,"elementor-views/section":119}],88:[function(require,module,exports){
7389
- var SectionView = require( 'elementor-views/section' ),
7390
- BaseContainer = require( 'elementor-views/base-container' ),
7391
- BaseSectionsContainerView;
7392
 
7393
- BaseSectionsContainerView = BaseContainer.extend( {
7394
- childView: SectionView,
7395
 
7396
- behaviors: function() {
7397
- var behaviors = {
7398
- Sortable: {
7399
- behaviorClass: require( 'elementor-behaviors/sortable' ),
7400
- elChildType: 'section'
7401
- },
7402
- HandleDuplicate: {
7403
- behaviorClass: require( 'elementor-behaviors/handle-duplicate' )
7404
- },
7405
- HandleAddMode: {
7406
- behaviorClass: require( 'elementor-behaviors/duplicate' )
7407
- }
7408
  };
 
7409
 
7410
- return elementor.hooks.applyFilters( 'elements/base-section-container/behaviors', behaviors, this );
 
 
 
 
7411
  },
7412
 
7413
- getSortableOptions: function() {
7414
  return {
7415
- handle: '> .elementor-element-overlay .elementor-editor-section-settings .elementor-editor-element-trigger',
7416
- items: '> .elementor-section'
7417
  };
7418
  },
7419
 
7420
- getChildType: function() {
7421
- return [ 'section' ];
7422
  },
7423
 
7424
- isCollectionFilled: function() {
7425
- return false;
 
 
7426
  },
7427
 
7428
  initialize: function() {
7429
- this
7430
- .listenTo( this.collection, 'add remove reset', this.onCollectionChanged )
7431
- .listenTo( elementor.channels.panelElements, 'element:drag:start', this.onPanelElementDragStart )
7432
- .listenTo( elementor.channels.panelElements, 'element:drag:end', this.onPanelElementDragEnd );
7433
  },
7434
 
7435
- addSection: function( properties, options ) {
7436
- var newSection = {
7437
- id: elementor.helpers.getUniqueID(),
7438
- elType: 'section',
7439
- settings: {},
7440
- elements: []
7441
- };
7442
 
7443
- if ( properties ) {
7444
- _.extend( newSection, properties );
7445
  }
7446
 
7447
- var newModel = this.addChildModel( newSection, options );
7448
 
7449
- return this.children.findByModelCid( newModel.cid );
7450
  },
7451
 
7452
- onCollectionChanged: function() {
7453
- elementor.setFlagEditorChange( true );
7454
- },
7455
-
7456
- onPanelElementDragStart: function() {
7457
- elementor.helpers.disableElementEvents( this.$el.find( 'iframe' ) );
7458
  },
7459
 
7460
- onPanelElementDragEnd: function() {
7461
- elementor.helpers.enableElementEvents( this.$el.find( 'iframe' ) );
7462
- }
7463
- } );
7464
-
7465
- module.exports = BaseSectionsContainerView;
7466
-
7467
- },{"elementor-behaviors/duplicate":1,"elementor-behaviors/handle-duplicate":2,"elementor-behaviors/sortable":5,"elementor-views/base-container":86,"elementor-views/section":119}],89:[function(require,module,exports){
7468
- var BaseElementView = require( 'elementor-views/base-element' ),
7469
- ElementEmptyView = require( 'elementor-views/element-empty' ),
7470
- ColumnView;
7471
-
7472
- ColumnView = BaseElementView.extend( {
7473
- template: Marionette.TemplateCache.get( '#tmpl-elementor-element-column-content' ),
7474
-
7475
- emptyView: ElementEmptyView,
7476
-
7477
- childViewContainer: '> .elementor-column-wrap > .elementor-widget-wrap',
7478
 
7479
- behaviors: function() {
7480
- var behaviors = {
7481
- Sortable: {
7482
- behaviorClass: require( 'elementor-behaviors/sortable' ),
7483
- elChildType: 'widget'
7484
- },
7485
- Resizable: {
7486
- behaviorClass: require( 'elementor-behaviors/resizable' )
7487
- },
7488
- HandleDuplicate: {
7489
- behaviorClass: require( 'elementor-behaviors/handle-duplicate' )
7490
- },
7491
- HandleAddMode: {
7492
- behaviorClass: require( 'elementor-behaviors/duplicate' )
7493
- }
7494
- };
7495
 
7496
- return elementor.hooks.applyFilters( 'elements/column/behaviors', behaviors, this );
7497
- },
7498
 
7499
- className: function() {
7500
- var classes = BaseElementView.prototype.className.apply( this, arguments ),
7501
- type = this.isInner() ? 'inner' : 'top';
7502
 
7503
- return classes + ' elementor-column elementor-' + type + '-column';
 
 
7504
  },
7505
 
7506
- tagName: function() {
7507
- return this.model.getSetting( 'html_tag' ) || 'div';
7508
  },
7509
 
7510
- ui: function() {
7511
- var ui = BaseElementView.prototype.ui.apply( this, arguments );
7512
 
7513
- ui.columnInner = '> .elementor-column-wrap';
 
7514
 
7515
- ui.percentsTooltip = '> .elementor-element-overlay .elementor-column-percents-tooltip';
 
 
 
 
7516
 
7517
- return ui;
 
 
7518
  },
7519
 
7520
- triggers: {
7521
- 'click @ui.addButton': 'click:new'
7522
  },
7523
 
7524
- initialize: function() {
7525
- BaseElementView.prototype.initialize.apply( this, arguments );
7526
-
7527
- this.addControlValidator( '_inline_size', this.onEditorInlineSizeInputChange );
7528
  },
7529
 
7530
- isDroppingAllowed: function() {
7531
- var elementView = elementor.channels.panelElements.request( 'element:selected' ),
7532
- elType = elementView.model.get( 'elType' );
7533
-
7534
- if ( 'section' === elType ) {
7535
- return ! this.isInner();
7536
- }
7537
-
7538
- return 'widget' === elType;
7539
  },
7540
 
7541
- getPercentsForDisplay: function() {
7542
- var inlineSize = +this.model.getSetting( '_inline_size' ) || this.getPercentSize();
7543
 
7544
- return inlineSize.toFixed( 1 ) + '%';
7545
- },
7546
 
7547
- changeSizeUI: function() {
7548
- var self = this,
7549
- columnSize = self.model.getSetting( '_column_size' );
7550
 
7551
- self.$el.attr( 'data-col', columnSize );
7552
 
7553
- _.defer( function() { // Wait for the column size to be applied
7554
- if ( self.ui.percentsTooltip ) {
7555
- self.ui.percentsTooltip.text( self.getPercentsForDisplay() );
7556
- }
7557
- } );
7558
  },
7559
 
7560
- getPercentSize: function( size ) {
7561
- if ( ! size ) {
7562
- size = this.el.getBoundingClientRect().width;
7563
- }
7564
-
7565
- return +( size / this.$el.parent().width() * 100 ).toFixed( 3 );
7566
  },
7567
 
7568
- getSortableOptions: function() {
7569
- return {
7570
- connectWith: '.elementor-widget-wrap',
7571
- items: '> .elementor-element'
7572
- };
7573
  },
7574
 
7575
- changeChildContainerClasses: function() {
7576
- var emptyClass = 'elementor-element-empty',
7577
- populatedClass = 'elementor-element-populated';
7578
-
7579
- if ( this.collection.isEmpty() ) {
7580
- this.ui.columnInner.removeClass( populatedClass ).addClass( emptyClass );
7581
- } else {
7582
- this.ui.columnInner.removeClass( emptyClass ).addClass( populatedClass );
7583
- }
7584
- },
7585
 
7586
- // Events
7587
- onCollectionChanged: function() {
7588
- BaseElementView.prototype.onCollectionChanged.apply( this, arguments );
7589
 
7590
- this.changeChildContainerClasses();
7591
  },
7592
 
7593
- onRender: function() {
7594
- var self = this;
7595
-
7596
- BaseElementView.prototype.onRender.apply( self, arguments );
 
 
7597
 
7598
- self.changeChildContainerClasses();
7599
 
7600
- self.changeSizeUI();
 
 
7601
 
7602
- self.$el.html5Droppable( {
7603
- items: ' > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add',
7604
- axis: [ 'vertical' ],
7605
- groups: [ 'elementor-element' ],
7606
- isDroppingAllowed: _.bind( self.isDroppingAllowed, self ),
7607
- currentElementClass: 'elementor-html5dnd-current-element',
7608
- placeholderClass: 'elementor-sortable-placeholder elementor-widget-placeholder',
7609
- hasDraggingOnChildClass: 'elementor-dragging-on-child',
7610
- onDropping: function( side, event ) {
7611
- event.stopPropagation();
7612
 
7613
- var newIndex = Backbone.$( this ).index();
 
 
 
7614
 
7615
- if ( 'bottom' === side ) {
7616
- newIndex++;
7617
- }
 
7618
 
7619
- self.addElementFromPanel( { at: newIndex } );
7620
- }
7621
  } );
7622
  },
7623
 
7624
- onSettingsChanged: function( settings ) {
7625
- BaseElementView.prototype.onSettingsChanged.apply( this, arguments );
7626
 
7627
- var changedAttributes = settings.changedAttributes();
 
 
7628
 
7629
- if ( '_column_size' in changedAttributes || '_inline_size' in changedAttributes ) {
7630
- this.changeSizeUI();
7631
  }
7632
- },
7633
 
7634
- onEditorInlineSizeInputChange: function( newValue, oldValue ) {
7635
- var errors = [],
7636
- columnSize = this.model.getSetting( '_column_size' );
7637
 
7638
- // If there's only one column
7639
- if ( 100 === columnSize ) {
7640
- errors.push( 'Could not resize one column' );
7641
 
7642
- return errors;
 
 
 
 
 
7643
  }
7644
 
7645
- if ( ! oldValue ) {
7646
- oldValue = columnSize;
7647
- }
7648
 
7649
- try {
7650
- this._parent.resizeChild( this, +oldValue, +newValue );
7651
- } catch ( e ) {
7652
- if ( e.message === this._parent.errors.columnWidthTooLarge ) {
7653
- errors.push( e.message );
7654
- }
 
 
 
 
7655
  }
7656
 
7657
- return errors;
7658
  }
7659
  } );
7660
 
7661
- module.exports = ColumnView;
7662
-
7663
- },{"elementor-behaviors/duplicate":1,"elementor-behaviors/handle-duplicate":2,"elementor-behaviors/resizable":4,"elementor-behaviors/sortable":5,"elementor-views/base-element":87,"elementor-views/element-empty":117}],90:[function(require,module,exports){
7664
- var ControlsStack;
7665
 
7666
- ControlsStack = Marionette.CompositeView.extend( {
7667
- className: 'elementor-panel-controls-stack',
 
7668
 
7669
- activeTab: null,
7670
-
7671
- activeSection: null,
7672
-
7673
- templateHelpers: function() {
7674
- return {
7675
- elementData: elementor.getElementData( this.model )
7676
- };
7677
- },
7678
-
7679
- ui: function() {
7680
- return {
7681
- tabs: '.elementor-panel-navigation-tab',
7682
- reloadButton: '.elementor-update-preview-button'
7683
- };
7684
- },
7685
-
7686
- events: function() {
7687
- return {
7688
- 'click @ui.tabs': 'onClickTabControl',
7689
- 'click @ui.reloadButton': 'onReloadButtonClick'
7690
- };
7691
- },
7692
-
7693
- modelEvents: {
7694
- 'destroy': 'onModelDestroy'
7695
- },
7696
-
7697
- behaviors: {
7698
- HandleInnerTabs: {
7699
- behaviorClass: require( 'elementor-behaviors/inner-tabs' )
7700
- }
7701
- },
7702
-
7703
- initialize: function() {
7704
- this.listenTo( elementor.channels.deviceMode, 'change', this.onDeviceModeChange );
7705
- },
7706
-
7707
- filter: function( controlModel ) {
7708
- if ( controlModel.get( 'tab' ) !== this.activeTab ) {
7709
- return false;
7710
- }
7711
-
7712
- if ( 'section' === controlModel.get( 'type' ) ) {
7713
- return true;
7714
- }
7715
-
7716
- var section = controlModel.get( 'section' );
7717
-
7718
- return ! section || section === this.activeSection;
7719
- },
7720
-
7721
- isVisibleSectionControl: function( sectionControlModel ) {
7722
- return this.activeTab === sectionControlModel.get( 'tab' );
7723
- },
7724
-
7725
- activateTab: function( $tab ) {
7726
- var self = this,
7727
- activeTab = this.activeTab = $tab.data( 'tab' );
7728
-
7729
- this.ui.tabs.removeClass( 'active' );
7730
-
7731
- $tab.addClass( 'active' );
7732
-
7733
- var sectionControls = this.collection.filter( function( controlModel ) {
7734
- return 'section' === controlModel.get( 'type' ) && self.isVisibleSectionControl( controlModel );
7735
- } );
7736
-
7737
- if ( sectionControls[0] ) {
7738
- this.activateSection( sectionControls[0].get( 'name' ) );
7739
- }
7740
- },
7741
-
7742
- activateSection: function( sectionName ) {
7743
- this.activeSection = sectionName;
7744
- },
7745
-
7746
- getChildView: function( item ) {
7747
- var controlType = item.get( 'type' );
7748
-
7749
- return elementor.getControlView( controlType );
7750
- },
7751
-
7752
- openActiveSection: function() {
7753
- var activeSection = this.activeSection,
7754
- activeSectionView = this.children.filter( function( view ) {
7755
- return activeSection === view.model.get( 'name' );
7756
- } );
7757
-
7758
- if ( activeSectionView[0] ) {
7759
- activeSectionView[0].ui.heading.addClass( 'elementor-open' );
7760
- }
7761
- },
7762
-
7763
- onRenderCollection: function() {
7764
- // Create tooltip on controls
7765
- this.$( '.tooltip-target' ).tipsy( {
7766
- gravity: function() {
7767
- // `n` for down, `s` for up
7768
- var gravity = Backbone.$( this ).data( 'tooltip-pos' );
7769
-
7770
- if ( undefined !== gravity ) {
7771
- return gravity;
7772
- } else {
7773
- return 'n';
7774
- }
7775
- },
7776
- title: function() {
7777
- return this.getAttribute( 'data-tooltip' );
7778
- }
7779
- } );
7780
-
7781
- this.openActiveSection();
7782
- },
7783
-
7784
- onRenderTemplate: function() {
7785
- this.activateTab( this.ui.tabs.eq( 0 ) );
7786
- },
7787
-
7788
- onModelDestroy: function() {
7789
- this.destroy();
7790
- },
7791
-
7792
- onClickTabControl: function( event ) {
7793
- event.preventDefault();
7794
-
7795
- var $tab = this.$( event.currentTarget );
7796
-
7797
- if ( this.activeTab === $tab.data( 'tab' ) ) {
7798
- return;
7799
- }
7800
-
7801
- this.activateTab( $tab );
7802
-
7803
- this._renderChildren();
7804
- },
7805
-
7806
- onReloadButtonClick: function() {
7807
- elementor.reloadPreview();
7808
- },
7809
-
7810
- onDeviceModeChange: function() {
7811
- this.$el.removeClass( 'elementor-responsive-switchers-open' );
7812
- },
7813
-
7814
- onChildviewControlSectionClicked: function( childView ) {
7815
- var isSectionOpen = childView.ui.heading.hasClass( 'elementor-open' );
7816
-
7817
- this.activateSection( isSectionOpen ? null : childView.model.get( 'name' ) );
7818
-
7819
- this._renderChildren();
7820
- },
7821
-
7822
- onChildviewResponsiveSwitcherClick: function( childView, device ) {
7823
- if ( 'desktop' === device ) {
7824
- this.$el.toggleClass( 'elementor-responsive-switchers-open' );
7825
- }
7826
- }
7827
- } );
7828
-
7829
- module.exports = ControlsStack;
7830
-
7831
- },{"elementor-behaviors/inner-tabs":3}],91:[function(require,module,exports){
7832
- var ControlBaseItemView = require( 'elementor-views/controls/base' ),
7833
- ControlBaseMultipleItemView;
7834
-
7835
- ControlBaseMultipleItemView = ControlBaseItemView.extend( {
7836
-
7837
- applySavedValue: function() {
7838
- var values = this.getControlValue(),
7839
- $inputs = this.$( '[data-setting]' ),
7840
- self = this;
7841
-
7842
- _.each( values, function( value, key ) {
7843
- var $input = $inputs.filter( function() {
7844
- return key === this.dataset.setting;
7845
- } );
7846
-
7847
- self.setInputValue( $input, value );
7848
- } );
7849
- },
7850
-
7851
- getControlValue: function( key ) {
7852
- var values = this.elementSettingsModel.get( this.model.get( 'name' ) );
7853
-
7854
- if ( ! Backbone.$.isPlainObject( values ) ) {
7855
- return {};
7856
- }
7857
-
7858
- if ( key ) {
7859
- return values[ key ] || '';
7860
- }
7861
-
7862
- return elementor.helpers.cloneObject( values );
7863
- },
7864
-
7865
- setValue: function( key, value ) {
7866
- var values = this.getControlValue();
7867
-
7868
- if ( 'object' === typeof key ) {
7869
- _.each( key, function( internalValue, internalKey ) {
7870
- values[ internalKey ] = internalValue;
7871
- } );
7872
- } else {
7873
- values[ key ] = value;
7874
- }
7875
-
7876
- this.setSettingsModel( values );
7877
- },
7878
-
7879
- updateElementModel: function( value, input ) {
7880
- var key = input.dataset.setting;
7881
-
7882
- this.setValue( key, value );
7883
- }
7884
- }, {
7885
- // Static methods
7886
- getStyleValue: function( placeholder, controlValue ) {
7887
- if ( ! _.isObject( controlValue ) ) {
7888
- return ''; // invalid
7889
- }
7890
-
7891
- return controlValue[ placeholder ];
7892
- }
7893
- } );
7894
-
7895
- module.exports = ControlBaseMultipleItemView;
7896
-
7897
- },{"elementor-views/controls/base":93}],92:[function(require,module,exports){
7898
- var ControlBaseMultipleItemView = require( 'elementor-views/controls/base-multiple' ),
7899
- ControlBaseUnitsItemView;
7900
-
7901
- ControlBaseUnitsItemView = ControlBaseMultipleItemView.extend( {
7902
 
7903
  getCurrentRange: function() {
7904
  return this.getUnitRange( this.getControlValue( 'unit' ) );
@@ -7917,7 +7471,7 @@ ControlBaseUnitsItemView = ControlBaseMultipleItemView.extend( {
7917
 
7918
  module.exports = ControlBaseUnitsItemView;
7919
 
7920
- },{"elementor-views/controls/base-multiple":91}],93:[function(require,module,exports){
7921
  var ControlBaseItemView;
7922
 
7923
  Co
1
+ /*! elementor - v1.6.5 - 20-08-2017 */
2
  (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
3
  var HandleAddDuplicateBehavior;
4
 
28
  elements: []
29
  };
30
 
31
+ elementor.channels.data.trigger( 'element:before:add', newItem );
32
+
33
  this.view.addChildModel( newItem, options );
34
+
35
+ elementor.channels.data.trigger( 'element:after:add', newItem );
36
  }
37
  } );
38
 
51
  var currentIndex = this.view.collection.indexOf( childView.model ),
52
  newModel = childView.model.clone();
53
 
54
+ elementor.channels.data.trigger( 'element:before:duplicate', newModel );
55
+
56
  this.view.addChildModel( newModel, { at: currentIndex + 1 } );
57
+
58
+ elementor.channels.data.trigger( 'element:after:duplicate', newModel );
59
  }
60
  } );
61
 
330
  ui.placeholder.height( itemHeight );
331
  }
332
 
 
 
333
  elementor.channels.data
334
  .reply( 'dragging:model', model )
335
+ .reply( 'dragging:parent:view', this.view )
336
+ .trigger( 'drag:start', model )
337
+ .trigger( model.get( 'elType' ) + ':drag:start' );
338
  },
339
 
340
  onSortOver: function( event ) {
381
  return;
382
  }
383
 
384
+ elementor.channels.data.trigger( 'drag:before:update', model );
385
 
386
+ var newIndex = ui.item.parent().children().index( ui.item ),
387
+ modelJSON = model.toJSON( { copyHtmlCache: true } );
388
 
389
  var senderSection = elementor.channels.data.request( 'dragging:parent:view' );
390
 
393
  model.destroy();
394
 
395
  senderSection.isManualRemoving = false;
396
+
397
+ this.view.addChildElement( modelJSON, { at: newIndex } );
398
+
399
+ elementor.channels.data.trigger( 'drag:after:update', model );
400
  },
401
 
402
  onSortUpdate: function( event, ui ) {
408
  collection = this.view.collection,
409
  newIndex = $childElement.parent().children().index( $childElement );
410
 
411
+ elementor.channels.data.trigger( 'drag:before:update', model );
412
+
413
  var child = this.view.children.findByModelCid( model.cid );
414
 
415
  child._isRendering = true;
419
  this.view.addChildElement( model, { at: newIndex } );
420
 
421
  elementor.setFlagEditorChange( true );
422
+
423
+ elementor.channels.data.trigger( 'drag:after:update', model );
424
  }
425
  },
426
 
436
  module.exports = SortableBehavior;
437
 
438
  },{}],6:[function(require,module,exports){
439
+ var InsertTemplateHandler;
440
 
441
+ InsertTemplateHandler = Marionette.Behavior.extend( {
442
+ ui: {
443
+ insertButton: '.elementor-template-library-template-insert'
444
+ },
445
 
446
+ events: {
447
+ 'click @ui.insertButton': 'onInsertButtonClick'
448
+ },
449
 
450
+ onInsertButtonClick: function() {
451
+ if ( this.view.model.get( 'hasPageSettings' ) ) {
452
+ InsertTemplateHandler.showImportDialog( this.view.model );
453
+ return;
454
+ }
455
 
456
+ elementor.templates.importTemplate( this.view.model );
457
+ }
458
+ }, {
459
+ dialog: null,
460
 
461
+ showImportDialog: function( model ) {
462
+ var dialog = InsertTemplateHandler.getDialog();
 
 
 
463
 
464
+ dialog.onConfirm = function() {
465
+ elementor.templates.importTemplate( model, { withPageSettings: true } );
466
+ };
467
 
468
+ dialog.onCancel = function() {
469
+ elementor.templates.importTemplate( model );
470
+ };
 
 
 
471
 
472
+ dialog.show();
473
+ },
474
+
475
+ initDialog: function() {
476
+ InsertTemplateHandler.dialog = elementor.dialogsManager.createWidget( 'confirm', {
477
+ id: 'elementor-insert-template-settings-dialog',
478
+ headerMessage: elementor.translate( 'import_template_dialog_header' ),
479
+ message: elementor.translate( 'import_template_dialog_message' ) + '<br>' + elementor.translate( 'import_template_dialog_message_attention' ),
480
+ strings: {
481
+ confirm: elementor.translate( 'yes' ),
482
+ cancel: elementor.translate( 'no' )
483
  }
484
  } );
485
+ },
486
 
487
+ getDialog: function() {
488
+ if ( ! InsertTemplateHandler.dialog ) {
489
+ InsertTemplateHandler.initDialog();
490
  }
491
 
492
+ return InsertTemplateHandler.dialog;
493
+ }
494
+ } );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
495
 
496
+ module.exports = InsertTemplateHandler;
 
 
 
 
 
497
 
498
+ },{}],7:[function(require,module,exports){
499
+ var TemplateLibraryTemplateModel = require( 'elementor-templates/models/template' ),
500
+ TemplateLibraryCollection;
501
 
502
+ TemplateLibraryCollection = Backbone.Collection.extend( {
503
+ model: TemplateLibraryTemplateModel
504
+ } );
505
 
506
+ module.exports = TemplateLibraryCollection;
 
 
 
 
 
 
 
 
507
 
508
+ },{"elementor-templates/models/template":9}],8:[function(require,module,exports){
509
+ var TemplateLibraryLayoutView = require( 'elementor-templates/views/layout' ),
510
+ TemplateLibraryCollection = require( 'elementor-templates/collections/templates' ),
511
+ TemplateLibraryManager;
512
 
513
+ TemplateLibraryManager = function() {
514
+ var self = this,
515
+ modal,
516
+ deleteDialog,
517
+ errorDialog,
518
+ layout,
519
+ startIntent = {},
520
+ templateTypes = {},
521
+ templatesCollection;
522
 
523
+ var initLayout = function() {
524
+ layout = new TemplateLibraryLayoutView();
 
525
  };
526
 
527
+ var registerDefaultTemplateTypes = function() {
528
+ var data = {
529
+ saveDialog: {
530
+ description: elementor.translate( 'save_your_template_description' )
531
  },
532
+ ajaxParams: {
533
+ success: function( data ) {
534
+ self.getTemplatesCollection().add( data );
 
535
 
536
+ self.setTemplatesSource( 'local' );
537
 
538
+ self.showTemplates();
539
+ },
540
+ error: function( data ) {
541
+ self.showErrorDialog( data );
542
  }
543
  }
544
  };
545
 
546
+ _.each( [ 'page', 'section' ], function( type ) {
547
+ var safeData = Backbone.$.extend( true, {}, data, {
548
+ saveDialog: {
549
+ title: elementor.translate( 'save_your_template', [ elementor.translate( type ) ] )
550
+ }
551
+ } );
552
 
553
+ self.registerTemplateType( type, safeData );
554
+ } );
555
  };
556
 
557
  this.init = function() {
558
+ registerDefaultTemplateTypes();
559
+ };
560
 
561
+ this.getTemplateTypes = function( type ) {
562
+ if ( type ) {
563
+ return templateTypes[ type ];
564
+ }
565
 
566
+ return templateTypes;
567
+ };
568
 
569
+ this.registerTemplateType = function( type, data ) {
570
+ templateTypes[ type ] = data;
571
  };
 
572
 
573
+ this.deleteTemplate = function( templateModel ) {
574
+ var dialog = self.getDeleteDialog();
575
 
576
+ dialog.onConfirm = function() {
577
+ elementor.ajax.send( 'delete_template', {
578
+ data: {
579
+ source: templateModel.get( 'source' ),
580
+ template_id: templateModel.get( 'template_id' )
581
+ },
582
+ success: function() {
583
+ templatesCollection.remove( templateModel, { silent: true } );
584
 
585
+ self.showTemplates();
586
+ }
587
+ } );
588
+ };
589
 
590
+ dialog.show();
591
+ };
 
592
 
593
+ this.importTemplate = function( templateModel, options ) {
594
+ options = options || {};
595
 
596
+ layout.showLoadingView();
 
 
597
 
598
+ self.requestTemplateContent( templateModel.get( 'source' ), templateModel.get( 'template_id' ), {
599
+ data: {
600
+ page_settings: options.withPageSettings
601
+ },
602
+ success: function( data ) {
603
+ self.closeModal();
604
 
605
+ elementor.channels.data.trigger( 'template:before:insert', templateModel );
606
 
607
+ elementor.sections.currentView.addChildModel( data.content, startIntent.importOptions || {} );
608
 
609
+ elementor.channels.data.trigger( 'template:after:insert', templateModel );
 
 
 
610
 
611
+ if ( options.withPageSettings ) {
612
+ elementor.settings.page.model.set( data.page_settings );
613
+ }
614
+ },
615
+ error: function( data ) {
616
+ self.showErrorDialog( data );
617
+ }
618
+ } );
619
+ };
620
 
621
+ this.saveTemplate = function( type, data ) {
622
+ var templateType = templateTypes[ type ];
623
 
624
+ _.extend( data, {
625
+ source: 'local',
626
+ type: type
627
+ } );
628
 
629
+ if ( templateType.prepareSavedData ) {
630
+ data = templateType.prepareSavedData( data );
631
+ }
632
 
633
+ data.content = JSON.stringify( data.content );
634
 
635
+ var ajaxParams = { data: data };
 
 
636
 
637
+ if ( templateType.ajaxParams ) {
638
+ _.extend( ajaxParams, templateType.ajaxParams );
639
+ }
640
 
641
+ elementor.ajax.send( 'save_template', ajaxParams );
642
+ };
643
+
644
+ this.requestTemplateContent = function( source, id, ajaxOptions ) {
645
+ var options = {
646
  data: {
647
+ source: source,
648
+ edit_mode: true,
649
+ template_id: id
650
+ }
651
+ };
652
 
653
+ if ( ajaxOptions ) {
654
+ Backbone.$.extend( true, options, ajaxOptions );
655
+ }
656
 
657
+ return elementor.ajax.send( 'get_template_data', options );
658
+ };
659
 
660
+ this.getDeleteDialog = function() {
661
+ if ( ! deleteDialog ) {
662
+ deleteDialog = elementor.dialogsManager.createWidget( 'confirm', {
663
+ id: 'elementor-template-library-delete-dialog',
664
+ headerMessage: elementor.translate( 'delete_template' ),
665
+ message: elementor.translate( 'delete_template_confirm' ),
666
+ strings: {
667
+ confirm: elementor.translate( 'delete' )
668
+ }
669
+ } );
670
+ }
671
 
672
+ return deleteDialog;
673
+ };
 
 
674
 
675
+ this.getErrorDialog = function() {
676
+ if ( ! errorDialog ) {
677
+ errorDialog = elementor.dialogsManager.createWidget( 'alert', {
678
+ id: 'elementor-template-library-error-dialog',
679
+ headerMessage: elementor.translate( 'an_error_occurred' )
680
+ } );
681
+ }
682
 
683
+ return errorDialog;
684
+ };
685
 
686
+ this.getModal = function() {
687
+ if ( ! modal ) {
688
+ modal = elementor.dialogsManager.createWidget( 'lightbox', {
689
+ id: 'elementor-template-library-modal',
690
+ closeButton: false
691
+ } );
692
+ }
693
 
694
+ return modal;
695
+ };
 
 
696
 
697
+ this.getLayout = function() {
698
+ return layout;
699
+ };
700
 
701
+ this.getTemplatesCollection = function() {
702
+ return templatesCollection;
703
+ };
704
 
705
+ this.requestRemoteTemplates = function( callback, forceUpdate ) {
706
+ if ( templatesCollection && ! forceUpdate ) {
707
+ if ( callback ) {
708
+ callback();
709
+ }
710
 
711
+ return;
712
+ }
713
 
714
+ elementor.ajax.send( 'get_templates', {
715
+ success: function( data ) {
716
+ templatesCollection = new TemplateLibraryCollection( data );
717
 
718
+ if ( callback ) {
719
+ callback();
 
 
720
  }
721
+ }
722
+ } );
723
+ };
724
 
725
+ this.startModal = function( customStartIntent ) {
726
+ startIntent = customStartIntent || {};
 
 
727
 
728
+ self.getModal().show();
729
+
730
+ self.setTemplatesSource( 'remote' );
731
+
732
+ if ( ! layout ) {
733
+ initLayout();
734
+ }
735
+
736
+ layout.showLoadingView();
737
+
738
+ self.requestRemoteTemplates( function() {
739
+ if ( startIntent.onReady ) {
740
+ startIntent.onReady();
741
  }
742
  } );
743
+ };
744
 
745
+ this.closeModal = function() {
746
+ self.getModal().hide();
747
+ };
748
 
749
+ this.setTemplatesSource = function( source, trigger ) {
750
+ var channel = elementor.channels.templates;
 
751
 
752
+ channel.reply( 'filter:source', source );
 
 
753
 
754
+ if ( trigger ) {
755
+ channel.trigger( 'filter:change' );
756
  }
757
+ };
758
 
759
+ this.showTemplates = function() {
760
+ layout.showTemplatesView( templatesCollection );
761
+ };
762
 
763
+ this.showTemplatesModal = function() {
764
+ self.startModal( {
765
+ onReady: self.showTemplates
766
+ } );
767
+ };
768
 
769
+ this.showErrorDialog = function( errorMessage ) {
770
+ if ( 'object' === typeof errorMessage ) {
771
+ var message = '';
772
 
773
+ _.each( errorMessage, function( error ) {
774
+ message += '<div>' + error.message + '.</div>';
775
+ } );
776
 
777
+ errorMessage = message;
778
+ } else if ( errorMessage ) {
779
+ errorMessage += '.';
780
+ } else {
781
+ errorMessage = '<i>&#60;The error message is empty&#62;</i>';
782
+ }
783
 
784
+ self.getErrorDialog()
785
+ .setMessage( elementor.translate( 'templates_request_error' ) + '<div id="elementor-template-library-error-info">' + errorMessage + '</div>' )
786
+ .show();
787
+ };
788
+ };
789
 
790
+ module.exports = new TemplateLibraryManager();
 
791
 
792
+ },{"elementor-templates/collections/templates":7,"elementor-templates/views/layout":10}],9:[function(require,module,exports){
793
+ var TemplateLibraryTemplateModel;
794
 
795
+ TemplateLibraryTemplateModel = Backbone.Model.extend( {
796
+ defaults: {
797
+ template_id: 0,
798
+ name: '',
799
+ title: '',
800
+ source: '',
801
+ type: '',
802
+ author: '',
803
+ thumbnail: '',
804
+ url: '',
805
+ export_link: '',
806
+ categories: [],
807
+ keywords: []
808
+ }
809
+ } );
810
 
811
+ module.exports = TemplateLibraryTemplateModel;
812
 
813
+ },{}],10:[function(require,module,exports){
814
+ var TemplateLibraryHeaderView = require( 'elementor-templates/views/parts/header' ),
815
+ TemplateLibraryHeaderLogoView = require( 'elementor-templates/views/parts/header-parts/logo' ),
816
+ TemplateLibraryHeaderSaveView = require( 'elementor-templates/views/parts/header-parts/save' ),
817
+ TemplateLibraryHeaderMenuView = require( 'elementor-templates/views/parts/header-parts/menu' ),
818
+ TemplateLibraryHeaderPreviewView = require( 'elementor-templates/views/parts/header-parts/preview' ),
819
+ TemplateLibraryHeaderBackView = require( 'elementor-templates/views/parts/header-parts/back' ),
820
+ TemplateLibraryLoadingView = require( 'elementor-templates/views/parts/loading' ),
821
+ TemplateLibraryCollectionView = require( 'elementor-templates/views/parts/templates' ),
822
+ TemplateLibrarySaveTemplateView = require( 'elementor-templates/views/parts/save-template' ),
823
+ TemplateLibraryImportView = require( 'elementor-templates/views/parts/import' ),
824
+ TemplateLibraryPreviewView = require( 'elementor-templates/views/parts/preview' ),
825
+ TemplateLibraryLayoutView;
826
 
827
+ TemplateLibraryLayoutView = Marionette.LayoutView.extend( {
828
+ el: '#elementor-template-library-modal',
829
 
830
+ regions: {
831
+ modalContent: '.dialog-message',
832
+ modalHeader: '.dialog-widget-header'
833
+ },
834
 
835
+ initialize: function() {
836
+ this.getRegion( 'modalHeader' ).show( new TemplateLibraryHeaderView() );
 
837
  },
838
 
839
+ getHeaderView: function() {
840
+ return this.getRegion( 'modalHeader' ).currentView;
 
 
841
  },
842
 
843
+ getTemplateActionButton: function( templateData ) {
844
+ var viewId = '#tmpl-elementor-template-library-' + ( templateData.isPro ? 'get-pro-button' : 'insert-button' );
 
 
845
 
846
+ viewId = elementor.hooks.applyFilters( 'elementor/editor/template-library/template/action-button', viewId, templateData );
847
 
848
+ var template = Marionette.TemplateCache.get( viewId );
849
 
850
+ return Marionette.Renderer.render( template );
851
  },
852
 
853
+ showLoadingView: function() {
854
+ this.modalContent.show( new TemplateLibraryLoadingView() );
855
+ },
856
 
857
+ showTemplatesView: function( templatesCollection ) {
858
+ this.modalContent.show( new TemplateLibraryCollectionView( {
859
+ collection: templatesCollection
860
+ } ) );
861
 
862
+ var headerView = this.getHeaderView();
 
 
863
 
864
+ headerView.tools.show( new TemplateLibraryHeaderSaveView() );
865
+ headerView.menuArea.show( new TemplateLibraryHeaderMenuView() );
866
+ headerView.logoArea.show( new TemplateLibraryHeaderLogoView() );
867
+ },
868
 
869
+ showImportView: function() {
870
+ this.modalContent.show( new TemplateLibraryImportView() );
871
+ },
872
 
873
+ showSaveTemplateView: function( elementModel ) {
874
+ this.modalContent.show( new TemplateLibrarySaveTemplateView( { model: elementModel } ) );
 
 
 
 
 
 
 
 
875
 
876
+ var headerView = this.getHeaderView();
877
 
878
+ headerView.tools.reset();
879
+ headerView.menuArea.reset();
880
+ headerView.logoArea.show( new TemplateLibraryHeaderLogoView() );
881
  },
882
 
883
+ showPreviewView: function( templateModel ) {
884
+ this.modalContent.show( new TemplateLibraryPreviewView( {
885
+ url: templateModel.get( 'url' )
886
+ } ) );
887
 
888
+ var headerView = this.getHeaderView();
 
 
 
 
 
 
 
 
 
 
 
889
 
890
+ headerView.menuArea.reset();
891
+
892
+ headerView.tools.show( new TemplateLibraryHeaderPreviewView( {
893
+ model: templateModel
894
+ } ) );
895
+
896
+ headerView.logoArea.show( new TemplateLibraryHeaderBackView() );
897
  }
898
  } );
899
 
900
+ module.exports = TemplateLibraryLayoutView;
 
 
901
 
902
+ },{"elementor-templates/views/parts/header":16,"elementor-templates/views/parts/header-parts/back":11,"elementor-templates/views/parts/header-parts/logo":12,"elementor-templates/views/parts/header-parts/menu":13,"elementor-templates/views/parts/header-parts/preview":14,"elementor-templates/views/parts/header-parts/save":15,"elementor-templates/views/parts/import":17,"elementor-templates/views/parts/loading":18,"elementor-templates/views/parts/preview":19,"elementor-templates/views/parts/save-template":20,"elementor-templates/views/parts/templates":22}],11:[function(require,module,exports){
903
+ var TemplateLibraryHeaderBackView;
904
 
905
+ TemplateLibraryHeaderBackView = Marionette.ItemView.extend( {
906
+ template: '#tmpl-elementor-template-library-header-back',
907
+
908
+ id: 'elementor-template-library-header-preview-back',
909
+
910
+ events: {
911
+ 'click': 'onClick'
912
  },
913
 
914
+ onClick: function() {
915
+ elementor.templates.showTemplates();
 
916
  }
917
  } );
918
 
919
+ module.exports = TemplateLibraryHeaderBackView;
920
+
921
  },{}],12:[function(require,module,exports){
922
+ var TemplateLibraryHeaderLogoView;
923
+
924
+ TemplateLibraryHeaderLogoView = Marionette.ItemView.extend( {
925
+ template: '#tmpl-elementor-template-library-header-logo',
926
+
927
+ id: 'elementor-template-library-header-logo',
928
+
929
+ events: {
930
+ 'click': 'onClick'
931
+ },
932
+
933
+ onClick: function() {
934
+ elementor.templates.setTemplatesSource( 'remote' );
935
+ elementor.templates.showTemplates();
936
+ }
937
+ } );
938
+
939
+ module.exports = TemplateLibraryHeaderLogoView;
940
+
941
+ },{}],13:[function(require,module,exports){
942
+ var TemplateLibraryHeaderMenuView;
943
+
944
+ TemplateLibraryHeaderMenuView = Marionette.ItemView.extend( {
945
+ options: {
946
+ activeClass: 'elementor-active'
947
+ },
948
+
949
+ template: '#tmpl-elementor-template-library-header-menu',
950
+
951
+ id: 'elementor-template-library-header-menu',
952
 
 
953
  ui: {
954
+ menuItems: '.elementor-template-library-menu-item'
955
  },
956
 
957
  events: {
958
+ 'click @ui.menuItems': 'onMenuItemClick'
959
  },
960
 
961
+ $activeItem: null,
962
+
963
+ activateMenuItem: function( $item ) {
964
+ var activeClass = this.getOption( 'activeClass' );
965
+
966
+ if ( this.$activeItem === $item ) {
967
  return;
968
  }
969
 
970
+ if ( this.$activeItem ) {
971
+ this.$activeItem.removeClass( activeClass );
972
+ }
 
973
 
974
+ $item.addClass( activeClass );
 
975
 
976
+ this.$activeItem = $item;
977
+ },
 
978
 
979
+ onRender: function() {
980
+ var currentSource = elementor.channels.templates.request( 'filter:source' ),
981
+ $sourceItem = this.ui.menuItems.filter( '[data-template-source="' + currentSource + '"]' );
982
 
983
+ this.activateMenuItem( $sourceItem );
984
  },
985
 
986
+ onMenuItemClick: function( event ) {
987
+ var item = event.currentTarget;
 
 
 
 
 
 
 
 
 
988
 
989
+ this.activateMenuItem( Backbone.$( item ) );
 
 
 
990
 
991
+ elementor.templates.setTemplatesSource( item.dataset.templateSource, true );
992
  }
993
  } );
994
 
995
+ module.exports = TemplateLibraryHeaderMenuView;
996
 
997
+ },{}],14:[function(require,module,exports){
998
+ var TemplateLibraryInsertTemplateBehavior = require( 'elementor-templates/behaviors/insert-template' ),
999
+ TemplateLibraryHeaderPreviewView;
1000
 
1001
+ TemplateLibraryHeaderPreviewView = Marionette.ItemView.extend( {
1002
+ template: '#tmpl-elementor-template-library-header-preview',
1003
+
1004
+ id: 'elementor-template-library-header-preview',
1005
+
1006
+ behaviors: {
1007
+ insertTemplate: {
1008
+ behaviorClass: TemplateLibraryInsertTemplateBehavior
1009
+ }
1010
+ }
1011
  } );
1012
 
1013
+ module.exports = TemplateLibraryHeaderPreviewView;
1014
 
1015
+ },{"elementor-templates/behaviors/insert-template":6}],15:[function(require,module,exports){
1016
+ var TemplateLibraryHeaderSaveView;
 
 
1017
 
1018
+ TemplateLibraryHeaderSaveView = Marionette.ItemView.extend( {
1019
+ template: '#tmpl-elementor-template-library-header-save',
 
 
 
 
 
 
 
1020
 
1021
+ id: 'elementor-template-library-header-save',
 
 
1022
 
1023
+ className: 'elementor-template-library-header-item',
 
 
 
 
 
 
 
1024
 
1025
+ events: {
1026
+ 'click': 'onClick'
1027
+ },
1028
 
1029
+ onClick: function() {
1030
+ elementor.templates.getLayout().showSaveTemplateView();
1031
+ }
1032
+ } );
 
 
 
1033
 
1034
+ module.exports = TemplateLibraryHeaderSaveView;
 
 
 
 
 
1035
 
1036
+ },{}],16:[function(require,module,exports){
1037
+ var TemplateLibraryHeaderView;
 
1038
 
1039
+ TemplateLibraryHeaderView = Marionette.LayoutView.extend( {
 
 
1040
 
1041
+ id: 'elementor-template-library-header',
 
 
 
1042
 
1043
+ template: '#tmpl-elementor-template-library-header',
 
1044
 
1045
+ regions: {
1046
+ logoArea: '#elementor-template-library-header-logo-area',
1047
+ tools: '#elementor-template-library-header-tools',
1048
+ menuArea: '#elementor-template-library-header-menu-area'
1049
+ },
1050
 
1051
+ ui: {
1052
+ closeModal: '#elementor-template-library-header-close-modal'
1053
+ },
1054
 
1055
+ events: {
1056
+ 'click @ui.closeModal': 'onCloseModalClick'
1057
+ },
 
 
 
 
 
1058
 
1059
+ onCloseModalClick: function() {
1060
+ elementor.templates.closeModal();
1061
+ }
1062
+ } );
1063
 
1064
+ module.exports = TemplateLibraryHeaderView;
 
1065
 
1066
+ },{}],17:[function(require,module,exports){
1067
+ var TemplateLibraryImportView;
1068
 
1069
+ TemplateLibraryImportView = Marionette.ItemView.extend( {
1070
+ template: '#tmpl-elementor-template-library-import',
1071
 
1072
+ id: 'elementor-template-library-import',
 
 
 
 
 
1073
 
1074
+ ui: {
1075
+ uploadForm: '#elementor-template-library-import-form'
1076
+ },
1077
 
1078
+ events: {
1079
+ 'submit @ui.uploadForm': 'onFormSubmit'
1080
+ },
1081
+
1082
+ onFormSubmit: function( event ) {
1083
+ event.preventDefault();
1084
+
1085
+ elementor.templates.getLayout().showLoadingView();
1086
+
1087
+ elementor.ajax.send( 'import_template', {
1088
+ data: new FormData( this.ui.uploadForm[ 0 ] ),
1089
+ processData: false,
1090
+ contentType: false,
1091
+ success: function( data ) {
1092
+ elementor.templates.getTemplatesCollection().add( data.item );
1093
+
1094
+ elementor.templates.showTemplates();
1095
  },
1096
  error: function( data ) {
1097
+ elementor.templates.showErrorDialog( data );
1098
  }
1099
  } );
1100
+ }
1101
+ } );
 
 
 
 
 
 
 
1102
 
1103
+ module.exports = TemplateLibraryImportView;
 
 
1104
 
1105
+ },{}],18:[function(require,module,exports){
1106
+ var TemplateLibraryLoadingView;
1107
 
1108
+ TemplateLibraryLoadingView = Marionette.ItemView.extend( {
1109
+ id: 'elementor-template-library-loading',
1110
 
1111
+ template: '#tmpl-elementor-template-library-loading'
1112
+ } );
 
1113
 
1114
+ module.exports = TemplateLibraryLoadingView;
 
1115
 
1116
+ },{}],19:[function(require,module,exports){
1117
+ var TemplateLibraryPreviewView;
 
 
 
 
 
 
1118
 
1119
+ TemplateLibraryPreviewView = Marionette.ItemView.extend( {
1120
+ template: '#tmpl-elementor-template-library-preview',
 
1121
 
1122
+ id: 'elementor-template-library-preview',
 
1123
 
1124
+ ui: {
1125
+ iframe: '> iframe'
1126
+ },
 
 
 
 
 
 
 
 
1127
 
1128
+ onRender: function() {
1129
+ this.ui.iframe.attr( 'src', this.getOption( 'url' ) );
1130
+ }
1131
+ } );
1132
 
1133
+ module.exports = TemplateLibraryPreviewView;
 
 
 
 
 
 
1134
 
1135
+ },{}],20:[function(require,module,exports){
1136
+ var TemplateLibrarySaveTemplateView;
1137
 
1138
+ TemplateLibrarySaveTemplateView = Marionette.ItemView.extend( {
1139
+ id: 'elementor-template-library-save-template',
 
 
 
 
 
1140
 
1141
+ template: '#tmpl-elementor-template-library-save-template',
 
1142
 
1143
+ ui: {
1144
+ form: '#elementor-template-library-save-template-form',
1145
+ submitButton: '#elementor-template-library-save-template-submit'
1146
+ },
1147
 
1148
+ events: {
1149
+ 'submit @ui.form': 'onFormSubmit'
1150
+ },
1151
 
1152
+ getSaveType: function() {
1153
+ return this.model ? this.model.get( 'elType' ) : 'page';
1154
+ },
 
 
1155
 
1156
+ templateHelpers: function() {
1157
+ var saveType = this.getSaveType(),
1158
+ templateType = elementor.templates.getTemplateTypes( saveType );
1159
 
1160
+ return templateType.saveDialog;
1161
+ },
 
1162
 
1163
+ onFormSubmit: function( event ) {
1164
+ event.preventDefault();
 
 
 
 
1165
 
1166
+ var formData = this.ui.form.elementorSerializeObject(),
1167
+ saveType = this.model ? this.model.get( 'elType' ) : 'page',
1168
+ JSONParams = { removeDefault: true };
1169
 
1170
+ formData.content = this.model ? [ this.model.toJSON( JSONParams ) ] : elementor.elements.toJSON( JSONParams );
1171
 
1172
+ this.ui.submitButton.addClass( 'elementor-button-state' );
1173
 
1174
+ elementor.templates.saveTemplate( saveType, formData );
1175
+ }
1176
+ } );
1177
 
1178
+ module.exports = TemplateLibrarySaveTemplateView;
1179
 
1180
+ },{}],21:[function(require,module,exports){
1181
+ var TemplateLibraryTemplatesEmptyView;
 
 
 
 
1182
 
1183
+ TemplateLibraryTemplatesEmptyView = Marionette.ItemView.extend( {
1184
+ id: 'elementor-template-library-templates-empty',
 
1185
 
1186
+ template: '#tmpl-elementor-template-library-templates-empty'
1187
+ } );
1188
 
1189
+ module.exports = TemplateLibraryTemplatesEmptyView;
1190
 
1191
+ },{}],22:[function(require,module,exports){
1192
+ var TemplateLibraryTemplateLocalView = require( 'elementor-templates/views/template/local' ),
1193
+ TemplateLibraryTemplateRemoteView = require( 'elementor-templates/views/template/remote' ),
1194
+ TemplateLibraryTemplatesEmptyView = require( 'elementor-templates/views/parts/templates-empty' ),
1195
+ TemplateLibraryCollectionView;
1196
 
1197
+ TemplateLibraryCollectionView = Marionette.CompositeView.extend( {
1198
+ template: '#tmpl-elementor-template-library-templates',
 
1199
 
1200
+ id: 'elementor-template-library-templates',
 
 
 
 
1201
 
1202
+ childViewContainer: '#elementor-template-library-templates-container',
 
 
1203
 
1204
+ emptyView: TemplateLibraryTemplatesEmptyView,
 
 
1205
 
1206
+ getChildView: function( childModel ) {
1207
+ if ( 'remote' === childModel.get( 'source' ) ) {
1208
+ return TemplateLibraryTemplateRemoteView;
 
 
1209
  }
1210
 
1211
+ return TemplateLibraryTemplateLocalView;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1212
  },
1213
 
1214
  initialize: function() {
1215
+ this.listenTo( elementor.channels.templates, 'filter:change', this._renderChildren );
 
 
 
 
1216
  },
1217
 
1218
+ filterByName: function( model ) {
1219
+ var filterValue = elementor.channels.templates.request( 'filter:text' );
1220
 
1221
+ if ( ! filterValue ) {
1222
+ return true;
1223
+ }
1224
 
1225
+ filterValue = filterValue.toLowerCase();
1226
 
1227
+ if ( model.get( 'title' ).toLowerCase().indexOf( filterValue ) >= 0 ) {
1228
+ return true;
1229
+ }
1230
 
1231
+ return _.any( model.get( 'keywords' ), function( keyword ) {
1232
+ return keyword.toLowerCase().indexOf( filterValue ) >= 0;
1233
+ } );
1234
  },
1235
 
1236
+ filterBySource: function( model ) {
1237
+ var filterValue = elementor.channels.templates.request( 'filter:source' );
 
 
1238
 
1239
+ if ( ! filterValue ) {
1240
+ return true;
1241
+ }
1242
 
1243
+ return filterValue === model.get( 'source' );
 
 
1244
  },
1245
 
1246
+ filterByType: function( model ) {
1247
+ return false !== elementor.templates.getTemplateTypes( model.get( 'type' ) ).showInLibrary;
1248
  },
1249
 
1250
+ filter: function( childModel ) {
1251
+ return this.filterByName( childModel ) && this.filterBySource( childModel ) && this.filterByType( childModel );
 
 
 
 
 
 
1252
  },
1253
 
1254
+ onRenderCollection: function() {
1255
+ var isEmpty = this.children.isEmpty();
 
 
 
 
 
 
 
 
 
 
1256
 
1257
+ this.$childViewContainer.attr( 'data-template-source', isEmpty ? 'empty' : elementor.channels.templates.request( 'filter:source' ) );
1258
  }
1259
  } );
1260
 
1261
+ module.exports = TemplateLibraryCollectionView;
1262
 
1263
+ },{"elementor-templates/views/parts/templates-empty":21,"elementor-templates/views/template/local":24,"elementor-templates/views/template/remote":25}],23:[function(require,module,exports){
1264
+ var TemplateLibraryInsertTemplateBehavior = require( 'elementor-templates/behaviors/insert-template' ),
1265
+ TemplateLibraryTemplateView;
1266
 
1267
+ TemplateLibraryTemplateView = Marionette.ItemView.extend( {
1268
+ className: function() {
1269
+ var classes = 'elementor-template-library-template elementor-template-library-template-' + this.model.get( 'source' );
1270
 
1271
+ if ( this.model.get( 'isPro' ) ) {
1272
+ classes += ' elementor-template-library-pro-template';
1273
+ }
1274
 
1275
+ return classes;
 
1276
  },
1277
 
1278
+ ui: function() {
1279
+ return {
1280
+ previewButton: '.elementor-template-library-template-preview'
1281
+ };
1282
+ },
1283
+
1284
+ events: function() {
1285
+ return {
1286
+ 'click @ui.previewButton': 'onPreviewButtonClick'
1287
+ };
1288
+ },
1289
+
1290
+ behaviors: {
1291
+ insertTemplate: {
1292
+ behaviorClass: TemplateLibraryInsertTemplateBehavior
1293
+ }
1294
  }
1295
  } );
1296
 
1297
+ module.exports = TemplateLibraryTemplateView;
1298
 
1299
+ },{"elementor-templates/behaviors/insert-template":6}],24:[function(require,module,exports){
1300
+ var TemplateLibraryTemplateView = require( 'elementor-templates/views/template/base' ),
1301
+ TemplateLibraryTemplateLocalView;
1302
 
1303
+ TemplateLibraryTemplateLocalView = TemplateLibraryTemplateView.extend( {
1304
+ template: '#tmpl-elementor-template-library-template-local',
1305
 
1306
+ ui: function() {
1307
+ return _.extend( TemplateLibraryTemplateView.prototype.ui.apply( this, arguments ), {
1308
+ deleteButton: '.elementor-template-library-template-delete'
1309
+ } );
1310
+ },
1311
 
1312
+ events: function() {
1313
+ return _.extend( TemplateLibraryTemplateView.prototype.events.apply( this, arguments ), {
1314
+ 'click @ui.deleteButton': 'onDeleteButtonClick'
1315
+ } );
1316
  },
1317
 
1318
+ onDeleteButtonClick: function() {
1319
+ elementor.templates.deleteTemplate( this.model );
1320
+ },
1321
+
1322
+ onPreviewButtonClick: function() {
1323
+ open( this.model.get( 'url' ), '_blank' );
1324
  }
1325
  } );
1326
 
1327
+ module.exports = TemplateLibraryTemplateLocalView;
 
 
 
1328
 
1329
+ },{"elementor-templates/views/template/base":23}],25:[function(require,module,exports){
1330
+ var TemplateLibraryTemplateView = require( 'elementor-templates/views/template/base' ),
1331
+ TemplateLibraryTemplateRemoteView;
 
1332
 
1333
+ TemplateLibraryTemplateRemoteView = TemplateLibraryTemplateView.extend( {
1334
+ template: '#tmpl-elementor-template-library-template-remote',
1335
 
1336
+ onPreviewButtonClick: function() {
1337
+ elementor.templates.getLayout().showPreviewView( this.model );
1338
+ }
1339
+ } );
1340
 
1341
+ module.exports = TemplateLibraryTemplateRemoteView;
 
 
1342
 
1343
+ },{"elementor-templates/views/template/base":23}],26:[function(require,module,exports){
1344
+ /* global ElementorConfig */
1345
+ var App;
1346
 
1347
+ Marionette.TemplateCache.prototype.compileTemplate = function( rawTemplate, options ) {
1348
+ options = {
1349
+ evaluate: /<#([\s\S]+?)#>/g,
1350
+ interpolate: /{{{([\s\S]+?)}}}/g,
1351
+ escape: /{{([^}]+?)}}(?!})/g
1352
+ };
1353
 
1354
+ return _.template( rawTemplate, options );
1355
+ };
 
 
 
 
1356
 
1357
+ App = Marionette.Application.extend( {
1358
+ helpers: require( 'elementor-editor-utils/helpers' ),
1359
+ heartbeat: require( 'elementor-editor-utils/heartbeat' ),
1360
+ imagesManager: require( 'elementor-editor-utils/images-manager' ),
1361
+ debug: require( 'elementor-editor-utils/debug' ),
1362
+ schemes: require( 'elementor-editor-utils/schemes' ),
1363
+ presetsFactory: require( 'elementor-editor-utils/presets-factory' ),
1364
+ introduction: require( 'elementor-editor-utils/introduction' ),
1365
+ templates: require( 'elementor-templates/manager' ),
1366
+ ajax: require( 'elementor-editor-utils/ajax' ),
1367
+ conditions: require( 'elementor-editor-utils/conditions' ),
1368
+ hotKeys: require( 'elementor-utils/hot-keys' ),
1369
+ history: require( 'modules/history/assets/js/module' ),
1370
 
1371
+ channels: {
1372
+ editor: Backbone.Radio.channel( 'ELEMENTOR:editor' ),
1373
+ data: Backbone.Radio.channel( 'ELEMENTOR:data' ),
1374
+ panelElements: Backbone.Radio.channel( 'ELEMENTOR:panelElements' ),
1375
+ dataEditMode: Backbone.Radio.channel( 'ELEMENTOR:editmode' ),
1376
+ deviceMode: Backbone.Radio.channel( 'ELEMENTOR:deviceMode' ),
1377
+ templates: Backbone.Radio.channel( 'ELEMENTOR:templates' )
1378
+ },
1379
 
1380
+ // Exporting modules that can be used externally
1381
+ modules: {
1382
+ element: require( 'elementor-models/element' ),
1383
+ WidgetView: require( 'elementor-views/widget' ),
1384
+ panel: {
1385
+ Menu: require( 'elementor-panel/pages/menu/menu' )
1386
+ },
1387
+ controls: {
1388
+ Base: require( 'elementor-views/controls/base' ),
1389
+ BaseMultiple: require( 'elementor-views/controls/base-multiple' ),
1390
+ Color: require( 'elementor-views/controls/color' ),
1391
+ Dimensions: require( 'elementor-views/controls/dimensions' ),
1392
+ Image_dimensions: require( 'elementor-views/controls/image-dimensions' ),
1393
+ Media: require( 'elementor-views/controls/media' ),
1394
+ Slider: require( 'elementor-views/controls/slider' ),
1395
+ Wysiwyg: require( 'elementor-views/controls/wysiwyg' ),
1396
+ Choose: require( 'elementor-views/controls/choose' ),
1397
+ Url: require( 'elementor-views/controls/base-multiple' ),
1398
+ Font: require( 'elementor-views/controls/font' ),
1399
+ Section: require( 'elementor-views/controls/section' ),
1400
+ Tab: require( 'elementor-views/controls/tab' ),
1401
+ Repeater: require( 'elementor-views/controls/repeater' ),
1402
+ Wp_widget: require( 'elementor-views/controls/wp_widget' ),
1403
+ Icon: require( 'elementor-views/controls/icon' ),
1404
+ Gallery: require( 'elementor-views/controls/gallery' ),
1405
+ Select2: require( 'elementor-views/controls/select2' ),
1406
+ Date_time: require( 'elementor-views/controls/date-time' ),
1407
+ Code: require( 'elementor-views/controls/code' ),
1408
+ Box_shadow: require( 'elementor-views/controls/box-shadow' ),
1409
+ Text_shadow: require( 'elementor-views/controls/box-shadow' ),
1410
+ Structure: require( 'elementor-views/controls/structure' ),
1411
+ Animation: require( 'elementor-views/controls/select2' ),
1412
+ Hover_animation: require( 'elementor-views/controls/select2' ),
1413
+ Order: require( 'elementor-views/controls/order' ),
1414
+ Switcher: require( 'elementor-views/controls/switcher' ),
1415
+ Number: require( 'elementor-views/controls/number' )
1416
+ },
1417
+ templateLibrary: {
1418
+ ElementsCollectionView: require( 'elementor-panel/pages/elements/views/elements' )
1419
+ }
1420
  },
1421
 
1422
+ _defaultDeviceMode: 'desktop',
 
 
1423
 
1424
+ addControlView: function( controlID, ControlView ) {
1425
+ this.modules.controls[ controlID[0].toUpperCase() + controlID.slice( 1 ) ] = ControlView;
1426
  },
1427
 
1428
+ getElementData: function( modelElement ) {
1429
+ var elType = modelElement.get( 'elType' );
1430
 
1431
+ if ( 'widget' === elType ) {
1432
+ var widgetType = modelElement.get( 'widgetType' );
1433
 
1434
+ if ( ! this.config.widgets[ widgetType ] ) {
1435
+ return false;
1436
+ }
1437
 
1438
+ return this.config.widgets[ widgetType ];
1439
+ }
1440
 
1441
+ if ( ! this.config.elements[ elType ] ) {
1442
+ return false;
1443
+ }
1444
 
1445
+ return this.config.elements[ elType ];
1446
+ },
1447
 
1448
+ getElementControls: function( modelElement ) {
1449
+ var self = this,
1450
+ elementData = self.getElementData( modelElement );
1451
 
1452
+ if ( ! elementData ) {
1453
+ return false;
 
1454
  }
 
 
1455
 
1456
+ var elType = modelElement.get( 'elType' ),
1457
+ isInner = modelElement.get( 'isInner' ),
1458
+ controls = {};
1459
 
1460
+ _.each( elementData.controls, function( controlData, controlKey ) {
1461
+ if ( isInner && controlData.hide_in_inner || ! isInner && controlData.hide_in_top ) {
1462
+ return;
1463
+ }
1464
 
1465
+ controls[ controlKey ] = _.extend( {}, self.config.controls[ controlData.type ], controlData );
1466
+ } );
1467
 
1468
+ return controls;
1469
+ },
1470
 
1471
+ getControlView: function( controlID ) {
1472
+ return this.modules.controls[ controlID[0].toUpperCase() + controlID.slice( 1 ) ] || this.modules.controls.Base;
1473
+ },
1474
 
1475
+ getPanelView: function() {
1476
+ return this.getRegion( 'panel' ).currentView;
1477
  },
1478
 
1479
+ initComponents: function() {
1480
+ var EventManager = require( 'elementor-utils/hooks' ),
1481
+ Settings = require( 'elementor-editor/settings/settings' );
 
1482
 
1483
+ this.hooks = new EventManager();
1484
 
1485
+ this.settings = new Settings();
 
1486
 
1487
+ /**
1488
+ * @deprecated - use `this.settings.page` instead
1489
+ */
1490
+ this.pageSettings = this.settings.page;
1491
 
1492
+ this.templates.init();
1493
 
1494
+ this.initDialogsManager();
1495
 
1496
+ this.heartbeat.init();
 
 
 
 
1497
 
1498
+ this.ajax.init();
 
1499
  },
1500
 
1501
+ initDialogsManager: function() {
1502
+ this.dialogsManager = new DialogsManager.Instance();
1503
  },
1504
 
1505
+ initElements: function() {
1506
+ var ElementModel = elementor.modules.element,
1507
+ config = this.config.data;
 
 
 
 
 
 
 
 
 
1508
 
1509
+ // If it's an reload, use the not-saved data
1510
+ if ( this.elements ) {
1511
+ config = this.elements.toJSON();
1512
+ }
1513
 
1514
+ this.elements = new ElementModel.Collection( config );
 
1515
  },
1516
 
1517
+ initPreview: function() {
1518
+ this.$previewWrapper = Backbone.$( '#elementor-preview' );
 
1519
 
1520
+ this.$previewResponsiveWrapper = Backbone.$( '#elementor-preview-responsive-wrapper' );
 
1521
 
1522
+ var previewIframeId = 'elementor-preview-iframe';
1523
 
1524
+ // Make sure the iFrame does not exist.
1525
+ if ( ! Backbone.$( '#' + previewIframeId ).length ) {
1526
+ var previewIFrame = document.createElement( 'iframe' );
 
 
 
1527
 
1528
+ previewIFrame.id = previewIframeId;
1529
+ previewIFrame.src = this.config.preview_link + '&' + ( new Date().getTime() );
 
 
 
 
 
 
1530
 
1531
+ this.$previewResponsiveWrapper.append( previewIFrame );
1532
+ }
1533
 
1534
+ this.$preview = Backbone.$( '#' + previewIframeId );
 
1535
 
1536
+ this.$preview.on( 'load', _.bind( this.onPreviewLoaded, this ) );
1537
+ },
1538
 
1539
+ initFrontend: function() {
1540
+ var frontendWindow = this.$preview[0].contentWindow;
1541
 
1542
+ window.elementorFrontend = frontendWindow.elementorFrontend;
1543
 
1544
+ frontendWindow.elementor = this;
 
1545
 
1546
+ elementorFrontend.init();
 
1547
 
1548
+ elementorFrontend.elementsHandler.initHandlers();
1549
 
1550
+ this.trigger( 'frontend:init' );
 
1551
  },
1552
 
1553
+ initClearPageDialog: function() {
1554
+ var self = this,
1555
+ dialog;
 
 
 
 
 
 
1556
 
1557
+ self.getClearPageDialog = function() {
1558
+ if ( dialog ) {
1559
+ return dialog;
1560
+ }
1561
 
1562
+ dialog = this.dialogsManager.createWidget( 'confirm', {
1563
+ id: 'elementor-clear-page-dialog',
1564
+ headerMessage: elementor.translate( 'clear_page' ),
1565
+ message: elementor.translate( 'dialog_confirm_clear_page' ),
1566
+ position: {
1567
+ my: 'center center',
1568
+ at: 'center center'
1569
+ },
1570
+ strings: {
1571
+ confirm: elementor.translate( 'delete' ),
1572
+ cancel: elementor.translate( 'cancel' )
1573
+ },
1574
+ onConfirm: function() {
1575
+ self.getRegion( 'sections' ).currentView.collection.reset();
1576
+ }
1577
+ } );
1578
 
1579
+ return dialog;
1580
+ };
 
1581
  },
1582
 
1583
+ initHotKeys: function() {
1584
+ var keysDictionary = {
1585
+ del: 46,
1586
+ d: 68,
1587
+ l: 76,
1588
+ m: 77,
1589
+ p: 80,
1590
+ s: 83
1591
+ };
1592
 
1593
+ var $ = jQuery,
1594
+ hotKeysHandlers = {},
1595
+ hotKeysManager = this.hotKeys;
1596
 
1597
+ hotKeysHandlers[ keysDictionary.del ] = {
1598
+ deleteElement: {
1599
+ isWorthHandling: function( event ) {
1600
+ var isEditorOpen = 'editor' === elementor.getPanelView().getCurrentPageName(),
1601
+ isInputTarget = $( event.target ).is( ':input, .elementor-input' );
1602
 
1603
+ return isEditorOpen && ! isInputTarget;
1604
+ },
1605
+ handle: function() {
1606
+ elementor.getPanelView().getCurrentPageView().getOption( 'editedElementView' ).confirmRemove();
1607
+ }
1608
+ }
1609
+ };
1610
 
1611
+ hotKeysHandlers[ keysDictionary.d ] = {
1612
+ /* Waiting for CTRL+Z / CTRL+Y
1613
+ duplicateElement: {
1614
+ isWorthHandling: function( event ) {
1615
+ return self.isControlEvent( event );
1616
+ },
1617
+ handle: function() {
1618
+ var panel = elementor.getPanelView();
1619
 
1620
+ if ( 'editor' !== panel.getCurrentPageName() ) {
1621
+ return;
1622
+ }
1623
 
1624
+ panel.getCurrentPageView().getOption( 'editedElementView' ).duplicate();
1625
+ }
1626
+ }*/
1627
+ };
1628
 
1629
+ hotKeysHandlers[ keysDictionary.l ] = {
1630
+ showTemplateLibrary: {
1631
+ isWorthHandling: function( event ) {
1632
+ return hotKeysManager.isControlEvent( event ) && event.shiftKey;
1633
+ },
1634
+ handle: function() {
1635
+ elementor.templates.showTemplatesModal();
1636
+ }
1637
+ }
1638
+ };
1639
 
1640
+ hotKeysHandlers[ keysDictionary.m ] = {
1641
+ changeDeviceMode: {
1642
+ devices: [ 'desktop', 'tablet', 'mobile' ],
1643
+ isWorthHandling: function( event ) {
1644
+ return hotKeysManager.isControlEvent( event ) && event.shiftKey;
1645
+ },
1646
+ handle: function() {
1647
+ var currentDeviceMode = elementor.channels.deviceMode.request( 'currentMode' ),
1648
+ modeIndex = this.devices.indexOf( currentDeviceMode );
1649
 
1650
+ modeIndex++;
1651
 
1652
+ if ( modeIndex >= this.devices.length ) {
1653
+ modeIndex = 0;
1654
+ }
1655
 
1656
+ elementor.changeDeviceMode( this.devices[ modeIndex ] );
1657
+ }
1658
+ }
1659
+ };
1660
 
1661
+ hotKeysHandlers[ keysDictionary.p ] = {
1662
+ changeEditMode: {
1663
+ isWorthHandling: function( event ) {
1664
+ return hotKeysManager.isControlEvent( event );
1665
+ },
1666
+ handle: function() {
1667
+ elementor.getPanelView().modeSwitcher.currentView.toggleMode();
1668
+ }
1669
+ }
1670
+ };
1671
 
1672
+ hotKeysHandlers[ keysDictionary.s ] = {
1673
+ saveEditor: {
1674
+ isWorthHandling: function( event ) {
1675
+ return hotKeysManager.isControlEvent( event );
1676
+ },
1677
+ handle: function() {
1678
+ elementor.getPanelView().getFooterView()._publishBuilder();
1679
+ }
1680
+ }
1681
+ };
1682
 
1683
+ _.each( hotKeysHandlers, function( handlers, keyCode ) {
1684
+ _.each( handlers, function( handler, handlerName ) {
1685
+ hotKeysManager.addHotKeyHandler( keyCode, handlerName, handler );
1686
+ } );
1687
+ } );
1688
 
1689
+ hotKeysManager.bindListener( this.$window.add( elementorFrontend.getElements( '$window' ) ) );
1690
+ },
1691
 
1692
+ preventClicksInsideEditor: function() {
1693
+ this.$previewContents.on( 'click', function( event ) {
1694
+ var $target = Backbone.$( event.target ),
1695
+ editMode = elementor.channels.dataEditMode.request( 'activeMode' ),
1696
+ isClickInsideElementor = !! $target.closest( '#elementor' ).length,
1697
+ isTargetInsideDocument = this.contains( $target[0] );
1698
 
1699
+ if ( isClickInsideElementor && 'edit' === editMode || ! isTargetInsideDocument ) {
1700
+ return;
1701
+ }
1702
 
1703
+ if ( $target.closest( 'a' ).length ) {
1704
+ event.preventDefault();
1705
+ }
1706
 
1707
+ if ( ! isClickInsideElementor ) {
1708
+ var panelView = elementor.getPanelView();
 
 
1709
 
1710
+ if ( 'elements' !== panelView.getCurrentPageName() ) {
1711
+ panelView.setPage( 'elements' );
1712
+ }
1713
+ }
1714
+ } );
1715
  },
1716
 
1717
+ onStart: function() {
1718
+ this.$window = Backbone.$( window );
 
1719
 
1720
+ NProgress.start();
1721
+ NProgress.inc( 0.2 );
1722
 
1723
+ this.config = ElementorConfig;
 
 
1724
 
1725
+ Backbone.Radio.DEBUG = false;
1726
+ Backbone.Radio.tuneIn( 'ELEMENTOR' );
1727
 
1728
+ this.initComponents();
 
 
1729
 
1730
+ this.channels.dataEditMode.reply( 'activeMode', 'edit' );
 
 
 
1731
 
1732
+ this.listenTo( this.channels.dataEditMode, 'switch', this.onEditModeSwitched );
 
1733
 
1734
+ this.setWorkSaver();
 
 
1735
 
1736
+ this.initClearPageDialog();
 
1737
 
1738
+ this.$window.trigger( 'elementor:init' );
 
 
1739
 
1740
+ this.initPreview();
1741
+
1742
+ this.logSite();
1743
  },
1744
 
1745
+ onPreviewLoaded: function() {
1746
+ NProgress.done();
1747
 
1748
+ this.$previewContents = this.$preview.contents();
 
 
1749
 
1750
+ var $previewElementorEl = this.$previewContents.find( '#elementor' );
1751
 
1752
+ if ( ! $previewElementorEl.length ) {
1753
+ this.onPreviewElNotFound();
1754
+ return;
1755
+ }
1756
 
1757
+ this.initFrontend();
 
 
1758
 
1759
+ this.initElements();
 
 
1760
 
1761
+ this.initHotKeys();
 
1762
 
1763
+ var iframeRegion = new Marionette.Region( {
1764
+ // Make sure you get the DOM object out of the jQuery object
1765
+ el: $previewElementorEl[0]
1766
+ } );
 
1767
 
1768
+ this.schemes.init();
 
 
 
 
1769
 
1770
+ this.schemes.printSchemesStyle();
 
 
 
 
 
 
 
 
 
 
 
1771
 
1772
+ this.preventClicksInsideEditor();
 
1773
 
1774
+ var Preview = require( 'elementor-views/preview' ),
1775
+ PanelLayoutView = require( 'elementor-layouts/panel/panel' );
 
 
 
1776
 
1777
+ this.addRegions( {
1778
+ sections: iframeRegion,
1779
+ panel: '#elementor-panel'
1780
  } );
 
 
 
 
 
 
 
 
 
 
1781
 
1782
+ this.getRegion( 'sections' ).show( new Preview( {
1783
+ collection: this.elements
1784
+ } ) );
1785
 
1786
+ this.getRegion( 'panel' ).show( new PanelLayoutView() );
 
 
1787
 
1788
+ this.$previewContents
1789
+ .children() // <html>
1790
+ .addClass( 'elementor-html' )
1791
+ .children( 'body' )
1792
+ .addClass( 'elementor-editor-active' );
1793
 
1794
+ this.setResizablePanel();
 
 
 
1795
 
1796
+ this.changeDeviceMode( this._defaultDeviceMode );
1797
 
1798
+ Backbone.$( '#elementor-loading, #elementor-preview-loading' ).fadeOut( 600 );
 
 
1799
 
1800
+ _.defer( function() {
1801
+ elementorFrontend.getElements( 'window' ).jQuery.holdReady( false );
1802
+ } );
 
 
 
1803
 
1804
+ this.enqueueTypographyFonts();
1805
+ //this.introduction.startOnLoadIntroduction(); // TEMP Removed
1806
 
1807
+ this.onEditModeSwitched();
 
 
 
 
 
 
 
 
 
 
 
 
1808
 
1809
+ this.trigger( 'preview:loaded' );
 
 
 
 
 
 
1810
  },
1811
 
1812
+ onEditModeSwitched: function() {
1813
+ var activeMode = this.channels.dataEditMode.request( 'activeMode' );
1814
+
1815
+ if ( 'edit' === activeMode ) {
1816
+ this.exitPreviewMode();
1817
+ } else {
1818
+ this.enterPreviewMode( 'preview' === activeMode );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1819
  }
1820
  },
1821
 
1822
+ onPreviewElNotFound: function() {
1823
+ var dialog = this.dialogsManager.createWidget( 'confirm', {
1824
+ id: 'elementor-fatal-error-dialog',
1825
+ headerMessage: elementor.translate( 'preview_el_not_found_header' ),
1826
+ message: elementor.translate( 'preview_el_not_found_message' ),
1827
+ position: {
1828
+ my: 'center center',
1829
+ at: 'center center'
1830
+ },
1831
+ strings: {
1832
+ confirm: elementor.translate( 'learn_more' ),
1833
+ cancel: elementor.translate( 'go_back' )
1834
+ },
1835
+ onConfirm: function() {
1836
+ open( elementor.config.help_the_content_url, '_blank' );
1837
+ },
1838
+ onCancel: function() {
1839
+ parent.history.go( -1 );
1840
+ },
1841
+ hideOnButtonClick: false
1842
+ } );
1843
 
1844
+ dialog.show();
 
1845
  },
1846
 
1847
+ setFlagEditorChange: function( status ) {
1848
+ elementor.channels.editor
1849
+ .reply( 'status', status )
1850
+ .trigger( 'status:change', status );
1851
+ },
1852
 
1853
+ isEditorChanged: function() {
1854
+ return ( true === elementor.channels.editor.request( 'status' ) );
1855
+ },
1856
 
1857
+ setWorkSaver: function() {
1858
+ this.$window.on( 'beforeunload', function() {
1859
+ if ( elementor.isEditorChanged() ) {
1860
+ return elementor.translate( 'before_unload_alert' );
1861
  }
1862
+ } );
1863
+ },
1864
 
1865
+ setResizablePanel: function() {
1866
+ var self = this,
1867
+ side = elementor.config.is_rtl ? 'right' : 'left';
1868
 
1869
+ self.panel.$el.resizable( {
1870
+ handles: elementor.config.is_rtl ? 'w' : 'e',
1871
+ minWidth: 200,
1872
+ maxWidth: 680,
1873
+ start: function() {
1874
+ self.$previewWrapper
1875
+ .addClass( 'ui-resizable-resizing' )
1876
+ .css( 'pointer-events', 'none' );
1877
+ },
1878
+ stop: function() {
1879
+ self.$previewWrapper
1880
+ .removeClass( 'ui-resizable-resizing' )
1881
+ .css( 'pointer-events', '' );
1882
 
1883
+ elementor.channels.data.trigger( 'scrollbar:update' );
1884
+ },
1885
+ resize: function( event, ui ) {
1886
+ self.$previewWrapper
1887
+ .css( side, ui.size.width );
1888
+ }
1889
+ } );
1890
  },
1891
 
1892
+ enterPreviewMode: function( hidePanel ) {
1893
+ var $elements = this.$previewContents.find( 'body' );
 
1894
 
1895
+ if ( hidePanel ) {
1896
+ $elements = $elements.add( 'body' );
1897
  }
1898
 
1899
+ $elements
1900
+ .removeClass( 'elementor-editor-active' )
1901
+ .addClass( 'elementor-editor-preview' );
 
 
 
 
 
1902
 
1903
+ if ( hidePanel ) {
1904
+ // Handle panel resize
1905
+ this.$previewWrapper.css( elementor.config.is_rtl ? 'right' : 'left', '' );
1906
 
1907
+ this.panel.$el.css( 'width', '' );
1908
+ }
1909
  },
1910
 
1911
+ exitPreviewMode: function() {
1912
+ this.$previewContents
1913
+ .find( 'body' )
1914
+ .add( 'body' )
1915
+ .removeClass( 'elementor-editor-preview' )
1916
+ .addClass( 'elementor-editor-active' );
1917
  },
1918
 
1919
+ changeEditMode: function( newMode ) {
1920
+ var dataEditMode = elementor.channels.dataEditMode,
1921
+ oldEditMode = dataEditMode.request( 'activeMode' );
1922
 
1923
+ dataEditMode.reply( 'activeMode', newMode );
 
 
1924
 
1925
+ if ( newMode !== oldEditMode ) {
1926
+ dataEditMode.trigger( 'switch', newMode );
1927
+ }
1928
+ },
1929
 
1930
+ saveEditor: function( options ) {
1931
+ options = _.extend( {
1932
+ status: 'draft',
1933
+ onSuccess: null
1934
+ }, options );
1935
 
1936
+ var self = this,
1937
+ newData = elementor.elements.toJSON( { removeDefault: true } );
 
 
1938
 
1939
+ return this.ajax.send( 'save_builder', {
1940
+ data: {
1941
+ post_id: this.config.post_id,
1942
+ status: options.status,
1943
+ data: JSON.stringify( newData )
1944
+ },
1945
+ success: function( data ) {
1946
+ self.setFlagEditorChange( false );
1947
 
1948
+ self.config.data = newData;
1949
 
1950
+ self.channels.editor.trigger( 'saved', data );
1951
 
1952
+ if ( _.isFunction( options.onSuccess ) ) {
1953
+ options.onSuccess.call( this, data );
1954
+ }
1955
+ }
1956
+ } );
1957
+ },
1958
 
1959
+ reloadPreview: function() {
1960
+ Backbone.$( '#elementor-preview-loading' ).show();
1961
 
1962
+ this.$preview[0].contentWindow.location.reload( true );
1963
  },
1964
 
1965
+ clearPage: function() {
1966
+ this.getClearPageDialog().show();
1967
  },
1968
 
1969
+ changeDeviceMode: function( newDeviceMode ) {
1970
+ var oldDeviceMode = this.channels.deviceMode.request( 'currentMode' );
 
1971
 
1972
+ if ( oldDeviceMode === newDeviceMode ) {
1973
+ return;
 
1974
  }
1975
 
1976
+ Backbone.$( 'body' )
1977
+ .removeClass( 'elementor-device-' + oldDeviceMode )
1978
+ .addClass( 'elementor-device-' + newDeviceMode );
1979
 
1980
+ this.channels.deviceMode
1981
+ .reply( 'previousMode', oldDeviceMode )
1982
+ .reply( 'currentMode', newDeviceMode )
1983
+ .trigger( 'change' );
1984
+ },
1985
 
1986
+ enqueueTypographyFonts: function() {
1987
+ var self = this,
1988
+ typographyScheme = this.schemes.getScheme( 'typography' );
1989
 
1990
+ _.each( typographyScheme.items, function( item ) {
1991
+ self.helpers.enqueueFont( item.value.font_family );
1992
+ } );
1993
+ },
1994
 
1995
+ translate: function( stringKey, templateArgs, i18nStack ) {
1996
+ if ( ! i18nStack ) {
1997
+ i18nStack = this.config.i18n;
1998
+ }
1999
 
2000
+ var string = i18nStack[ stringKey ];
 
2001
 
2002
+ if ( undefined === string ) {
2003
+ string = stringKey;
2004
  }
2005
 
2006
+ if ( templateArgs ) {
2007
+ string = string.replace( /{(\d+)}/g, function( match, number ) {
2008
+ return undefined !== templateArgs[ number ] ? templateArgs[ number ] : match;
2009
+ } );
2010
+ }
2011
 
2012
+ return string;
2013
  },
2014
 
2015
+ compareVersions: function( versionA, versionB, operator ) {
2016
+ var prepareVersion = function( version ) {
2017
+ version = version + '';
 
2018
 
2019
+ return version.replace( /[^\d.]+/, '.-1.' );
2020
+ };
2021
 
2022
+ versionA = prepareVersion( versionA );
2023
+ versionB = prepareVersion( versionB );
2024
 
2025
+ if ( versionA === versionB ) {
2026
+ return ! operator || /^={2,3}$/.test( operator );
2027
+ }
2028
 
2029
+ var versionAParts = versionA.split( '.' ).map( Number ),
2030
+ versionBParts = versionB.split( '.' ).map( Number ),
2031
+ longestVersionParts = Math.max( versionAParts.length, versionBParts.length );
2032
 
2033
+ for ( var i = 0; i < longestVersionParts; i++ ) {
2034
+ var valueA = versionAParts[ i ] || 0,
2035
+ valueB = versionBParts[ i ] || 0;
2036
 
2037
+ if ( valueA !== valueB ) {
2038
+ return this.conditions.compare( valueA, valueB, operator );
 
2039
  }
2040
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2041
  },
2042
 
2043
+ logSite: function() {
2044
+ var text = '',
2045
+ style = '';
 
 
 
2046
 
2047
+ if ( -1 !== navigator.userAgent.search( 'Firefox' ) ) {
2048
+ var asciiText = [
2049
+ ' ;;;;;;;;;;;;;;; ',
2050
+ ';;; ;; ;;;',
2051
+ ';;; ;;;;;;;;;;;;',
2052
+ ';;; ;;;;;;;;;;;;',
2053
+ ';;; ;; ;;;',
2054
+ ';;; ;;;;;;;;;;;;',
2055
+ ';;; ;;;;;;;;;;;;',
2056
+ ';;; ;; ;;;',
2057
+ ' ;;;;;;;;;;;;;;; '
2058
+ ];
2059
 
2060
+ text += '%c' + asciiText.join( '\n' ) + '\n';
 
 
2061
 
2062
+ style = 'color: #C42961';
2063
+ } else {
2064
+ text += '%c00';
2065
 
2066
+ style = 'line-height: 1.6; font-size: 20px; background-image: url("' + elementor.config.assets_url + 'images/logo-icon.png"); color: transparent; background-repeat: no-repeat; background-size: cover';
2067
+ }
 
 
 
 
2068
 
2069
+ text += '%c\nLove using Elementor? Join our growing community of Elementor developers: %chttps://github.com/pojome/elementor';
 
2070
 
2071
+ setTimeout( console.log.bind( console, text, style, 'color: #9B0A46', '' ) );
2072
+ }
2073
+ } );
2074
 
2075
+ module.exports = ( window.elementor = new App() ).start();
2076
 
2077
+ },{"elementor-editor-utils/ajax":62,"elementor-editor-utils/conditions":63,"elementor-editor-utils/debug":65,"elementor-editor-utils/heartbeat":66,"elementor-editor-utils/helpers":67,"elementor-editor-utils/images-manager":68,"elementor-editor-utils/introduction":69,"elementor-editor-utils/presets-factory":72,"elementor-editor-utils/schemes":73,"elementor-editor/settings/settings":61,"elementor-layouts/panel/panel":51,"elementor-models/element":54,"elementor-panel/pages/elements/views/elements":38,"elementor-panel/pages/menu/menu":41,"elementor-templates/manager":8,"elementor-utils/hooks":114,"elementor-utils/hot-keys":115,"elementor-views/controls/base":86,"elementor-views/controls/base-multiple":84,"elementor-views/controls/box-shadow":87,"elementor-views/controls/choose":88,"elementor-views/controls/code":89,"elementor-views/controls/color":90,"elementor-views/controls/date-time":91,"elementor-views/controls/dimensions":92,"elementor-views/controls/font":93,"elementor-views/controls/gallery":94,"elementor-views/controls/icon":95,"elementor-views/controls/image-dimensions":96,"elementor-views/controls/media":97,"elementor-views/controls/number":98,"elementor-views/controls/order":99,"elementor-views/controls/repeater":101,"elementor-views/controls/section":102,"elementor-views/controls/select2":103,"elementor-views/controls/slider":104,"elementor-views/controls/structure":105,"elementor-views/controls/switcher":106,"elementor-views/controls/tab":107,"elementor-views/controls/wp_widget":108,"elementor-views/controls/wysiwyg":109,"elementor-views/preview":111,"elementor-views/widget":113,"modules/history/assets/js/module":125}],27:[function(require,module,exports){
2078
+ var EditModeItemView;
2079
 
2080
+ EditModeItemView = Marionette.ItemView.extend( {
2081
+ template: '#tmpl-elementor-mode-switcher-content',
2082
 
2083
+ id: 'elementor-mode-switcher-inner',
2084
 
2085
+ ui: {
2086
+ previewButton: '#elementor-mode-switcher-preview-input',
2087
+ previewLabel: '#elementor-mode-switcher-preview',
2088
+ previewLabelA11y: '#elementor-mode-switcher-preview .elementor-screen-only'
2089
+ },
2090
 
2091
+ events: {
2092
+ 'change @ui.previewButton': 'onPreviewButtonChange'
2093
+ },
2094
 
2095
+ initialize: function() {
2096
+ this.listenTo( elementor.channels.dataEditMode, 'switch', this.onEditModeChanged );
2097
+ },
2098
 
2099
+ getCurrentMode: function() {
2100
+ return this.ui.previewButton.is( ':checked' ) ? 'preview' : 'edit';
2101
+ },
2102
 
2103
+ setMode: function( mode ) {
2104
+ this.ui.previewButton
2105
+ .prop( 'checked', 'preview' === mode )
2106
+ .trigger( 'change' );
2107
+ },
2108
 
2109
+ toggleMode: function() {
2110
+ this.setMode( this.ui.previewButton.prop( 'checked' ) ? 'edit' : 'preview' );
2111
  },
2112
 
2113
+ onRender: function() {
2114
+ this.onEditModeChanged();
2115
+ },
2116
 
2117
+ onPreviewButtonChange: function() {
2118
+ elementor.changeEditMode( this.getCurrentMode() );
2119
+ },
2120
 
2121
+ onEditModeChanged: function() {
2122
+ var activeMode = elementor.channels.dataEditMode.request( 'activeMode' ),
2123
+ title = elementor.translate( 'preview' === activeMode ? 'back_to_editor' : 'preview' );
2124
 
2125
+ this.ui.previewLabel.attr( 'title', title );
2126
+ this.ui.previewLabelA11y.text( title );
2127
+ }
2128
+ } );
2129
 
2130
+ module.exports = EditModeItemView;
2131
 
2132
+ },{}],28:[function(require,module,exports){
2133
+ var PanelFooterItemView;
2134
 
2135
+ PanelFooterItemView = Marionette.ItemView.extend( {
2136
+ template: '#tmpl-elementor-panel-footer-content',
2137
 
2138
+ tagName: 'nav',
 
 
 
2139
 
2140
+ id: 'elementor-panel-footer-tools',
2141
 
2142
+ possibleRotateModes: [ 'portrait', 'landscape' ],
2143
 
2144
+ ui: {
2145
+ menuButtons: '.elementor-panel-footer-tool',
2146
+ deviceModeIcon: '#elementor-panel-footer-responsive > i',
2147
+ deviceModeButtons: '#elementor-panel-footer-responsive .elementor-panel-footer-sub-menu-item',
2148
+ buttonSave: '#elementor-panel-footer-save',
2149
+ buttonSaveButton: '#elementor-panel-footer-save .elementor-button',
2150
+ buttonPublish: '#elementor-panel-footer-publish',
2151
+ watchTutorial: '#elementor-panel-footer-watch-tutorial',
2152
+ showTemplates: '#elementor-panel-footer-templates-modal',
2153
+ saveTemplate: '#elementor-panel-footer-save-template',
2154
+ history: '#elementor-panel-footer-history'
2155
+ },
2156
 
2157
+ events: {
2158
+ 'click @ui.deviceModeButtons': 'onClickResponsiveButtons',
2159
+ 'click @ui.buttonSave': 'onClickButtonSave',
2160
+ 'click @ui.buttonPublish': 'onClickButtonPublish',
2161
+ 'click @ui.watchTutorial': 'onClickWatchTutorial',
2162
+ 'click @ui.showTemplates': 'onClickShowTemplates',
2163
+ 'click @ui.saveTemplate': 'onClickSaveTemplate',
2164
+ 'click @ui.history': 'onClickHistory'
2165
+ },
2166
 
2167
+ initialize: function() {
2168
+ this._initDialog();
 
 
2169
 
2170
+ this.listenTo( elementor.channels.editor, 'status:change', this.onEditorChanged )
2171
+ .listenTo( elementor.channels.deviceMode, 'change', this.onDeviceModeChange );
2172
+ },
2173
 
2174
+ _initDialog: function() {
2175
+ var dialog;
2176
 
2177
+ this.getDialog = function() {
2178
+ if ( ! dialog ) {
2179
+ var $ = Backbone.$,
2180
+ $dialogMessage = $( '<div>', {
2181
+ 'class': 'elementor-dialog-message'
2182
+ } ),
2183
+ $messageIcon = $( '<i>', {
2184
+ 'class': 'fa fa-check-circle'
2185
+ } ),
2186
+ $messageText = $( '<div>', {
2187
+ 'class': 'elementor-dialog-message-text'
2188
+ } ).text( elementor.translate( 'saved' ) );
2189
 
2190
+ $dialogMessage.append( $messageIcon, $messageText );
2191
 
2192
+ dialog = elementor.dialogsManager.createWidget( 'simple', {
2193
+ id: 'elementor-saved-popup',
2194
+ position: {
2195
+ element: 'message',
2196
+ of: 'widget'
2197
+ },
2198
+ hide: {
2199
+ auto: true,
2200
+ autoDelay: 1500
2201
+ }
2202
+ } );
2203
 
2204
+ dialog.setMessage( $dialogMessage );
2205
+ }
2206
 
2207
+ return dialog;
2208
+ };
2209
+ },
2210
 
2211
+ _publishBuilder: function() {
2212
+ var self = this;
2213
 
2214
+ var options = {
2215
+ status: 'publish',
2216
+ onSuccess: function() {
2217
+ self.getDialog().show();
2218
 
2219
+ self.ui.buttonSaveButton.removeClass( 'elementor-button-state' );
 
2220
 
2221
+ NProgress.done();
2222
+ }
2223
+ };
2224
 
2225
+ self.ui.buttonSaveButton.addClass( 'elementor-button-state' );
 
 
 
 
 
2226
 
2227
+ NProgress.start();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2228
 
2229
+ elementor.saveEditor( options );
2230
  },
2231
 
2232
+ _saveBuilderDraft: function() {
2233
+ elementor.saveEditor();
 
 
2234
  },
2235
 
2236
+ getDeviceModeButton: function( deviceMode ) {
2237
+ return this.ui.deviceModeButtons.filter( '[data-device-mode="' + deviceMode + '"]' );
2238
  },
2239
 
2240
+ onPanelClick: function( event ) {
2241
+ var $target = Backbone.$( event.target ),
2242
+ isClickInsideOfTool = $target.closest( '.elementor-panel-footer-sub-menu-wrapper' ).length;
 
 
 
 
2243
 
2244
+ if ( isClickInsideOfTool ) {
2245
+ return;
2246
+ }
2247
 
2248
+ var $tool = $target.closest( '.elementor-panel-footer-tool' ),
2249
+ isClosedTool = $tool.length && ! $tool.hasClass( 'elementor-open' );
 
 
 
 
 
 
 
 
 
 
 
2250
 
2251
+ this.ui.menuButtons.filter( ':not(.elementor-leave-open)' ).removeClass( 'elementor-open' );
2252
+
2253
+ if ( isClosedTool ) {
2254
+ $tool.addClass( 'elementor-open' );
2255
+ }
 
 
2256
  },
2257
 
2258
+ onEditorChanged: function() {
2259
+ this.ui.buttonSave.toggleClass( 'elementor-save-active', elementor.isEditorChanged() );
2260
+ },
2261
 
2262
+ onDeviceModeChange: function() {
2263
+ var previousDeviceMode = elementor.channels.deviceMode.request( 'previousMode' ),
2264
+ currentDeviceMode = elementor.channels.deviceMode.request( 'currentMode' );
2265
 
2266
+ this.getDeviceModeButton( previousDeviceMode ).removeClass( 'active' );
 
 
2267
 
2268
+ this.getDeviceModeButton( currentDeviceMode ).addClass( 'active' );
 
 
2269
 
2270
+ // Change the footer icon
2271
+ this.ui.deviceModeIcon.removeClass( 'eicon-device-' + previousDeviceMode ).addClass( 'eicon-device-' + currentDeviceMode );
2272
  },
2273
 
2274
+ onClickButtonSave: function() {
2275
+ //this._saveBuilderDraft();
2276
+ this._publishBuilder();
 
 
 
2277
  },
2278
 
2279
+ onClickButtonPublish: function( event ) {
2280
+ // Prevent click on save button
2281
+ event.stopPropagation();
 
 
2282
 
2283
+ this._publishBuilder();
 
 
2284
  },
2285
 
2286
+ onClickResponsiveButtons: function( event ) {
2287
+ var $clickedButton = this.$( event.currentTarget ),
2288
+ newDeviceMode = $clickedButton.data( 'device-mode' );
 
 
2289
 
2290
+ elementor.changeDeviceMode( newDeviceMode );
2291
+ },
2292
 
2293
+ onClickWatchTutorial: function() {
2294
+ elementor.introduction.startIntroduction();
2295
+ },
 
 
 
 
 
 
 
2296
 
2297
+ onClickShowTemplates: function() {
2298
+ elementor.templates.showTemplatesModal();
2299
+ },
2300
 
2301
+ onClickSaveTemplate: function() {
2302
+ elementor.templates.startModal( {
2303
+ onReady: function() {
2304
+ elementor.templates.getLayout().showSaveTemplateView();
2305
  }
2306
  } );
2307
  },
2308
 
2309
+ onClickHistory: function() {
2310
+ if ( 'historyPage' !== elementor.getPanelView().getCurrentPageName() ) {
2311
+ elementor.getPanelView().setPage( 'historyPage' );
2312
+ }
2313
+ },
2314
 
2315
+ onRender: function() {
2316
+ var self = this;
2317
+
2318
+ _.defer( function() {
2319
+ elementor.getPanelView().$el.on( 'click', _.bind( self.onPanelClick, self ) );
2320
+ } );
2321
+ }
2322
+ } );
2323
+
2324
+ module.exports = PanelFooterItemView;
2325
+
2326
+ },{}],29:[function(require,module,exports){
2327
+ var PanelHeaderItemView;
2328
+
2329
+ PanelHeaderItemView = Marionette.ItemView.extend( {
2330
+ template: '#tmpl-elementor-panel-header',
2331
+
2332
+ id: 'elementor-panel-header',
2333
+
2334
+ ui: {
2335
+ menuButton: '#elementor-panel-header-menu-button',
2336
+ title: '#elementor-panel-header-title',
2337
+ addButton: '#elementor-panel-header-add-button'
2338
  },
2339
 
2340
+ events: {
2341
+ 'click @ui.addButton': 'onClickAdd',
2342
+ 'click @ui.menuButton': 'onClickMenu'
2343
  },
2344
 
2345
+ setTitle: function( title ) {
2346
+ this.ui.title.html( title );
2347
+ },
2348
 
2349
+ onClickAdd: function() {
2350
+ elementor.getPanelView().setPage( 'elements' );
2351
+ },
2352
 
2353
+ onClickMenu: function() {
2354
+ var panel = elementor.getPanelView(),
2355
+ currentPanelPageName = panel.getCurrentPageName(),
2356
+ nextPage = 'menu' === currentPanelPageName ? 'elements' : 'menu';
2357
 
2358
+ panel.setPage( nextPage );
2359
+ }
2360
+ } );
2361
+
2362
+ module.exports = PanelHeaderItemView;
2363
+
2364
+ },{}],30:[function(require,module,exports){
2365
+ var ControlsStack = require( 'elementor-views/controls-stack' ),
2366
+ EditorView;
2367
+
2368
+ EditorView = ControlsStack.extend( {
2369
+ template: Marionette.TemplateCache.get( '#tmpl-editor-content' ),
2370
+
2371
+ id: 'elementor-panel-page-editor',
2372
+
2373
+ childViewContainer: '#elementor-controls',
2374
+
2375
+ childViewOptions: function() {
2376
+ return {
2377
+ elementSettingsModel: this.model.get( 'settings' ),
2378
+ elementEditSettings: this.model.get( 'editSettings' )
2379
+ };
2380
  },
2381
 
2382
+ openActiveSection: function() {
2383
+ ControlsStack.prototype.openActiveSection.apply( this, arguments );
 
2384
 
2385
+ elementor.channels.editor.trigger( 'section:activated', this.activeSection, this );
 
 
2386
  },
2387
 
2388
+ isVisibleSectionControl: function( sectionControlModel ) {
2389
+ return ControlsStack.prototype.isVisibleSectionControl.apply( this, arguments ) && elementor.helpers.isActiveControl( sectionControlModel, this.model.get( 'settings' ).attributes );
2390
+ },
 
2391
 
2392
+ scrollToEditedElement: function() {
2393
+ elementor.helpers.scrollToView( this.getOption( 'editedElementView' ) );
2394
+ },
2395
 
2396
+ onBeforeRender: function() {
2397
+ var controls = elementor.getElementControls( this.model );
 
2398
 
2399
+ if ( ! controls ) {
2400
+ throw new Error( 'Editor controls not found' );
 
 
2401
  }
2402
 
2403
+ // Create new instance of that collection
2404
+ this.collection = new Backbone.Collection( _.values( controls ) );
2405
  },
2406
 
2407
+ onDestroy: function() {
2408
+ var editedElementView = this.getOption( 'editedElementView' );
 
2409
 
2410
+ if ( editedElementView ) {
2411
+ editedElementView.$el.removeClass( 'elementor-element-editable' );
2412
+ }
2413
 
2414
+ this.model.trigger( 'editor:close' );
 
2415
 
2416
+ this.triggerMethod( 'editor:destroy' );
2417
+ },
2418
+
2419
+ onRender: function() {
2420
+ var editedElementView = this.getOption( 'editedElementView' );
2421
+
2422
+ if ( editedElementView ) {
2423
+ editedElementView.$el.addClass( 'elementor-element-editable' );
2424
  }
2425
+ },
2426
 
2427
+ onDeviceModeChange: function() {
2428
+ ControlsStack.prototype.onDeviceModeChange.apply( this, arguments );
 
2429
 
2430
+ this.scrollToEditedElement();
2431
+ },
 
2432
 
2433
+ onChildviewSettingsChange: function( childView ) {
2434
+ var editedElementView = this.getOption( 'editedElementView' ),
2435
+ editedElementType = editedElementView.model.get( 'elType' );
2436
+
2437
+ if ( 'widget' === editedElementType ) {
2438
+ editedElementType = editedElementView.model.get( 'widgetType' );
2439
  }
 
2440
 
2441
+ elementor.channels.editor
2442
+ .trigger( 'change', childView, editedElementView )
2443
+ .trigger( 'change:' + editedElementType, childView, editedElementView )
2444
+ .trigger( 'change:' + editedElementType + ':' + childView.model.get( 'name' ), childView, editedElementView );
2445
+ }
2446
+ } );
2447
 
2448
+ module.exports = EditorView;
 
 
 
 
 
 
 
 
 
 
 
2449
 
2450
+ },{"elementor-views/controls-stack":83}],31:[function(require,module,exports){
2451
+ var PanelElementsCategory = require( '../models/element' ),
2452
+ PanelElementsCategoriesCollection;
2453
 
2454
+ PanelElementsCategoriesCollection = Backbone.Collection.extend( {
2455
+ model: PanelElementsCategory
2456
+ } );
2457
 
2458
+ module.exports = PanelElementsCategoriesCollection;
 
2459
 
2460
+ },{"../models/element":34}],32:[function(require,module,exports){
2461
+ var PanelElementsElementModel = require( '../models/element' ),
2462
+ PanelElementsElementsCollection;
2463
 
2464
+ PanelElementsElementsCollection = Backbone.Collection.extend( {
2465
+ model: PanelElementsElementModel/*,
2466
+ comparator: 'title'*/
2467
  } );
2468
 
2469
+ module.exports = PanelElementsElementsCollection;
2470
 
2471
+ },{"../models/element":34}],33:[function(require,module,exports){
2472
+ var PanelElementsCategoriesCollection = require( './collections/categories' ),
2473
+ PanelElementsElementsCollection = require( './collections/elements' ),
2474
+ PanelElementsCategoriesView = require( './views/categories' ),
2475
+ PanelElementsElementsView = elementor.modules.templateLibrary.ElementsCollectionView,
2476
+ PanelElementsSearchView = require( './views/search' ),
2477
+ PanelElementsGlobalView = require( './views/global' ),
2478
+ PanelElementsLayoutView;
2479
 
2480
+ PanelElementsLayoutView = Marionette.LayoutView.extend( {
2481
+ template: '#tmpl-elementor-panel-elements',
2482
 
2483
+ regions: {
2484
+ elements: '#elementor-panel-elements-wrapper',
2485
+ search: '#elementor-panel-elements-search-area'
2486
+ },
2487
 
2488
  ui: {
2489
+ tabs: '.elementor-panel-navigation-tab'
 
 
2490
  },
2491
 
2492
  events: {
2493
+ 'click @ui.tabs': 'onTabClick'
2494
  },
2495
 
2496
+ regionViews: {},
2497
+
2498
+ elementsCollection: null,
2499
+
2500
+ categoriesCollection: null,
2501
+
2502
  initialize: function() {
2503
+ this.listenTo( elementor.channels.panelElements, 'element:selected', this.destroy );
 
2504
 
2505
+ this.initElementsCollection();
 
 
2506
 
2507
+ this.initCategoriesCollection();
2508
+
2509
+ this.initRegionViews();
 
2510
  },
2511
 
2512
+ initRegionViews: function() {
2513
+ var regionViews = {
2514
+ elements: {
2515
+ region: this.elements,
2516
+ view: PanelElementsElementsView,
2517
+ options: { collection: this.elementsCollection }
2518
+ },
2519
+ categories: {
2520
+ region: this.elements,
2521
+ view: PanelElementsCategoriesView,
2522
+ options: { collection: this.categoriesCollection }
2523
+ },
2524
+ search: {
2525
+ region: this.search,
2526
+ view: PanelElementsSearchView
2527
+ },
2528
+ global: {
2529
+ region: this.elements,
2530
+ view: PanelElementsGlobalView
2531
+ }
2532
+ };
2533
 
2534
+ this.regionViews = elementor.hooks.applyFilters( 'panel/elements/regionViews', regionViews );
 
2535
  },
2536
 
2537
+ initElementsCollection: function() {
2538
+ var elementsCollection = new PanelElementsElementsCollection(),
2539
+ sectionConfig = elementor.config.elements.section;
2540
 
2541
+ elementsCollection.add( {
2542
+ title: elementor.translate( 'inner_section' ),
2543
+ elType: 'section',
2544
+ categories: [ 'basic' ],
2545
+ icon: sectionConfig.icon
2546
+ } );
2547
 
2548
+ // TODO: Change the array from server syntax, and no need each loop for initialize
2549
+ _.each( elementor.config.widgets, function( element ) {
2550
+ elementsCollection.add( {
2551
+ title: element.title,
2552
+ elType: element.elType,
2553
+ categories: element.categories,
2554
+ keywords: element.keywords,
2555
+ icon: element.icon,
2556
+ widgetType: element.widget_type,
2557
+ custom: element.custom
2558
+ } );
2559
+ } );
2560
 
2561
+ this.elementsCollection = elementsCollection;
2562
+ },
2563
 
2564
+ initCategoriesCollection: function() {
2565
+ var categories = {};
2566
 
2567
+ this.elementsCollection.each( function( element ) {
2568
+ _.each( element.get( 'categories' ), function( category ) {
2569
+ if ( ! categories[ category ] ) {
2570
+ categories[ category ] = [];
2571
+ }
2572
 
2573
+ categories[ category ].push( element );
2574
+ } );
2575
+ } );
2576
 
2577
+ var categoriesCollection = new PanelElementsCategoriesCollection();
2578
 
2579
+ _.each( elementor.config.elements_categories, function( categoryConfig, categoryName ) {
2580
+ if ( ! categories[ categoryName ] ) {
2581
+ return;
2582
+ }
2583
 
2584
+ categoriesCollection.add( {
2585
+ name: categoryName,
2586
+ title: categoryConfig.title,
2587
+ icon: categoryConfig.icon,
2588
+ items: categories[ categoryName ]
2589
+ } );
2590
+ } );
 
 
 
 
2591
 
2592
+ this.categoriesCollection = categoriesCollection;
 
 
 
 
 
 
2593
  },
2594
 
2595
+ activateTab: function( tabName ) {
2596
+ this.ui.tabs
2597
+ .removeClass( 'active' )
2598
+ .filter( '[data-view="' + tabName + '"]' )
2599
+ .addClass( 'active' );
2600
 
2601
+ this.showView( tabName );
 
2602
  },
2603
 
2604
+ showView: function( viewName ) {
2605
+ var viewDetails = this.regionViews[ viewName ],
2606
+ options = viewDetails.options || {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2607
 
2608
+ viewDetails.region.show( new viewDetails.view( options ) );
2609
+ },
2610
 
2611
+ clearSearchInput: function() {
2612
+ this.getChildView( 'search' ).clearInput();
2613
  },
2614
 
2615
+ changeFilter: function( filterValue ) {
2616
+ elementor.channels.panelElements
2617
+ .reply( 'filter:value', filterValue )
2618
+ .trigger( 'filter:change' );
2619
+ },
2620
 
2621
+ clearFilters: function() {
2622
+ this.changeFilter( null );
2623
+ this.clearSearchInput();
2624
+ },
2625
 
2626
+ onChildviewChildrenRender: function() {
2627
+ this.updateElementsScrollbar();
2628
+ },
2629
 
2630
+ onChildviewSearchChangeInput: function( child ) {
2631
+ this.changeFilter( child.ui.input.val(), 'search' );
2632
+ },
2633
 
2634
+ onDestroy: function() {
2635
+ elementor.channels.panelElements.reply( 'filter:value', null );
2636
+ },
2637
 
2638
+ onShow: function() {
2639
+ this.showView( 'categories' );
2640
 
2641
+ this.showView( 'search' );
2642
  },
2643
 
2644
+ onTabClick: function( event ) {
2645
+ this.activateTab( event.currentTarget.dataset.view );
2646
  },
2647
 
2648
+ updateElementsScrollbar: function() {
2649
+ elementor.channels.data.trigger( 'scrollbar:update' );
2650
+ }
2651
+ } );
2652
 
2653
+ module.exports = PanelElementsLayoutView;
 
 
2654
 
2655
+ },{"./collections/categories":31,"./collections/elements":32,"./views/categories":35,"./views/global":39,"./views/search":40}],34:[function(require,module,exports){
2656
+ var PanelElementsElementModel;
 
2657
 
2658
+ PanelElementsElementModel = Backbone.Model.extend( {
2659
+ defaults: {
2660
+ title: '',
2661
+ categories: [],
2662
+ keywords: [],
2663
+ icon: '',
2664
+ elType: 'widget',
2665
+ widgetType: ''
2666
+ }
2667
+ } );
2668
 
2669
+ module.exports = PanelElementsElementModel;
2670
 
2671
+ },{}],35:[function(require,module,exports){
2672
+ var PanelElementsCategoryView = require( './category' ),
2673
+ PanelElementsCategoriesView;
 
2674
 
2675
+ PanelElementsCategoriesView = Marionette.CompositeView.extend( {
2676
+ template: '#tmpl-elementor-panel-categories',
 
2677
 
2678
+ childView: PanelElementsCategoryView,
 
 
2679
 
2680
+ childViewContainer: '#elementor-panel-categories',
2681
 
2682
+ id: 'elementor-panel-elements-categories',
2683
 
2684
+ initialize: function() {
2685
+ this.listenTo( elementor.channels.panelElements, 'filter:change', this.onPanelElementsFilterChange );
2686
  },
2687
 
2688
+ onPanelElementsFilterChange: function() {
2689
+ elementor.getPanelView().getCurrentPageView().showView( 'elements' );
2690
+ }
2691
+ } );
2692
 
2693
+ module.exports = PanelElementsCategoriesView;
 
 
 
 
 
 
 
 
 
2694
 
2695
+ },{"./category":36}],36:[function(require,module,exports){
2696
+ var PanelElementsElementsCollection = require( '../collections/elements' ),
2697
+ PanelElementsCategoryView;
2698
 
2699
+ PanelElementsCategoryView = Marionette.CompositeView.extend( {
2700
+ template: '#tmpl-elementor-panel-elements-category',
 
2701
 
2702
+ className: 'elementor-panel-category',
 
 
2703
 
2704
+ childView: require( 'elementor-panel/pages/elements/views/element' ),
 
 
 
 
 
 
2705
 
2706
+ childViewContainer: '.panel-elements-category-items',
 
2707
 
2708
+ initialize: function() {
2709
+ this.collection = new PanelElementsElementsCollection( this.model.get( 'items' ) );
 
2710
  }
2711
  } );
2712
 
2713
+ module.exports = PanelElementsCategoryView;
 
 
 
2714
 
2715
+ },{"../collections/elements":32,"elementor-panel/pages/elements/views/element":37}],37:[function(require,module,exports){
2716
+ var PanelElementsElementView;
2717
 
2718
+ PanelElementsElementView = Marionette.ItemView.extend( {
2719
+ template: '#tmpl-elementor-element-library-element',
2720
 
2721
+ className: 'elementor-element-wrapper',
 
 
 
 
2722
 
2723
+ onRender: function() {
2724
+ var self = this;
 
 
2725
 
2726
+ this.$el.html5Draggable( {
 
 
2727
 
2728
+ onDragStart: function() {
2729
+ elementor.channels.panelElements
2730
+ .reply( 'element:selected', self )
2731
+ .trigger( 'element:drag:start' );
2732
+ },
2733
 
2734
+ onDragEnd: function() {
2735
+ elementor.channels.panelElements.trigger( 'element:drag:end' );
2736
+ },
 
2737
 
2738
+ groups: [ 'elementor-element' ]
2739
+ } );
2740
  }
2741
  } );
2742
 
2743
+ module.exports = PanelElementsElementView;
 
 
 
 
 
 
 
 
 
 
 
2744
 
2745
+ },{}],38:[function(require,module,exports){
2746
+ var PanelElementsElementsView;
 
 
 
 
2747
 
2748
+ PanelElementsElementsView = Marionette.CollectionView.extend( {
2749
+ childView: require( 'elementor-panel/pages/elements/views/element' ),
2750
 
2751
+ id: 'elementor-panel-elements',
 
2752
 
2753
+ initialize: function() {
2754
+ this.listenTo( elementor.channels.panelElements, 'filter:change', this.onFilterChanged );
2755
  },
2756
 
2757
+ filter: function( childModel ) {
2758
+ var filterValue = elementor.channels.panelElements.request( 'filter:value' );
2759
 
2760
+ if ( ! filterValue ) {
2761
+ return true;
2762
  }
2763
 
2764
+ if ( -1 !== childModel.get( 'title' ).toLowerCase().indexOf( filterValue.toLowerCase() ) ) {
2765
+ return true;
 
 
 
 
 
 
 
2766
  }
2767
 
2768
+ return _.any( childModel.get( 'keywords' ), function( keyword ) {
2769
+ return ( -1 !== keyword.toLowerCase().indexOf( filterValue.toLowerCase() ) );
2770
+ } );
2771
  },
2772
 
2773
+ onFilterChanged: function() {
2774
+ var filterValue = elementor.channels.panelElements.request( 'filter:value' );
2775
 
2776
+ if ( ! filterValue ) {
2777
+ this.onFilterEmpty();
2778
  }
 
 
 
 
2779
 
2780
+ this._renderChildren();
2781
 
2782
+ this.triggerMethod( 'children:render' );
 
 
 
 
 
2783
  },
2784
 
2785
+ onFilterEmpty: function() {
2786
+ elementor.getPanelView().getCurrentPageView().showView( 'categories' );
 
 
 
 
 
 
 
 
 
 
2787
  }
2788
  } );
2789
 
2790
+ module.exports = PanelElementsElementsView;
 
 
 
 
2791
 
2792
+ },{"elementor-panel/pages/elements/views/element":37}],39:[function(require,module,exports){
2793
+ module.exports = Marionette.ItemView.extend( {
2794
+ template: '#tmpl-elementor-panel-global',
2795
 
2796
+ id: 'elementor-panel-global',
2797
 
2798
+ initialize: function() {
2799
+ elementor.getPanelView().getCurrentPageView().search.reset();
2800
+ },
2801
 
2802
+ onDestroy: function() {
2803
+ elementor.getPanelView().getCurrentPageView().showView( 'search' );
2804
+ }
2805
  } );
2806
 
2807
+ },{}],40:[function(require,module,exports){
2808
+ var PanelElementsSearchView;
 
 
 
 
 
 
 
 
2809
 
2810
+ PanelElementsSearchView = Marionette.ItemView.extend( {
2811
+ template: '#tmpl-elementor-panel-element-search',
2812
 
2813
+ id: 'elementor-panel-elements-search-wrapper',
 
 
 
2814
 
2815
  ui: {
2816
+ input: 'input'
2817
  },
2818
 
2819
  events: {
2820
+ 'keyup @ui.input': 'onInputChanged'
2821
  },
2822
 
2823
+ onInputChanged: function( event ) {
2824
+ var ESC_KEY = 27;
2825
 
2826
+ if ( ESC_KEY === event.keyCode ) {
2827
+ this.clearInput();
2828
+ }
2829
 
2830
+ this.triggerMethod( 'search:change:input' );
2831
+ },
2832
 
2833
+ clearInput: function() {
2834
+ this.ui.input.val( '' );
2835
+ }
2836
+ } );
2837
 
2838
+ module.exports = PanelElementsSearchView;
2839
 
2840
+ },{}],41:[function(require,module,exports){
2841
+ var PanelMenuItemView = require( 'elementor-panel/pages/menu/views/item' ),
2842
+ PanelMenuPageView;
2843
 
2844
+ PanelMenuPageView = Marionette.CollectionView.extend( {
2845
+ id: 'elementor-panel-page-menu',
2846
+
2847
+ childView: PanelMenuItemView,
2848
+
2849
+ initialize: function() {
2850
+ this.collection = PanelMenuPageView.getItems();
2851
  },
2852
 
2853
+ onChildviewClick: function( childView ) {
2854
+ var menuItemType = childView.model.get( 'type' );
2855
+
2856
+ switch ( menuItemType ) {
2857
+ case 'page':
2858
+ var pageName = childView.model.get( 'pageName' ),
2859
+ pageTitle = childView.model.get( 'title' );
2860
+
2861
+ elementor.getPanelView().setPage( pageName, pageTitle );
2862
+ break;
2863
+
2864
+ case 'link':
2865
+ var link = childView.model.get( 'link' ),
2866
+ isNewTab = childView.model.get( 'newTab' );
2867
+
2868
+ if ( isNewTab ) {
2869
+ open( link, '_blank' );
2870
+ } else {
2871
+ location.href = childView.model.get( 'link' );
2872
+ }
2873
+
2874
+ break;
2875
+
2876
+ default:
2877
+ var callback = childView.model.get( 'callback' );
2878
+
2879
+ if ( _.isFunction( callback ) ) {
2880
+ callback.call( childView );
2881
+ }
2882
+ }
2883
+ }
2884
+ }, {
2885
+ items: null,
2886
+
2887
+ initItems: function() {
2888
+ this.items = new Backbone.Collection( [
2889
+ {
2890
+ name: 'global-colors',
2891
+ icon: 'fa fa-paint-brush',
2892
+ title: elementor.translate( 'global_colors' ),
2893
+ type: 'page',
2894
+ pageName: 'colorScheme'
2895
  },
2896
+ {
2897
+ name: 'global-fonts',
2898
+ icon: 'fa fa-font',
2899
+ title: elementor.translate( 'global_fonts' ),
2900
+ type: 'page',
2901
+ pageName: 'typographyScheme'
2902
  },
2903
+ {
2904
+ name: 'color-picker',
2905
+ icon: 'fa fa-eyedropper',
2906
+ title: elementor.translate( 'color_picker' ),
2907
+ type: 'page',
2908
+ pageName: 'colorPickerScheme'
2909
+ },
2910
+ {
2911
+ name: 'clear-page',
2912
+ icon: 'fa fa-eraser',
2913
+ title: elementor.translate( 'clear_page' ),
2914
+ callback: function() {
2915
+ elementor.clearPage();
2916
+ }
2917
+ },
2918
+ {
2919
+ name: 'elementor-settings',
2920
+ icon: 'eicon-elementor',
2921
+ title: elementor.translate( 'elementor_settings' ),
2922
+ type: 'link',
2923
+ link: elementor.config.settings_page_link,
2924
+ newTab: true
2925
+ },
2926
+ {
2927
+ name: 'about-elementor',
2928
+ icon: 'fa fa-info-circle',
2929
+ title: elementor.translate( 'about_elementor' ),
2930
+ type: 'link',
2931
+ link: elementor.config.elementor_site,
2932
+ newTab: true
2933
  }
2934
+ ] );
 
 
2935
  },
2936
 
2937
+ getItems: function() {
2938
+ if ( ! this.items ) {
2939
+ this.initItems();
2940
+ }
2941
 
2942
+ return this.items;
2943
+ },
 
 
 
 
2944
 
2945
+ addItem: function( itemData, before ) {
2946
+ var items = this.getItems(),
2947
+ options = {};
 
 
 
 
 
 
 
 
 
2948
 
2949
+ if ( before ) {
2950
+ var beforeItem = items.findWhere( { name: before } );
2951
 
2952
+ if ( beforeItem ) {
2953
+ options.at = items.indexOf( beforeItem );
2954
+ }
2955
+ }
2956
 
2957
+ items.add( itemData, options );
 
 
 
2958
  }
2959
+ } );
2960
 
2961
+ module.exports = PanelMenuPageView;
 
 
2962
 
2963
+ },{"elementor-panel/pages/menu/views/item":42}],42:[function(require,module,exports){
2964
+ var PanelMenuItemView;
2965
 
2966
+ PanelMenuItemView = Marionette.ItemView.extend( {
2967
+ template: '#tmpl-elementor-panel-menu-item',
 
 
2968
 
2969
+ className: 'elementor-panel-menu-item',
 
 
 
 
 
 
2970
 
2971
+ triggers: {
2972
+ click: 'click'
2973
+ }
2974
+ } );
2975
 
2976
+ module.exports = PanelMenuItemView;
 
 
 
 
2977
 
2978
+ },{}],43:[function(require,module,exports){
2979
+ var childViewTypes = {
2980
+ color: require( 'elementor-panel/pages/schemes/items/color' ),
2981
+ typography: require( 'elementor-panel/pages/schemes/items/typography' )
2982
  },
2983
+ PanelSchemeBaseView;
2984
 
2985
+ PanelSchemeBaseView = Marionette.CompositeView.extend( {
2986
+ id: function() {
2987
+ return 'elementor-panel-scheme-' + this.getType();
2988
+ },
2989
 
2990
+ className: function() {
2991
+ return 'elementor-panel-scheme elementor-panel-scheme-' + this.getUIType();
2992
  },
2993
 
2994
+ childViewContainer: '.elementor-panel-scheme-items',
2995
+
2996
+ getTemplate: function() {
2997
+ return Marionette.TemplateCache.get( '#tmpl-elementor-panel-schemes-' + this.getType() );
2998
  },
2999
 
3000
+ getChildView: function() {
3001
+ return childViewTypes[ this.getUIType() ];
 
 
3002
  },
3003
 
3004
+ getUIType: function() {
3005
+ return this.getType();
 
3006
  },
3007
 
3008
+ ui: function() {
3009
+ return {
3010
+ saveButton: '.elementor-panel-scheme-save .elementor-button',
3011
+ discardButton: '.elementor-panel-scheme-discard .elementor-button',
3012
+ resetButton: '.elementor-panel-scheme-reset .elementor-button'
3013
+ };
3014
  },
3015
 
3016
+ events: function() {
3017
+ return {
3018
+ 'click @ui.saveButton': 'saveScheme',
3019
+ 'click @ui.discardButton': 'discardScheme',
3020
+ 'click @ui.resetButton': 'setDefaultScheme'
3021
+ };
3022
  },
3023
 
3024
+ initialize: function() {
3025
+ this.model = new Backbone.Model();
3026
+
3027
+ this.resetScheme();
3028
  },
3029
 
3030
+ getType: function() {},
 
3031
 
3032
+ getScheme: function() {
3033
+ return elementor.schemes.getScheme( this.getType() );
3034
  },
3035
 
3036
+ changeChildrenUIValues: function( schemeItems ) {
3037
+ var self = this;
3038
+
3039
+ _.each( schemeItems, function( value, key ) {
3040
+ var model = self.collection.findWhere( { key: key } ),
3041
+ childView = self.children.findByModelCid( model.cid );
3042
+
3043
+ childView.changeUIValue( value );
3044
+ } );
3045
  },
3046
 
3047
+ discardScheme: function() {
3048
+ elementor.schemes.resetSchemes( this.getType() );
 
 
3049
 
3050
+ this.onSchemeChange();
3051
 
3052
+ this.ui.saveButton.prop( 'disabled', true );
 
3053
 
3054
+ this._renderChildren();
3055
+ },
 
 
 
 
 
 
 
 
3056
 
3057
+ setSchemeValue: function( key, value ) {
3058
+ elementor.schemes.setSchemeValue( this.getType(), key, value );
3059
 
3060
+ this.onSchemeChange();
3061
+ },
 
3062
 
3063
+ saveScheme: function() {
3064
+ elementor.schemes.saveScheme( this.getType() );
3065
 
3066
+ this.ui.saveButton.prop( 'disabled', true );
3067
 
3068
+ this.resetScheme();
3069
 
3070
+ this._renderChildren();
3071
+ },
3072
 
3073
+ setDefaultScheme: function() {
3074
+ var defaultScheme = elementor.config.default_schemes[ this.getType() ].items;
3075
+
3076
+ this.changeChildrenUIValues( defaultScheme );
3077
  },
3078
 
3079
+ resetItems: function() {
3080
+ this.model.set( 'items', this.getScheme().items );
3081
+ },
 
3082
 
3083
+ resetCollection: function() {
3084
+ var items = this.model.get( 'items' );
3085
 
3086
+ this.collection = new Backbone.Collection();
 
 
3087
 
3088
+ _.each( items, _.bind( function( item, key ) {
3089
+ item.type = this.getType();
3090
+ item.key = key;
3091
 
3092
+ this.collection.add( item );
3093
+ }, this ) );
3094
+ },
3095
 
3096
+ resetScheme: function() {
3097
+ this.resetItems();
3098
+ this.resetCollection();
3099
+ },
3100
 
3101
+ onSchemeChange: function() {
3102
+ elementor.schemes.printSchemesStyle();
3103
+ },
3104
 
3105
+ onChildviewValueChange: function( childView, newValue ) {
3106
+ this.ui.saveButton.removeProp( 'disabled' );
3107
+
3108
+ this.setSchemeValue( childView.model.get( 'key' ), newValue );
3109
  }
3110
  } );
3111
 
3112
+ module.exports = PanelSchemeBaseView;
 
 
 
 
 
 
3113
 
3114
+ },{"elementor-panel/pages/schemes/items/color":48,"elementor-panel/pages/schemes/items/typography":49}],44:[function(require,module,exports){
3115
+ var PanelSchemeColorsView = require( 'elementor-panel/pages/schemes/colors' ),
3116
+ PanelSchemeColorPickerView;
3117
 
3118
+ PanelSchemeColorPickerView = PanelSchemeColorsView.extend( {
3119
+ getType: function() {
3120
+ return 'color-picker';
3121
+ },
3122
 
3123
+ getUIType: function() {
3124
+ return 'color';
3125
+ },
3126
 
3127
+ onSchemeChange: function() {},
 
 
 
 
3128
 
3129
+ getViewComparator: function() {
3130
+ return this.orderView;
3131
+ },
3132
 
3133
+ orderView: function( model ) {
3134
+ return elementor.helpers.getColorPickerPaletteIndex( model.get( 'key' ) );
3135
  }
3136
  } );
3137
 
3138
+ module.exports = PanelSchemeColorPickerView;
3139
 
3140
+ },{"elementor-panel/pages/schemes/colors":45}],45:[function(require,module,exports){
3141
+ var PanelSchemeBaseView = require( 'elementor-panel/pages/schemes/base' ),
3142
+ PanelSchemeColorsView;
3143
 
3144
+ PanelSchemeColorsView = PanelSchemeBaseView.extend( {
3145
+ ui: function() {
3146
+ var ui = PanelSchemeBaseView.prototype.ui.apply( this, arguments );
3147
 
3148
+ ui.systemSchemes = '.elementor-panel-scheme-color-system-scheme';
3149
 
3150
+ return ui;
 
3151
  },
3152
 
3153
+ events: function() {
3154
+ var events = PanelSchemeBaseView.prototype.events.apply( this, arguments );
3155
 
3156
+ events[ 'click @ui.systemSchemes' ] = 'onSystemSchemeClick';
 
 
3157
 
3158
+ return events;
3159
+ },
 
3160
 
3161
+ getType: function() {
3162
+ return 'color';
 
3163
  },
3164
 
3165
+ onSystemSchemeClick: function( event ) {
3166
+ var $schemeClicked = Backbone.$( event.currentTarget ),
3167
+ schemeName = $schemeClicked.data( 'schemeName' ),
3168
+ scheme = elementor.config.system_schemes[ this.getType() ][ schemeName ].items;
3169
 
3170
+ this.changeChildrenUIValues( scheme );
3171
+ }
3172
+ } );
3173
 
3174
+ module.exports = PanelSchemeColorsView;
3175
 
3176
+ },{"elementor-panel/pages/schemes/base":43}],46:[function(require,module,exports){
3177
+ var PanelSchemeDisabledView;
3178
 
3179
+ PanelSchemeDisabledView = Marionette.ItemView.extend( {
3180
+ template: '#tmpl-elementor-panel-schemes-disabled',
3181
+
3182
+ id: 'elementor-panel-schemes-disabled',
3183
+
3184
+ className: 'elementor-panel-nerd-box',
3185
+
3186
+ disabledTitle: '',
3187
+
3188
+ templateHelpers: function() {
3189
+ return {
3190
+ disabledTitle: this.disabledTitle
3191
+ };
3192
  }
3193
  } );
3194
 
3195
+ module.exports = PanelSchemeDisabledView;
 
 
 
 
3196
 
3197
+ },{}],47:[function(require,module,exports){
3198
+ var PanelSchemeItemView;
3199
 
3200
+ PanelSchemeItemView = Marionette.ItemView.extend( {
3201
+ getTemplate: function() {
3202
+ return Marionette.TemplateCache.get( '#tmpl-elementor-panel-scheme-' + this.getUIType() + '-item' );
3203
  },
3204
 
3205
+ className: function() {
3206
+ return 'elementor-panel-scheme-item';
3207
  }
3208
  } );
3209
 
3210
+ module.exports = PanelSchemeItemView;
 
3211
 
3212
+ },{}],48:[function(require,module,exports){
3213
+ var PanelSchemeItemView = require( 'elementor-panel/pages/schemes/items/base' ),
3214
+ PanelSchemeColorView;
3215
 
3216
+ PanelSchemeColorView = PanelSchemeItemView.extend( {
3217
+ getUIType: function() {
3218
+ return 'color';
3219
+ },
3220
 
3221
  ui: {
3222
+ input: '.elementor-panel-scheme-color-value'
3223
  },
3224
 
3225
+ changeUIValue: function( newValue ) {
3226
+ this.ui.input.wpColorPicker( 'color', newValue );
3227
  },
3228
 
3229
+ onBeforeDestroy: function() {
3230
+ if ( this.ui.input.wpColorPicker( 'instance' ) ) {
3231
+ this.ui.input.wpColorPicker( 'close' );
 
 
3232
  }
 
 
3233
  },
3234
 
3235
+ onRender: function() {
3236
+ elementor.helpers.wpColorPicker( this.ui.input, {
3237
+ change: _.bind( function( event, ui ) {
3238
+ this.triggerMethod( 'value:change', ui.color.toString() );
3239
+ }, this )
3240
+ } );
3241
  }
3242
  } );
3243
 
3244
+ module.exports = PanelSchemeColorView;
3245
 
3246
+ },{"elementor-panel/pages/schemes/items/base":47}],49:[function(require,module,exports){
3247
+ var PanelSchemeItemView = require( 'elementor-panel/pages/schemes/items/base' ),
3248
+ PanelSchemeTypographyView;
3249
 
3250
+ PanelSchemeTypographyView = PanelSchemeItemView.extend( {
3251
+ getUIType: function() {
3252
+ return 'typography';
3253
+ },
3254
 
3255
+ className: function() {
3256
+ var classes = PanelSchemeItemView.prototype.className.apply( this, arguments );
3257
 
3258
+ return classes + ' elementor-panel-box';
 
3259
  },
3260
 
3261
+ ui: {
3262
+ heading: '.elementor-panel-heading',
3263
+ allFields: '.elementor-panel-scheme-typography-item-field',
3264
+ inputFields: 'input.elementor-panel-scheme-typography-item-field',
3265
+ selectFields: 'select.elementor-panel-scheme-typography-item-field',
3266
+ selectFamilyFields: 'select.elementor-panel-scheme-typography-item-field[name="font_family"]'
3267
+ },
3268
 
3269
+ events: {
3270
+ 'input @ui.inputFields': 'onFieldChange',
3271
+ 'change @ui.selectFields': 'onFieldChange',
3272
+ 'click @ui.heading': 'toggleVisibility'
3273
+ },
 
3274
 
3275
+ onRender: function() {
3276
+ var self = this;
 
 
 
3277
 
3278
+ this.ui.inputFields.add( this.ui.selectFields ).each( function() {
3279
+ var $this = Backbone.$( this ),
3280
+ name = $this.attr( 'name' ),
3281
+ value = self.model.get( 'value' )[ name ];
3282
 
3283
+ $this.val( value );
3284
+ } );
3285
 
3286
+ this.ui.selectFamilyFields.select2( {
3287
+ dir: elementor.config.is_rtl ? 'rtl' : 'ltr'
3288
+ } );
3289
+ },
 
 
 
3290
 
3291
+ toggleVisibility: function() {
3292
+ this.ui.heading.toggleClass( 'elementor-open' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3293
  },
3294
 
3295
+ changeUIValue: function( newValue ) {
3296
+ this.ui.allFields.each( function() {
3297
+ var $this = Backbone.$( this ),
3298
+ thisName = $this.attr( 'name' ),
3299
+ newFieldValue = newValue[ thisName ];
3300
 
3301
+ $this.val( newFieldValue ).trigger( 'change' );
3302
+ } );
3303
  },
3304
 
3305
+ onFieldChange: function( event ) {
3306
+ var $select = this.$( event.currentTarget ),
3307
+ currentValue = elementor.schemes.getSchemeValue( 'typography', this.model.get( 'key' ) ).value,
3308
+ fieldKey = $select.attr( 'name' );
3309
 
3310
+ currentValue[ fieldKey ] = $select.val();
 
3311
 
3312
+ if ( 'font_family' === fieldKey && ! _.isEmpty( currentValue[ fieldKey ] ) ) {
3313
+ elementor.helpers.enqueueFont( currentValue[ fieldKey ] );
 
3314
  }
3315
 
3316
+ this.triggerMethod( 'value:change', currentValue );
3317
  }
3318
  } );
3319
 
3320
+ module.exports = PanelSchemeTypographyView;
 
 
 
 
 
 
3321
 
3322
+ },{"elementor-panel/pages/schemes/items/base":47}],50:[function(require,module,exports){
3323
+ var PanelSchemeBaseView = require( 'elementor-panel/pages/schemes/base' ),
3324
+ PanelSchemeTypographyView;
3325
 
3326
+ PanelSchemeTypographyView = PanelSchemeBaseView.extend( {
3327
+ getType: function() {
3328
+ return 'typography';
3329
  }
3330
  } );
3331
 
3332
+ module.exports = PanelSchemeTypographyView;
3333
 
3334
+ },{"elementor-panel/pages/schemes/base":43}],51:[function(require,module,exports){
3335
+ var EditModeItemView = require( 'elementor-layouts/edit-mode' ),
3336
+ PanelLayoutView;
 
 
 
3337
 
3338
+ PanelLayoutView = Marionette.LayoutView.extend( {
3339
+ template: '#tmpl-elementor-panel',
 
 
3340
 
3341
+ id: 'elementor-panel-inner',
3342
+
3343
+ regions: {
3344
+ content: '#elementor-panel-content-wrapper',
3345
+ header: '#elementor-panel-header-wrapper',
3346
+ footer: '#elementor-panel-footer',
3347
+ modeSwitcher: '#elementor-mode-switcher'
3348
  },
3349
 
3350
+ pages: {},
3351
 
3352
+ childEvents: {
3353
+ 'click:add': function() {
3354
+ this.setPage( 'elements' );
3355
+ },
3356
+ 'editor:destroy': function() {
3357
+ this.setPage( 'elements' );
3358
+ }
3359
  },
3360
 
3361
+ currentPageName: null,
 
 
3362
 
3363
+ currentPageView: null,
 
 
3364
 
3365
+ _isScrollbarInitialized: false,
3366
+
3367
+ initialize: function() {
3368
+ this.initPages();
 
 
3369
  },
3370
 
3371
+ buildPages: function() {
3372
+ var pages = {
3373
+ elements: {
3374
+ view: require( 'elementor-panel/pages/elements/elements' ),
3375
+ title: '<img src="' + elementor.config.assets_url + 'images/logo-panel.svg">'
3376
+ },
3377
+ editor: {
3378
+ view: require( 'elementor-panel/pages/editor' )
3379
+ },
3380
+ menu: {
3381
+ view: elementor.modules.panel.Menu,
3382
+ title: '<img src="' + elementor.config.assets_url + 'images/logo-panel.svg">'
3383
+ },
3384
+ colorScheme: {
3385
+ view: require( 'elementor-panel/pages/schemes/colors' )
3386
+ },
3387
+ typographyScheme: {
3388
+ view: require( 'elementor-panel/pages/schemes/typography' )
3389
+ },
3390
+ colorPickerScheme: {
3391
+ view: require( 'elementor-panel/pages/schemes/color-picker' )
3392
+ }
3393
  };
 
3394
 
3395
+ var schemesTypes = Object.keys( elementor.schemes.getSchemes() ),
3396
+ disabledSchemes = _.difference( schemesTypes, elementor.schemes.getEnabledSchemesTypes() );
3397
 
3398
+ _.each( disabledSchemes, function( schemeType ) {
3399
+ var scheme = elementor.schemes.getScheme( schemeType );
3400
 
3401
+ pages[ schemeType + 'Scheme' ].view = require( 'elementor-panel/pages/schemes/disabled' ).extend( {
3402
+ disabledTitle: scheme.disabled_title
3403
+ } );
3404
+ } );
3405
 
3406
+ return pages;
 
3407
  },
3408
 
3409
+ initPages: function() {
3410
+ var pages;
3411
 
3412
+ this.getPages = function( page ) {
3413
+ if ( ! pages ) {
3414
+ pages = this.buildPages();
3415
+ }
3416
 
3417
+ return page ? pages[ page ] : pages;
3418
+ };
 
3419
 
3420
+ this.addPage = function( pageName, pageData ) {
3421
+ if ( ! pages ) {
3422
+ pages = this.buildPages();
3423
+ }
3424
 
3425
+ pages[ pageName ] = pageData;
3426
+ };
3427
+ },
3428
 
3429
+ getHeaderView: function() {
3430
+ return this.getChildView( 'header' );
 
3431
  },
3432
 
3433
+ getFooterView: function() {
3434
+ return this.getChildView( 'footer' );
3435
+ },
3436
 
3437
+ getCurrentPageName: function() {
3438
+ return this.currentPageName;
3439
  },
3440
 
3441
+ getCurrentPageView: function() {
3442
+ return this.currentPageView;
3443
+ },
3444
 
3445
+ setPage: function( page, title, viewOptions ) {
3446
+ var pageData = this.getPages( page );
3447
 
3448
+ if ( ! pageData ) {
3449
+ throw new ReferenceError( 'Elementor panel doesn\'t have page named \'' + page + '\'' );
3450
+ }
3451
 
3452
+ if ( pageData.options ) {
3453
+ viewOptions = _.extend( pageData.options, viewOptions );
3454
+ }
3455
 
3456
+ var View = pageData.view;
 
3457
 
3458
+ if ( pageData.getView ) {
3459
+ View = pageData.getView();
3460
+ }
3461
 
3462
+ this.currentPageView = new View( viewOptions );
 
 
3463
 
3464
+ this.showChildView( 'content', this.currentPageView );
 
3465
 
3466
+ this.getHeaderView().setTitle( title || pageData.title );
3467
 
3468
+ this.currentPageName = page;
 
 
3469
 
3470
+ this
3471
+ .trigger( 'set:page', this.currentPageView )
3472
+ .trigger( 'set:page:' + page, this.currentPageView );
3473
  },
3474
 
3475
+ openEditor: function( model, view ) {
3476
+ var currentPageName = this.getCurrentPageName();
 
 
3477
 
3478
+ if ( 'editor' === currentPageName ) {
3479
+ var currentPageView = this.getCurrentPageView(),
3480
+ currentEditableModel = currentPageView.model;
3481
 
3482
+ if ( currentEditableModel === model ) {
3483
+ return;
3484
+ }
3485
+ }
3486
 
3487
+ var elementData = elementor.getElementData( model );
 
 
3488
 
3489
+ this.setPage( 'editor', elementor.translate( 'edit_element', [ elementData.title ] ), {
3490
+ model: model,
3491
+ editedElementView: view
3492
+ } );
3493
 
3494
+ var action = 'panel/open_editor/' + model.get( 'elType' );
 
 
3495
 
3496
+ // Example: panel/open_editor/widget
3497
+ elementor.hooks.doAction( action, this, model, view );
 
 
3498
 
3499
+ // Example: panel/open_editor/widget/heading
3500
+ elementor.hooks.doAction( action + '/' + model.get( 'widgetType' ), this, model, view );
3501
  },
3502
 
3503
+ onBeforeShow: function() {
3504
+ var PanelFooterItemView = require( 'elementor-layouts/panel/footer' ),
3505
+ PanelHeaderItemView = require( 'elementor-layouts/panel/header' );
3506
 
3507
+ // Edit Mode
3508
+ this.showChildView( 'modeSwitcher', new EditModeItemView() );
 
3509
 
3510
+ // Header
3511
+ this.showChildView( 'header', new PanelHeaderItemView() );
 
 
3512
 
3513
+ // Footer
3514
+ this.showChildView( 'footer', new PanelFooterItemView() );
3515
 
3516
+ // Added Editor events
3517
+ this.updateScrollbar = _.throttle( this.updateScrollbar, 100 );
 
3518
 
3519
+ this.getRegion( 'content' )
3520
+ .on( 'before:show', _.bind( this.onEditorBeforeShow, this ) )
3521
+ .on( 'empty', _.bind( this.onEditorEmpty, this ) )
3522
+ .on( 'show', _.bind( this.updateScrollbar, this ) );
3523
 
3524
+ // Set default page to elements
3525
+ this.setPage( 'elements' );
3526
 
3527
+ this.listenTo( elementor.channels.data, 'scrollbar:update', this.updateScrollbar );
3528
  },
3529
 
3530
+ onEditorBeforeShow: function() {
3531
+ _.defer( _.bind( this.updateScrollbar, this ) );
 
 
 
 
3532
  },
3533
 
3534
+ onEditorEmpty: function() {
3535
+ this.updateScrollbar();
3536
  },
3537
 
3538
+ updateScrollbar: function() {
3539
+ var $panel = this.content.$el;
 
 
3540
 
3541
+ if ( ! this._isScrollbarInitialized ) {
3542
+ $panel.perfectScrollbar();
3543
+ this._isScrollbarInitialized = true;
3544
 
3545
+ return;
3546
+ }
3547
 
3548
+ $panel.perfectScrollbar( 'update' );
3549
+ }
3550
+ } );
3551
 
3552
+ module.exports = PanelLayoutView;
 
3553
 
3554
+ },{"elementor-layouts/edit-mode":27,"elementor-layouts/panel/footer":28,"elementor-layouts/panel/header":29,"elementor-panel/pages/editor":30,"elementor-panel/pages/elements/elements":33,"elementor-panel/pages/schemes/color-picker":44,"elementor-panel/pages/schemes/colors":45,"elementor-panel/pages/schemes/disabled":46,"elementor-panel/pages/schemes/typography":50}],52:[function(require,module,exports){
3555
+ var BaseSettingsModel;
3556
 
3557
+ BaseSettingsModel = Backbone.Model.extend( {
3558
+ options: {},
3559
 
3560
+ initialize: function( data, options ) {
3561
+ var self = this;
3562
 
3563
+ if ( options ) {
3564
+ // Keep the options for cloning
3565
+ self.options = options;
3566
+ }
 
 
3567
 
3568
+ self.controls = ( options && options.controls ) ? options.controls : elementor.getElementControls( self );
3569
 
3570
+ self.validators = {};
 
3571
 
3572
+ if ( ! self.controls ) {
3573
+ return;
3574
+ }
 
3575
 
3576
+ var attrs = data || {},
3577
+ defaults = {};
 
 
3578
 
3579
+ _.each( self.controls, function( field ) {
3580
+ var control = elementor.config.controls[ field.type ],
3581
+ isUIControl = -1 !== control.features.indexOf( 'ui' );
3582
 
3583
+ if ( isUIControl ) {
3584
+ return;
3585
+ }
3586
 
3587
+ // Check if the value is a plain object ( and not an array )
3588
+ var isMultipleControl = jQuery.isPlainObject( control.default_value );
 
 
3589
 
3590
+ if ( isMultipleControl ) {
3591
+ defaults[ field.name ] = _.extend( {}, control.default_value, field['default'] || {} );
3592
+ } else {
3593
+ defaults[ field.name ] = field['default'] || control.default_value;
3594
+ }
3595
 
3596
+ if ( undefined !== attrs[ field.name ] ) {
3597
+ if ( isMultipleControl && ! _.isObject( attrs[ field.name ] ) ) {
3598
+ elementor.debug.addCustomError(
3599
+ new TypeError( 'An invalid argument supplied as multiple control value' ),
3600
+ 'InvalidElementData',
3601
+ 'Element `' + ( self.get( 'widgetType' ) || self.get( 'elType' ) ) + '` got <' + attrs[ field.name ] + '> as `' + field.name + '` value. Expected array or object.'
3602
+ );
3603
 
3604
+ delete attrs[ field.name ];
3605
+ }
3606
+ }
 
 
3607
 
3608
+ if ( undefined === attrs[ field.name ] ) {
3609
+ attrs[ field.name ] = defaults[ field.name ];
3610
+ }
 
 
3611
  } );
 
 
3612
 
3613
+ self.defaults = defaults;
3614
 
3615
+ self.handleRepeaterData( attrs );
 
 
3616
 
3617
+ self.set( attrs );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3618
  },
3619
 
3620
+ handleRepeaterData: function( attrs ) {
3621
+ _.each( this.controls, function( field ) {
3622
+ if ( field.is_repeater ) {
3623
+ // TODO: Apply defaults on each field in repeater fields
3624
+ if ( ! ( attrs[ field.name ] instanceof Backbone.Collection ) ) {
3625
+ attrs[ field.name ] = new Backbone.Collection( attrs[ field.name ], {
3626
+ model: function( attrs, options ) {
3627
+ options = options || {};
3628
 
3629
+ options.controls = field.fields;
 
 
 
3630
 
3631
+ if ( ! attrs._id ) {
3632
+ attrs._id = elementor.helpers.getUniqueID();
3633
+ }
3634
 
3635
+ return new BaseSettingsModel( attrs, options );
3636
+ }
3637
+ } );
3638
+ }
3639
+ }
3640
  } );
3641
  },
3642
 
3643
+ getFontControls: function() {
3644
+ return _.filter( this.getActiveControls(), function( control ) {
3645
+ return 'font' === control.type;
 
 
 
 
 
 
 
 
3646
  } );
3647
  },
3648
 
3649
+ getStyleControls: function( controls ) {
3650
+ var self = this;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3651
 
3652
+ controls = controls || self.getActiveControls();
 
 
3653
 
3654
+ return _.filter( controls, function( control ) {
3655
+ if ( control.fields ) {
3656
+ control.styleFields = self.getStyleControls( control.fields );
 
 
3657
 
3658
+ return true;
3659
+ }
3660
 
3661
+ return self.isStyleControl( control.name, controls );
3662
+ } );
3663
+ },
3664
 
3665
+ isStyleControl: function( attribute, controls ) {
3666
+ controls = controls || this.controls;
3667
 
3668
+ var currentControl = _.find( controls, function( control ) {
3669
+ return attribute === control.name;
3670
+ } );
3671
 
3672
+ return currentControl && ! _.isEmpty( currentControl.selectors );
 
 
 
 
3673
  },
3674
 
3675
+ getClassControls: function( controls ) {
3676
+ controls = controls || this.controls;
3677
 
3678
+ return _.filter( controls, function( control ) {
3679
+ return ! _.isUndefined( control.prefix_class );
3680
+ } );
 
 
 
 
3681
  },
3682
 
3683
+ isClassControl: function( attribute ) {
3684
+ var currentControl = _.find( this.controls, function( control ) {
3685
+ return attribute === control.name;
3686
+ } );
 
3687
 
3688
+ return currentControl && ! _.isUndefined( currentControl.prefix_class );
 
3689
  },
3690
 
3691
+ getControl: function( id ) {
3692
+ return _.find( this.controls, function( control ) {
3693
+ return id === control.name;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3694
  } );
 
 
3695
  },
3696
 
3697
+ getActiveControls: function() {
3698
+ var self = this,
3699
+ controls = {};
 
 
 
 
 
 
 
3700
 
3701
+ _.each( self.controls, function( control, controlKey ) {
3702
+ if ( elementor.helpers.isActiveControl( control, self.attributes ) ) {
3703
+ controls[ controlKey ] = control;
3704
  }
3705
+ } );
3706
 
3707
+ return controls;
 
3708
  },
3709
 
3710
+ clone: function() {
3711
+ return new BaseSettingsModel( elementor.helpers.cloneObject( this.attributes ), elementor.helpers.cloneObject( this.options ) );
3712
  },
3713
 
3714
+ setExternalChange: function( key, value ) {
3715
+ this.set( key, value );
 
3716
 
3717
+ this.trigger( 'change:external', key, value )
3718
+ .trigger( 'change:external:' + key, value );
3719
  },
3720
 
3721
+ toJSON: function( options ) {
3722
+ var data = Backbone.Model.prototype.toJSON.call( this );
 
3723
 
3724
+ options = options || {};
 
3725
 
3726
+ delete data.widgetType;
3727
+ delete data.elType;
3728
+ delete data.isInner;
3729
 
3730
+ _.each( data, function( attribute, key ) {
3731
+ if ( attribute && attribute.toJSON ) {
3732
+ data[ key ] = attribute.toJSON();
3733
+ }
3734
+ } );
3735
 
3736
+ if ( options.removeDefault ) {
3737
+ var controls = this.controls;
3738
 
3739
+ _.each( data, function( value, key ) {
3740
+ var control = controls[ key ];
 
3741
 
3742
+ if ( control ) {
3743
+ if ( ( 'text' === control.type || 'textarea' === control.type ) && data[ key ] ) {
3744
+ return;
3745
+ }
3746
 
3747
+ if ( data[ key ] && 'object' === typeof data[ key ] ) {
3748
+ // First check length difference
3749
+ if ( Object.keys( data[ key ] ).length !== Object.keys( control[ 'default' ] ).length ) {
3750
+ return;
3751
+ }
3752
 
3753
+ // If it's equal length, loop over value
3754
+ var isEqual = true;
3755
 
3756
+ _.each( data[ key ], function( propertyValue, propertyKey ) {
3757
+ if ( data[ key ][ propertyKey ] !== control[ 'default' ][ propertyKey ] ) {
3758
+ return isEqual = false;
3759
+ }
3760
+ } );
3761
 
3762
+ if ( isEqual ) {
3763
+ delete data[ key ];
3764
+ }
3765
+ } else {
3766
+ if ( data[ key ] === control[ 'default' ] ) {
3767
+ delete data[ key ];
3768
+ }
3769
+ }
3770
+ }
3771
+ } );
3772
+ }
3773
 
3774
+ return data;
3775
+ }
3776
+ } );
3777
 
3778
+ module.exports = BaseSettingsModel;
 
 
3779
 
3780
+ },{}],53:[function(require,module,exports){
3781
+ var BaseSettingsModel = require( 'elementor-models/base-settings' ),
3782
+ ColumnSettingsModel;
 
3783
 
3784
+ ColumnSettingsModel = BaseSettingsModel.extend( {
3785
+ defaults: {
3786
+ _column_size: 100
3787
+ }
3788
+ } );
3789
 
3790
+ module.exports = ColumnSettingsModel;
 
 
 
3791
 
3792
+ },{"elementor-models/base-settings":52}],54:[function(require,module,exports){
3793
+ var BaseSettingsModel = require( 'elementor-models/base-settings' ),
3794
+ WidgetSettingsModel = require( 'elementor-models/widget-settings' ),
3795
+ ColumnSettingsModel = require( 'elementor-models/column-settings' ),
3796
+ SectionSettingsModel = require( 'elementor-models/section-settings' ),
3797
 
3798
+ ElementModel,
3799
+ ElementCollection;
3800
 
3801
+ ElementModel = Backbone.Model.extend( {
3802
+ defaults: {
3803
+ id: '',
3804
+ elType: '',
3805
+ isInner: false,
3806
+ settings: {},
3807
+ defaultEditSettings: {}
3808
  },
3809
 
3810
+ remoteRender: false,
3811
+ _htmlCache: null,
3812
+ _jqueryXhr: null,
3813
+ renderOnLeave: false,
 
 
3814
 
3815
+ initialize: function( options ) {
3816
+ var elType = this.get( 'elType' ),
3817
+ elements = this.get( 'elements' );
3818
 
3819
+ if ( undefined !== elements ) {
3820
+ this.set( 'elements', new ElementCollection( elements ) );
3821
+ }
3822
 
3823
+ if ( 'widget' === elType ) {
3824
+ this.remoteRender = true;
3825
+ this.setHtmlCache( options.htmlCache || '' );
3826
+ }
3827
 
3828
+ // No need this variable anymore
3829
+ delete options.htmlCache;
 
 
3830
 
3831
+ // Make call to remote server as throttle function
3832
+ this.renderRemoteServer = _.throttle( this.renderRemoteServer, 1000 );
3833
 
3834
+ this.initSettings();
 
3835
 
3836
+ this.initEditSettings();
 
 
3837
 
3838
+ this.on( {
3839
+ destroy: this.onDestroy,
3840
+ 'editor:close': this.onCloseEditor
3841
+ } );
3842
  },
3843
 
3844
+ initSettings: function() {
3845
+ var elType = this.get( 'elType' ),
3846
+ settings = this.get( 'settings' ),
3847
+ settingModels = {
3848
+ widget: WidgetSettingsModel,
3849
+ column: ColumnSettingsModel,
3850
+ section: SectionSettingsModel
3851
+ },
3852
+ SettingsModel = settingModels[ elType ] || BaseSettingsModel;
3853
 
3854
+ if ( Backbone.$.isEmptyObject( settings ) ) {
3855
+ settings = elementor.helpers.cloneObject( settings );
3856
+ }
3857
 
3858
+ if ( 'widget' === elType ) {
3859
+ settings.widgetType = this.get( 'widgetType' );
3860
  }
3861
 
3862
+ settings.elType = elType;
3863
+ settings.isInner = this.get( 'isInner' );
 
3864
 
3865
+ settings = new SettingsModel( settings );
3866
 
3867
+ this.set( 'settings', settings );
 
3868
 
3869
+ elementorFrontend.config.elements.data[ this.cid ] = settings;
3870
+ },
3871
 
3872
+ initEditSettings: function() {
3873
+ var editSettings = new Backbone.Model( this.get( 'defaultEditSettings' ) );
3874
 
3875
+ this.set( 'editSettings', editSettings );
 
 
 
3876
 
3877
+ elementorFrontend.config.elements.editSettings[ this.cid ] = editSettings;
3878
+ },
3879
 
3880
+ onDestroy: function() {
3881
+ // Clean the memory for all use instances
3882
+ var settings = this.get( 'settings' ),
3883
+ elements = this.get( 'elements' );
3884
 
3885
+ if ( undefined !== elements ) {
3886
+ _.each( _.clone( elements.models ), function( model ) {
3887
+ model.destroy();
3888
+ } );
3889
  }
3890
 
3891
+ if ( settings instanceof BaseSettingsModel ) {
3892
+ settings.destroy();
3893
+ }
3894
+ },
3895
 
3896
+ onCloseEditor: function() {
3897
+ this.initEditSettings();
 
3898
 
3899
+ if ( this.renderOnLeave ) {
3900
+ this.renderRemoteServer();
3901
+ }
3902
+ },
3903
 
3904
+ setSetting: function( key, value ) {
3905
+ this.get( 'settings' ).setExternalChange( key, value );
3906
+ },
3907
 
3908
+ getSetting: function( key ) {
3909
+ var settings = this.get( 'settings' );
 
 
 
3910
 
3911
+ if ( undefined === settings.get( key ) ) {
3912
+ return '';
3913
+ }
 
 
 
 
3914
 
3915
+ return settings.get( key );
3916
+ },
 
3917
 
3918
+ setHtmlCache: function( htmlCache ) {
3919
+ this._htmlCache = htmlCache;
3920
+ },
 
3921
 
3922
+ getHtmlCache: function() {
3923
+ return this._htmlCache;
3924
+ },
3925
 
3926
+ getTitle: function() {
3927
+ var elementData = elementor.getElementData( this );
3928
 
3929
+ return ( elementData ) ? elementData.title : 'Unknown';
3930
  },
3931
 
3932
+ getIcon: function() {
3933
+ var elementData = elementor.getElementData( this );
 
 
 
 
 
 
3934
 
3935
+ return ( elementData ) ? elementData.icon : 'unknown';
3936
+ },
3937
 
3938
+ createRemoteRenderRequest: function() {
3939
+ var data = this.toJSON();
 
3940
 
3941
+ return elementor.ajax.send( 'render_widget', {
3942
+ data: {
3943
+ post_id: elementor.config.post_id,
3944
+ data: JSON.stringify( data ),
3945
+ _nonce: elementor.config.nonce
3946
+ },
3947
+ success: _.bind( this.onRemoteGetHtml, this )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3948
  } );
3949
  },
3950
 
3951
+ renderRemoteServer: function() {
3952
+ if ( ! this.remoteRender ) {
3953
+ return;
3954
+ }
3955
 
3956
+ this.renderOnLeave = false;
 
 
3957
 
3958
+ this.trigger( 'before:remote:render' );
 
3959
 
3960
+ if ( this.isRemoteRequestActive() ) {
3961
+ this._jqueryXhr.abort();
3962
+ }
3963
 
3964
+ this._jqueryXhr = this.createRemoteRenderRequest();
 
 
3965
  },
3966
 
3967
+ isRemoteRequestActive: function() {
3968
+ return this._jqueryXhr && 4 !== this._jqueryXhr.readyState;
 
 
 
 
3969
  },
3970
 
3971
+ onRemoteGetHtml: function( data ) {
3972
+ this.setHtmlCache( data.render );
3973
+ this.trigger( 'remote:render' );
 
3974
  },
3975
 
3976
+ clone: function() {
3977
+ var newModel = new this.constructor( elementor.helpers.cloneObject( this.attributes ) );
 
3978
 
3979
+ newModel.set( 'id', elementor.helpers.getUniqueID() );
 
 
 
 
3980
 
3981
+ newModel.setHtmlCache( this.getHtmlCache() );
 
3982
 
3983
+ var elements = this.get( 'elements' );
 
 
3984
 
3985
+ if ( ! _.isEmpty( elements ) ) {
3986
+ newModel.set( 'elements', elements.clone() );
3987
+ }
3988
 
3989
+ return newModel;
 
3990
  },
3991
 
3992
  toJSON: function( options ) {
3993
+ options = _.extend( { copyHtmlCache: false }, options );
 
 
3994
 
3995
+ // Call parent's toJSON method
3996
+ var data = Backbone.Model.prototype.toJSON.call( this );
 
3997
 
3998
  _.each( data, function( attribute, key ) {
3999
  if ( attribute && attribute.toJSON ) {
4000
+ data[ key ] = attribute.toJSON( options );
4001
  }
4002
  } );
4003
 
4004
+ if ( options.copyHtmlCache ) {
4005
+ data.htmlCache = this.getHtmlCache();
4006
+ } else {
4007
+ delete data.htmlCache;
4008
+ }
4009
 
4010
+ return data;
4011
+ }
4012
 
4013
+ } );
 
 
 
4014
 
4015
+ ElementCollection = Backbone.Collection.extend( {
4016
+ add: function( models, options, isCorrectSet ) {
4017
+ if ( ( ! options || ! options.silent ) && ! isCorrectSet ) {
4018
+ throw 'Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.';
4019
+ }
4020
 
4021
+ return Backbone.Collection.prototype.add.call( this, models, options );
4022
+ },
4023
 
4024
+ model: function( attrs, options ) {
4025
+ var ModelClass = Backbone.Model;
 
 
 
4026
 
4027
+ if ( attrs.elType ) {
4028
+ ModelClass = elementor.hooks.applyFilters( 'element/model', ElementModel, attrs );
 
 
 
 
 
 
 
 
4029
  }
4030
 
4031
+ return new ModelClass( attrs, options );
4032
+ },
4033
+
4034
+ clone: function() {
4035
+ var tempCollection = Backbone.Collection.prototype.clone.apply( this, arguments ),
4036
+ newCollection = new ElementCollection();
4037
+
4038
+ tempCollection.forEach( function( model ) {
4039
+ newCollection.add( model.clone(), null, true );
4040
+ } );
4041
+
4042
+ return newCollection;
4043
  }
4044
  } );
4045
 
4046
+ ElementCollection.prototype.sync = function() {
4047
+ return null;
4048
+ };
4049
+
4050
+ ElementCollection.prototype.fetch = function() {
4051
+ return null;
4052
+ };
4053
+
4054
+ ElementCollection.prototype.save = function() {
4055
+ return null;
4056
+ };
4057
+
4058
+ ElementModel.prototype.sync = function() {
4059
+ return null;
4060
+ };
4061
+ ElementModel.prototype.fetch = function() {
4062
+ return null;
4063
+ };
4064
+ ElementModel.prototype.save = function() {
4065
+ return null;
4066
+ };
4067
+
4068
+ module.exports = {
4069
+ Model: ElementModel,
4070
+ Collection: ElementCollection
4071
+ };
4072
 
4073
+ },{"elementor-models/base-settings":52,"elementor-models/column-settings":53,"elementor-models/section-settings":55,"elementor-models/widget-settings":56}],55:[function(require,module,exports){
4074
  var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4075
+ SectionSettingsModel;
4076
 
4077
+ SectionSettingsModel = BaseSettingsModel.extend( {
4078
+ defaults: {}
 
 
4079
  } );
4080
 
4081
+ module.exports = SectionSettingsModel;
4082
 
4083
+ },{"elementor-models/base-settings":52}],56:[function(require,module,exports){
4084
  var BaseSettingsModel = require( 'elementor-models/base-settings' ),
4085
+ WidgetSettingsModel;
 
 
4086
 
4087
+ WidgetSettingsModel = BaseSettingsModel.extend( {
 
4088
 
4089
+ } );
 
 
 
 
 
 
 
4090
 
4091
+ module.exports = WidgetSettingsModel;
 
 
 
4092
 
4093
+ },{"elementor-models/base-settings":52}],57:[function(require,module,exports){
4094
+ var ViewModule = require( 'elementor-utils/view-module' ),
4095
+ SettingsModel = require( 'elementor-models/base-settings' ),
4096
+ ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' );
4097
 
4098
+ module.exports = ViewModule.extend( {
4099
+ controlsCSS: null,
 
4100
 
4101
+ model: null,
 
 
 
4102
 
4103
+ hasChange: false,
 
4104
 
4105
+ changeCallbacks: {},
 
4106
 
4107
+ addChangeCallback: function( attribute, callback ) {
4108
+ this.changeCallbacks[ attribute ] = callback;
4109
+ },
4110
 
4111
+ bindEvents: function() {
4112
+ elementor.on( 'preview:loaded', this.onElementorPreviewLoaded );
4113
 
4114
+ this.model.on( 'change', this.onModelChange );
 
 
 
4115
  },
4116
 
4117
+ addPanelPage: function() {
4118
+ var name = this.getSettings( 'name' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4119
 
4120
+ elementor.getPanelView().addPage( name + '_settings', {
4121
+ view: elementor.settings.panelPages[ name ] || elementor.settings.panelPages.base,
4122
+ title: this.getSettings( 'panelPage.title' ),
4123
+ options: {
4124
+ model: this.model,
4125
+ name: name
4126
+ }
4127
+ } );
4128
+ },
4129
 
4130
+ updateStylesheet: function() {
4131
+ this.controlsCSS.stylesheet.empty();
4132
 
4133
+ this.controlsCSS.addStyleRules( this.model.getStyleControls(), this.model.attributes, this.model.controls, [ /{{WRAPPER}}/g ], [ this.getSettings( 'cssWrapperSelector' ) ] );
4134
 
4135
+ this.controlsCSS.addStyleToDocument();
4136
  },
4137
 
4138
+ initModel: function() {
4139
+ this.model = new SettingsModel( this.getSettings( 'settings' ), {
4140
+ controls: this.getSettings( 'controls' )
4141
+ } );
4142
+ },
4143
 
4144
+ initControlsCSSParser: function() {
4145
+ this.controlsCSS = new ControlsCSSParser( { id: this.getSettings( 'name' ) } );
4146
  },
4147
 
4148
+ getDataToSave: function( data ) {
4149
+ return data;
4150
+ },
 
4151
 
4152
+ save: function( callback ) {
4153
+ var self = this;
 
 
 
4154
 
4155
+ if ( ! self.hasChange ) {
4156
+ return;
4157
  }
 
4158
 
4159
+ var settings = this.model.toJSON( { removeDefault: true } ),
4160
+ data = this.getDataToSave( {
4161
+ data: JSON.stringify( settings )
4162
+ } );
4163
 
4164
+ NProgress.start();
 
 
 
4165
 
4166
+ elementor.ajax.send( 'save_' + this.getSettings( 'name' ) + '_settings', {
4167
+ data: data,
4168
+ success: function() {
4169
+ NProgress.done();
4170
 
4171
+ self.setSettings( 'settings', settings );
 
4172
 
4173
+ self.hasChange = false;
 
 
4174
 
4175
+ if ( callback ) {
4176
+ callback.apply( self, arguments );
4177
+ }
4178
+ },
4179
+ error: function() {
4180
+ alert( 'An error occurred' );
4181
+ }
4182
+ } );
4183
  },
4184
 
4185
+ addPanelMenuItem: function() {
4186
+ var menuSettings = this.getSettings( 'panelPage.menu' ),
4187
+ menuItemOptions = {
4188
+ icon: menuSettings.icon,
4189
+ title: this.getSettings( 'panelPage.title' ),
4190
+ type: 'page',
4191
+ pageName: this.getSettings( 'name' ) + '_settings'
4192
+ };
4193
 
4194
+ elementor.modules.panel.Menu.addItem( menuItemOptions, menuSettings.beforeItem );
 
4195
  },
4196
 
4197
+ onInit: function() {
4198
+ this.initModel();
4199
 
4200
+ this.initControlsCSSParser();
 
4201
 
4202
+ this.addPanelMenuItem();
 
4203
 
4204
+ this.debounceSave = _.debounce( this.save, 3000 );
4205
+
4206
+ ViewModule.prototype.onInit.apply( this, arguments );
4207
  },
4208
 
4209
+ onModelChange: function( model ) {
4210
+ var self = this;
4211
 
4212
+ self.hasChange = true;
4213
+
4214
+ this.controlsCSS.stylesheet.empty();
4215
+
4216
+ _.each( model.changed, function( value, key ) {
4217
+ if ( self.changeCallbacks[ key ] ) {
4218
+ self.changeCallbacks[ key ].call( self, value );
4219
+ }
4220
  } );
4221
+
4222
+ self.updateStylesheet();
4223
+
4224
+ self.debounceSave();
4225
  },
4226
 
4227
+ onElementorPreviewLoaded: function() {
4228
+ this.updateStylesheet();
 
 
4229
 
4230
+ this.addPanelPage();
4231
+ }
4232
+ } );
4233
 
4234
+ },{"elementor-editor-utils/controls-css-parser":64,"elementor-models/base-settings":52,"elementor-utils/view-module":117}],58:[function(require,module,exports){
4235
+ var ControlsStack = require( 'elementor-views/controls-stack' );
4236
 
4237
+ module.exports = ControlsStack.extend( {
4238
+ id: function() {
4239
+ return 'elementor-panel-' + this.getOption( 'name' ) + '-settings';
4240
+ },
4241
 
4242
+ getTemplate: function() {
4243
+ return '#tmpl-elementor-panel-' + this.getOption( 'name' ) + '-settings';
4244
  },
4245
 
4246
+ childViewContainer: function() {
4247
+ return '#elementor-panel-' + this.getOption( 'name' ) + '-settings-controls';
4248
  },
4249
 
4250
+ childViewOptions: function() {
4251
+ return {
4252
+ elementSettingsModel: this.model
4253
+ };
4254
  },
4255
 
4256
+ initialize: function() {
4257
+ this.collection = new Backbone.Collection( _.values( this.model.controls ) );
4258
+ }
4259
+ } );
4260
 
4261
+ },{"elementor-views/controls-stack":83}],59:[function(require,module,exports){
4262
+ var BaseSettings = require( 'elementor-editor/settings/base/manager' );
4263
 
4264
+ module.exports = BaseSettings.extend( {
4265
+ changeCallbacks: {
4266
+ elementor_page_title_selector: function( newValue ) {
4267
+ var newSelector = newValue || 'h1.entry-title',
4268
+ titleSelectors = elementor.settings.page.model.controls.hide_title.selectors = {};
4269
 
4270
+ titleSelectors[ newSelector ] = 'display: none';
4271
 
4272
+ elementor.settings.page.updateStylesheet();
 
4273
  }
4274
+ }
4275
+ } );
4276
 
4277
+ },{"elementor-editor/settings/base/manager":57}],60:[function(require,module,exports){
4278
+ var BaseSettings = require( 'elementor-editor/settings/base/manager' );
4279
 
4280
+ module.exports = BaseSettings.extend( {
4281
+ changeCallbacks: {
4282
+ post_title: function( newValue ) {
4283
+ var $title = elementorFrontend.getElements( '$document' ).find( elementor.config.page_title_selector );
4284
 
4285
+ $title.text( newValue );
4286
+ },
4287
 
4288
+ template: function() {
4289
+ this.save( function() {
4290
+ elementor.reloadPreview();
 
 
4291
 
4292
+ elementor.once( 'preview:loaded', function() {
4293
+ elementor.getPanelView().setPage( 'page_settings' );
4294
+ } );
4295
+ } );
4296
  }
4297
+ },
4298
+
4299
+ getDataToSave: function( data ) {
4300
+ data.id = elementor.config.post_id;
4301
 
4302
  return data;
4303
  }
 
4304
  } );
4305
 
4306
+ },{"elementor-editor/settings/base/manager":57}],61:[function(require,module,exports){
4307
+ var Module = require( 'elementor-utils/module' );
 
 
 
4308
 
4309
+ module.exports = Module.extend( {
4310
+ modules: {
4311
+ base: require( 'elementor-editor/settings/base/manager' ),
4312
+ general: require( 'elementor-editor/settings/general/manager' ),
4313
+ page: require( 'elementor-editor/settings/page/manager' )
4314
  },
4315
 
4316
+ panelPages: {
4317
+ base: require( 'elementor-editor/settings/base/panel' )
4318
+ },
 
 
 
4319
 
4320
+ onInit: function() {
4321
+ this.initSettings();
4322
  },
4323
 
4324
+ initSettings: function() {
4325
+ var self = this;
 
4326
 
4327
+ _.each( elementor.config.settings, function( config, name ) {
4328
+ var Manager = self.modules[ name ] || self.modules.base;
 
4329
 
4330
+ self[ name ] = new Manager( config );
4331
+ } );
4332
  }
4333
  } );
4334
 
4335
+ },{"elementor-editor/settings/base/manager":57,"elementor-editor/settings/base/panel":58,"elementor-editor/settings/general/manager":59,"elementor-editor/settings/page/manager":60,"elementor-utils/module":116}],62:[function(require,module,exports){
4336
+ var Ajax;
 
4337
 
4338
+ Ajax = {
4339
+ config: {},
 
4340
 
4341
+ initConfig: function() {
4342
+ this.config = {
4343
+ ajaxParams: {
4344
+ type: 'POST',
4345
+ url: elementor.config.ajaxurl,
4346
+ data: {}
4347
+ },
4348
+ actionPrefix: 'elementor_'
4349
+ };
4350
+ },
4351
 
4352
+ init: function() {
4353
+ this.initConfig();
4354
+ },
 
 
 
 
 
 
4355
 
4356
+ send: function( action, options ) {
4357
+ var ajaxParams = elementor.helpers.cloneObject( this.config.ajaxParams );
 
 
4358
 
4359
+ options = options || {};
 
 
4360
 
4361
+ action = this.config.actionPrefix + action;
 
 
4362
 
4363
+ Backbone.$.extend( ajaxParams, options );
4364
 
4365
+ if ( ajaxParams.data instanceof FormData ) {
4366
+ ajaxParams.data.append( 'action', action );
4367
+ ajaxParams.data.append( '_nonce', elementor.config.nonce );
4368
+ } else {
4369
+ ajaxParams.data.action = action;
4370
+ ajaxParams.data._nonce = elementor.config.nonce;
4371
+ }
4372
 
4373
+ var successCallback = ajaxParams.success,
4374
+ errorCallback = ajaxParams.error;
4375
 
4376
+ if ( successCallback || errorCallback ) {
4377
+ ajaxParams.success = function( response ) {
4378
+ if ( response.success && successCallback ) {
4379
+ successCallback( response.data );
4380
+ }
4381
 
4382
+ if ( ( ! response.success ) && errorCallback ) {
4383
+ errorCallback( response.data );
4384
+ }
4385
+ };
4386
 
4387
+ if ( errorCallback ) {
4388
+ ajaxParams.error = function( data ) {
4389
+ errorCallback( data );
4390
+ };
4391
+ }
4392
+ }
4393
 
4394
+ return Backbone.$.ajax( ajaxParams );
4395
+ }
4396
+ };
4397
 
4398
+ module.exports = Ajax;
4399
 
4400
+ },{}],63:[function(require,module,exports){
4401
+ var Conditions;
4402
 
4403
+ Conditions = function() {
4404
+ var self = this;
4405
 
4406
+ this.compare = function( leftValue, rightValue, operator ) {
4407
+ switch ( operator ) {
4408
+ /* jshint ignore:start */
4409
+ case '==':
4410
+ return leftValue == rightValue;
4411
+ case '!=':
4412
+ return leftValue != rightValue;
4413
+ /* jshint ignore:end */
4414
+ case '!==':
4415
+ return leftValue !== rightValue;
4416
+ case 'in':
4417
+ return -1 !== rightValue.indexOf( leftValue );
4418
+ case '!in':
4419
+ return -1 === rightValue.indexOf( leftValue );
4420
+ case '<':
4421
+ return leftValue < rightValue;
4422
+ case '<=':
4423
+ return leftValue <= rightValue;
4424
+ case '>':
4425
+ return leftValue > rightValue;
4426
+ case '>=':
4427
+ return leftValue >= rightValue;
4428
+ default:
4429
+ return leftValue === rightValue;
4430
+ }
4431
+ };
4432
 
4433
+ this.check = function( conditions, comparisonObject ) {
4434
+ var isOrCondition = 'or' === conditions.relation,
4435
+ conditionSucceed = ! isOrCondition;
4436
 
4437
+ Backbone.$.each( conditions.terms, function() {
4438
+ var term = this,
4439
+ comparisonResult;
4440
 
4441
+ if ( term.terms ) {
4442
+ comparisonResult = self.check( term, comparisonObject );
4443
+ } else {
4444
+ var parsedName = term.name.match( /(\w+)(?:\[(\w+)])?/ ),
4445
+ value = comparisonObject[ parsedName[ 1 ] ];
4446
 
4447
+ if ( parsedName[ 2 ] ) {
4448
+ value = value[ parsedName[ 2 ] ];
4449
+ }
4450
+
4451
+ comparisonResult = self.compare( value, term.value, term.operator );
4452
+ }
4453
+
4454
+ if ( isOrCondition ) {
4455
+ if ( comparisonResult ) {
4456
+ conditionSucceed = true;
4457
+ }
4458
+
4459
+ return ! comparisonResult;
4460
+ }
4461
+
4462
+ if ( ! comparisonResult ) {
4463
+ return conditionSucceed = false;
4464
  }
4465
  } );
 
4466
 
4467
+ return conditionSucceed;
4468
+ };
4469
+ };
4470
 
4471
+ module.exports = new Conditions();
4472
 
4473
+ },{}],64:[function(require,module,exports){
4474
+ var ViewModule = require( 'elementor-utils/view-module' ),
4475
+ Stylesheet = require( 'elementor-editor-utils/stylesheet' ),
4476
+ ControlsCSSParser;
4477
 
4478
+ ControlsCSSParser = ViewModule.extend( {
4479
+ stylesheet: null,
4480
+
4481
+ getDefaultSettings: function() {
4482
+ return {
4483
+ id: 0
4484
+ };
4485
  },
4486
 
4487
+ getDefaultElements: function() {
4488
+ return {
4489
+ $stylesheetElement: Backbone.$( '<style>', { id: 'elementor-style-' + this.getSettings( 'id' ) } )
4490
+ };
4491
  },
4492
 
4493
+ initStylesheet: function() {
4494
+ var viewportBreakpoints = elementor.config.viewportBreakpoints;
4495
+
4496
+ this.stylesheet = new Stylesheet();
4497
+
4498
+ this.stylesheet
4499
+ .addDevice( 'mobile', 0 )
4500
+ .addDevice( 'tablet', viewportBreakpoints.md )
4501
+ .addDevice( 'desktop', viewportBreakpoints.lg );
4502
  },
4503
 
4504
+ addStyleRules: function( controls, values, controlsStack, placeholders, replacements ) {
4505
  var self = this;
4506
 
4507
+ _.each( controls, function( control ) {
4508
+ if ( control.styleFields && control.styleFields.length ) {
4509
+ values[ control.name ].each( function( itemModel ) {
4510
+ self.addStyleRules(
4511
+ control.styleFields,
4512
+ itemModel.attributes,
4513
+ controlsStack,
4514
+ placeholders.concat( [ '{{CURRENT_ITEM}}' ] ),
4515
+ replacements.concat( [ '.elementor-repeater-item-' + itemModel.get( '_id' ) ] )
4516
+ );
4517
+ } );
4518
+ }
4519
 
4520
+ self.addControlStyleRules( control, values, controlsStack, placeholders, replacements );
4521
+ } );
4522
+ },
 
4523
 
4524
+ addControlStyleRules: function( control, values, controlsStack, placeholders, replacements ) {
4525
+ var self = this;
4526
 
4527
+ ControlsCSSParser.addControlStyleRules( self.stylesheet, control, controlsStack, function( control ) {
4528
+ return self.getStyleControlValue( control, values );
4529
+ }, placeholders, replacements );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4530
  },
4531
 
4532
+ getStyleControlValue: function( control, values ) {
4533
+ var value = values[ control.name ];
 
 
4534
 
4535
+ if ( control.selectors_dictionary ) {
4536
+ value = control.selectors_dictionary[ value ] || value;
4537
+ }
4538
 
4539
+ if ( ! _.isNumber( value ) && _.isEmpty( value ) ) {
4540
+ return;
4541
+ }
4542
 
4543
+ return value;
4544
  },
4545
 
4546
+ addStyleToDocument: function() {
4547
+ elementor.$previewContents.find( 'head' ).append( this.elements.$stylesheetElement );
 
 
 
 
 
 
 
 
 
 
4548
 
4549
+ this.elements.$stylesheetElement.text( this.stylesheet );
4550
+ },
4551
 
4552
+ removeStyleFromDocument: function() {
4553
+ this.elements.$stylesheetElement.remove();
4554
  },
4555
 
4556
+ onInit: function() {
4557
+ ViewModule.prototype.onInit.apply( this, arguments );
4558
 
4559
+ this.initStylesheet();
4560
  }
4561
  } );
4562
 
4563
+ ControlsCSSParser.addControlStyleRules = function( stylesheet, control, controlsStack, valueCallback, placeholders, replacements ) {
4564
+ var value = valueCallback( control );
4565
 
4566
+ if ( undefined === value ) {
4567
+ return;
4568
+ }
 
4569
 
4570
+ _.each( control.selectors, function( cssProperty, selector ) {
4571
+ var outputCssProperty;
 
4572
 
4573
+ try {
4574
+ outputCssProperty = cssProperty.replace( /{{(?:([^.}]+)\.)?([^}]*)}}/g, function( originalPhrase, controlName, placeholder ) {
4575
+ var parserControl = control,
4576
+ valueToInsert = value;
4577
 
4578
+ if ( controlName ) {
4579
+ parserControl = _.findWhere( controlsStack, { name: controlName } );
 
 
 
4580
 
4581
+ if ( ! parserControl ) {
4582
+ return '';
4583
+ }
 
4584
 
4585
+ valueToInsert = valueCallback( parserControl );
4586
+ }
4587
 
4588
+ var parsedValue = elementor.getControlView( parserControl.type ).getStyleValue( placeholder.toLowerCase(), valueToInsert );
 
 
 
 
4589
 
4590
+ if ( '' === parsedValue ) {
4591
+ throw '';
4592
+ }
4593
 
4594
+ return parsedValue;
4595
+ } );
4596
+ } catch ( e ) {
4597
+ return;
4598
  }
 
 
4599
 
4600
+ if ( _.isEmpty( outputCssProperty ) ) {
4601
+ return;
4602
+ }
4603
 
4604
+ var devicePattern = /^(?:\([^)]+\)){1,2}/,
4605
+ deviceRules = selector.match( devicePattern ),
4606
+ query = {};
 
4607
 
4608
+ if ( deviceRules ) {
4609
+ deviceRules = deviceRules[0];
4610
 
4611
+ selector = selector.replace( devicePattern, '' );
 
 
4612
 
4613
+ var pureDevicePattern = /\(([^)]+)\)/g,
4614
+ pureDeviceRules = [],
4615
+ matches;
 
 
 
4616
 
4617
+ while ( matches = pureDevicePattern.exec( deviceRules ) ) {
4618
+ pureDeviceRules.push( matches[1] );
4619
+ }
4620
 
4621
+ _.each( pureDeviceRules, function( deviceRule ) {
4622
+ if ( 'desktop' === deviceRule ) {
4623
+ return;
4624
+ }
4625
 
4626
+ var device = deviceRule.replace( /\+$/, '' ),
4627
+ endPoint = device === deviceRule ? 'max' : 'min';
4628
 
4629
+ query[ endPoint ] = device;
4630
+ } );
4631
+ }
 
 
 
4632
 
4633
+ _.each( placeholders, function( placeholder, index ) {
4634
+ // Check if it's a RegExp
4635
+ var regexp = placeholder.source ? placeholder.source : placeholder,
4636
+ placeholderPattern = new RegExp( regexp, 'g' );
4637
 
4638
+ selector = selector.replace( placeholderPattern, replacements[ index ] );
4639
+ } );
 
4640
 
4641
+ if ( ! Object.keys( query ).length && control.responsive ) {
4642
+ query = _.pick( elementor.helpers.cloneObject( control.responsive ), [ 'min', 'max' ] );
4643
 
4644
+ if ( 'desktop' === query.max ) {
4645
+ delete query.max;
4646
+ }
4647
+ }
4648
 
4649
+ stylesheet.addRules( selector, outputCssProperty, query );
4650
+ } );
4651
+ };
 
4652
 
4653
+ module.exports = ControlsCSSParser;
 
4654
 
4655
+ },{"elementor-editor-utils/stylesheet":74,"elementor-utils/view-module":117}],65:[function(require,module,exports){
4656
+ var Debug = function() {
4657
+ var self = this,
4658
+ errorStack = [],
4659
+ settings = {},
4660
+ elements = {};
4661
 
4662
+ var initSettings = function() {
4663
+ settings = {
4664
+ debounceDelay: 500,
4665
+ urlsToWatch: [
4666
+ 'elementor/assets'
4667
+ ]
 
 
4668
  };
4669
+ };
4670
 
4671
+ var initElements = function() {
4672
+ elements.$window = jQuery( window );
4673
+ };
4674
 
4675
+ var onError = function( event ) {
4676
+ var originalEvent = event.originalEvent,
4677
+ error = originalEvent.error;
4678
 
4679
+ if ( ! error ) {
4680
+ return;
4681
+ }
4682
 
4683
+ var isInWatchList = false,
4684
+ urlsToWatch = settings.urlsToWatch;
4685
 
4686
+ jQuery.each( urlsToWatch, function() {
4687
+ if ( -1 !== error.stack.indexOf( this ) ) {
4688
+ isInWatchList = true;
4689
 
4690
+ return false;
4691
+ }
4692
+ } );
4693
+
4694
+ if ( ! isInWatchList ) {
4695
+ return;
4696
  }
4697
 
4698
+ self.addError( {
4699
+ type: error.name,
4700
+ message: error.message,
4701
+ url: originalEvent.filename,
4702
+ line: originalEvent.lineno,
4703
+ column: originalEvent.colno
4704
+ } );
4705
+ };
4706
 
4707
+ var bindEvents = function() {
4708
+ elements.$window.on( 'error', onError );
4709
+ };
 
 
4710
 
4711
+ var init = function() {
4712
+ initSettings();
 
 
4713
 
4714
+ initElements();
 
 
 
 
 
4715
 
4716
+ bindEvents();
 
 
4717
 
4718
+ self.sendErrors = _.debounce( self.sendErrors, settings.debounceDelay );
4719
+ };
4720
 
4721
+ this.addURLToWatch = function( url ) {
4722
+ settings.urlsToWatch.push( url );
4723
+ };
4724
 
4725
+ this.addCustomError = function( error, category, tag ) {
4726
+ var errorInfo = {
4727
+ type: error.name,
4728
+ message: error.message,
4729
+ url: error.fileName || error.sourceURL,
4730
+ line: error.lineNumber || error.line,
4731
+ column: error.columnNumber || error.column,
4732
+ customFields: {
4733
+ category: category || 'general',
4734
+ tag: tag
4735
+ }
4736
+ };
4737
 
4738
+ if ( ! errorInfo.url ) {
4739
+ var stackInfo = error.stack.match( /\n {4}at (.*?(?=:(\d+):(\d+)))/ );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4740
 
4741
+ if ( stackInfo ) {
4742
+ errorInfo.url = stackInfo[1];
4743
+ errorInfo.line = stackInfo[2];
4744
+ errorInfo.column = stackInfo[3];
4745
+ }
4746
+ }
4747
 
4748
+ this.addError( errorInfo );
4749
+ };
 
4750
 
4751
+ this.addError = function( errorParams ) {
4752
+ var defaultParams = {
4753
+ type: 'Error',
4754
+ timestamp: Math.floor( new Date().getTime() / 1000 ),
4755
+ message: null,
4756
+ url: null,
4757
+ line: null,
4758
+ column: null,
4759
+ customFields: {}
4760
+ };
4761
 
4762
+ errorStack.push( jQuery.extend( true, defaultParams, errorParams ) );
 
 
4763
 
4764
+ self.sendErrors();
4765
+ };
4766
 
4767
+ this.sendErrors = function() {
4768
+ // Avoid recursions on errors in ajax
4769
+ elements.$window.off( 'error', onError );
 
4770
 
4771
+ jQuery.ajax( {
4772
+ url: ElementorConfig.ajaxurl,
4773
+ method: 'POST',
4774
+ data: {
4775
+ action: 'elementor_debug_log',
4776
+ data: errorStack
4777
+ },
4778
+ success: function() {
4779
+ errorStack = [];
4780
 
4781
+ // Restore error handler
4782
+ elements.$window.on( 'error', onError );
4783
  }
4784
  } );
 
 
4785
  };
4786
+
4787
+ init();
4788
  };
4789
 
4790
+ module.exports = new Debug();
4791
 
4792
+ },{}],66:[function(require,module,exports){
4793
+ var heartbeat;
 
 
4794
 
4795
+ heartbeat = {
 
4796
 
4797
+ init: function() {
4798
+ var modal;
 
 
 
4799
 
4800
+ this.getModal = function() {
4801
+ if ( ! modal ) {
4802
+ modal = this.initModal();
4803
+ }
4804
+
4805
+ return modal;
4806
  };
 
4807
 
4808
+ Backbone.$( document ).on( {
4809
+ 'heartbeat-send': function( event, data ) {
4810
+ data.elementor_post_lock = {
4811
+ post_ID: elementor.config.post_id
4812
+ };
4813
+ },
4814
+ 'heartbeat-tick': function( event, response ) {
4815
+ if ( response.locked_user ) {
4816
+ if ( elementor.isEditorChanged() ) {
4817
+ elementor.saveEditor( { status: 'autosave' } );
4818
+ }
4819
 
4820
+ heartbeat.showLockMessage( response.locked_user );
4821
+ } else {
4822
+ heartbeat.getModal().hide();
4823
+ }
4824
 
4825
+ elementor.config.nonce = response.elementor_nonce;
4826
+ }
4827
+ } );
4828
+
4829
+ if ( elementor.config.locked_user ) {
4830
+ heartbeat.showLockMessage( elementor.config.locked_user );
4831
+ }
4832
  },
4833
 
4834
+ initModal: function() {
4835
+ var modal = elementor.dialogsManager.createWidget( 'options', {
4836
+ headerMessage: elementor.translate( 'take_over' )
4837
+ } );
4838
 
4839
+ modal.addButton( {
4840
+ name: 'go_back',
4841
+ text: elementor.translate( 'go_back' ),
4842
+ callback: function() {
4843
+ parent.history.go( -1 );
 
 
 
 
 
 
4844
  }
 
 
4845
  } );
 
4846
 
4847
+ modal.addButton( {
4848
+ name: 'take_over',
4849
+ text: elementor.translate( 'take_over' ),
4850
+ callback: function() {
4851
+ wp.heartbeat.enqueue( 'elementor_force_post_lock', true );
4852
+ wp.heartbeat.connectNow();
4853
+ }
4854
+ } );
4855
 
4856
+ return modal;
 
 
4857
  },
4858
 
4859
+ showLockMessage: function( lockedUser ) {
4860
+ var modal = heartbeat.getModal();
 
 
 
 
4861
 
4862
+ modal
4863
+ .setMessage( elementor.translate( 'dialog_user_taken_over', [ lockedUser ] ) )
4864
+ .show();
4865
+ }
4866
+ };
4867
 
4868
+ module.exports = heartbeat;
 
4869
 
4870
+ },{}],67:[function(require,module,exports){
4871
+ var helpers;
4872
 
4873
+ helpers = {
4874
+ _enqueuedFonts: [],
4875
 
4876
+ elementsHierarchy: {
4877
+ section: {
4878
+ column: {
4879
+ widget: null,
4880
+ section: null
4881
+ }
4882
+ }
4883
  },
4884
 
4885
+ enqueueFont: function( font ) {
4886
+ if ( -1 !== this._enqueuedFonts.indexOf( font ) ) {
4887
+ return;
4888
+ }
 
 
 
 
 
 
 
 
 
 
 
 
4889
 
4890
+ var fontType = elementor.config.controls.font.fonts[ font ],
4891
+ fontUrl,
 
 
4892
 
4893
+ subsets = {
4894
+ 'ru_RU': 'cyrillic',
4895
+ 'uk': 'cyrillic',
4896
+ 'bg_BG': 'cyrillic',
4897
+ 'vi': 'vietnamese',
4898
+ 'el': 'greek',
4899
+ 'he_IL': 'hebrew'
4900
+ };
4901
 
4902
+ switch ( fontType ) {
4903
+ case 'googlefonts' :
4904
+ fontUrl = 'https://fonts.googleapis.com/css?family=' + font + ':100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';
4905
 
4906
+ if ( subsets[ elementor.config.locale ] ) {
4907
+ fontUrl += '&subset=' + subsets[ elementor.config.locale ];
4908
  }
4909
 
4910
+ break;
4911
 
4912
+ case 'earlyaccess' :
4913
+ var fontLowerString = font.replace( /\s+/g, '' ).toLowerCase();
4914
+ fontUrl = 'https://fonts.googleapis.com/earlyaccess/' + fontLowerString + '.css';
4915
+ break;
4916
+ }
4917
 
4918
+ if ( ! _.isEmpty( fontUrl ) ) {
4919
+ elementor.$previewContents.find( 'link:last' ).after( '<link href="' + fontUrl + '" rel="stylesheet" type="text/css">' );
 
 
4920
  }
4921
+ this._enqueuedFonts.push( font );
4922
+ },
4923
 
4924
+ getElementChildType: function( elementType, container ) {
4925
+ if ( ! container ) {
4926
+ container = this.elementsHierarchy;
4927
  }
4928
 
4929
+ if ( undefined !== container[ elementType ] ) {
 
 
4930
 
4931
+ if ( Backbone.$.isPlainObject( container[ elementType ] ) ) {
4932
+ return Object.keys( container[ elementType ] );
4933
+ }
4934
 
4935
+ return null;
4936
+ }
4937
 
4938
+ for ( var type in container ) {
 
 
4939
 
4940
+ if ( ! container.hasOwnProperty( type ) ) {
4941
+ continue;
4942
  }
4943
 
4944
+ if ( ! Backbone.$.isPlainObject( container[ type ] ) ) {
4945
+ continue;
4946
+ }
 
4947
 
4948
+ var result = this.getElementChildType( elementType, container[ type ] );
 
4949
 
4950
+ if ( result ) {
4951
+ return result;
4952
+ }
4953
  }
4954
 
4955
+ return null;
4956
+ },
 
 
4957
 
4958
+ getUniqueID: function() {
4959
+ var id;
4960
+
4961
+ // TODO: Check conflict models
4962
+ //while ( true ) {
4963
+ id = Math.random().toString( 36 ).substr( 2, 7 );
4964
+ //if ( 1 > $( 'li.item-id-' + id ).length ) {
4965
+ return id;
4966
+ //}
4967
+ //}
4968
+ },
4969
+
4970
+ stringReplaceAll: function( string, replaces ) {
4971
+ var re = new RegExp( Object.keys( replaces ).join( '|' ), 'gi' );
4972
+
4973
+ return string.replace( re, function( matched ) {
4974
+ return replaces[ matched ];
4975
  } );
4976
+ },
4977
 
4978
+ isActiveControl: function( controlModel, values ) {
4979
+ var condition;
4980
 
4981
+ // TODO: Better way to get this?
4982
+ if ( _.isFunction( controlModel.get ) ) {
4983
+ condition = controlModel.get( 'condition' );
4984
+ } else {
4985
+ condition = controlModel.condition;
4986
  }
4987
 
4988
+ // Repeater items conditions
4989
+ if ( controlModel.conditions ) {
4990
+ return elementor.conditions.check( controlModel.conditions, values );
4991
+ }
4992
 
4993
+ if ( _.isEmpty( condition ) ) {
4994
+ return true;
4995
+ }
4996
 
4997
+ var hasFields = _.filter( condition, function( conditionValue, conditionName ) {
4998
+ var conditionNameParts = conditionName.match( /([a-z_0-9]+)(?:\[([a-z_]+)])?(!?)$/i ),
4999
+ conditionRealName = conditionNameParts[1],
5000
+ conditionSubKey = conditionNameParts[2],
5001
+ isNegativeCondition = !! conditionNameParts[3],
5002
+ controlValue = values[ conditionRealName ];
5003
 
5004
+ if ( conditionSubKey ) {
5005
+ controlValue = controlValue[ conditionSubKey ];
5006
+ }
 
 
 
 
 
5007
 
5008
+ // If it's a non empty array - check if the conditionValue contains the controlValue,
5009
+ // If the controlValue is a non empty array - check if the controlValue contains the conditionValue
5010
+ // otherwise check if they are equal. ( and give the ability to check if the value is an empty array )
5011
+ var isContains;
5012
+ if ( _.isArray( conditionValue ) && ! _.isEmpty( conditionValue ) ) {
5013
+ isContains = _.contains( conditionValue, controlValue );
5014
+ } else if ( _.isArray( controlValue ) && ! _.isEmpty( controlValue ) ) {
5015
+ isContains = _.contains( controlValue, conditionValue );
5016
+ } else {
5017
+ isContains = _.isEqual( conditionValue, controlValue );
5018
+ }
5019
 
5020
+ return isNegativeCondition ? isContains : ! isContains;
5021
+ } );
 
5022
 
5023
+ return _.isEmpty( hasFields );
5024
+ },
 
5025
 
5026
+ cloneObject: function( object ) {
5027
+ return JSON.parse( JSON.stringify( object ) );
5028
+ },
5029
 
5030
+ disableElementEvents: function( $element ) {
5031
+ $element.each( function() {
5032
+ var currentPointerEvents = this.style.pointerEvents;
5033
 
5034
+ if ( 'none' === currentPointerEvents ) {
5035
+ return;
5036
  }
5037
+
5038
+ Backbone.$( this )
5039
+ .data( 'backup-pointer-events', currentPointerEvents )
5040
+ .css( 'pointer-events', 'none' );
5041
  } );
5042
+ },
5043
 
5044
+ enableElementEvents: function( $element ) {
5045
+ $element.each( function() {
5046
+ var $this = Backbone.$( this ),
5047
+ backupPointerEvents = $this.data( 'backup-pointer-events' );
5048
 
5049
+ if ( undefined === backupPointerEvents ) {
5050
+ return;
5051
+ }
 
 
 
 
 
5052
 
5053
+ $this
5054
+ .removeData( 'backup-pointer-events' )
5055
+ .css( 'pointer-events', backupPointerEvents );
5056
+ } );
5057
+ },
5058
 
5059
+ getColorPickerPaletteIndex: function( paletteKey ) {
5060
+ return [ '7', '8', '1', '5', '2', '3', '6', '4' ].indexOf( paletteKey );
5061
+ },
5062
 
5063
+ wpColorPicker: function( $element, options ) {
5064
+ var self = this,
5065
+ colorPickerScheme = elementor.schemes.getScheme( 'color-picker' ),
5066
+ items = _.sortBy( colorPickerScheme.items, function( item ) {
5067
+ return self.getColorPickerPaletteIndex( item.key );
5068
+ } ),
5069
+ defaultOptions = {
5070
+ width: window.innerWidth >= 1440 ? 271 : 251,
5071
+ palettes: _.pluck( items, 'value' )
5072
+ };
5073
 
5074
+ if ( options ) {
5075
+ _.extend( defaultOptions, options );
5076
+ }
5077
 
5078
+ return $element.wpColorPicker( defaultOptions );
5079
+ },
5080
 
5081
+ isInViewport: function( element, html ) {
5082
+ var rect = element.getBoundingClientRect();
5083
+ html = html || document.documentElement;
5084
+ return (
5085
+ rect.top >= 0 &&
5086
+ rect.left >= 0 &&
5087
+ rect.bottom <= ( window.innerHeight || html.clientHeight ) &&
5088
+ rect.right <= ( window.innerWidth || html.clientWidth )
5089
+ );
5090
+ },
5091
 
5092
+ scrollToView: function( view ) {
5093
+ // Timeout according to preview resize css animation duration
5094
+ setTimeout( function() {
5095
+ elementor.$previewContents.find( 'html, body' ).animate( {
5096
+ scrollTop: view.$el.offset().top - elementor.$preview[0].contentWindow.innerHeight / 2
5097
+ } );
5098
+ }, 500 );
5099
+ }
5100
+ };
 
 
 
5101
 
5102
+ module.exports = helpers;
 
5103
 
5104
+ },{}],68:[function(require,module,exports){
5105
+ var ImagesManager;
 
 
 
 
5106
 
5107
+ ImagesManager = function() {
5108
+ var self = this;
5109
 
5110
+ var cache = {};
 
 
 
 
 
 
 
 
 
5111
 
5112
+ var debounceDelay = 300;
5113
 
5114
+ var registeredItems = [];
 
5115
 
5116
+ var getNormalizedSize = function( image ) {
5117
+ var size,
5118
+ imageSize = image.size;
5119
 
5120
+ if ( 'custom' === imageSize ) {
5121
+ var customDimension = image.dimension;
 
 
 
 
 
 
 
5122
 
5123
+ if ( customDimension.width || customDimension.height ) {
5124
+ size = 'custom_' + customDimension.width + 'x' + customDimension.height;
5125
+ } else {
5126
+ return 'full';
5127
  }
5128
+ } else {
5129
+ size = imageSize;
5130
+ }
 
 
 
 
5131
 
5132
+ return size;
5133
+ };
5134
 
5135
+ self.onceTriggerChange = _.once( function( model ) {
5136
+ window.setTimeout( function() {
5137
+ model.get( 'settings' ).trigger( 'change', model.get( 'settings' ) );
5138
+ }, 700 );
5139
+ } );
5140
 
5141
+ self.getImageUrl = function( image ) {
5142
+ // Register for AJAX checking
5143
+ self.registerItem( image );
5144
 
5145
+ var imageUrl = self.getItem( image );
 
 
 
5146
 
5147
+ // If it's not in cache, like a new dropped widget or a custom size - get from settings
5148
+ if ( ! imageUrl ) {
5149
 
5150
+ if ( 'custom' === image.size ) {
 
 
 
 
 
 
 
 
 
 
5151
 
5152
+ if ( elementor.getPanelView() && 'editor' === elementor.getPanelView().currentPageName && image.model ) {
5153
+ // Trigger change again, so it's will load from the cache
5154
+ self.onceTriggerChange( image.model );
5155
  }
5156
 
5157
+ return;
5158
  }
 
5159
 
5160
+ // If it's a new dropped widget
5161
+ imageUrl = image.url;
5162
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5163
 
5164
+ return imageUrl;
5165
+ };
 
 
 
 
 
 
 
 
 
 
 
 
5166
 
5167
+ self.getItem = function( image ) {
5168
+ var size = getNormalizedSize( image ),
5169
+ id = image.id;
 
 
5170
 
5171
+ if ( ! size ) {
5172
+ return false;
5173
+ }
5174
 
5175
+ if ( cache[ id ] && cache[ id ][ size ] ) {
5176
+ return cache[ id ][ size ];
5177
+ }
5178
 
5179
+ return false;
5180
+ };
5181
 
5182
+ self.registerItem = function( image ) {
5183
+ if ( '' === image.id ) {
5184
+ // It's a new dropped widget
5185
+ return;
 
 
5186
  }
 
5187
 
5188
+ if ( self.getItem( image ) ) {
5189
+ // It's already in cache
5190
  return;
5191
  }
5192
 
5193
+ registeredItems.push( image );
 
 
 
 
 
 
 
 
 
 
5194
 
5195
+ self.debounceGetRemoteItems();
5196
+ };
 
 
 
 
 
5197
 
5198
+ self.getRemoteItems = function() {
5199
+ var requestedItems = [],
5200
+ registeredItemsLength = Object.keys( registeredItems ).length,
5201
+ image,
5202
+ index;
5203
 
5204
+ // It's one item, so we can render it from remote server
5205
+ if ( 0 === registeredItemsLength ) {
5206
+ return;
5207
+ } else if ( 1 === registeredItemsLength ) {
5208
+ for ( index in registeredItems ) {
5209
+ image = registeredItems[ index ];
5210
  break;
5211
+ }
 
 
 
 
 
 
5212
 
5213
+ if ( image && image.model ) {
5214
+ image.model.renderRemoteServer();
5215
+ return;
5216
+ }
5217
  }
5218
 
5219
+ for ( index in registeredItems ) {
5220
+ image = registeredItems[ index ];
5221
 
5222
+ var size = getNormalizedSize( image ),
5223
+ id = image.id,
5224
+ isFirstTime = ! cache[ id ] || 0 === Object.keys( cache[ id ] ).length;
5225
 
5226
+ requestedItems.push( {
5227
+ id: id,
5228
+ size: size,
5229
+ is_first_time: isFirstTime
5230
+ } );
5231
  }
5232
 
5233
+ window.elementor.ajax.send(
5234
+ 'get_images_details', {
5235
+ data: {
5236
+ items: requestedItems
5237
+ },
5238
+ success: function( data ) {
5239
+ var id,
5240
+ size;
 
5241
 
5242
+ for ( id in data ) {
5243
+ if ( ! cache[ id ] ) {
5244
+ cache[ id ] = {};
5245
+ }
5246
 
5247
+ for ( size in data[ id ] ) {
5248
+ cache[ id ][ size ] = data[ id ][ size ];
5249
+ }
5250
+ }
5251
+ registeredItems = [];
5252
+ }
5253
  }
5254
+ );
5255
+ };
5256
 
5257
+ self.debounceGetRemoteItems = _.debounce( self.getRemoteItems, debounceDelay );
5258
+ };
5259
 
5260
+ module.exports = new ImagesManager();
 
5261
 
5262
+ },{}],69:[function(require,module,exports){
5263
+ var Introduction;
 
 
 
 
 
 
5264
 
5265
+ Introduction = function() {
5266
+ var self = this,
5267
+ modal;
5268
 
5269
+ var initModal = function() {
5270
+ modal = elementor.dialogsManager.createWidget( 'lightbox', {
5271
+ id: 'elementor-introduction',
5272
+ closeButton: true,
5273
+ closeButtonClass: 'eicon-close'
5274
  } );
 
5275
 
5276
+ modal.getElements( 'closeButton' ).on( 'click', function() {
5277
+ self.setIntroductionViewed();
5278
+ } );
5279
 
5280
+ modal.on( 'hide', function() {
5281
+ modal.getElements( 'message' ).empty(); // In order to stop the video
5282
+ } );
5283
+ };
 
 
5284
 
5285
+ this.getSettings = function() {
5286
+ return elementor.config.introduction;
5287
+ };
 
5288
 
5289
+ this.getModal = function() {
5290
+ if ( ! modal ) {
5291
+ initModal();
5292
  }
5293
 
5294
+ return modal;
5295
+ };
 
 
 
 
 
 
 
 
5296
 
5297
+ this.startIntroduction = function() {
5298
+ var settings = this.getSettings();
 
 
 
 
 
 
 
 
 
5299
 
5300
+ this.getModal()
5301
+ .setHeaderMessage( settings.title )
5302
+ .setMessage( settings.content )
5303
+ .show();
5304
+ };
5305
 
5306
+ this.startOnLoadIntroduction = function() {
5307
+ var settings = this.getSettings();
5308
 
5309
+ if ( ! settings.is_user_should_view ) {
5310
+ return;
5311
+ }
5312
 
5313
+ setTimeout( _.bind( function() {
5314
+ this.startIntroduction();
5315
+ }, this ), settings.delay );
5316
+ };
5317
 
5318
+ this.setIntroductionViewed = function() {
5319
+ elementor.ajax.send( 'introduction_viewed' );
5320
+ };
5321
+ };
5322
 
5323
+ module.exports = new Introduction();
 
 
 
 
5324
 
5325
+ },{}],70:[function(require,module,exports){
5326
+ /**
5327
+ * HTML5 - Drag and Drop
5328
+ */
5329
+ ;(function( $ ) {
5330
 
5331
+ var hasFullDataTransferSupport = function( event ) {
5332
+ try {
5333
+ event.originalEvent.dataTransfer.setData( 'test', 'test' );
5334
 
5335
+ event.originalEvent.dataTransfer.clearData( 'test' );
 
 
 
 
5336
 
5337
+ return true;
5338
+ } catch ( e ) {
5339
+ return false;
5340
+ }
5341
+ };
5342
 
5343
+ var Draggable = function( userSettings ) {
5344
  var self = this,
5345
+ settings = {},
5346
+ elementsCache = {},
5347
+ defaultSettings = {
5348
+ element: '',
5349
+ groups: null,
5350
+ onDragStart: null,
5351
+ onDragEnd: null
5352
  };
5353
 
5354
+ var initSettings = function() {
5355
+ $.extend( true, settings, defaultSettings, userSettings );
5356
+ };
 
 
 
 
5357
 
5358
+ var initElementsCache = function() {
5359
+ elementsCache.$element = $( settings.element );
5360
+ };
5361
 
5362
+ var buildElements = function() {
5363
+ elementsCache.$element.attr( 'draggable', true );
5364
+ };
 
 
 
 
 
 
 
 
 
 
5365
 
5366
+ var onDragEnd = function( event ) {
5367
+ if ( $.isFunction( settings.onDragEnd ) ) {
5368
+ settings.onDragEnd.call( elementsCache.$element, event, self );
5369
+ }
5370
+ };
5371
 
5372
+ var onDragStart = function( event ) {
5373
+ var groups = settings.groups || [],
5374
+ dataContainer = {
5375
+ groups: groups
5376
+ };
5377
 
5378
+ if ( hasFullDataTransferSupport( event ) ) {
5379
+ event.originalEvent.dataTransfer.setData( JSON.stringify( dataContainer ), true );
5380
+ }
 
 
5381
 
5382
+ if ( $.isFunction( settings.onDragStart ) ) {
5383
+ settings.onDragStart.call( elementsCache.$element, event, self );
 
 
 
5384
  }
5385
  };
5386
 
5387
+ var attachEvents = function() {
5388
+ elementsCache.$element
5389
+ .on( 'dragstart', onDragStart )
5390
+ .on( 'dragend', onDragEnd );
5391
+ };
 
 
 
5392
 
5393
+ var init = function() {
5394
+ initSettings();
 
5395
 
5396
+ initElementsCache();
 
 
 
5397
 
5398
+ buildElements();
5399
+
5400
+ attachEvents();
 
 
 
 
 
 
5401
  };
5402
 
5403
+ this.destroy = function() {
5404
+ elementsCache.$element.off( 'dragstart', onDragStart );
 
 
 
 
 
 
 
5405
 
5406
+ elementsCache.$element.removeAttr( 'draggable' );
5407
+ };
5408
 
5409
+ init();
5410
+ };
 
5411
 
5412
+ var Droppable = function( userSettings ) {
5413
+ var self = this,
5414
+ settings = {},
5415
+ elementsCache = {},
5416
+ currentElement,
5417
+ currentSide,
5418
+ defaultSettings = {
5419
+ element: '',
5420
+ items: '>',
5421
+ horizontalSensitivity: '10%',
5422
+ axis: [ 'vertical', 'horizontal' ],
5423
+ placeholder: true,
5424
+ currentElementClass: 'html5dnd-current-element',
5425
+ placeholderClass: 'html5dnd-placeholder',
5426
+ hasDraggingOnChildClass: 'html5dnd-has-dragging-on-child',
5427
+ groups: null,
5428
+ isDroppingAllowed: null,
5429
+ onDragEnter: null,
5430
+ onDragging: null,
5431
+ onDropping: null,
5432
+ onDragLeave: null
5433
+ };
5434
+
5435
+ var initSettings = function() {
5436
+ $.extend( settings, defaultSettings, userSettings );
5437
  };
5438
 
5439
+ var initElementsCache = function() {
5440
+ elementsCache.$element = $( settings.element );
5441
+
5442
+ elementsCache.$placeholder = $( '<div>', { 'class': settings.placeholderClass } );
 
 
 
 
 
5443
  };
5444
 
5445
+ var hasHorizontalDetection = function() {
5446
+ return -1 !== settings.axis.indexOf( 'horizontal' );
 
 
 
 
 
 
 
5447
  };
 
5448
 
5449
+ var hasVerticalDetection = function() {
5450
+ return -1 !== settings.axis.indexOf( 'vertical' );
5451
+ };
5452
 
5453
+ var checkHorizontal = function( offsetX, elementWidth ) {
5454
+ var isPercentValue,
5455
+ sensitivity;
5456
 
5457
+ if ( ! hasHorizontalDetection() ) {
5458
+ return false;
 
5459
  }
5460
 
5461
+ if ( ! hasVerticalDetection() ) {
5462
+ return offsetX > elementWidth / 2 ? 'right' : 'left';
 
5463
  }
5464
 
5465
+ sensitivity = settings.horizontalSensitivity.match( /\d+/ );
5466
 
5467
+ if ( ! sensitivity ) {
5468
+ return false;
5469
+ }
5470
 
5471
+ sensitivity = sensitivity[0];
 
 
5472
 
5473
+ isPercentValue = /%$/.test( settings.horizontalSensitivity );
 
 
5474
 
5475
+ if ( isPercentValue ) {
5476
+ sensitivity = elementWidth / sensitivity;
5477
+ }
 
5478
 
5479
+ if ( offsetX > elementWidth - sensitivity ) {
5480
+ return 'right';
5481
+ } else if ( offsetX < sensitivity ) {
5482
+ return 'left';
5483
+ }
5484
 
5485
+ return false;
5486
+ };
 
5487
 
5488
+ var setSide = function( event ) {
5489
+ var $element = $( currentElement ),
5490
+ elementHeight = $element.outerHeight() - elementsCache.$placeholder.outerHeight(),
5491
+ elementWidth = $element.outerWidth();
5492
 
5493
+ event = event.originalEvent;
 
 
5494
 
5495
+ if ( currentSide = checkHorizontal( event.offsetX, elementWidth ) ) {
5496
+ return;
5497
+ }
5498
 
5499
+ if ( ! hasVerticalDetection() ) {
5500
+ currentSide = null;
5501
 
5502
+ return;
5503
+ }
5504
 
5505
+ var elementPosition = currentElement.getBoundingClientRect();
5506
 
5507
+ currentSide = event.clientY > elementPosition.top + elementHeight / 2 ? 'bottom' : 'top';
5508
+ };
5509
 
5510
+ var insertPlaceholder = function() {
5511
+ if ( ! settings.placeholder ) {
5512
+ return;
5513
+ }
5514
 
5515
+ var insertMethod = 'top' === currentSide ? 'prependTo' : 'appendTo';
 
 
5516
 
5517
+ elementsCache.$placeholder[ insertMethod ]( currentElement );
5518
+ };
5519
 
5520
+ var isDroppingAllowed = function( event ) {
5521
+ var dataTransferTypes,
5522
+ draggableGroups,
5523
+ isGroupMatch,
5524
+ isDroppingAllowed;
 
 
 
5525
 
5526
+ if ( settings.groups && hasFullDataTransferSupport( event ) ) {
5527
+ dataTransferTypes = event.originalEvent.dataTransfer.types;
5528
 
5529
+ isGroupMatch = false;
 
 
 
 
5530
 
5531
+ dataTransferTypes = Array.prototype.slice.apply( dataTransferTypes ); // Convert to array, since Firefox hold it as DOMStringList
 
 
5532
 
5533
+ dataTransferTypes.forEach( function( type ) {
5534
+ try {
5535
+ draggableGroups = JSON.parse( type );
5536
 
5537
+ if ( ! draggableGroups.groups.slice ) {
5538
+ return;
5539
+ }
5540
 
5541
+ settings.groups.forEach( function( groupName ) {
5542
 
5543
+ if ( -1 !== draggableGroups.groups.indexOf( groupName ) ) {
5544
+ isGroupMatch = true;
 
 
5545
 
5546
+ return false; // stops the forEach from extra loops
5547
+ }
5548
+ } );
5549
+ } catch ( e ) {
5550
+ }
5551
+ } );
5552
 
5553
+ if ( ! isGroupMatch ) {
5554
+ return false;
5555
+ }
5556
+ }
5557
 
5558
+ if ( $.isFunction( settings.isDroppingAllowed ) ) {
 
5559
 
5560
+ isDroppingAllowed = settings.isDroppingAllowed.call( currentElement, currentSide, event, self );
 
 
5561
 
5562
+ if ( ! isDroppingAllowed ) {
5563
+ return false;
5564
+ }
5565
+ }
5566
 
5567
+ return true;
5568
+ };
 
5569
 
5570
+ var onDragEnter = function( event ) {
5571
+ event.stopPropagation();
5572
 
5573
+ if ( currentElement ) {
5574
+ return;
5575
+ }
 
 
5576
 
5577
+ currentElement = this;
 
 
 
5578
 
5579
+ elementsCache.$element.parents().each( function() {
5580
+ var droppableInstance = $( this ).data( 'html5Droppable' );
5581
 
5582
+ if ( ! droppableInstance ) {
5583
+ return;
5584
+ }
5585
 
5586
+ droppableInstance.doDragLeave();
5587
+ } );
 
 
 
5588
 
5589
+ setSide( event );
 
 
 
 
 
 
 
5590
 
5591
+ if ( ! isDroppingAllowed( event ) ) {
 
5592
  return;
5593
  }
 
5594
 
5595
+ insertPlaceholder();
 
5596
 
5597
+ elementsCache.$element.addClass( settings.hasDraggingOnChildClass );
 
 
5598
 
5599
+ $( currentElement ).addClass( settings.currentElementClass );
 
 
 
 
 
5600
 
5601
+ if ( $.isFunction( settings.onDragEnter ) ) {
5602
+ settings.onDragEnter.call( currentElement, currentSide, event, self );
5603
+ }
5604
+ };
 
 
 
 
5605
 
5606
+ var onDragOver = function( event ) {
5607
+ event.stopPropagation();
 
 
5608
 
5609
+ if ( ! currentElement ) {
5610
+ onDragEnter.call( this, event );
 
 
 
 
5611
  }
 
 
5612
 
5613
+ var oldSide = currentSide;
 
5614
 
5615
+ setSide( event );
5616
 
5617
+ if ( ! isDroppingAllowed( event ) ) {
5618
+ return;
5619
+ }
5620
 
5621
+ event.preventDefault();
 
 
5622
 
5623
+ if ( oldSide !== currentSide ) {
5624
+ insertPlaceholder();
5625
+ }
 
 
 
5626
 
5627
+ if ( $.isFunction( settings.onDragging ) ) {
5628
+ settings.onDragging.call( this, currentSide, event, self );
5629
+ }
5630
+ };
5631
 
5632
+ var onDragLeave = function( event ) {
5633
+ var elementPosition = this.getBoundingClientRect();
 
 
5634
 
5635
+ if ( 'dragleave' === event.type && ! (
5636
+ event.clientX < elementPosition.left ||
5637
+ event.clientX >= elementPosition.right ||
5638
+ event.clientY < elementPosition.top ||
5639
+ event.clientY >= elementPosition.bottom
5640
+ ) ) {
5641
+ return;
5642
+ }
5643
 
5644
+ $( currentElement ).removeClass( settings.currentElementClass );
 
 
 
5645
 
5646
+ self.doDragLeave();
5647
+ };
5648
 
5649
+ var onDrop = function( event ) {
5650
+ setSide( event );
5651
 
5652
+ if ( ! isDroppingAllowed( event ) ) {
5653
+ return;
5654
+ }
 
 
5655
 
5656
+ event.preventDefault();
 
5657
 
5658
+ if ( $.isFunction( settings.onDropping ) ) {
5659
+ settings.onDropping.call( this, currentSide, event, self );
5660
+ }
5661
+ };
5662
 
5663
+ var attachEvents = function() {
5664
+ elementsCache.$element
5665
+ .on( 'dragenter', settings.items, onDragEnter )
5666
+ .on( 'dragover', settings.items, onDragOver )
5667
+ .on( 'drop', settings.items, onDrop )
5668
+ .on( 'dragleave drop', settings.items, onDragLeave );
5669
+ };
5670
 
5671
+ var init = function() {
5672
+ initSettings();
 
 
5673
 
5674
+ initElementsCache();
5675
 
5676
+ attachEvents();
5677
+ };
 
 
 
5678
 
5679
+ this.doDragLeave = function() {
5680
+ if ( settings.placeholder ) {
5681
+ elementsCache.$placeholder.remove();
5682
+ }
5683
 
5684
+ elementsCache.$element.removeClass( settings.hasDraggingOnChildClass );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5685
 
5686
+ if ( $.isFunction( settings.onDragLeave ) ) {
5687
+ settings.onDragLeave.call( currentElement, event, self );
5688
  }
5689
 
5690
+ currentElement = currentSide = null;
 
 
5691
  };
5692
 
5693
+ this.destroy = function() {
5694
  elementsCache.$element
5695
+ .off( 'dragenter', settings.items, onDragEnter )
5696
+ .off( 'dragover', settings.items, onDragOver )
5697
+ .off( 'drop', settings.items, onDrop )
5698
+ .off( 'dragleave drop', settings.items, onDragLeave );
5699
  };
5700
 
5701
+ init();
5702
+ };
5703
 
5704
+ var plugins = {
5705
+ html5Draggable: Draggable,
5706
+ html5Droppable: Droppable
5707
+ };
5708
 
5709
+ $.each( plugins, function( pluginName, Plugin ) {
5710
+ $.fn[ pluginName ] = function( options ) {
5711
+ options = options || {};
5712
 
5713
+ this.each( function() {
5714
+ var instance = $.data( this, pluginName ),
5715
+ hasInstance = instance instanceof Plugin;
5716
 
5717
+ if ( hasInstance ) {
 
5718
 
5719
+ if ( 'destroy' === options ) {
 
5720
 
5721
+ instance.destroy();
 
5722
 
5723
+ $.removeData( this, pluginName );
5724
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5725
 
5726
+ return;
5727
+ }
 
5728
 
5729
+ options.element = this;
 
5730
 
5731
+ $.data( this, pluginName, new Plugin( options ) );
5732
+ } );
5733
 
5734
+ return this;
 
5735
  };
5736
+ } );
5737
+ })( jQuery );
5738
 
5739
+ },{}],71:[function(require,module,exports){
5740
+ /*!
5741
+ * jQuery Serialize Object v1.0.1
5742
+ */
5743
+ (function( $ ) {
5744
+ $.fn.elementorSerializeObject = function() {
5745
+ var serializedArray = this.serializeArray(),
5746
+ data = {};
5747
 
5748
+ var parseObject = function( dataContainer, key, value ) {
5749
+ var isArrayKey = /^[^\[\]]+\[]/.test( key ),
5750
+ isObjectKey = /^[^\[\]]+\[[^\[\]]+]/.test( key ),
5751
+ keyName = key.replace( /\[.*/, '' );
5752
 
5753
+ if ( isArrayKey ) {
5754
+ if ( ! dataContainer[ keyName ] ) {
5755
+ dataContainer[ keyName ] = [];
5756
+ }
5757
+ } else {
5758
+ if ( ! isObjectKey ) {
5759
+ if ( dataContainer.push ) {
5760
+ dataContainer.push( value );
5761
+ } else {
5762
+ dataContainer[ keyName ] = value;
5763
+ }
5764
 
5765
+ return;
5766
+ }
5767
+
5768
+ if ( ! dataContainer[ keyName ] ) {
5769
+ dataContainer[ keyName ] = {};
5770
+ }
5771
  }
5772
 
5773
+ var nextKeys = key.match( /\[[^\[\]]*]/g );
5774
 
5775
+ nextKeys[ 0 ] = nextKeys[ 0 ].replace( /\[|]/g, '' );
 
 
5776
 
5777
+ return parseObject( dataContainer[ keyName ], nextKeys.join( '' ), value );
5778
+ };
5779
 
5780
+ $.each( serializedArray, function() {
5781
+ parseObject( data, this.name, this.value );
5782
+ } );
5783
+ return data;
5784
+ };
5785
+ })( jQuery );
5786
 
5787
+ },{}],72:[function(require,module,exports){
5788
+ var presetsFactory;
 
5789
 
5790
+ presetsFactory = {
 
 
 
 
5791
 
5792
+ getPresetsDictionary: function() {
5793
+ return {
5794
+ 11: 100 / 9,
5795
+ 12: 100 / 8,
5796
+ 14: 100 / 7,
5797
+ 16: 100 / 6,
5798
+ 33: 100 / 3,
5799
+ 66: 2 / 3 * 100,
5800
+ 83: 5 / 6 * 100
5801
  };
5802
+ },
5803
 
5804
+ getAbsolutePresetValues: function( preset ) {
5805
+ var clonedPreset = elementor.helpers.cloneObject( preset ),
5806
+ presetDictionary = this.getPresetsDictionary();
 
 
 
5807
 
5808
+ _.each( clonedPreset, function( unitValue, unitIndex ) {
5809
+ if ( presetDictionary[ unitValue ] ) {
5810
+ clonedPreset[ unitIndex ] = presetDictionary[ unitValue ];
5811
  }
5812
+ } );
5813
 
5814
+ return clonedPreset;
5815
+ },
5816
 
5817
+ getPresets: function( columnsCount, presetIndex ) {
5818
+ var presets = elementor.helpers.cloneObject( elementor.config.elements.section.presets );
5819
 
5820
+ if ( columnsCount ) {
5821
+ presets = presets[ columnsCount ];
5822
+ }
5823
 
5824
+ if ( presetIndex ) {
5825
+ presets = presets[ presetIndex ];
5826
+ }
5827
 
5828
+ return presets;
5829
+ },
 
 
5830
 
5831
+ getPresetByStructure: function( structure ) {
5832
+ var parsedStructure = this.getParsedStructure( structure );
5833
 
5834
+ return this.getPresets( parsedStructure.columnsCount, parsedStructure.presetIndex );
5835
+ },
5836
 
5837
+ getParsedStructure: function( structure ) {
5838
+ structure += ''; // Make sure this is a string
 
 
 
5839
 
5840
+ return {
5841
+ columnsCount: structure.slice( 0, -1 ),
5842
+ presetIndex: structure.substr( -1 )
5843
+ };
5844
+ },
5845
 
5846
+ getPresetSVG: function( preset, svgWidth, svgHeight, separatorWidth ) {
5847
+ svgWidth = svgWidth || 100;
5848
+ svgHeight = svgHeight || 50;
5849
+ separatorWidth = separatorWidth || 2;
5850
 
5851
+ var absolutePresetValues = this.getAbsolutePresetValues( preset ),
5852
+ presetSVGPath = this._generatePresetSVGPath( absolutePresetValues, svgWidth, svgHeight, separatorWidth );
5853
 
5854
+ return this._createSVGPreset( presetSVGPath, svgWidth, svgHeight );
5855
+ },
 
5856
 
5857
+ _createSVGPreset: function( presetPath, svgWidth, svgHeight ) {
5858
+ var svg = document.createElementNS( 'http://www.w3.org/2000/svg', 'svg' );
 
5859
 
5860
+ svg.setAttributeNS( 'http://www.w3.org/2000/xmlns/', 'xmlns:xlink', 'http://www.w3.org/1999/xlink' );
5861
+ svg.setAttribute( 'viewBox', '0 0 ' + svgWidth + ' ' + svgHeight );
5862
 
5863
+ var path = document.createElementNS( 'http://www.w3.org/2000/svg', 'path' );
 
5864
 
5865
+ path.setAttribute( 'd', presetPath );
 
 
 
 
 
5866
 
5867
+ svg.appendChild( path );
 
 
 
5868
 
5869
+ return svg;
5870
+ },
5871
 
5872
+ _generatePresetSVGPath: function( preset, svgWidth, svgHeight, separatorWidth ) {
5873
+ var DRAW_SIZE = svgWidth - separatorWidth * ( preset.length - 1 );
5874
 
5875
+ var xPointer = 0,
5876
+ dOutput = '';
5877
+
5878
+ for ( var i = 0; i < preset.length; i++ ) {
5879
+ if ( i ) {
5880
+ dOutput += ' ';
5881
  }
5882
 
5883
+ var increment = preset[ i ] / 100 * DRAW_SIZE;
 
5884
 
5885
+ xPointer += increment;
 
5886
 
5887
+ dOutput += 'M' + ( +xPointer.toFixed( 4 ) ) + ',0';
 
 
5888
 
5889
+ dOutput += 'V' + svgHeight;
5890
 
5891
+ dOutput += 'H' + ( +( xPointer - increment ).toFixed( 4 ) );
 
5892
 
5893
+ dOutput += 'V0Z';
 
 
5894
 
5895
+ xPointer += separatorWidth;
5896
+ }
5897
 
5898
+ return dOutput;
5899
+ }
5900
+ };
5901
 
5902
+ module.exports = presetsFactory;
 
 
5903
 
5904
+ },{}],73:[function(require,module,exports){
5905
+ var Schemes,
5906
+ Stylesheet = require( 'elementor-editor-utils/stylesheet' ),
5907
+ ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' );
5908
 
5909
+ Schemes = function() {
5910
+ var self = this,
5911
+ stylesheet = new Stylesheet(),
5912
+ schemes = {},
5913
+ settings = {
5914
+ selectorWrapperPrefix: '.elementor-widget-'
5915
+ },
5916
+ elements = {};
5917
 
5918
+ var buildUI = function() {
5919
+ elements.$previewHead.append( elements.$style );
5920
+ };
5921
 
5922
+ var initElements = function() {
5923
+ elements.$style = Backbone.$( '<style>', {
5924
+ id: 'elementor-style-scheme'
5925
+ });
5926
 
5927
+ elements.$previewHead = elementor.$previewContents.find( 'head' );
5928
+ };
5929
 
5930
+ var initSchemes = function() {
5931
+ schemes = elementor.helpers.cloneObject( elementor.config.schemes.items );
5932
+ };
5933
 
5934
+ var fetchControlStyles = function( control, controlsStack, widgetType ) {
5935
+ ControlsCSSParser.addControlStyleRules( stylesheet, control, controlsStack, function( control ) {
5936
+ return self.getSchemeValue( control.scheme.type, control.scheme.value, control.scheme.key ).value;
5937
+ }, [ '{{WRAPPER}}' ], [ settings.selectorWrapperPrefix + widgetType ] );
5938
+ };
5939
 
5940
+ var fetchWidgetControlsStyles = function( widget ) {
5941
+ var widgetSchemeControls = self.getWidgetSchemeControls( widget );
5942
 
5943
+ _.each( widgetSchemeControls, function( control ) {
5944
+ fetchControlStyles( control, widgetSchemeControls, widget.widget_type );
5945
+ } );
5946
+ };
5947
 
5948
+ var fetchAllWidgetsSchemesStyle = function() {
5949
+ _.each( elementor.config.widgets, function( widget ) {
5950
+ fetchWidgetControlsStyles( widget );
5951
+ } );
5952
+ };
5953
 
5954
+ this.init = function() {
5955
+ initElements();
5956
+ buildUI();
5957
+ initSchemes();
5958
 
5959
+ return self;
5960
+ };
 
 
5961
 
5962
+ this.getWidgetSchemeControls = function( widget ) {
5963
+ return _.filter( widget.controls, function( control ) {
5964
+ return _.isObject( control.scheme );
5965
+ } );
5966
+ };
5967
 
5968
+ this.getSchemes = function() {
5969
+ return schemes;
5970
+ };
 
 
 
 
 
5971
 
5972
+ this.getEnabledSchemesTypes = function() {
5973
+ return elementor.config.schemes.enabled_schemes;
5974
+ };
5975
 
5976
+ this.getScheme = function( schemeType ) {
5977
+ return schemes[ schemeType ];
5978
+ };
5979
 
5980
+ this.getSchemeValue = function( schemeType, value, key ) {
5981
+ if ( this.getEnabledSchemesTypes().indexOf( schemeType ) < 0 ) {
5982
+ return false;
5983
+ }
5984
 
5985
+ var scheme = self.getScheme( schemeType ),
5986
+ schemeValue = scheme.items[ value ];
 
5987
 
5988
+ if ( key && _.isObject( schemeValue ) ) {
5989
+ var clonedSchemeValue = elementor.helpers.cloneObject( schemeValue );
5990
 
5991
+ clonedSchemeValue.value = schemeValue.value[ key ];
 
 
 
5992
 
5993
+ return clonedSchemeValue;
5994
+ }
 
 
 
 
 
5995
 
5996
+ return schemeValue;
5997
+ };
5998
 
5999
+ this.printSchemesStyle = function() {
6000
+ stylesheet.empty();
6001
 
6002
+ fetchAllWidgetsSchemesStyle();
 
6003
 
6004
+ elements.$style.text( stylesheet );
6005
+ };
 
 
6006
 
6007
+ this.resetSchemes = function( schemeName ) {
6008
+ schemes[ schemeName ] = elementor.helpers.cloneObject( elementor.config.schemes.items[ schemeName ] );
6009
+ };
6010
 
6011
+ this.saveScheme = function( schemeName ) {
6012
+ elementor.config.schemes.items[ schemeName ].items = elementor.helpers.cloneObject( schemes[ schemeName ].items );
 
6013
 
6014
+ var itemsToSave = {};
 
6015
 
6016
+ _.each( schemes[ schemeName ].items, function( item, key ) {
6017
+ itemsToSave[ key ] = item.value;
6018
+ } );
 
 
 
 
6019
 
6020
+ NProgress.start();
 
6021
 
6022
+ elementor.ajax.send( 'apply_scheme', {
6023
+ data: {
6024
+ scheme_name: schemeName,
6025
+ data: JSON.stringify( itemsToSave )
6026
+ },
6027
+ success: function() {
6028
+ NProgress.done();
6029
+ }
6030
+ } );
6031
  };
6032
 
6033
+ this.setSchemeValue = function( schemeName, itemKey, value ) {
6034
+ schemes[ schemeName ].items[ itemKey ].value = value;
6035
+ };
6036
+ };
6037
 
6038
+ module.exports = new Schemes();
 
 
6039
 
6040
+ },{"elementor-editor-utils/controls-css-parser":64,"elementor-editor-utils/stylesheet":74}],74:[function(require,module,exports){
6041
+ ( function( $ ) {
6042
 
6043
+ var Stylesheet = function() {
6044
+ var self = this,
6045
+ rules = {},
6046
+ rawCSS = {},
6047
+ devices = {};
6048
 
6049
+ var getDeviceMaxValue = function( deviceName ) {
6050
+ var deviceNames = Object.keys( devices ),
6051
+ deviceNameIndex = deviceNames.indexOf( deviceName ),
6052
+ nextIndex = deviceNameIndex + 1;
6053
 
6054
+ if ( nextIndex >= deviceNames.length ) {
6055
+ throw new RangeError( 'Max value for this device is out of range.' );
6056
+ }
6057
 
6058
+ return devices[ deviceNames[ nextIndex ] ] - 1;
6059
+ };
6060
 
6061
+ var queryToHash = function( query ) {
6062
+ var hash = [];
6063
 
6064
+ $.each( query, function( endPoint ) {
6065
+ hash.push( endPoint + '_' + this );
6066
  } );
6067
 
6068
+ return hash.join( '-' );
6069
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6070
 
6071
+ var hashToQuery = function( hash ) {
6072
+ var query = {};
6073
 
6074
+ hash = hash.split( '-' ).filter( String );
 
 
 
6075
 
6076
+ hash.forEach( function( singleQuery ) {
6077
+ var queryParts = singleQuery.split( '_' ),
6078
+ endPoint = queryParts[0],
6079
+ deviceName = queryParts[1];
6080
 
6081
+ query[ endPoint ] = 'max' === endPoint ? getDeviceMaxValue( deviceName ) : devices[ deviceName ];
6082
+ } );
6083
 
6084
+ return query;
6085
  };
6086
 
6087
+ var addQueryHash = function( queryHash ) {
6088
+ rules[ queryHash ] = {};
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6089
 
6090
+ var hashes = Object.keys( rules );
 
 
6091
 
6092
+ if ( hashes.length < 2 ) {
6093
+ return;
 
6094
  }
 
6095
 
6096
+ // Sort the devices from narrowest to widest
6097
+ hashes.sort( function( a, b ) {
6098
+ if ( 'all' === a ) {
6099
+ return -1;
6100
+ }
6101
 
6102
+ if ( 'all' === b ) {
6103
+ return 1;
6104
+ }
6105
 
6106
+ var aQuery = hashToQuery( a ),
6107
+ bQuery = hashToQuery( b );
 
6108
 
6109
+ return bQuery.max - aQuery.max;
6110
+ } );
 
6111
 
6112
+ var sortedRules = {};
 
6113
 
6114
+ hashes.forEach( function( deviceName ) {
6115
+ sortedRules[ deviceName ] = rules[ deviceName ];
6116
+ } );
6117
 
6118
+ rules = sortedRules;
6119
+ };
6120
 
6121
+ var getQueryHashStyleFormat = function( queryHash ) {
6122
+ var query = hashToQuery( queryHash ),
6123
+ styleFormat = [];
6124
 
6125
+ $.each( query, function( endPoint ) {
6126
+ styleFormat.push( '(' + endPoint + '-width:' + this + 'px)' );
6127
+ } );
6128
+
6129
+ return '@media' + styleFormat.join( ' and ' );
6130
  };
 
6131
 
6132
+ this.addDevice = function( deviceName, deviceValue ) {
6133
+ devices[ deviceName ] = deviceValue;
 
 
6134
 
6135
+ var deviceNames = Object.keys( devices );
 
6136
 
6137
+ if ( deviceNames.length < 2 ) {
6138
+ return self;
6139
+ }
6140
 
6141
+ // Sort the devices from narrowest to widest
6142
+ deviceNames.sort( function( a, b ) {
6143
+ return devices[ a ] - devices[ b ];
6144
+ } );
6145
 
6146
+ var sortedDevices = {};
 
6147
 
6148
+ deviceNames.forEach( function( deviceName ) {
6149
+ sortedDevices[ deviceName ] = devices[ deviceName ];
6150
+ } );
6151
 
6152
+ devices = sortedDevices;
6153
 
6154
+ return self;
6155
+ };
6156
 
6157
+ this.addRawCSS = function( key, css ) {
6158
+ rawCSS[ key ] = css;
6159
+ };
6160
 
6161
+ this.addRules = function( selector, styleRules, query ) {
6162
+ var queryHash = 'all';
6163
 
6164
+ if ( ! _.isEmpty( query ) ) {
6165
+ queryHash = queryToHash( query );
6166
+ }
6167
 
6168
+ if ( ! rules[ queryHash ] ) {
6169
+ addQueryHash( queryHash );
 
6170
  }
6171
 
6172
+ if ( ! styleRules ) {
6173
+ var parsedRules = selector.match( /[^{]+\{[^}]+}/g );
6174
 
6175
+ $.each( parsedRules, function() {
6176
+ var parsedRule = this.match( /([^{]+)\{([^}]+)}/ );
6177
 
6178
+ if ( parsedRule ) {
6179
+ self.addRules( parsedRule[1].trim(), parsedRule[2].trim(), query );
6180
+ }
6181
+ } );
6182
 
6183
+ return;
6184
+ }
6185
 
6186
+ if ( ! rules[ queryHash ][ selector ] ) {
6187
+ rules[ queryHash ][ selector ] = {};
6188
+ }
6189
 
6190
+ if ( 'string' === typeof styleRules ) {
6191
+ styleRules = styleRules.split( ';' ).filter( String );
6192
 
6193
+ var orderedRules = {};
 
6194
 
6195
+ try {
6196
+ $.each( styleRules, function() {
6197
+ var property = this.split( /:(.*)?/ );
6198
 
6199
+ orderedRules[ property[0].trim() ] = property[1].trim().replace( ';', '' );
6200
+ } );
6201
+ } catch ( error ) { // At least one of the properties is incorrect
6202
+ return;
6203
+ }
6204
 
6205
+ styleRules = orderedRules;
6206
+ }
 
 
6207
 
6208
+ $.extend( rules[ queryHash ][ selector ], styleRules );
 
 
 
 
 
 
 
6209
 
6210
+ return self;
6211
+ };
 
6212
 
6213
+ this.getRules = function() {
6214
+ return rules;
6215
+ };
 
6216
 
6217
+ this.empty = function() {
6218
+ rules = {};
6219
+ rawCSS = {};
6220
+ };
6221
 
6222
+ this.toString = function() {
6223
+ var styleText = '';
 
6224
 
6225
+ $.each( rules, function( queryHash ) {
6226
+ var deviceText = Stylesheet.parseRules( this );
 
 
 
6227
 
6228
+ if ( 'all' !== queryHash ) {
6229
+ deviceText = getQueryHashStyleFormat( queryHash ) + '{' + deviceText + '}';
6230
+ }
6231
 
6232
+ styleText += deviceText;
6233
+ } );
 
 
6234
 
6235
+ $.each( rawCSS, function() {
6236
+ styleText += this;
6237
+ } );
6238
+
6239
+ return styleText;
6240
+ };
6241
  };
6242
 
6243
+ Stylesheet.parseRules = function( rules ) {
6244
+ var parsedRules = '';
 
 
6245
 
6246
+ $.each( rules, function( selector ) {
6247
+ var selectorContent = Stylesheet.parseProperties( this );
6248
 
6249
+ if ( selectorContent ) {
6250
+ parsedRules += selector + '{' + selectorContent + '}';
6251
+ }
6252
  } );
 
6253
 
6254
+ return parsedRules;
 
6255
  };
6256
 
6257
+ Stylesheet.parseProperties = function( properties ) {
6258
+ var parsedProperties = '';
 
6259
 
6260
+ $.each( properties, function( propertyKey ) {
6261
+ if ( this ) {
6262
+ parsedProperties += propertyKey + ':' + this + ';';
6263
+ }
6264
+ } );
6265
+
6266
+ return parsedProperties;
6267
  };
6268
 
6269
+ module.exports = Stylesheet;
6270
+ } )( jQuery );
 
 
6271
 
6272
+ },{}],75:[function(require,module,exports){
6273
+ var Module = require( 'elementor-utils/module' ),
6274
+ Validator;
6275
 
6276
+ Validator = Module.extend( {
6277
+ errors: [],
6278
 
6279
+ __construct: function( settings ) {
6280
+ var customValidationMethod = settings.customValidationMethod;
6281
 
6282
+ if ( customValidationMethod ) {
6283
+ this.validationMethod = customValidationMethod;
6284
  }
6285
+ },
6286
 
6287
+ isValid: function() {
6288
+ var validationErrors = this.validationMethod.apply( this, arguments );
 
 
 
 
 
 
 
 
6289
 
6290
+ if ( validationErrors.length ) {
6291
+ this.errors = validationErrors;
 
6292
 
6293
+ return false;
6294
+ }
6295
 
6296
+ return true;
6297
+ },
6298
 
6299
+ validationMethod: function() {
6300
+ return [];
6301
+ }
6302
+ } );
6303
 
6304
+ module.exports = Validator;
6305
 
6306
+ },{"elementor-utils/module":116}],76:[function(require,module,exports){
6307
+ var AddSectionView;
 
 
 
 
 
 
 
 
6308
 
6309
+ AddSectionView = Marionette.ItemView.extend( {
6310
+ template: Marionette.TemplateCache.get( '#tmpl-elementor-add-section' ),
 
 
6311
 
6312
+ attributes: {
6313
+ 'data-view': 'choose-action'
6314
+ },
6315
 
6316
+ ui: {
6317
+ addNewSection: '.elementor-add-new-section',
6318
+ closeButton: '.elementor-add-section-close',
6319
+ addSectionButton: '.elementor-add-section-button',
6320
+ addTemplateButton: '.elementor-add-template-button',
6321
+ selectPreset: '.elementor-select-preset',
6322
+ presets: '.elementor-preset'
6323
+ },
6324
 
6325
+ events: {
6326
+ 'click @ui.addSectionButton': 'onAddSectionButtonClick',
6327
+ 'click @ui.addTemplateButton': 'onAddTemplateButtonClick',
6328
+ 'click @ui.closeButton': 'onCloseButtonClick',
6329
+ 'click @ui.presets': 'onPresetSelected'
6330
+ },
6331
 
6332
+ className: function() {
6333
+ return 'elementor-add-section elementor-visible-desktop';
6334
+ },
 
6335
 
6336
+ addSection: function( properties, options ) {
6337
+ return elementor.sections.currentView.addSection( properties, options );
6338
+ },
6339
 
6340
+ setView: function( view ) {
6341
+ this.$el.attr( 'data-view', view );
6342
+ },
6343
 
6344
+ showSelectPresets: function() {
6345
+ this.setView( 'select-preset' );
6346
+ },
6347
 
6348
+ closeSelectPresets: function() {
6349
+ this.setView( 'choose-action' );
6350
+ },
6351
 
6352
+ getTemplatesModalOptions: function() {
6353
+ return {
6354
+ onReady: function() {
6355
+ elementor.templates.showTemplates();
6356
+ }
6357
  };
6358
+ },
6359
 
6360
+ onAddSectionButtonClick: function() {
6361
+ this.showSelectPresets();
6362
+ },
6363
 
6364
+ onAddTemplateButtonClick: function() {
6365
+ elementor.templates.startModal( this.getTemplatesModalOptions() );
6366
+ },
6367
 
6368
+ onRender: function() {
6369
+ this.$el.html5Droppable( {
6370
+ axis: [ 'vertical' ],
6371
+ groups: [ 'elementor-element' ],
6372
+ placeholder: false,
6373
+ currentElementClass: 'elementor-html5dnd-current-element',
6374
+ hasDraggingOnChildClass: 'elementor-dragging-on-child',
6375
+ onDropping: _.bind( this.onDropping, this )
6376
+ } );
6377
+ },
6378
 
6379
+ onPresetSelected: function( event ) {
6380
+ this.closeSelectPresets();
6381
 
6382
+ var selectedStructure = event.currentTarget.dataset.structure,
6383
+ parsedStructure = elementor.presetsFactory.getParsedStructure( selectedStructure ),
6384
+ elements = [],
6385
+ loopIndex;
6386
 
6387
+ for ( loopIndex = 0; loopIndex < parsedStructure.columnsCount; loopIndex++ ) {
6388
+ elements.push( {
6389
+ id: elementor.helpers.getUniqueID(),
6390
+ elType: 'column',
6391
+ settings: {},
6392
+ elements: []
6393
+ } );
6394
+ }
6395
 
6396
+ elementor.channels.data.trigger( 'element:before:add', {
6397
+ elType: 'section'
6398
+ } );
6399
 
6400
+ var newSection = this.addSection( { elements: elements } );
 
 
6401
 
6402
+ newSection.setStructure( selectedStructure );
 
 
 
 
6403
 
6404
+ elementor.channels.data.trigger( 'element:after:add' );
6405
+ },
 
6406
 
6407
+ onDropping: function() {
6408
+ elementor.channels.data.trigger( 'section:before:drop' );
6409
+ this.addSection().addElementFromPanel();
6410
+ elementor.channels.data.trigger( 'section:after:drop' );
6411
+ }
6412
+ } );
6413
 
6414
+ module.exports = AddSectionView;
 
6415
 
6416
+ },{}],77:[function(require,module,exports){
6417
+ var BaseAddSectionView = require( 'elementor-views/add-section/base' );
6418
 
6419
+ module.exports = BaseAddSectionView.extend( {
6420
+ id: 'elementor-add-new-section',
 
6421
 
6422
+ onCloseButtonClick: function() {
6423
+ this.closeSelectPresets();
6424
+ }
6425
+ } );
6426
 
6427
+ },{"elementor-views/add-section/base":76}],78:[function(require,module,exports){
6428
+ var BaseAddSectionView = require( 'elementor-views/add-section/base' );
 
6429
 
6430
+ module.exports = BaseAddSectionView.extend( {
6431
+ options: {
6432
+ atIndex: null
6433
+ },
6434
 
6435
+ className: function() {
6436
+ return BaseAddSectionView.prototype.className.apply( this, arguments ) + ' elementor-add-section-inline';
6437
+ },
6438
 
6439
+ addSection: function( properties, options ) {
6440
+ options = options || {};
6441
 
6442
+ options.at = this.getOption( 'atIndex' );
6443
 
6444
+ return BaseAddSectionView.prototype.addSection.call( this, properties, options );
6445
+ },
 
6446
 
6447
+ getTemplatesModalOptions: function() {
6448
+ return _.extend( BaseAddSectionView.prototype.getTemplatesModalOptions.apply( this, arguments ), {
6449
+ importOptions: {
6450
+ at: this.getOption( 'atIndex' )
6451
+ }
6452
+ } );
6453
+ },
6454
 
6455
+ fadeToDeath: function() {
6456
+ var self = this;
6457
 
6458
+ self.$el.slideUp( function() {
6459
+ self.destroy();
6460
+ } );
6461
+ },
6462
 
6463
+ onCloseButtonClick: function() {
6464
+ this.fadeToDeath();
6465
+ },
6466
 
6467
+ onPresetSelected: function() {
6468
+ BaseAddSectionView.prototype.onPresetSelected.apply( this, arguments );
6469
 
6470
+ this.destroy();
6471
+ },
 
6472
 
6473
+ onAddTemplateButtonClick: function() {
6474
+ BaseAddSectionView.prototype.onAddTemplateButtonClick.apply( this, arguments );
6475
 
6476
+ this.destroy();
6477
+ },
 
6478
 
6479
+ onDropping: function() {
6480
+ BaseAddSectionView.prototype.onDropping.apply( this, arguments );
 
6481
 
6482
+ this.destroy();
6483
+ }
6484
+ } );
6485
 
6486
+ },{"elementor-views/add-section/base":76}],79:[function(require,module,exports){
6487
+ module.exports = Marionette.CompositeView.extend( {
6488
 
6489
+ getBehavior: function( name ) {
6490
+ return this._behaviors[ Object.keys( this.behaviors() ).indexOf( name ) ];
6491
+ },
 
6492
 
6493
+ addChildModel: function( model, options ) {
6494
+ return this.collection.add( model, options, true );
6495
+ },
6496
 
6497
+ addChildElement: function( itemData, options ) {
6498
+ options = options || {};
 
6499
 
6500
+ var myChildType = this.getChildType(),
6501
+ elType = itemData.get ? itemData.get( 'elType' ) : itemData.elType;
6502
 
6503
+ if ( -1 === myChildType.indexOf( elType ) ) {
6504
+ delete options.at;
6505
 
6506
+ return this.children.last().addChildElement( itemData, options );
6507
+ }
 
6508
 
6509
+ var newModel = this.addChildModel( itemData, options ),
6510
+ newView = this.children.findByModel( newModel );
 
 
 
6511
 
6512
+ newView.edit();
 
6513
 
6514
+ return newView;
6515
+ }
6516
+ } );
6517
 
6518
+ },{}],80:[function(require,module,exports){
6519
+ var BaseSettingsModel = require( 'elementor-models/base-settings' ),
6520
+ ControlsCSSParser = require( 'elementor-editor-utils/controls-css-parser' ),
6521
+ Validator = require( 'elementor-editor-utils/validator' ),
6522
+ BaseContainer = require( 'elementor-views/base-container' ),
6523
+ BaseElementView;
6524
 
6525
+ BaseElementView = BaseContainer.extend( {
6526
+ tagName: 'div',
 
6527
 
6528
+ controlsCSSParser: null,
 
 
 
6529
 
6530
+ toggleEditTools: true,
 
6531
 
6532
+ className: function() {
6533
+ return this.getElementUniqueID();
6534
+ },
6535
 
6536
+ attributes: function() {
6537
+ var type = this.model.get( 'elType' );
 
6538
 
6539
+ if ( 'widget' === type ) {
6540
+ type = this.model.get( 'widgetType' );
6541
+ }
6542
 
6543
+ return {
6544
+ 'data-id': this.getID(),
6545
+ 'data-element_type': type
6546
+ };
6547
+ },
6548
 
6549
+ ui: function() {
6550
+ return {
6551
+ triggerButton: '> .elementor-element-overlay .elementor-editor-element-trigger',
6552
+ duplicateButton: '> .elementor-element-overlay .elementor-editor-element-duplicate',
6553
+ removeButton: '> .elementor-element-overlay .elementor-editor-element-remove',
6554
+ saveButton: '> .elementor-element-overlay .elementor-editor-element-save',
6555
+ settingsList: '> .elementor-element-overlay .elementor-editor-element-settings',
6556
+ addButton: '> .elementor-element-overlay .elementor-editor-element-add'
6557
  };
6558
+ },
6559
 
6560
+ behaviors: function() {
6561
+ var behaviors = {};
6562
 
6563
+ return elementor.hooks.applyFilters( 'elements/base/behaviors', behaviors, this );
6564
+ },
 
 
 
 
 
6565
 
6566
+ getBehavior: function( name ) {
6567
+ return this._behaviors[ Object.keys( this.behaviors() ).indexOf( name ) ];
6568
+ },
6569
 
6570
+ events: function() {
6571
+ return {
6572
+ 'click @ui.removeButton': 'onClickRemove',
6573
+ 'click @ui.saveButton': 'onClickSave',
6574
+ 'click @ui.duplicateButton': 'onClickDuplicate',
6575
+ 'click @ui.triggerButton': 'onClickEdit'
6576
+ };
6577
+ },
6578
 
6579
+ getElementType: function() {
6580
+ return this.model.get( 'elType' );
6581
+ },
 
 
6582
 
6583
+ getChildType: function() {
6584
+ return elementor.helpers.getElementChildType( this.getElementType() );
6585
+ },
6586
 
6587
+ getChildView: function( model ) {
6588
+ var ChildView,
6589
+ elType = model.get( 'elType' );
6590
 
6591
+ if ( 'section' === elType ) {
6592
+ ChildView = require( 'elementor-views/section' );
6593
+ } else if ( 'column' === elType ) {
6594
+ ChildView = require( 'elementor-views/column' );
6595
+ } else {
6596
+ ChildView = elementor.modules.WidgetView;
6597
+ }
6598
 
6599
+ return elementor.hooks.applyFilters( 'element/view', ChildView, model, this );
6600
+ },
6601
 
6602
+ templateHelpers: function() {
6603
+ return {
6604
+ elementModel: this.model,
6605
+ editModel: this.getEditModel()
6606
+ };
6607
+ },
6608
 
6609
+ getTemplateType: function() {
6610
+ return 'js';
 
6611
  },
6612
 
6613
+ getEditModel: function() {
6614
+ return this.model;
6615
+ },
6616
 
6617
+ initialize: function() {
6618
+ // grab the child collection from the parent model
6619
+ // so that we can render the collection as children
6620
+ // of this parent element
6621
+ this.collection = this.model.get( 'elements' );
6622
 
6623
+ if ( this.collection ) {
6624
+ this.listenTo( this.collection, 'add remove reset', this.onCollectionChanged, this );
6625
  }
6626
 
6627
+ var editModel = this.getEditModel();
6628
+
6629
+ this.listenTo( editModel.get( 'settings' ), 'change', this.onSettingsChanged, this );
6630
+ this.listenTo( editModel.get( 'editSettings' ), 'change', this.onEditSettingsChanged, this );
6631
+
6632
+ this.initControlsCSSParser();
6633
  },
6634
 
6635
+ edit: function() {
6636
+ elementor.getPanelView().openEditor( this.getEditModel(), this );
6637
+ },
 
6638
 
6639
+ addElementFromPanel: function( options ) {
6640
+ var elementView = elementor.channels.panelElements.request( 'element:selected' );
6641
 
6642
+ var itemData = {
6643
+ id: elementor.helpers.getUniqueID(),
6644
+ elType: elementView.model.get( 'elType' )
6645
+ };
6646
 
6647
+ if ( 'widget' === itemData.elType ) {
6648
+ itemData.widgetType = elementView.model.get( 'widgetType' );
6649
+ } else if ( 'section' === itemData.elType ) {
6650
+ itemData.elements = [];
6651
+ itemData.isInner = true;
6652
+ } else {
6653
+ return;
6654
+ }
6655
 
6656
+ var customData = elementView.model.get( 'custom' );
 
 
6657
 
6658
+ if ( customData ) {
6659
+ _.extend( itemData, customData );
6660
+ }
 
 
 
 
 
6661
 
6662
+ elementor.channels.data.trigger( 'element:before:add', itemData );
 
 
 
 
 
6663
 
6664
+ var newView = this.addChildElement( itemData, options );
 
 
6665
 
6666
+ if ( 'section' === newView.getElementType() && newView.isInner() ) {
6667
+ newView.addEmptyColumn();
6668
+ }
6669
 
6670
+ elementor.channels.data.trigger( 'element:after:add', itemData );
 
 
6671
 
 
 
6672
  },
6673
 
6674
+ addControlValidator: function( controlName, validationCallback ) {
6675
+ validationCallback = _.bind( validationCallback, this );
 
6676
 
6677
+ var validator = new Validator( { customValidationMethod: validationCallback } ),
6678
+ validators = this.getEditModel().get( 'settings' ).validators;
 
 
 
 
 
6679
 
6680
+ if ( ! validators[ controlName ] ) {
6681
+ validators[ controlName ] = [];
6682
+ }
6683
+
6684
+ validators[ controlName ].push( validator );
6685
  },
6686
 
6687
+ isCollectionFilled: function() {
6688
+ return false;
6689
  },
6690
 
6691
+ isInner: function() {
6692
+ return !! this.model.get( 'isInner' );
 
 
 
 
 
 
 
6693
  },
6694
 
6695
+ initControlsCSSParser: function() {
6696
+ this.controlsCSSParser = new ControlsCSSParser( { id: this.model.cid } );
6697
+ },
6698
 
6699
+ enqueueFonts: function() {
6700
+ var editModel = this.getEditModel(),
6701
+ settings = editModel.get( 'settings' );
 
6702
 
6703
+ _.each( settings.getFontControls(), _.bind( function( control ) {
6704
+ var fontFamilyName = editModel.getSetting( control.name );
 
 
 
 
 
 
6705
 
6706
+ if ( _.isEmpty( fontFamilyName ) ) {
6707
+ return;
6708
+ }
6709
 
6710
+ elementor.helpers.enqueueFont( fontFamilyName );
6711
+ }, this ) );
6712
  },
6713
 
6714
+ renderStyles: function( settings ) {
6715
+ if ( ! settings ) {
6716
+ settings = this.getEditModel().get( 'settings' );
6717
+ }
 
 
6718
 
6719
+ this.controlsCSSParser.stylesheet.empty();
 
6720
 
6721
+ this.controlsCSSParser.addStyleRules( settings.getStyleControls(), settings.attributes, this.getEditModel().get( 'settings' ).controls, [ /{{ID}}/g, /{{WRAPPER}}/g ], [ this.getID(), '#elementor .' + this.getElementUniqueID() ] );
 
6722
 
6723
+ this.controlsCSSParser.addStyleToDocument();
 
 
 
6724
 
6725
+ var extraCSS = elementor.hooks.applyFilters( 'editor/style/styleText', '', this );
 
6726
 
6727
+ if ( extraCSS ) {
6728
+ this.controlsCSSParser.elements.$stylesheetElement.append( extraCSS );
6729
+ }
6730
  },
6731
 
6732
+ renderCustomClasses: function() {
6733
+ var self = this;
 
6734
 
6735
+ self.$el.addClass( 'elementor-element' );
 
6736
 
6737
+ var settings = self.getEditModel().get( 'settings' ),
6738
+ classControls = settings.getClassControls();
6739
 
6740
+ // Remove all previous classes
6741
+ _.each( classControls, function( control ) {
6742
+ var previousClassValue = settings.previous( control.name );
6743
 
6744
+ if ( control.classes_dictionary ) {
6745
+ if ( undefined !== control.classes_dictionary[ previousClassValue ] ) {
6746
+ previousClassValue = control.classes_dictionary[ previousClassValue ];
6747
+ }
6748
  }
6749
+
6750
+ self.$el.removeClass( control.prefix_class + previousClassValue );
6751
  } );
 
6752
 
6753
+ // Add new classes
6754
+ _.each( classControls, function( control ) {
6755
+ var value = settings.attributes[ control.name ],
6756
+ classValue = value;
6757
 
6758
+ if ( control.classes_dictionary ) {
6759
+ if ( undefined !== control.classes_dictionary[ value ] ) {
6760
+ classValue = control.classes_dictionary[ value ];
6761
+ }
6762
+ }
6763
+
6764
+ var isVisible = elementor.helpers.isActiveControl( control, settings.attributes );
6765
+
6766
+ if ( isVisible && ! _.isEmpty( classValue ) ) {
6767
+ self.$el
6768
+ .addClass( control.prefix_class + classValue )
6769
+ .addClass( _.result( self, 'className' ) );
6770
+ }
6771
  } );
6772
  },
6773
 
6774
+ renderCustomElementID: function() {
6775
+ var customElementID = this.getEditModel().get( 'settings' ).get( '_element_id' );
 
6776
 
6777
+ this.$el.attr( 'id', customElementID );
6778
+ },
6779
 
6780
+ getModelForRender: function() {
6781
+ return elementor.hooks.applyFilters( 'element/templateHelpers/editModel', this.getEditModel(), this );
6782
  },
6783
 
6784
+ renderUIOnly: function() {
6785
+ var editModel = this.getModelForRender();
6786
 
6787
+ this.renderStyles( editModel.get( 'settings' ) );
6788
+ this.renderCustomClasses();
6789
+ this.renderCustomElementID();
6790
+ this.enqueueFonts();
6791
  },
6792
 
6793
+ renderUI: function() {
6794
+ this.renderStyles();
6795
+ this.renderCustomClasses();
6796
+ this.renderCustomElementID();
6797
+ this.enqueueFonts();
6798
+ },
6799
 
6800
+ runReadyTrigger: function() {
6801
+ _.defer( _.bind( function() {
6802
+ elementorFrontend.elementsHandler.runReadyTrigger( this.$el );
6803
+ }, this ) );
6804
+ },
6805
 
6806
+ getID: function() {
6807
+ return this.model.get( 'id' );
6808
  },
6809
 
6810
+ getElementUniqueID: function() {
6811
+ return 'elementor-element-' + this.getID();
6812
  },
6813
 
6814
+ duplicate: function() {
6815
+ this.trigger( 'request:duplicate' );
6816
+ },
6817
 
6818
+ renderOnChange: function( settings ) {
6819
+ // Make sure is correct model
6820
+ if ( settings instanceof BaseSettingsModel ) {
6821
+ var hasChanged = settings.hasChanged(),
6822
+ isContentChanged = ! hasChanged,
6823
+ isRenderRequired = ! hasChanged;
6824
 
6825
+ _.each( settings.changedAttributes(), function( settingValue, settingKey ) {
6826
+ var control = settings.getControl( settingKey );
6827
 
6828
+ if ( ! control ) {
6829
+ isRenderRequired = true;
6830
 
6831
+ return;
6832
+ }
6833
 
6834
+ if ( 'none' !== control.render_type ) {
6835
+ isRenderRequired = true;
6836
+ }
6837
 
6838
+ if ( -1 !== [ 'none', 'ui' ].indexOf( control.render_type ) ) {
6839
+ return;
6840
+ }
6841
 
6842
+ if ( 'template' === control.render_type || ! settings.isStyleControl( settingKey ) && ! settings.isClassControl( settingKey ) && '_element_id' !== settingKey ) {
6843
+ isContentChanged = true;
6844
+ }
6845
+ } );
 
 
6846
 
6847
+ if ( ! isRenderRequired ) {
6848
+ return;
6849
+ }
6850
 
6851
+ if ( ! isContentChanged ) {
6852
+ this.renderUIOnly();
6853
+ return;
6854
+ }
6855
+ }
6856
 
6857
+ // Re-render the template
6858
+ var templateType = this.getTemplateType(),
6859
+ editModel = this.getEditModel();
6860
 
6861
+ if ( 'js' === templateType ) {
6862
+ this.getEditModel().setHtmlCache();
6863
+ this.render();
6864
+ editModel.renderOnLeave = true;
6865
+ } else {
6866
+ editModel.renderRemoteServer();
6867
+ }
6868
  },
6869
 
6870
+ onRender: function() {
6871
+ var self = this;
6872
 
6873
+ self.renderUI();
 
 
6874
 
6875
+ self.runReadyTrigger();
 
 
 
 
6876
 
6877
+ if ( self.toggleEditTools ) {
6878
+ self.ui.settingsList.hoverIntent( function() {
6879
+ self.ui.triggerButton.addClass( 'elementor-active' );
6880
+ }, function() {
6881
+ self.ui.triggerButton.removeClass( 'elementor-active' );
6882
+ }, { timeout: 500 } );
6883
+ }
 
 
6884
  },
6885
 
6886
+ onCollectionChanged: function() {
6887
+ elementor.setFlagEditorChange( true );
 
 
6888
  },
6889
 
6890
+ onEditSettingsChanged: function( changedModel ) {
6891
+ this.renderOnChange( changedModel );
6892
  },
6893
 
6894
+ onSettingsChanged: function( changedModel ) {
6895
+ elementor.setFlagEditorChange( true );
 
 
 
 
 
 
6896
 
6897
+ this.renderOnChange( changedModel );
 
6898
  },
6899
 
6900
+ onClickEdit: function( event ) {
6901
+ if ( ! Backbone.$( event.target ).closest( '.elementor-clickable' ).length ) {
6902
+ event.preventDefault();
6903
 
6904
+ event.stopPropagation();
6905
+ }
 
6906
 
6907
+ var activeMode = elementor.channels.dataEditMode.request( 'activeMode' );
6908
+
6909
+ if ( 'edit' !== activeMode ) {
6910
+ return;
 
 
6911
  }
6912
 
6913
+ this.edit();
6914
  },
6915
 
6916
+ onClickDuplicate: function( event ) {
6917
+ event.preventDefault();
6918
+ event.stopPropagation();
 
 
 
6919
 
6920
+ this.duplicate();
 
6921
  },
6922
 
6923
+ onClickRemove: function( event ) {
6924
+ event.preventDefault();
6925
+ event.stopPropagation();
6926
 
6927
+ elementor.channels.data.trigger( 'element:before:remove', this.model );
 
 
 
 
6928
 
6929
+ var parent = this._parent;
 
 
6930
 
6931
+ parent.isManualRemoving = true;
6932
 
6933
+ this.model.destroy();
 
6934
 
6935
+ parent.isManualRemoving = false;
6936
 
6937
+ elementor.channels.data.trigger( 'element:after:remove', this.model );
6938
  },
6939
 
6940
+ onClickSave: function( event ) {
6941
+ event.preventDefault();
6942
+
6943
+ var model = this.model;
6944
+
6945
+ elementor.templates.startModal( {
6946
+ onReady: function() {
6947
+ elementor.templates.getLayout().showSaveTemplateView( model );
6948
+ }
6949
+ } );
6950
  },
6951
 
6952
+ onDestroy: function() {
6953
+ this.controlsCSSParser.removeStyleFromDocument();
6954
+ }
6955
+ } );
6956
 
6957
+ module.exports = BaseElementView;
 
 
 
6958
 
6959
+ },{"elementor-editor-utils/controls-css-parser":64,"elementor-editor-utils/validator":75,"elementor-models/base-settings":52,"elementor-views/base-container":79,"elementor-views/column":82,"elementor-views/section":112}],81:[function(require,module,exports){
6960
+ var SectionView = require( 'elementor-views/section' ),
6961
+ BaseContainer = require( 'elementor-views/base-container' ),
6962
+ BaseSectionsContainerView;
 
 
 
 
6963
 
6964
+ BaseSectionsContainerView = BaseContainer.extend( {
6965
+ childView: SectionView,
6966
 
6967
+ behaviors: function() {
6968
+ var behaviors = {
6969
+ Sortable: {
6970
+ behaviorClass: require( 'elementor-behaviors/sortable' ),
6971
+ elChildType: 'section'
6972
+ },
6973
+ HandleDuplicate: {
6974
+ behaviorClass: require( 'elementor-behaviors/handle-duplicate' )
6975
+ },
6976
+ HandleAddMode: {
6977
+ behaviorClass: require( 'elementor-behaviors/duplicate' )
6978
+ }
6979
+ };
6980
 
6981
+ return elementor.hooks.applyFilters( 'elements/base-section-container/behaviors', behaviors, this );
6982
+ },
6983
 
6984
+ getSortableOptions: function() {
6985
+ return {
6986
+ handle: '> .elementor-element-overlay .elementor-editor-section-settings .elementor-editor-element-trigger',
6987
+ items: '> .elementor-section'
6988
+ };
6989
+ },
6990
+
6991
+ getChildType: function() {
6992
+ return [ 'section' ];
6993
+ },
6994
 
6995
+ isCollectionFilled: function() {
6996
+ return false;
6997
  },
6998
 
6999
+ initialize: function() {
7000
+ this
7001
+ .listenTo( this.collection, 'add remove reset', this.onCollectionChanged )
7002
+ .listenTo( elementor.channels.panelElements, 'element:drag:start', this.onPanelElementDragStart )
7003
+ .listenTo( elementor.channels.panelElements, 'element:drag:end', this.onPanelElementDragEnd );
7004
+ },
7005
 
7006
+ addSection: function( properties, options ) {
7007
+ var newSection = {
7008
+ id: elementor.helpers.getUniqueID(),
7009
+ elType: 'section',
7010
+ settings: {},
7011
+ elements: []
7012
+ };
7013
 
7014
+ if ( properties ) {
7015
+ _.extend( newSection, properties );
7016
  }
7017
 
7018
+ var newModel = this.addChildModel( newSection, options );
7019
+
7020
+ return this.children.findByModelCid( newModel.cid );
7021
  },
7022
 
7023
+ onCollectionChanged: function() {
7024
+ elementor.setFlagEditorChange( true );
7025
  },
7026
 
7027
+ onPanelElementDragStart: function() {
7028
+ elementor.helpers.disableElementEvents( this.$el.find( 'iframe' ) );
7029
  },
7030
 
7031
+ onPanelElementDragEnd: function() {
7032
+ elementor.helpers.enableElementEvents( this.$el.find( 'iframe' ) );
7033
+ }
7034
+ } );
7035
 
7036
+ module.exports = BaseSectionsContainerView;
 
 
7037
 
7038
+ },{"elementor-behaviors/duplicate":1,"elementor-behaviors/handle-duplicate":2,"elementor-behaviors/sortable":5,"elementor-views/base-container":79,"elementor-views/section":112}],82:[function(require,module,exports){
7039
+ var BaseElementView = require( 'elementor-views/base-element' ),
7040
+ ElementEmptyView = require( 'elementor-views/element-empty' ),
7041
+ ColumnView;
 
 
 
 
 
 
7042
 
7043
+ ColumnView = BaseElementView.extend( {
7044
+ template: Marionette.TemplateCache.get( '#tmpl-elementor-element-column-content' ),
7045
 
7046
+ emptyView: ElementEmptyView,
7047
 
7048
+ childViewContainer: '> .elementor-column-wrap > .elementor-widget-wrap',
 
 
 
7049
 
7050
+ behaviors: function() {
7051
+ var behaviors = {
7052
+ Sortable: {
7053
+ behaviorClass: require( 'elementor-behaviors/sortable' ),
7054
+ elChildType: 'widget'
7055
+ },
7056
+ Resizable: {
7057
+ behaviorClass: require( 'elementor-behaviors/resizable' )
7058
+ },
7059
+ HandleDuplicate: {
7060
+ behaviorClass: require( 'elementor-behaviors/handle-duplicate' )
7061
+ },
7062
+ HandleAddMode: {
7063
+ behaviorClass: require( 'elementor-behaviors/duplicate' )
7064
+ }
7065
  };
 
7066
 
7067
+ return elementor.hooks.applyFilters( 'elements/column/behaviors', behaviors, this );
 
7068
  },
7069
 
7070
+ className: function() {
7071
+ var classes = BaseElementView.prototype.className.apply( this, arguments ),
7072
+ type = this.isInner() ? 'inner' : 'top';
 
 
 
 
 
 
 
7073
 
7074
+ return classes + ' elementor-column elementor-' + type + '-column';
 
7075
  },
7076
 
7077
+ tagName: function() {
7078
+ return this.model.getSetting( 'html_tag' ) || 'div';
7079
+ },
 
 
7080
 
7081
+ ui: function() {
7082
+ var ui = BaseElementView.prototype.ui.apply( this, arguments );
7083
 
7084
+ ui.columnInner = '> .elementor-column-wrap';
7085
 
7086
+ ui.percentsTooltip = '> .elementor-element-overlay .elementor-column-percents-tooltip';
7087
 
7088
+ return ui;
7089
+ },
7090
 
7091
+ triggers: {
7092
+ 'click @ui.addButton': 'click:new'
 
7093
  },
7094
 
7095
+ initialize: function() {
7096
+ BaseElementView.prototype.initialize.apply( this, arguments );
7097
 
7098
+ this.addControlValidator( '_inline_size', this.onEditorInlineSizeInputChange );
7099
+ },
7100
 
7101
+ isDroppingAllowed: function() {
7102
+ var elementView = elementor.channels.panelElements.request( 'element:selected' ),
7103
+ elType = elementView.model.get( 'elType' );
7104
 
7105
+ if ( 'section' === elType ) {
7106
+ return ! this.isInner();
7107
+ }
7108
 
7109
+ return 'widget' === elType;
7110
+ },
 
 
 
7111
 
7112
+ getPercentsForDisplay: function() {
7113
+ var inlineSize = +this.model.getSetting( '_inline_size' ) || this.getPercentSize();
7114
 
7115
+ return inlineSize.toFixed( 1 ) + '%';
7116
+ },
 
 
7117
 
7118
+ changeSizeUI: function() {
7119
+ var self = this,
7120
+ columnSize = self.model.getSetting( '_column_size' );
 
 
7121
 
7122
+ self.$el.attr( 'data-col', columnSize );
7123
 
7124
+ _.defer( function() { // Wait for the column size to be applied
7125
+ if ( self.ui.percentsTooltip ) {
7126
+ self.ui.percentsTooltip.text( self.getPercentsForDisplay() );
 
7127
  }
7128
  } );
7129
  },
7130
 
7131
+ getPercentSize: function( size ) {
7132
+ if ( ! size ) {
7133
+ size = this.el.getBoundingClientRect().width;
7134
+ }
7135
 
7136
+ return +( size / this.$el.parent().width() * 100 ).toFixed( 3 );
7137
  },
7138
 
7139
+ getSortableOptions: function() {
7140
+ return {
7141
+ connectWith: '.elementor-widget-wrap',
7142
+ items: '> .elementor-element'
7143
+ };
7144
  },
7145
 
7146
+ changeChildContainerClasses: function() {
7147
+ var emptyClass = 'elementor-element-empty',
7148
+ populatedClass = 'elementor-element-populated';
7149
 
7150
+ if ( this.collection.isEmpty() ) {
7151
+ this.ui.columnInner.removeClass( populatedClass ).addClass( emptyClass );
7152
+ } else {
7153
+ this.ui.columnInner.removeClass( emptyClass ).addClass( populatedClass );
7154
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7155
  },
7156
 
7157
+ // Events
7158
+ onCollectionChanged: function() {
7159
+ BaseElementView.prototype.onCollectionChanged.apply( this, arguments );
7160
 
7161
+ this.changeChildContainerClasses();
 
7162
  },
7163
 
7164
+ onRender: function() {
7165
+ var self = this;
 
 
 
 
7166
 
7167
+ BaseElementView.prototype.onRender.apply( self, arguments );
 
7168
 
7169
+ self.changeChildContainerClasses();
 
7170
 
7171
+ self.changeSizeUI();
 
7172
 
7173
+ self.$el.html5Droppable( {
7174
+ items: ' > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add',
7175
+ axis: [ 'vertical' ],
7176
+ groups: [ 'elementor-element' ],
7177
+ isDroppingAllowed: _.bind( self.isDroppingAllowed, self ),
7178
+ currentElementClass: 'elementor-html5dnd-current-element',
7179
+ placeholderClass: 'elementor-sortable-placeholder elementor-widget-placeholder',
7180
+ hasDraggingOnChildClass: 'elementor-dragging-on-child',
7181
+ onDropping: function( side, event ) {
7182
+ event.stopPropagation();
7183
 
7184
+ var newIndex = Backbone.$( this ).index();
 
 
7185
 
7186
+ if ( 'bottom' === side ) {
7187
+ newIndex++;
7188
  }
 
 
 
 
 
7189
 
7190
+ self.addElementFromPanel( { at: newIndex } );
 
 
7191
  }
7192
+ } );
 
 
 
 
 
 
 
 
 
 
 
 
7193
  },
7194
 
7195
+ onSettingsChanged: function( settings ) {
7196
+ BaseElementView.prototype.onSettingsChanged.apply( this, arguments );
 
 
7197
 
7198
+ var changedAttributes = settings.changedAttributes();
7199
 
7200
+ if ( '_column_size' in changedAttributes || '_inline_size' in changedAttributes ) {
7201
+ this.changeSizeUI();
 
 
 
 
7202
  }
7203
  },
7204
 
7205
+ onEditorInlineSizeInputChange: function( newValue, oldValue ) {
7206
+ var errors = [],
7207
+ columnSize = this.model.getSetting( '_column_size' );
 
 
 
 
 
 
 
 
 
 
7208
 
7209
+ // If there's only one column
7210
+ if ( 100 === columnSize ) {
7211
+ errors.push( 'Could not resize one column' );
7212
 
7213
+ return errors;
7214
  }
7215
 
7216
+ if ( ! oldValue ) {
7217
+ oldValue = columnSize;
 
 
7218
  }
7219
 
7220
+ try {
7221
+ this._parent.resizeChild( this, +oldValue, +newValue );
7222
+ } catch ( e ) {
7223
+ if ( e.message === this._parent.errors.columnWidthTooLarge ) {
7224
+ errors.push( e.message );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7225
  }
7226
+ }
 
7227
 
7228
+ return errors;
 
7229
  }
7230
  } );
7231
 
7232
+ module.exports = ColumnView;
7233
 
7234
+ },{"elementor-behaviors/duplicate":1,"elementor-behaviors/handle-duplicate":2,"elementor-behaviors/resizable":4,"elementor-behaviors/sortable":5,"elementor-views/base-element":80,"elementor-views/element-empty":110}],83:[function(require,module,exports){
7235
+ var ControlsStack;
 
 
7236
 
7237
+ ControlsStack = Marionette.CompositeView.extend( {
7238
+ className: 'elementor-panel-controls-stack',
7239
 
7240
+ activeTab: null,
7241
+
7242
+ activeSection: null,
7243
+
7244
+ templateHelpers: function() {
7245
+ return {
7246
+ elementData: elementor.getElementData( this.model )
 
 
 
 
 
7247
  };
7248
+ },
7249
 
7250
+ ui: function() {
7251
+ return {
7252
+ tabs: '.elementor-panel-navigation-tab',
7253
+ reloadButton: '.elementor-update-preview-button'
7254
+ };
7255
  },
7256
 
7257
+ events: function() {
7258
  return {
7259
+ 'click @ui.tabs': 'onClickTabControl',
7260
+ 'click @ui.reloadButton': 'onReloadButtonClick'
7261
  };
7262
  },
7263
 
7264
+ modelEvents: {
7265
+ 'destroy': 'onModelDestroy'
7266
  },
7267
 
7268
+ behaviors: {
7269
+ HandleInnerTabs: {
7270
+ behaviorClass: require( 'elementor-behaviors/inner-tabs' )
7271
+ }
7272
  },
7273
 
7274
  initialize: function() {
7275
+ this.listenTo( elementor.channels.deviceMode, 'change', this.onDeviceModeChange );
 
 
 
7276
  },
7277
 
7278
+ filter: function( controlModel ) {
7279
+ if ( controlModel.get( 'tab' ) !== this.activeTab ) {
7280
+ return false;
7281
+ }
 
 
 
7282
 
7283
+ if ( 'section' === controlModel.get( 'type' ) ) {
7284
+ return true;
7285
  }
7286
 
7287
+ var section = controlModel.get( 'section' );
7288
 
7289
+ return ! section || section === this.activeSection;
7290
  },
7291
 
7292
+ isVisibleSectionControl: function( sectionControlModel ) {
7293
+ return this.activeTab === sectionControlModel.get( 'tab' );
 
 
 
 
7294
  },
7295
 
7296
+ activateTab: function( $tab ) {
7297
+ var self = this,
7298
+ activeTab = this.activeTab = $tab.data( 'tab' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7299
 
7300
+ this.ui.tabs.removeClass( 'active' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7301
 
7302
+ $tab.addClass( 'active' );
 
7303
 
7304
+ var sectionControls = this.collection.filter( function( controlModel ) {
7305
+ return 'section' === controlModel.get( 'type' ) && self.isVisibleSectionControl( controlModel );
7306
+ } );
7307
 
7308
+ if ( sectionControls[0] ) {
7309
+ this.activateSection( sectionControls[0].get( 'name' ) );
7310
+ }
7311
  },
7312
 
7313
+ activateSection: function( sectionName ) {
7314
+ this.activeSection = sectionName;
7315
  },
7316
 
7317
+ getChildView: function( item ) {
7318
+ var controlType = item.get( 'type' );
7319
 
7320
+ return elementor.getControlView( controlType );
7321
+ },
7322
 
7323
+ openActiveSection: function() {
7324
+ var activeSection = this.activeSection,
7325
+ activeSectionView = this.children.filter( function( view ) {
7326
+ return activeSection === view.model.get( 'name' );
7327
+ } );
7328
 
7329
+ if ( activeSectionView[0] ) {
7330
+ activeSectionView[0].ui.heading.addClass( 'elementor-open' );
7331
+ }
7332
  },
7333
 
7334
+ onRenderCollection: function() {
7335
+ this.openActiveSection();
7336
  },
7337
 
7338
+ onRenderTemplate: function() {
7339
+ this.activateTab( this.ui.tabs.eq( 0 ) );
 
 
7340
  },
7341
 
7342
+ onModelDestroy: function() {
7343
+ this.destroy();
 
 
 
 
 
 
 
7344
  },
7345
 
7346
+ onClickTabControl: function( event ) {
7347
+ event.preventDefault();
7348
 
7349
+ var $tab = this.$( event.currentTarget );
 
7350
 
7351
+ if ( this.activeTab === $tab.data( 'tab' ) ) {
7352
+ return;
7353
+ }
7354
 
7355
+ this.activateTab( $tab );
7356
 
7357
+ this._renderChildren();
 
 
 
 
7358
  },
7359
 
7360
+ onReloadButtonClick: function() {
7361
+ elementor.reloadPreview();
 
 
 
 
7362
  },
7363
 
7364
+ onDeviceModeChange: function() {
7365
+ this.$el.removeClass( 'elementor-responsive-switchers-open' );
 
 
 
7366
  },
7367
 
7368
+ onChildviewControlSectionClicked: function( childView ) {
7369
+ var isSectionOpen = childView.ui.heading.hasClass( 'elementor-open' );
 
 
 
 
 
 
 
 
7370
 
7371
+ this.activateSection( isSectionOpen ? null : childView.model.get( 'name' ) );
 
 
7372
 
7373
+ this._renderChildren();
7374
  },
7375
 
7376
+ onChildviewResponsiveSwitcherClick: function( childView, device ) {
7377
+ if ( 'desktop' === device ) {
7378
+ this.$el.toggleClass( 'elementor-responsive-switchers-open' );
7379
+ }
7380
+ }
7381
+ } );
7382
 
7383
+ module.exports = ControlsStack;
7384
 
7385
+ },{"elementor-behaviors/inner-tabs":3}],84:[function(require,module,exports){
7386
+ var ControlBaseItemView = require( 'elementor-views/controls/base' ),
7387
+ ControlBaseMultipleItemView;
7388
 
7389
+ ControlBaseMultipleItemView = ControlBaseItemView.extend( {
 
 
 
 
 
 
 
 
 
7390
 
7391
+ applySavedValue: function() {
7392
+ var values = this.getControlValue(),
7393
+ $inputs = this.$( '[data-setting]' ),
7394
+ self = this;
7395
 
7396
+ _.each( values, function( value, key ) {
7397
+ var $input = $inputs.filter( function() {
7398
+ return key === this.dataset.setting;
7399
+ } );
7400
 
7401
+ self.setInputValue( $input, value );
 
7402
  } );
7403
  },
7404
 
7405
+ getControlValue: function( key ) {
7406
+ var values = this.elementSettingsModel.get( this.model.get( 'name' ) );
7407
 
7408
+ if ( ! Backbone.$.isPlainObject( values ) ) {
7409
+ return {};
7410
+ }
7411
 
7412
+ if ( key ) {
7413
+ return values[ key ] || '';
7414
  }
 
7415
 
7416
+ return elementor.helpers.cloneObject( values );
7417
+ },
 
7418
 
7419
+ setValue: function( key, value ) {
7420
+ var values = this.getControlValue();
 
7421
 
7422
+ if ( 'object' === typeof key ) {
7423
+ _.each( key, function( internalValue, internalKey ) {
7424
+ values[ internalKey ] = internalValue;
7425
+ } );
7426
+ } else {
7427
+ values[ key ] = value;
7428
  }
7429
 
7430
+ this.setSettingsModel( values );
7431
+ },
 
7432
 
7433
+ updateElementModel: function( value, input ) {
7434
+ var key = input.dataset.setting;
7435
+
7436
+ this.setValue( key, value );
7437
+ }
7438
+ }, {
7439
+ // Static methods
7440
+ getStyleValue: function( placeholder, controlValue ) {
7441
+ if ( ! _.isObject( controlValue ) ) {
7442
+ return ''; // invalid
7443
  }
7444
 
7445
+ return controlValue[ placeholder ];
7446
  }
7447
  } );
7448
 
7449
+ module.exports = ControlBaseMultipleItemView;
 
 
 
7450
 
7451
+ },{"elementor-views/controls/base":86}],85:[function(require,module,exports){
7452
+ var ControlBaseMultipleItemView = require( 'elementor-views/controls/base-multiple' ),
7453
+ ControlBaseUnitsItemView;
7454
 
7455
+ ControlBaseUnitsItemView = ControlBaseMultipleItemView.extend( {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7456
 
7457
  getCurrentRange: function() {
7458
  return this.getUnitRange( this.getControlValue( 'unit' ) );
7471
 
7472
  module.exports = ControlBaseUnitsItemView;
7473
 
7474
+ },{"elementor-views/controls/base-multiple":84}],86:[function(require,module,exports){
7475
  var ControlBaseItemView;
7476
 
7477
  Co