readme.txt000066600000473532152142641150006565 0ustar00=== Elementor Page Builder === Contributors: elemntor, KingYes, ariel.k, jzaltzberg, mati1000, pojosh, bainternet Tags: page builder, editor, landing page, drag-and-drop, elementor, visual editor, wysiwyg, design, maintenance mode, coming soon, under construction, website builder, landing page builder, front-end builder Requires at least: 5.0 Tested up to: 5.4 Requires PHP: 5.6 Stable tag: 2.9.8 License: GPLv3 License URI: https://www.gnu.org/licenses/gpl-3.0.html The most advanced frontend drag & drop page builder. Create high-end, pixel perfect websites at record speeds. Any theme, any page, any design. == Description == https://www.youtube.com/watch?v=kB4U67tiQLA It's about time for a live page builder, with no limits of design. A page builder that delivers high-end page designs and advanced capabilities, never before seen on WordPress. It's time for **[Elementor Page Builder](https://elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme)**. = Faster. Much faster. = Instant reaction was a key feature we wanted to achieve. And we did. Instant drag & drop page builder, instant live edit, instant page load. The speed of Elementor is not matched by any other page builder, free or paid. This makes the interface fun and easy to work with, as well as reduces the time it takes to design. = Live design. Truly live. = Never again work on the backend and guess what the frontend will look like. With Elementor page builder, you edit the page and simultaneously see exactly how it looks like. Elementor features live design & inline editing, so the whole process of writing and designing is done directly on the page, with no need to press update or go to preview mode. It also works perfectly with or without Gutenberg. = Surprises you won’t see anywhere else. = With Elementor's unique features, you can create websites that have that certain 'designer touch'. Among our page builder features are: Box Shadows, Background Overlays, Hover Effects, Headline Effects, Animations, Shape Dividers, Gradient Backgrounds and much more. = Pre-Designed Templates & Blocks = Choose from 100+ of beautiful full page [WordPress templates](https://library.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) and customize them to make them your own. You can also build your page by choosing from 300+ Blocks. Blocks are pre-designed section templates that can be easily combined into any page. Blocks include a variety of categories: services, testimonials, call to action and more. Save and reuse Elementor templates on different pages, or export them to a different website with a click. = Mobile First. Mobile Editing. = Elementor Page Builder comes with an exclusive toolset, that lets you create truly a responsive website in a whole new and visual way. From different font size, padding and margin per device, to reverse column ordering, this is the most powerful mobile page builder for creating perfect responsive websites. = Undo / Redo & Revision History. = Our page builder includes undo and redo for any action you make. Click on Ctrl / Cmd + Z, or browse through the complete list of actions. Want to go back ever further? Switch to Revisions to view a complete list of all earlier saved versions of the page. = Canvas. A Blank Page Template for Landing Pages. = Design your entire page in the page builder. No header, no footer, just Elementor. This is perfect for landing pages and coming soon pages. Canvas works on any theme, and lets you get rid of the header area so you get a blank template to work on. = Built-in Maintenance Mode & Under Construction. = Need to get your site offline for maintenance? Use Elementor page builder's built in Maintenance Mode & Coming Soon feature to show your visitors an under construction / coming soon page. = Try Elementor Pro. The Best page Builder for WordPress. = [Elementor Pro](https://elementor.com/pro/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) vastly improves your design workflow and lets you design faster and better than ever. With Elementor Pro, everything is done visually and without code. Making changes to your theme shouldn't be so hard. Endless coding, dealing with developers, switching themes. The [Theme Builder](https://elementor.com/theme-builder/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) in Elementor Pro turns the entire process of creating WordPress websites 100% visual including your site's header, footer, single post and archive page design. There are many other [features](https://elementor.com/features/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) to help you build better websites: * Visual and intuitive form builder * Marketing automation and CRM integrations * Custom fonts * Role manager * Blog post layout widget * Image & video sliders * WooCommerce * Global widgets * Custom CSS * Animated headlines * And much more. Join the elite web professionals who enjoy [Elementor Pro](https://elementor.com/pro/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme)! = 30 free widgets and counting = We packed 30 of the most useful widgets into our page builder. True, that's way more than we had to offer, but we wanted to spare no widget from you, so you can reach the top of your design capabilities. - **Heading**. Add eye-catching headlines. - **Image**. Control the size, opacity and other settings of images. - **Text Editor**. A WYSIWYG text editor, just like the WordPress editor. - **Video**. Add YouTube \ Vimeo to your page. - **Button**. Controlling every aspect of the button design. - **Image Box**. A box that includes image, headline and text. - **Testimonials**. Customer testimonials that show social proof. - **Icon**. Place one or more of 600+ icons available. - **Icon Box**. Works the same as the image box, only with icons. - **Social Icons**. Icons to your social pages like Facebook / Twitter. - **Image Gallery**. Displays your images in an aligned grid. - **Image Carousel**. A rotating carousel or slider of chosen images. - **Icon List**. A bullet list with any chosen icon and text. - **Counter**. Show stats and numbers in an escalating manner. - **Progress Bar**. Include an escalating progress bar. - **Tabs**. Vertical or horizontal tabs that display different pieces of content. - **Accordion**. A collapsable display of content. - **Toggle**. Like Accordion, for FAQ pages. - **Star Rating**. Add some social proof with a styled star rating. - **Alert**. A colored alert box to draw the attention of the visitor. - **HTML**. Insert code into the page. - **Shortcode**. Easily insert shortcodes from any plugin into the page. - **Menu Anchor**. Link any menu to this anchor. - **Read More**. Set the `Read More` cut-off for the excerpt in archive pages. - **Sidebar**. Add any sidebar into the page. - **Google Maps**. Embed maps into the page. - **SoundCloud**. Add audio bits from SoundCloud. - **Divider**. A line that divides different elements in the page. - **Spacer**. A space that divides the various elements. - **Columns**. Create inner columns within the column. - **And counting...** = Multilingual & RTL supported. = We've integrated RTL and multi language support within the framework of our page builder, so you get a translated panel out of the box, as well as RTL typography support, and developer options to add even more languages. = Developer API. = Elementor page builder is free and open source. It's the perfect page builder plugin to be extended and integrated further. It was created and developed with the developer in mind, and we have already seen some truly remarkable addons already developed. To help you get started and learn just how to integrate with Elementor, we have created the [Official Elementor Developer Resources](https://developers.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) and the [Code Reference](https://code.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme). = Translations = - [English (Australia)](https://translate.wordpress.org/locale/en-au/default/wp-plugins/elementor) - (en_AU) - [English (UK)](https://translate.wordpress.org/locale/en-gb/default/wp-plugins/elementor) - (en_GB) - [English (Canada)](https://translate.wordpress.org/locale/en-ca/default/wp-plugins/elementor) - (en_CA) - [French](https://translate.wordpress.org/locale/fr/default/wp-plugins/elementor) - (fr_FR) - [French (Belgium)](https://translate.wordpress.org/locale/fr-be/default/wp-plugins/elementor) - (fr_BE) - [German](https://translate.wordpress.org/locale/de/default/wp-plugins/elementor) - (de_DE) - [Italian](https://translate.wordpress.org/locale/it/default/wp-plugins/elementor) - (it_IT) - [Spanish (Spain)](https://translate.wordpress.org/locale/es/default/wp-plugins/elementor) - (es_ES) - [Spanish (Mexico)](https://translate.wordpress.org/locale/es-mx/default/wp-plugins/elementor) - (es_MX) - [Japanese](https://translate.wordpress.org/locale/ja/default/wp-plugins/elementor) - (ja) - [Portuguese (Portugal)](https://translate.wordpress.org/locale/pt/default/wp-plugins/elementor) - (pt_PT) - [Portuguese (Brazil)](https://translate.wordpress.org/locale/pt-br/default/wp-plugins/elementor) - (pt_BR) - [Swedish](https://translate.wordpress.org/locale/sv/default/wp-plugins/elementor) - (sv_SE) - [Dutch](https://translate.wordpress.org/locale/nl/default/wp-plugins/elementor) - (nl_NL) - [Danish](https://translate.wordpress.org/locale/da/default/wp-plugins/elementor) - (da_DK) - [Polish](https://translate.wordpress.org/locale/pl/default/wp-plugins/elementor) - (pl_PL) - [Italian](https://translate.wordpress.org/locale/it/default/wp-plugins/elementor) - (it_IT) - [Chinese (China)](https://translate.wordpress.org/locale/zh-cn/default/wp-plugins/elementor) - (zh_CN) - [Chinese (Taiwan)](https://translate.wordpress.org/locale/zh-tw/default/wp-plugins/elementor) - (zh_TW) - [Persian](https://translate.wordpress.org/locale/fa/default/wp-plugins/elementor) - (fa_IR) - [Hebrew](https://translate.wordpress.org/locale/he/default/wp-plugins/elementor) - (he_IL) - [Russian](https://translate.wordpress.org/locale/ru/default/wp-plugins/elementor) - (ru_RU) - [Romanian](https://translate.wordpress.org/locale/ro/default/wp-plugins/elementor) - (ro_RO) - [Bulgarian](https://translate.wordpress.org/locale/bg/default/wp-plugins/elementor) - (bg_BG) - [Greek](https://translate.wordpress.org/locale/el/default/wp-plugins/elementor) - (el) - [Catalan](https://translate.wordpress.org/locale/ca/default/wp-plugins/elementor) - (ca) - [Czech](https://translate.wordpress.org/locale/cs/default/wp-plugins/elementor) - (cs_CZ) - [Hungarian](https://translate.wordpress.org/locale/hu/default/wp-plugins/elementor) - (hu_HU) - [Croatian](https://translate.wordpress.org/locale/hr/default/wp-plugins/elementor) - (hr) - [Finnish](https://translate.wordpress.org/locale/fi/default/wp-plugins/elementor) - (fi) - [Arabic](https://translate.wordpress.org/locale/ar/default/wp-plugins/elementor) - (ar) - [Afrikaans](https://translate.wordpress.org/locale/af/default/wp-plugins/elementor) - (af) - [Ukrainian](https://translate.wordpress.org/locale/uk/default/wp-plugins/elementor) - (uk) = Be a contributor = If you want to contribute, go to our [Elementor GitHub Repository](https://github.com/elementor/elementor) and see where you can help. You can also add a new language via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/elementor). We've built a short guide explaining [how to translate and localize the plugin](https://go.elementor.com/translate/). = Documentation and Support = - For documentation and tutorials go to our [Documentation](https://docs.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme). - If you have any more questions, visit our support on the [Plugin's Forum](https://wordpress.org/support/plugin/elementor). - For more information about features, FAQs and documentation, check out our website at [Elementor Page Builder](https://elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme). = Liked Elementor? = - Join our [Facebook Group](https://www.facebook.com/groups/Elementors/). - Learn from our tutorials on [Youtube Channel](https://www.youtube.com/c/elementor). - Or rate us on [WordPress](https://wordpress.org/support/plugin/elementor/reviews/?filter=5/#new-post) :) == Installation == = Minimum Requirements = * WordPress 5.0 or greater * PHP version 5.6 or greater * MySQL version 5.0 or greater = We recommend your host supports: = * PHP version 7.0 or greater * MySQL version 5.6 or greater * WordPress Memory limit of 64 MB or greater (128 MB or higher is preferred) https://www.youtube.com/watch?v=Ypn6fltn_7s = Installation = 1. Install using the WordPress built-in Plugin installer, or Extract the zip file and drop the contents in the `wp-content/plugins/` directory of your WordPress installation. 2. Activate the plugin through the 'Plugins' menu in WordPress. 3. Go to Pages > Add New 4. Press the 'Edit with Elementor' button. 5. Now you can drag and drop widgets from the left panel onto the content area, as well as add new sections and columns that make up the page structure. For documentation and tutorials visit our [Knowledge Base](https://docs.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme). == Frequently Asked Questions == **With Elementor, do I still need a theme?** Yes. Think of it like this: a theme is like the frame of the picture, and Elementor is the tool to paint the picture inside the frame. **Is Elementor compatible with Posts and Custom Post Types?** It sure is! You can set which post types will enable Elementor in the settings page. **Can I use other plugin widgets inside Elementor?** Sure can! Plugin widgets that appear in the WordPress widgets menu will also appear inside Elementor automatically. Just drag and drop them onto the page. **Do I need to know how to code to use Elementor?** Absolutely not! Elementor is a live frontend page builder, that lets you reach a high end design with no need to write even a line of code or CSS. **Will Elementor work with RTL or other languages?** Yeah! Elementor enables to seamlessly build RTL pages as well as other translated pages in any language. You can read more about [translation and localization](https://go.elementor.com/translate/). **My site is working with WordPress 2.6, will Elementor work for me?** No. Elementor supports WordPress 5.0 or greater, and is compatible with PHP 5.6 or greater. We recommend your host supports PHP version 7.0 or greater and MySQL version 5.6 or greater. == Screenshots == 1. **Drag & Drop.** Our instant drag & drop lets you easily place every element anywhere on the page. 2. **Visual Resize Control.** Customize the various elements of the page. Resizing images, changing column sizes and much more. 3. **Truly Live Edit.** Changes on the page are displayed in realtime. No need to press update or preview. 4. **Template Library.** Save your pages or sections as templates, so you can easily reuse them again, or choose one of our beautiful pre-designed templates. 5. **Responsive Design.** Create custom settings for desktop, tablet & mobile by switching between devices. 6. **Revision History.** Switch between earlier versions of your page design, so your design process is backed up, every step of the way. 7. **Shape Divider.** Choose from a wide array of shape dividers and separate your sections in endless ways, that until now were simply not possible. == Changelog == = 2.9.8 - 2020-04-21 = * Tweak: Added `.webp` file extension support to Elementor Lightbox * Fix: Added missing font-family for `elementor-button` class to avoid system font ([#11166](https://github.com/elementor/elementor/issues/11166)) * Fix: Site Part without any content has no height and not accessible in some cases * Fix: PHP notice in Connect module * Fix: Navigator resize action is not available in edge cases * Fix: SVG sanitizer `href` attribute for better security * Fix: Hardened user role that is allowed to upload unfiltered files for better security = 2.9.7 - 2020-03-25 = * Tweak: Added compatibility with WordPress v5.4 ([#10745](https://github.com/elementor/elementor/issues/10745)) * Tweak: Show Typography section to everyone in Section, Column and Inner Section elements ([#10592](https://github.com/elementor/elementor/issues/10592)) * Fix: Custom Attributes section missing in Advanced tab ([#10881](https://github.com/elementor/elementor/issues/10881)) * Fix: Title color & Typography settings are being overridden by Theme Style in Accordion and Toggle widget ([#10900](https://github.com/elementor/elementor/issues/10900)) * Fix: Merged "Play On Mobile" string for better i18n in Video widget (Props [@pedro-mendonca](https://github.com/pedro-mendonca), [#10315](https://github.com/elementor/elementor/issues/10315)) * Fix: Whatsapp share link does not escape HTML entities ([#10746](https://github.com/elementor/elementor/issues/10746)) * Fix: Invalid request error conflict with Yoast plugin and Share Buttons widget ([#10746](https://github.com/elementor/elementor/issues/10746)) * Fix: FontAwesome Pro icons not loading in edge cases * Fix: Missing Dynamic indication in Range control ([#10835](https://github.com/elementor/elementor/issues/10835)) * Fix: Carousel spins multiple times when loading in Image Carousel widget * Fix: Theme style overrides Lightbox Share links color * Fix: Loading spinner placement glitch in URL control * Fix: Missing separator control in Icon widget * Fix: Dynamic Tags with the character “0” are not visible on frontend * Fix: Dashboard menu UI glitch for non-Administrator role users = 2.9.6 - 2020-03-12 = * Fix: Removed redundant dynamic capabilities from all of color controls inside Group controls in Theme Style * Fix: Global widget is clickable when editing Theme Style * Fix: Dropcap not working immediately in Text Editor widget * Security Fix: Enable Safe Mode only for `activate_plugins` capability = 2.9.5 - 2020-03-09 = * Tweak: Added new parameter to Swiper wrapper to limit breakpoint intervention ([#10525](https://github.com/elementor/elementor/issues/10525)) * Tweak: Updated E-Gallery library to v1.1.2 * Tweak: Show descriptive Pro Promotions only for Administrator role * Fix: Inconsistent responsive display issue in the Editor when using Custom Breakpoints ([#10540](https://github.com/elementor/elementor/issues/10540)) * Fix: Editor not loading when the Library launches on load ([Topic](https://wordpress.org/support/topic/editor-broken-in-2-9-4/)) * Fix: Gallery Columns does not update immediately in the preview when in Masonry layout * Fix: Navigator does not update according to the current site part being edited * Fix: Hidden responsive indicator missing in editor * Fix: Tabs widget title color not working on mobile = 2.9.4 - 2020-03-04 = * Tweak: Added support for Elementor Pro v2.9.0 * Tweak: Updated Swiper.js library to v5.3.6 * Tweak: Added version expected release date for Theme Style Custom CSS and Dynamic Color promotions * Fix: Warning in `/base/controls-stack.php` when a 3rd party controls doesn’t have a default dynamic value ([#10578](https://github.com/elementor/elementor/issues/10578)) * Fix: Alignment issue on drag when not set to Infinite Loop in Image Carousel widget * Fix: Title Color change both title and link color in Accordion widget = 2.9.3 - 2020-02-26 = * Tweak: Don't show the "Have a look" link after successful Theme Style publish * Tweak: Show Database update notice only for users with `update_plugins` capability * Tweak: Added Custom CSS promotion section in Theme Style * Tweak: Added compatibility for Pro v2.9 features * Fix: Warning in `/base/controls-stack.php` when a control doesn't have a dynamic capability ([#10578](https://github.com/elementor/elementor/issues/10578)) * Fix: Beta Tester sign up modal pops up multiple times after signing up * Fix: `` Links appear with `underline` text-decoration * Fix: Shortcode doesn't render when exiting inline edit * Fix: Whatsapp not sharing the link of the page in Share buttons widget * Fix: Whatsapp share doesn't include line breaks between the page title and the URL in Share buttons widget * Fix: Box Shadow doesn't display properly in Toggle widget * Fix: Custom Link Attributes are not being applied in Icon Box widget * Fix: Added sanitization to Custom Link Attributes control to avoid security issue (Props [@yzy9951](https://github.com/yzy9951)) = 2.9.2 - 2020-02-16 = * Fix: Responsive issue when using Slides to Show control in carousel widgets ([#10540](https://github.com/elementor/elementor/issues/10540)) * Fix: Title and Description causes JS error in Lightbox in edge cases = 2.9.1 - 2020-02-13 = * Tweak: Added Native WordPress Gallery support for lightbox pagination * Tweak: Updated eicons library to v5.6.2 * Fix: Popup builder not accessible when Pro plugin is active ([#10502](https://github.com/elementor/elementor/issues/10502)) * Fix: Pagination not working when one item is visible in carousel widgets ([#10508](https://github.com/elementor/elementor/issues/10508), [Topic](https://wordpress.org/support/topic/carrousel-is-blocked-with-version-2-9/)) * Fix: Empty panel after dragging a widget in edge cases * Fix: Theme Style button being added in Theme Builder documents * Fix: Google fonts enqueuing issue * Fix: Preview mode not changing when dismissing the exit prompt * Fix: Kit showing up in Finder results * Fix: Missing preview icon in Finder * Fix: Missing preview icon in Theme Builder footer = 2.9.0 - 2020-02-10 = * New: Introducing Theme Style - set your default HTML tags styling using Elementor ([#534](https://github.com/elementor/elementor/issues/534)) * New: Added Custom Link Attributes to Link Options to allow adding custom attributes to `` tags ([#5716](https://github.com/elementor/elementor/issues/5716), [#3642](https://github.com/elementor/elementor/issues/3642), [#9225](https://github.com/elementor/elementor/issues/9225), [#9079](https://github.com/elementor/elementor/issues/9079)) * Tweak: Added Title & Description to Lightbox ([#9826](https://github.com/elementor/elementor/issues/9826), [#2502](https://github.com/elementor/elementor/issues/2502)) * Tweak: Added Full Screen option in Lightbox ([#5260](https://github.com/elementor/elementor/issues/5260)) * Tweak: Added direct sharing options in Lightbox ([#2502](https://github.com/elementor/elementor/issues/2502)) * Tweak: Added Zoom option in Lightbox ([#9399](https://github.com/elementor/elementor/issues/9399)) * Tweak: Moved `social-share.js` to Core instead of Pro ([Developers Blog Post](https://developers.elementor.com/migration-of-modules-to-core-in-2-9/)) * Tweak: Moved `link-actions.js` to Core instead of Pro and changed its name to `url-actions.js` ([Developers Blog Post](https://developers.elementor.com/migration-of-modules-to-core-in-2-9/)) * Tweak: Added dynamic capabilities to Title control in Toggle widget ([#10070](https://github.com/elementor/elementor/issues/10070)) * Tweak: Disabled autocomplete feature from the Color Picker ([#10030](https://github.com/elementor/elementor/issues/10030)) * Tweak: Added Mix social network to recommended tab in Social Icons widget ([#10099](https://github.com/elementor/elementor/issues/10099)) * Tweak: Removed StumbleUpon social network from recommended tab in Social Icons widget ([#10099](https://github.com/elementor/elementor/issues/10099)) * Tweak: Added `i18n` function to translation string in DB upgrades manager (Props [@ramiy](https://github.com/ramiy)) * Tweak: Added `vh` and `em` size units to Max Width control in Image widget ([#5376](https://github.com/elementor/elementor/issues/5376)) * Tweak: Added `vh` and `em` size units to Spacer widget * Tweak: Exposed external API for Swiper instances ([Developers Blog Post](https://developers.elementor.com/expose-swiper-in-elementor/)) * Tweak: Updated Pickr library to v1.5.0 * Tweak: Updated Dialogs Manager library to v4.7.5 * Tweak: Added URL hash routing capability to Lightbox * Tweak: Refactored panel controls UI * Tweak: Updated Font Awesome library to v5.12.0 * Tweak: Converted `add_render_attributes` for custom links to `add_link_attributes()` * Tweak: Added a mixin for `absolute-center` positioning * Tweak: Updated `eicons` library to v5.6.1 * Tweak: Changed `eicon-zoom-in` icon to `eicon-zoom-in-bold` in Template Library * Tweak: Allow background image and color being displayed in empty column * Tweak: Converted `editor-base.js` to ES6 * Tweak: Added `featured_image` URL to frontend config * Tweak: Made minor UI tweaks to "Recalc" button in System Info * Tweak: Added inline editing capability to Progress Bar widget Title * Tweak: Removed redundant display conditions from Drop Cap section in Text Editor widget * Tweak: Remove redundant `label_block` parameters from control instances * Tweak: Added 'alt' property when using SVG icons in Social Icons widget * Tweak: Added translators comment explaining the `%s` placeholder in Video Provider control * Tweak: Added Pro features descriptive promotions to Editor panel * Tweak: Added Dynamic capabilities to be active by default in WYSIWYG Control * Tweak: Changed the position of all panel tooltips to appear above the controls * Tweak: Replaced nerd icons with new Elementor emojis * Tweak: Added descriptive message suggesting backing up the Database before upgrading to Font Awesome 5 * Tweak: Changed panel arrow icon to chevron * Tweak: Deprecated Typography section in Section & Column elements for users who didn't place values * Fix: `playsinline` attribute missing when setting self-hosted video to Play on Mobile in Video widget ([#9892](https://github.com/elementor/elementor/issues/9892)) * Fix: Beta sign-up modal closes unexpectedly ([#10355](https://github.com/elementor/elementor/issues/10355)) * Fix: "Slides to Show" option doesn't work on Tablet view in Image Carousel widget ([#10227](https://github.com/elementor/elementor/issues/10227)) * Fix: Previous and Next buttons are not displaying on Safari in Media Carousel's Cube mode ([#9725](https://github.com/elementor/elementor/issues/9725)) * Fix: Form style being reset adding MailChimp/Getresponse action in Form widget ([#9313](https://github.com/elementor/elementor/issues/9313)) * Fix: Post Title and Archive Excerpt wrong values in edge cases * Fix: Wrong `/>

$option_value ) : ?>

[], ]; $field = array_merge( $defaults, $field ); $post_types_objects = get_post_types( [ 'public' => true, ], 'objects' ); /** * Filters the list of post type objects used by Elementor. * * @since 2.8.0 * * @param array $post_types_objects List of post type objects used by Elementor. */ $post_types_objects = apply_filters( 'elementor/settings/controls/checkbox_list_cpt/post_type_objects', $post_types_objects ); $field['options'] = []; foreach ( $post_types_objects as $cpt_slug => $post_type ) { if ( in_array( $cpt_slug, $field['exclude'], true ) ) { continue; } $field['options'][ $cpt_slug ] = $post_type->labels->name; } self::checkbox_list( $field ); } /** * Render checkbox list control for user roles. * * Generates the final HTML for checkbox list controls populated with user roles. * * @since 2.0.0 * @access private * @static * * @param array $field Field data. */ private static function checkbox_list_roles( array $field ) { $defaults = [ 'exclude' => [], ]; $field = array_merge( $defaults, $field ); $field['options'] = []; $roles = get_editable_roles(); if ( is_multisite() ) { $roles = [ 'super_admin' => [ 'name' => __( 'Super Admin', 'elementor' ), ], ] + $roles; } foreach ( $roles as $role_slug => $role_data ) { if ( in_array( $role_slug, $field['exclude'] ) ) { continue; } $field['options'][ $role_slug ] = $role_data['name']; } self::checkbox_list( $field ); } /** * Render raw HTML control. * * Generates the final HTML for raw HTML controls. * * @since 2.0.0 * @access private * @static * * @param array $field Field data. */ private static function raw_html( array $field ) { if ( empty( $field['html'] ) ) { return; } ?>

$item ) { if ( 'elementor' === $item ) { $elementor_menu_order[] = 'separator-elementor'; $elementor_menu_order[] = $item; $elementor_menu_order[] = Source_Local::ADMIN_MENU_SLUG; unset( $menu_order[ $elementor_separator ] ); unset( $menu_order[ $elementor_library ] ); } elseif ( ! in_array( $item, [ 'separator-elementor' ], true ) ) { $elementor_menu_order[] = $item; } } // Return order. return $elementor_menu_order; } /** * Register Elementor Pro sub-menu. * * Add new Elementor Pro sub-menu under the main Elementor menu. * * Fired by `admin_menu` action. * * @since 1.0.0 * @access public */ public function register_pro_menu() { add_submenu_page( self::PAGE_ID, __( 'Custom Fonts', 'elementor' ), __( 'Custom Fonts', 'elementor' ), 'manage_options', 'elementor_custom_fonts', [ $this, 'elementor_custom_fonts' ] ); add_submenu_page( self::PAGE_ID, __( 'Custom Icons', 'elementor' ), __( 'Custom Icons', 'elementor' ), 'manage_options', 'elementor_custom_icons', [ $this, 'elementor_custom_icons' ] ); add_submenu_page( self::PAGE_ID, '', ' ' . __( 'Go Pro', 'elementor' ), 'manage_options', 'go_elementor_pro', [ $this, 'handle_external_redirects' ] ); add_submenu_page( Source_Local::ADMIN_MENU_SLUG, __( 'Theme Templates', 'elementor' ), __( 'Theme Builder', 'elementor' ), 'manage_options', 'theme_templates', [ $this, 'elementor_theme_templates' ] ); add_submenu_page( Source_Local::ADMIN_MENU_SLUG, __( 'Popups', 'elementor' ), __( 'Popups', 'elementor' ), 'manage_options', 'popup_templates', [ $this, 'elementor_popups' ] ); } /** * Register Elementor knowledge base sub-menu. * * Add new Elementor knowledge base sub-menu under the main Elementor menu. * * Fired by `admin_menu` action. * * @since 2.0.3 * @access public */ public function register_knowledge_base_menu() { add_submenu_page( self::PAGE_ID, '', __( 'Getting Started', 'elementor' ), 'manage_options', 'elementor-getting-started', [ $this, 'elementor_getting_started' ] ); add_submenu_page( self::PAGE_ID, '', __( 'Get Help', 'elementor' ), 'manage_options', 'go_knowledge_base_site', [ $this, 'handle_external_redirects' ] ); } /** * Go Elementor Pro. * * Redirect the Elementor Pro page the clicking the Elementor Pro menu link. * * Fired by `admin_init` action. * * @since 2.0.3 * @access public */ public function handle_external_redirects() { if ( empty( $_GET['page'] ) ) { return; } if ( 'go_elementor_pro' === $_GET['page'] ) { wp_redirect( Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-menu&utm_campaign=gopro&utm_medium=wp-dash' ) ); die; } if ( 'go_knowledge_base_site' === $_GET['page'] ) { wp_redirect( 'https://go.elementor.com/docs-admin-menu/' ); die; } } /** * Display settings page. * * Output the content for the getting started page. * * @since 2.2.0 * @access public */ public function elementor_getting_started() { if ( User::is_current_user_can_edit_post_type( 'page' ) ) { $create_new_label = __( 'Create Your First Page', 'elementor' ); $create_new_cpt = 'page'; } elseif ( User::is_current_user_can_edit_post_type( 'post' ) ) { $create_new_label = __( 'Create Your First Post', 'elementor' ); $create_new_cpt = 'post'; } ?>

handle_external_redirects(); // Save general settings in one list for a future usage $this->handle_general_settings_update(); $this->maybe_remove_all_admin_notices(); } /** * Change "Settings" menu name. * * Update the name of the Settings admin menu from "Elementor" to "Settings". * * Fired by `admin_menu` action. * * @since 1.0.0 * @access public */ public function admin_menu_change_name() { global $submenu; if ( isset( $submenu['elementor'] ) ) { // @codingStandardsIgnoreStart $submenu['elementor'][0][0] = __( 'Settings', 'elementor' ); // @codingStandardsIgnoreEnd } } /** * Update CSS print method. * * Clear post CSS cache. * * Fired by `add_option_elementor_css_print_method` and * `update_option_elementor_css_print_method` actions. * * @since 1.7.5 * @access public */ public function update_css_print_method() { Plugin::$instance->files_manager->clear_cache(); } /** * Create tabs. * * Return the settings page tabs, sections and fields. * * @since 1.5.0 * @access protected * * @return array An array with the settings page tabs, sections and fields. */ protected function create_tabs() { $validations_class_name = __NAMESPACE__ . '\Settings_Validations'; $default_breakpoints = Responsive::get_default_breakpoints(); return [ self::TAB_GENERAL => [ 'label' => __( 'General', 'elementor' ), 'sections' => [ 'general' => [ 'fields' => [ self::UPDATE_TIME_FIELD => [ 'full_field_id' => self::UPDATE_TIME_FIELD, 'field_args' => [ 'type' => 'hidden', ], 'setting_args' => [ $validations_class_name, 'current_time' ], ], 'cpt_support' => [ 'label' => __( 'Post Types', 'elementor' ), 'field_args' => [ 'type' => 'checkbox_list_cpt', 'std' => [ 'page', 'post' ], 'exclude' => [ 'attachment', 'elementor_library' ], ], 'setting_args' => [ $validations_class_name, 'checkbox_list' ], ], 'disable_color_schemes' => [ 'label' => __( 'Disable Default Colors', 'elementor' ), 'field_args' => [ 'type' => 'checkbox', 'value' => 'yes', 'sub_desc' => __( 'Checking this box will disable Elementor\'s Default Colors, and make Elementor inherit the colors from your theme.', 'elementor' ), ], ], 'disable_typography_schemes' => [ 'label' => __( 'Disable Default Fonts', 'elementor' ), 'field_args' => [ 'type' => 'checkbox', 'value' => 'yes', 'sub_desc' => __( 'Checking this box will disable Elementor\'s Default Fonts, and make Elementor inherit the fonts from your theme.', 'elementor' ), ], ], ], ], 'usage' => [ 'label' => __( 'Improve Elementor', 'elementor' ), 'fields' => [ 'allow_tracking' => [ 'label' => __( 'Usage Data Sharing', 'elementor' ), 'field_args' => [ 'type' => 'checkbox', 'value' => 'yes', 'default' => '', 'sub_desc' => __( 'Become a super contributor by opting in to share non-sensitive plugin data and to get our updates.', 'elementor' ) . sprintf( ' %2$s', 'https://go.elementor.com/usage-data-tracking/', __( 'Learn more.', 'elementor' ) ), ], 'setting_args' => [ __NAMESPACE__ . '\Tracker', 'check_for_settings_optin' ], ], ], ], ], ], self::TAB_STYLE => [ 'label' => __( 'Style', 'elementor' ), 'sections' => [ 'style' => [ 'fields' => [ 'default_generic_fonts' => [ 'label' => __( 'Default Generic Fonts', 'elementor' ), 'field_args' => [ 'type' => 'text', 'std' => 'Sans-serif', 'class' => 'medium-text', 'desc' => __( 'The list of fonts used if the chosen font is not available.', 'elementor' ), ], ], 'container_width' => [ 'label' => __( 'Content Width', 'elementor' ), 'field_args' => [ 'type' => 'number', 'attributes' => [ 'min' => 300, 'placeholder' => '1140', 'class' => 'medium-text', ], 'sub_desc' => 'px', 'desc' => __( 'Sets the default width of the content area (Default: 1140)', 'elementor' ), ], ], 'space_between_widgets' => [ 'label' => __( 'Space Between Widgets', 'elementor' ), 'field_args' => [ 'type' => 'number', 'attributes' => [ 'placeholder' => '20', 'class' => 'medium-text', ], 'sub_desc' => 'px', 'desc' => __( 'Sets the default space between widgets (Default: 20)', 'elementor' ), ], ], 'stretched_section_container' => [ 'label' => __( 'Stretched Section Fit To', 'elementor' ), 'field_args' => [ 'type' => 'text', 'attributes' => [ 'placeholder' => 'body', 'class' => 'medium-text', ], 'desc' => __( 'Enter parent element selector to which stretched sections will fit to (e.g. #primary / .wrapper / main etc). Leave blank to fit to page width.', 'elementor' ), ], ], 'page_title_selector' => [ 'label' => __( 'Page Title Selector', 'elementor' ), 'field_args' => [ 'type' => 'text', 'attributes' => [ 'placeholder' => 'h1.entry-title', 'class' => 'medium-text', ], 'desc' => __( 'Elementor lets you hide the page title. This works for themes that have "h1.entry-title" selector. If your theme\'s selector is different, please enter it above.', 'elementor' ), ], ], 'viewport_lg' => [ 'label' => __( 'Tablet Breakpoint', 'elementor' ), 'field_args' => [ 'type' => 'number', 'attributes' => [ 'placeholder' => $default_breakpoints['lg'], 'min' => $default_breakpoints['md'] + 1, 'max' => $default_breakpoints['xl'] - 1, 'class' => 'medium-text', ], 'sub_desc' => 'px', /* translators: %d: Breakpoint value */ 'desc' => sprintf( __( 'Sets the breakpoint between desktop and tablet devices. Below this breakpoint tablet layout will appear (Default: %dpx).', 'elementor' ), $default_breakpoints['lg'] ), ], ], 'viewport_md' => [ 'label' => __( 'Mobile Breakpoint', 'elementor' ), 'field_args' => [ 'type' => 'number', 'attributes' => [ 'placeholder' => $default_breakpoints['md'], 'min' => $default_breakpoints['sm'] + 1, 'max' => $default_breakpoints['lg'] - 1, 'class' => 'medium-text', ], 'sub_desc' => 'px', /* translators: %d: Breakpoint value */ 'desc' => sprintf( __( 'Sets the breakpoint between tablet and mobile devices. Below this breakpoint mobile layout will appear (Default: %dpx).', 'elementor' ), $default_breakpoints['md'] ), ], ], 'global_image_lightbox' => [ 'label' => __( 'Image Lightbox', 'elementor' ), 'field_args' => [ 'type' => 'checkbox', 'value' => 'yes', 'std' => 'yes', 'sub_desc' => __( 'Open all image links in a lightbox popup window. The lightbox will automatically work on any link that leads to an image file.', 'elementor' ), 'desc' => __( 'You can customize the lightbox design by going to: Top-left hamburger icon > Global Settings > Lightbox.', 'elementor' ), ], ], ], ], ], ], self::TAB_INTEGRATIONS => [ 'label' => __( 'Integrations', 'elementor' ), 'sections' => [], ], self::TAB_ADVANCED => [ 'label' => __( 'Advanced', 'elementor' ), 'sections' => [ 'advanced' => [ 'fields' => [ 'css_print_method' => [ 'label' => __( 'CSS Print Method', 'elementor' ), 'field_args' => [ 'class' => 'elementor_css_print_method', 'type' => 'select', 'options' => [ 'external' => __( 'External File', 'elementor' ), 'internal' => __( 'Internal Embedding', 'elementor' ), ], 'desc' => '', ], ], 'editor_break_lines' => [ 'label' => __( 'Switch Editor Loader Method', 'elementor' ), 'field_args' => [ 'type' => 'select', 'options' => [ '' => __( 'Disable', 'elementor' ), 1 => __( 'Enable', 'elementor' ), ], 'desc' => __( 'For troubleshooting server configuration conflicts.', 'elementor' ), ], ], 'allow_svg' => [ 'label' => __( 'Enable SVG Uploads', 'elementor' ), 'field_args' => [ 'type' => 'select', 'std' => '', 'options' => [ '' => __( 'Disable', 'elementor' ), 1 => __( 'Enable', 'elementor' ), ], 'desc' => __( 'Please note! Allowing uploads of any files (SVG included) is a potential security risk.', 'elementor' ) . '
' . __( 'Elementor will try to sanitize the SVG files, removing potential malicious code and scripts.', 'elementor' ) . '
' . __( 'We recommend you only enable this feature if you understand the security risks involved.', 'elementor' ), ], ], ], ], ], ], ]; } /** * Get settings page title. * * Retrieve the title for the settings page. * * @since 1.5.0 * @access protected * * @return string Settings page title. */ protected function get_page_title() { return __( 'Elementor', 'elementor' ); } /** * Handle general settings update. * * Save general settings in one list for a future usage. * * @since 2.0.0 * @access private */ private function handle_general_settings_update() { if ( ! empty( $_POST['option_page'] ) && self::PAGE_ID === $_POST['option_page'] && ! empty( $_POST['action'] ) && 'update' === $_POST['action'] ) { check_admin_referer( 'elementor-options' ); $saved_general_settings = get_option( General_Settings_Manager::META_KEY ); if ( ! $saved_general_settings ) { $saved_general_settings = []; } $general_settings = Manager::get_settings_managers( 'general' )->get_model()->get_settings(); foreach ( $general_settings as $setting_key => $setting ) { if ( ! empty( $_POST[ $setting_key ] ) ) { $pure_setting_key = str_replace( 'elementor_', '', $setting_key ); $saved_general_settings[ $pure_setting_key ] = $_POST[ $setting_key ]; } } update_option( General_Settings_Manager::META_KEY, $saved_general_settings ); } } /** * @since 2.2.0 * @access private */ private function maybe_remove_all_admin_notices() { $elementor_pages = [ 'elementor-getting-started', 'elementor_custom_fonts', 'elementor_custom_icons', 'elementor-license', 'popup_templates', 'theme_templates', ]; if ( empty( $_GET['page'] ) || ! in_array( $_GET['page'], $elementor_pages, true ) ) { return; } remove_all_actions( 'admin_notices' ); } /** * Settings page constructor. * * Initializing Elementor "Settings" page. * * @since 1.0.0 * @access public */ public function __construct() { parent::__construct(); add_action( 'admin_init', [ $this, 'on_admin_init' ] ); add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 20 ); add_action( 'admin_menu', [ $this, 'admin_menu_change_name' ], 200 ); add_action( 'admin_menu', [ $this, 'register_pro_menu' ], self::MENU_PRIORITY_GO_PRO ); add_action( 'admin_menu', [ $this, 'register_knowledge_base_menu' ], 501 ); // Clear CSS Meta after change print method. add_action( 'add_option_elementor_css_print_method', [ $this, 'update_css_print_method' ] ); add_action( 'update_option_elementor_css_print_method', [ $this, 'update_css_print_method' ] ); add_filter( 'custom_menu_order', '__return_true' ); add_filter( 'menu_order', [ $this, 'menu_order' ] ); foreach ( Responsive::get_editable_breakpoints() as $breakpoint_key => $breakpoint ) { foreach ( [ 'add', 'update' ] as $action ) { add_action( "{$action}_option_elementor_viewport_{$breakpoint_key}", [ 'Elementor\Core\Responsive\Responsive', 'compile_stylesheet_templates' ] ); } } } } includes/settings/settings-page.php000066600000021163152142641160013506 0ustar00ensure_tabs(); return $this->tabs; } /** * Add tab. * * Register a new tab to a settings page. * * @since 1.5.0 * @access public * * @param string $tab_id Tab ID. * @param array $tab_args Optional. Tab arguments. Default is an empty array. */ final public function add_tab( $tab_id, array $tab_args = [] ) { $this->ensure_tabs(); if ( isset( $this->tabs[ $tab_id ] ) ) { // Don't override an existing tab return; } if ( ! isset( $tab_args['sections'] ) ) { $tab_args['sections'] = []; } $this->tabs[ $tab_id ] = $tab_args; } /** * Add section. * * Register a new section to a tab. * * @since 1.5.0 * @access public * * @param string $tab_id Tab ID. * @param string $section_id Section ID. * @param array $section_args Optional. Section arguments. Default is an * empty array. */ final public function add_section( $tab_id, $section_id, array $section_args = [] ) { $this->ensure_tabs(); if ( ! isset( $this->tabs[ $tab_id ] ) ) { // If the requested tab doesn't exists, use the first tab $tab_id = key( $this->tabs ); } if ( isset( $this->tabs[ $tab_id ]['sections'][ $section_id ] ) ) { // Don't override an existing section return; } if ( ! isset( $section_args['fields'] ) ) { $section_args['fields'] = []; } $this->tabs[ $tab_id ]['sections'][ $section_id ] = $section_args; } /** * Add field. * * Register a new field to a section. * * @since 1.5.0 * @access public * * @param string $tab_id Tab ID. * @param string $section_id Section ID. * @param string $field_id Field ID. * @param array $field_args Field arguments. */ final public function add_field( $tab_id, $section_id, $field_id, array $field_args ) { $this->ensure_tabs(); if ( ! isset( $this->tabs[ $tab_id ] ) ) { // If the requested tab doesn't exists, use the first tab $tab_id = key( $this->tabs ); } if ( ! isset( $this->tabs[ $tab_id ]['sections'][ $section_id ] ) ) { // If the requested section doesn't exists, use the first section $section_id = key( $this->tabs[ $tab_id ]['sections'] ); } if ( isset( $this->tabs[ $tab_id ]['sections'][ $section_id ]['fields'][ $field_id ] ) ) { // Don't override an existing field return; } $this->tabs[ $tab_id ]['sections'][ $section_id ]['fields'][ $field_id ] = $field_args; } /** * Add fields. * * Register multiple fields to a section. * * @since 1.5.0 * @access public * * @param string $tab_id Tab ID. * @param string $section_id Section ID. * @param array $fields { * An array of fields. * * @type string $field_id Field ID. * @type array $field_args Field arguments. * } */ final public function add_fields( $tab_id, $section_id, array $fields ) { foreach ( $fields as $field_id => $field_args ) { $this->add_field( $tab_id, $section_id, $field_id, $field_args ); } } /** * Register settings fields. * * In each tab register his inner sections, and in each section register his * inner fields. * * @since 1.5.0 * @access public */ final public function register_settings_fields() { $controls_class_name = __NAMESPACE__ . '\Settings_Controls'; $tabs = $this->get_tabs(); foreach ( $tabs as $tab_id => $tab ) { foreach ( $tab['sections'] as $section_id => $section ) { $full_section_id = 'elementor_' . $section_id . '_section'; $label = isset( $section['label'] ) ? $section['label'] : ''; $section_callback = isset( $section['callback'] ) ? $section['callback'] : '__return_empty_string'; add_settings_section( $full_section_id, $label, $section_callback, static::PAGE_ID ); foreach ( $section['fields'] as $field_id => $field ) { $full_field_id = ! empty( $field['full_field_id'] ) ? $field['full_field_id'] : 'elementor_' . $field_id; $field['field_args']['id'] = $full_field_id; $field_classes = [ $full_field_id ]; if ( ! empty( $field['class'] ) ) { $field_classes[] = $field['field_args']['class']; } $field['field_args']['class'] = implode( ' ', $field_classes ); add_settings_field( $full_field_id, isset( $field['label'] ) ? $field['label'] : '', [ $controls_class_name, 'render' ], static::PAGE_ID, $full_section_id, $field['field_args'] ); $setting_args = []; if ( ! empty( $field['setting_args'] ) ) { $setting_args = $field['setting_args']; } register_setting( static::PAGE_ID, $full_field_id, $setting_args ); } } } } /** * Display settings page. * * Output the content for the settings page. * * @since 1.5.0 * @access public */ public function display_settings_page() { $this->register_settings_fields(); $tabs = $this->get_tabs(); ?>

get_page_title(); ?>

$tab ) { if ( empty( $tab['sections'] ) ) { continue; } $active_class = ''; if ( 'general' === $tab_id ) { $active_class = ' elementor-active'; } echo "
"; foreach ( $tab['sections'] as $section_id => $section ) { $full_section_id = 'elementor_' . $section_id . '_section'; if ( ! empty( $section['label'] ) ) { echo "

{$section['label']}

"; } if ( ! empty( $section['callback'] ) ) { $section['callback'](); } echo ''; do_settings_fields( static::PAGE_ID, $full_section_id ); echo '
'; } echo '
'; } submit_button(); ?>
tabs ) { $this->tabs = $this->create_tabs(); $page_id = static::PAGE_ID; /** * After create settings. * * Fires after the settings are created in Elementor admin page. * * The dynamic portion of the hook name, `$page_id`, refers to the current page ID. * * @since 1.0.0 * * @param Settings_Page $this The settings page. */ do_action( "elementor/admin/after_create_settings/{$page_id}", $this ); } } } includes/settings/tools.php000066600000024355152142641160012102 0ustar00files_manager->clear_cache(); wp_send_json_success(); } /** * Replace URLs. * * Sends an ajax request to replace old URLs to new URLs. This method also * updates all the Elementor data. * * Fired by `wp_ajax_elementor_replace_url` action. * * @since 1.1.0 * @access public */ public function ajax_elementor_replace_url() { check_ajax_referer( 'elementor_replace_url', '_nonce' ); $from = ! empty( $_POST['from'] ) ? $_POST['from'] : ''; $to = ! empty( $_POST['to'] ) ? $_POST['to'] : ''; try { $results = Utils::replace_urls( $from, $to ); wp_send_json_success( $results ); } catch ( \Exception $e ) { wp_send_json_error( $e->getMessage() ); } } /** * Elementor version rollback. * * Rollback to previous Elementor version. * * Fired by `admin_post_elementor_rollback` action. * * @since 1.5.0 * @access public */ public function post_elementor_rollback() { check_admin_referer( 'elementor_rollback' ); $rollback_versions = $this->get_rollback_versions(); if ( empty( $_GET['version'] ) || ! in_array( $_GET['version'], $rollback_versions ) ) { wp_die( __( 'Error occurred, The version selected is invalid. Try selecting different version.', 'elementor' ) ); } $plugin_slug = basename( ELEMENTOR__FILE__, '.php' ); $rollback = new Rollback( [ 'version' => $_GET['version'], 'plugin_name' => ELEMENTOR_PLUGIN_BASE, 'plugin_slug' => $plugin_slug, 'package_url' => sprintf( 'https://downloads.wordpress.org/plugin/%s.%s.zip', $plugin_slug, $_GET['version'] ), ] ); $rollback->run(); wp_die( '', __( 'Rollback to Previous Version', 'elementor' ), [ 'response' => 200, ] ); } /** * Tools page constructor. * * Initializing Elementor "Tools" page. * * @since 1.0.0 * @access public */ public function __construct() { parent::__construct(); add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 205 ); if ( ! empty( $_POST ) ) { add_action( 'wp_ajax_elementor_clear_cache', [ $this, 'ajax_elementor_clear_cache' ] ); add_action( 'wp_ajax_elementor_replace_url', [ $this, 'ajax_elementor_replace_url' ] ); } add_action( 'admin_post_elementor_rollback', [ $this, 'post_elementor_rollback' ] ); } private function get_rollback_versions() { $rollback_versions = get_transient( 'elementor_rollback_versions_' . ELEMENTOR_VERSION ); if ( false === $rollback_versions ) { $max_versions = 30; require_once ABSPATH . 'wp-admin/includes/plugin-install.php'; $plugin_information = plugins_api( 'plugin_information', [ 'slug' => 'elementor', ] ); if ( empty( $plugin_information->versions ) || ! is_array( $plugin_information->versions ) ) { return []; } krsort( $plugin_information->versions ); $rollback_versions = []; $current_index = 0; foreach ( $plugin_information->versions as $version => $download_link ) { if ( $max_versions <= $current_index ) { break; } if ( preg_match( '/(trunk|beta|rc)/i', strtolower( $version ) ) ) { continue; } if ( version_compare( $version, ELEMENTOR_VERSION, '>=' ) ) { continue; } $current_index++; $rollback_versions[] = $version; } set_transient( 'elementor_rollback_versions_' . ELEMENTOR_VERSION, $rollback_versions, WEEK_IN_SECONDS ); } return $rollback_versions; } /** * Create tabs. * * Return the tools page tabs, sections and fields. * * @since 1.5.0 * @access protected * * @return array An array with the page tabs, sections and fields. */ protected function create_tabs() { $rollback_html = ''; return [ 'general' => [ 'label' => __( 'General', 'elementor' ), 'sections' => [ 'tools' => [ 'fields' => [ 'clear_cache' => [ 'label' => __( 'Regenerate CSS', 'elementor' ), 'field_args' => [ 'type' => 'raw_html', 'html' => sprintf( '', wp_create_nonce( 'elementor_clear_cache' ), __( 'Regenerate Files', 'elementor' ) ), 'desc' => __( 'Styles set in Elementor are saved in CSS files in the uploads folder. Recreate those files, according to the most recent settings.', 'elementor' ), ], ], 'reset_api_data' => [ 'label' => __( 'Sync Library', 'elementor' ), 'field_args' => [ 'type' => 'raw_html', 'html' => sprintf( '', wp_create_nonce( 'elementor_reset_library' ), __( 'Sync Library', 'elementor' ) ), 'desc' => __( 'Elementor Library automatically updates on a daily basis. You can also manually update it by clicking on the sync button.', 'elementor' ), ], ], ], ], ], ], 'replace_url' => [ 'label' => __( 'Replace URL', 'elementor' ), 'sections' => [ 'replace_url' => [ 'callback' => function() { $intro_text = sprintf( /* translators: %s: Codex URL */ __( 'Important: It is strongly recommended that you backup your database before using Replace URL.', 'elementor' ), 'https://codex.wordpress.org/WordPress_Backups' ); $intro_text = '
' . $intro_text . '
'; echo '

' . esc_html__( 'Replace URL', 'elementor' ) . '

'; echo $intro_text; }, 'fields' => [ 'replace_url' => [ 'label' => __( 'Update Site Address (URL)', 'elementor' ), 'field_args' => [ 'type' => 'raw_html', 'html' => sprintf( '', wp_create_nonce( 'elementor_replace_url' ), __( 'Replace URL', 'elementor' ) ), 'desc' => __( 'Enter your old and new URLs for your WordPress installation, to update all Elementor data (Relevant for domain transfers or move to \'HTTPS\').', 'elementor' ), ], ], ], ], ], ], 'versions' => [ 'label' => __( 'Version Control', 'elementor' ), 'sections' => [ 'rollback' => [ 'label' => __( 'Rollback to Previous Version', 'elementor' ), 'callback' => function() { $intro_text = sprintf( /* translators: %s: Elementor version */ __( 'Experiencing an issue with Elementor version %s? Rollback to a previous version before the issue appeared.', 'elementor' ), ELEMENTOR_VERSION ); $intro_text = '

' . $intro_text . '

'; echo $intro_text; }, 'fields' => [ 'rollback' => [ 'label' => __( 'Rollback Version', 'elementor' ), 'field_args' => [ 'type' => 'raw_html', 'html' => sprintf( $rollback_html . '%s', wp_nonce_url( admin_url( 'admin-post.php?action=elementor_rollback&version=VERSION' ), 'elementor_rollback' ), __( 'Reinstall', 'elementor' ) ), 'desc' => '' . __( 'Warning: Please backup your database before making the rollback.', 'elementor' ) . '', ], ], ], ], 'beta' => [ 'label' => __( 'Become a Beta Tester', 'elementor' ), 'callback' => function() { $intro_text = __( 'Turn-on Beta Tester, to get notified when a new beta version of Elementor or Elementor Pro is available. The Beta version will not install automatically. You always have the option to ignore it.', 'elementor' ); $intro_text = '

' . $intro_text . '

'; $newsletter_opt_in_text = sprintf( __( 'Click here to join our first-to-know email updates.', 'elementor' ), '#' ); echo $intro_text; echo $newsletter_opt_in_text; }, 'fields' => [ 'beta' => [ 'label' => __( 'Beta Tester', 'elementor' ), 'field_args' => [ 'type' => 'select', 'default' => 'no', 'options' => [ 'no' => __( 'Disable', 'elementor' ), 'yes' => __( 'Enable', 'elementor' ), ], 'desc' => '' . __( 'Please Note: We do not recommend updating to a beta version on production sites.', 'elementor' ) . '', ], ], ], ], ], ], ]; } /** * Get tools page title. * * Retrieve the title for the tools page. * * @since 1.5.0 * @access protected * * @return string Tools page title. */ protected function get_page_title() { return __( 'Tools', 'elementor' ); } } includes/plugin.php000066600000030326152142641160010373 0ustar00common->get_component( 'ajax' )` instead * @access public * * @var Ajax */ public $ajax; /** * Controls manager. * * Holds the plugin controls manager. * * @since 1.0.0 * @access public * * @var Controls_Manager */ public $controls_manager; /** * Documents manager. * * Holds the documents manager. * * @since 2.0.0 * @access public * * @var Documents_Manager */ public $documents; /** * Schemes manager. * * Holds the plugin schemes manager. * * @since 1.0.0 * @access public * * @var Schemes_Manager */ public $schemes_manager; /** * Elements manager. * * Holds the plugin elements manager. * * @since 1.0.0 * @access public * * @var Elements_Manager */ public $elements_manager; /** * Widgets manager. * * Holds the plugin widgets manager. * * @since 1.0.0 * @access public * * @var Widgets_Manager */ public $widgets_manager; /** * Revisions manager. * * Holds the plugin revisions manager. * * @since 1.0.0 * @access public * * @var Revisions_Manager */ public $revisions_manager; /** * Images manager. * * Holds the plugin images manager. * * @since 2.9.0 * @access public * * @var Images_Manager */ public $images_manager; /** * Maintenance mode. * * Holds the plugin maintenance mode. * * @since 1.0.0 * @access public * * @var Maintenance_Mode */ public $maintenance_mode; /** * Page settings manager. * * Holds the page settings manager. * * @since 1.0.0 * @access public * * @var Page_Settings_Manager */ public $page_settings_manager; /** * Dynamic tags manager. * * Holds the dynamic tags manager. * * @since 1.0.0 * @access public * * @var Dynamic_Tags_Manager */ public $dynamic_tags; /** * Settings. * * Holds the plugin settings. * * @since 1.0.0 * @access public * * @var Settings */ public $settings; /** * Role Manager. * * Holds the plugin Role Manager * * @since 2.0.0 * @access public * * @var \Elementor\Core\RoleManager\Role_Manager */ public $role_manager; /** * Admin. * * Holds the plugin admin. * * @since 1.0.0 * @access public * * @var Admin */ public $admin; /** * Tools. * * Holds the plugin tools. * * @since 1.0.0 * @access public * * @var Tools */ public $tools; /** * Preview. * * Holds the plugin preview. * * @since 1.0.0 * @access public * * @var Preview */ public $preview; /** * Editor. * * Holds the plugin editor. * * @since 1.0.0 * @access public * * @var Editor */ public $editor; /** * Frontend. * * Holds the plugin frontend. * * @since 1.0.0 * @access public * * @var Frontend */ public $frontend; /** * Heartbeat. * * Holds the plugin heartbeat. * * @since 1.0.0 * @access public * * @var Heartbeat */ public $heartbeat; /** * System info. * * Holds the system info data. * * @since 1.0.0 * @access public * * @var System_Info\Main */ public $system_info; /** * Template library manager. * * Holds the template library manager. * * @since 1.0.0 * @access public * * @var TemplateLibrary\Manager */ public $templates_manager; /** * Skins manager. * * Holds the skins manager. * * @since 1.0.0 * @access public * * @var Skins_Manager */ public $skins_manager; /** * Files Manager. * * Holds the files manager. * * @since 2.1.0 * @access public * * @var Files_Manager */ public $files_manager; /** * Assets Manager. * * Holds the Assets manager. * * @since 2.6.0 * @access public * * @var Assets_Manager */ public $assets_manager; /** * Files Manager. * * Holds the files manager. * * @since 1.0.0 * @access public * @deprecated 2.1.0 Use `Plugin::$files_manager` instead * * @var Files_Manager */ public $posts_css_manager; /** * WordPress widgets manager. * * Holds the WordPress widgets manager. * * @since 1.0.0 * @access public * * @var WordPress_Widgets_Manager */ public $wordpress_widgets_manager; /** * Modules manager. * * Holds the modules manager. * * @since 1.0.0 * @access public * * @var Modules_Manager */ public $modules_manager; /** * Beta testers. * * Holds the plugin beta testers. * * @since 1.0.0 * @access public * * @var Beta_Testers */ public $beta_testers; /** * @var Inspector * @deprecated 2.1.2 Use $inspector. */ public $debugger; /** * @var Inspector */ public $inspector; /** * @var CommonApp */ public $common; /** * @var Log_Manager */ public $logger; /** * @var Core\Upgrade\Manager */ public $upgrade; /** * @var Core\Kits\Manager */ public $kits_manager; /** * Clone. * * Disable class cloning and throw an error on object clone. * * The whole idea of the singleton design pattern is that there is a single * object. Therefore, we don't want the object to be cloned. * * @access public * @since 1.0.0 */ public function __clone() { // Cloning instances of the class is forbidden. _doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' ); } /** * Wakeup. * * Disable unserializing of the class. * * @access public * @since 1.0.0 */ public function __wakeup() { // Unserializing instances of the class is forbidden. _doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' ); } /** * Instance. * * Ensures only one instance of the plugin class is loaded or can be loaded. * * @since 1.0.0 * @access public * @static * * @return Plugin An instance of the class. */ public static function instance() { if ( is_null( self::$instance ) ) { self::$instance = new self(); /** * Elementor loaded. * * Fires when Elementor was fully loaded and instantiated. * * @since 1.0.0 */ do_action( 'elementor/loaded' ); } return self::$instance; } /** * Init. * * Initialize Elementor Plugin. Register Elementor support for all the * supported post types and initialize Elementor components. * * @since 1.0.0 * @access public */ public function init() { $this->add_cpt_support(); $this->init_components(); /** * Elementor init. * * Fires on Elementor init, after Elementor has finished loading but * before any headers are sent. * * @since 1.0.0 */ do_action( 'elementor/init' ); } /** * Get install time. * * Retrieve the time when Elementor was installed. * * @since 2.6.0 * @access public * @static * * @return int Unix timestamp when Elementor was installed. */ public function get_install_time() { $installed_time = get_option( '_elementor_installed_time' ); if ( ! $installed_time ) { $installed_time = time(); update_option( '_elementor_installed_time', $installed_time ); } return $installed_time; } /** * @since 2.3.0 * @access public */ public function on_rest_api_init() { // On admin/frontend sometimes the rest API is initialized after the common is initialized. if ( ! $this->common ) { $this->init_common(); } } /** * Init components. * * Initialize Elementor components. Register actions, run setting manager, * initialize all the components that run elementor, and if in admin page * initialize admin components. * * @since 1.0.0 * @access private */ private function init_components() { $this->inspector = new Inspector(); $this->debugger = $this->inspector; Settings_Manager::run(); $this->db = new DB(); $this->controls_manager = new Controls_Manager(); $this->documents = new Documents_Manager(); $this->kits_manager = new Kits_Manager(); $this->schemes_manager = new Schemes_Manager(); $this->elements_manager = new Elements_Manager(); $this->widgets_manager = new Widgets_Manager(); $this->skins_manager = new Skins_Manager(); $this->files_manager = new Files_Manager(); $this->assets_manager = new Assets_Manager(); $this->icons_manager = new Icons_Manager(); /* * @TODO: Remove deprecated alias */ $this->posts_css_manager = $this->files_manager; $this->settings = new Settings(); $this->tools = new Tools(); $this->editor = new Editor(); $this->preview = new Preview(); $this->frontend = new Frontend(); $this->templates_manager = new TemplateLibrary\Manager(); $this->maintenance_mode = new Maintenance_Mode(); $this->dynamic_tags = new Dynamic_Tags_Manager(); $this->modules_manager = new Modules_Manager(); $this->role_manager = new Core\RoleManager\Role_Manager(); $this->system_info = new System_Info_Module(); $this->revisions_manager = new Revisions_Manager(); $this->images_manager = new Images_Manager(); User::init(); Api::init(); Tracker::init(); $this->upgrade = new Core\Upgrade\Manager(); if ( is_admin() ) { $this->heartbeat = new Heartbeat(); $this->wordpress_widgets_manager = new WordPress_Widgets_Manager(); $this->admin = new Admin(); $this->beta_testers = new Beta_Testers(); } } /** * @since 2.3.0 * @access public */ public function init_common() { $this->common = new CommonApp(); $this->common->init_components(); $this->ajax = $this->common->get_component( 'ajax' ); } /** * Add custom post type support. * * Register Elementor support for all the supported post types defined by * the user in the admin screen and saved as `elementor_cpt_support` option * in WordPress `$wpdb->options` table. * * If no custom post type selected, usually in new installs, this method * will return the two default post types: `page` and `post`. * * @since 1.0.0 * @access private */ private function add_cpt_support() { $cpt_support = get_option( 'elementor_cpt_support', [ 'page', 'post' ] ); foreach ( $cpt_support as $cpt_slug ) { add_post_type_support( $cpt_slug, 'elementor' ); } } /** * Register autoloader. * * Elementor autoloader loads all the classes needed to run the plugin. * * @since 1.6.0 * @access private */ private function register_autoloader() { require ELEMENTOR_PATH . '/includes/autoloader.php'; Autoloader::run(); } /** * Plugin constructor. * * Initializing Elementor plugin. * * @since 1.0.0 * @access private */ private function __construct() { $this->register_autoloader(); $this->logger = Log_Manager::instance(); Maintenance::init(); Compatibility::register_actions(); add_action( 'init', [ $this, 'init' ], 0 ); add_action( 'rest_api_init', [ $this, 'on_rest_api_init' ] ); } final public static function get_title() { return __( 'Elementor', 'elementor' ); } } if ( ! defined( 'ELEMENTOR_TESTS' ) ) { // In tests we run the instance manually. Plugin::instance(); } includes/api.php000066600000014525152142641160007651 0ustar00 $timeout, 'body' => [ // Which API version is used. 'api_version' => ELEMENTOR_VERSION, // Which language to return. 'site_lang' => get_bloginfo( 'language' ), ], ] ); if ( is_wp_error( $response ) || 200 !== (int) wp_remote_retrieve_response_code( $response ) ) { set_transient( $cache_key, [], 2 * HOUR_IN_SECONDS ); return false; } $info_data = json_decode( wp_remote_retrieve_body( $response ), true ); if ( empty( $info_data ) || ! is_array( $info_data ) ) { set_transient( $cache_key, [], 2 * HOUR_IN_SECONDS ); return false; } if ( isset( $info_data['library'] ) ) { update_option( self::LIBRARY_OPTION_KEY, $info_data['library'], 'no' ); unset( $info_data['library'] ); } if ( isset( $info_data['feed'] ) ) { update_option( self::FEED_OPTION_KEY, $info_data['feed'], 'no' ); unset( $info_data['feed'] ); } set_transient( $cache_key, $info_data, 12 * HOUR_IN_SECONDS ); } return $info_data; } /** * Get upgrade notice. * * Retrieve the upgrade notice if one exists, or false otherwise. * * @since 1.0.0 * @access public * @static * * @return array|false Upgrade notice, or false none exist. */ public static function get_upgrade_notice() { $data = self::get_info_data(); if ( empty( $data['upgrade_notice'] ) ) { return false; } return $data['upgrade_notice']; } public static function get_admin_notice() { $data = self::get_info_data(); if ( empty( $data['admin_notice'] ) ) { return false; } return $data['admin_notice']; } public static function get_canary_deployment_info( $force = false ) { $data = self::get_info_data( $force ); if ( empty( $data['canary_deployment'] ) ) { return false; } return $data['canary_deployment']; } public static function get_promotion_widgets() { $data = self::get_info_data(); return $data['pro_widgets']; } /** * Get templates data. * * Retrieve the templates data from a remote server. * * @since 2.0.0 * @access public * @static * * @param bool $force_update Optional. Whether to force the data update or * not. Default is false. * * @return array The templates data. */ public static function get_library_data( $force_update = false ) { self::get_info_data( $force_update ); $library_data = get_option( self::LIBRARY_OPTION_KEY ); if ( empty( $library_data ) ) { return []; } return $library_data; } /** * Get feed data. * * Retrieve the feed info data from remote elementor server. * * @since 1.9.0 * @access public * @static * * @param bool $force_update Optional. Whether to force the data update or * not. Default is false. * * @return array Feed data. */ public static function get_feed_data( $force_update = false ) { self::get_info_data( $force_update ); $feed = get_option( self::FEED_OPTION_KEY ); if ( empty( $feed ) ) { return []; } return $feed; } /** * Get template content. * * Retrieve the templates content received from a remote server. * * @since 1.0.0 * @access public * @static * * @param int $template_id The template ID. * * @return object|\WP_Error The template content. */ public static function get_template_content( $template_id ) { /** @var Library $library */ $library = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' ); return $library->get_template_content( $template_id ); } /** * Send Feedback. * * Fires a request to Elementor server with the feedback data. * * @since 1.0.0 * @access public * @static * * @param string $feedback_key Feedback key. * @param string $feedback_text Feedback text. * * @return array The response of the request. */ public static function send_feedback( $feedback_key, $feedback_text ) { return wp_remote_post( self::$api_feedback_url, [ 'timeout' => 30, 'body' => [ 'api_version' => ELEMENTOR_VERSION, 'site_lang' => get_bloginfo( 'language' ), 'feedback_key' => $feedback_key, 'feedback' => $feedback_text, ], ] ); } /** * Ajax reset API data. * * Reset Elementor library API data using an ajax call. * * @since 1.0.0 * @access public * @static */ public static function ajax_reset_api_data() { check_ajax_referer( 'elementor_reset_library', '_nonce' ); self::get_info_data( true ); wp_send_json_success(); } /** * Init. * * Initialize Elementor API. * * @since 1.0.0 * @access public * @static */ public static function init() { add_action( 'wp_ajax_elementor_reset_library', [ __CLASS__, 'ajax_reset_api_data' ] ); } } includes/conditions.php000066600000005320152142641160011242 0ustar00': return $left_value > $right_value; case '>=': return $left_value >= $right_value; default: return $left_value === $right_value; } } /** * Check conditions. * * Whether the comparison conditions comply. * * @since 1.0.0 * @access public * @static * * @param array $conditions The conditions to check. * @param array $comparison The comparison parameter. * * @return bool Whether the comparison conditions comply. */ public static function check( array $conditions, array $comparison ) { $is_or_condition = isset( $conditions['relation'] ) && 'or' === $conditions['relation']; $condition_succeed = ! $is_or_condition; foreach ( $conditions['terms'] as $term ) { if ( ! empty( $term['terms'] ) ) { $comparison_result = self::check( $term, $comparison ); } else { preg_match( '/(\w+)(?:\[(\w+)])?/', $term['name'], $parsed_name ); $value = $comparison[ $parsed_name[1] ]; if ( ! empty( $parsed_name[2] ) ) { $value = $value[ $parsed_name[2] ]; } $operator = null; if ( ! empty( $term['operator'] ) ) { $operator = $term['operator']; } $comparison_result = self::compare( $value, $term['value'], $operator ); } if ( $is_or_condition ) { if ( $comparison_result ) { return true; } } elseif ( ! $comparison_result ) { return false; } } return $condition_succeed; } } includes/stylesheet.php000066600000023056152142641160011270 0ustar00 $properties ) { $selector_content = self::parse_properties( $properties ); if ( $selector_content ) { $parsed_rules .= $selector . '{' . $selector_content . '}'; } } return $parsed_rules; } /** * Parse CSS properties. * * Goes over the selector properties and generates the CSS of the selector. * * @since 1.0.0 * @access public * @static * * @param array $properties CSS properties. * * @return string Parsed properties. */ public static function parse_properties( array $properties ) { $parsed_properties = ''; foreach ( $properties as $property_key => $property_value ) { if ( '' !== $property_value ) { $parsed_properties .= $property_key . ':' . $property_value . ';'; } } return $parsed_properties; } /** * Add device. * * Add a new device to the devices list. * * @since 1.0.0 * @access public * * @param string $device_name Device name. * @param string $device_max_point Device maximum point. * * @return Stylesheet The current stylesheet class instance. */ public function add_device( $device_name, $device_max_point ) { $this->devices[ $device_name ] = $device_max_point; asort( $this->devices ); return $this; } /** * Add rules. * * Add a new CSS rule to the rules list. * * @since 1.0.0 * @access public * * @param string $selector CSS selector. * @param array|string $style_rules Optional. Style rules. Default is `null`. * @param array $query Optional. Media query. Default is `null`. * * @return Stylesheet The current stylesheet class instance. */ public function add_rules( $selector, $style_rules = null, array $query = null ) { $query_hash = 'all'; if ( $query ) { $query_hash = $this->query_to_hash( $query ); } if ( ! isset( $this->rules[ $query_hash ] ) ) { $this->add_query_hash( $query_hash ); } if ( null === $style_rules ) { preg_match_all( '/([^\s].+?(?=\{))\{((?s:.)+?(?=}))}/', $selector, $parsed_rules ); foreach ( $parsed_rules[1] as $index => $selector ) { $this->add_rules( $selector, $parsed_rules[2][ $index ], $query ); } return $this; } if ( ! isset( $this->rules[ $query_hash ][ $selector ] ) ) { $this->rules[ $query_hash ][ $selector ] = []; } if ( is_string( $style_rules ) ) { $style_rules = array_filter( explode( ';', trim( $style_rules ) ) ); $ordered_rules = []; foreach ( $style_rules as $rule ) { $property = explode( ':', $rule, 2 ); if ( count( $property ) < 2 ) { return $this; } $ordered_rules[ trim( $property[0] ) ] = trim( $property[1], ' ;' ); } $style_rules = $ordered_rules; } $this->rules[ $query_hash ][ $selector ] = array_merge( $this->rules[ $query_hash ][ $selector ], $style_rules ); return $this; } /** * Add raw CSS. * * Add a raw CSS rule. * * @since 1.0.8 * @access public * * @param string $css The raw CSS. * @param string $device Optional. The device. Default is empty. * * @return Stylesheet The current stylesheet class instance. */ public function add_raw_css( $css, $device = '' ) { if ( ! isset( $this->raw[ $device ] ) ) { $this->raw[ $device ] = []; } $this->raw[ $device ][] = trim( $css ); return $this; } /** * Get CSS rules. * * Retrieve the CSS rules. * * @since 1.0.5 * @access public * * @param string $device Optional. The device. Default is empty. * @param string $selector Optional. CSS selector. Default is empty. * @param string $property Optional. CSS property. Default is empty. * * @return null|array CSS rules, or `null` if not rules found. */ public function get_rules( $device = null, $selector = null, $property = null ) { if ( ! $device ) { return $this->rules; } if ( $property ) { return isset( $this->rules[ $device ][ $selector ][ $property ] ) ? $this->rules[ $device ][ $selector ][ $property ] : null; } if ( $selector ) { return isset( $this->rules[ $device ][ $selector ] ) ? $this->rules[ $device ][ $selector ] : null; } return isset( $this->rules[ $device ] ) ? $this->rules[ $device ] : null; } /** * To string. * * This magic method responsible for parsing the rules into one CSS string. * * @since 1.0.0 * @access public * * @return string CSS style. */ public function __toString() { $style_text = ''; foreach ( $this->rules as $query_hash => $rule ) { $device_text = self::parse_rules( $rule ); if ( 'all' !== $query_hash ) { $device_text = $this->get_query_hash_style_format( $query_hash ) . '{' . $device_text . '}'; } $style_text .= $device_text; } foreach ( $this->raw as $device_name => $raw ) { $raw = implode( "\n", $raw ); if ( $raw && isset( $this->devices[ $device_name ] ) ) { $raw = '@media(max-width: ' . $this->devices[ $device_name ] . 'px){' . $raw . '}'; } $style_text .= $raw; } return $style_text; } /** * Get device maximum value. * * Retrieve the maximum size of any given device. * * @since 1.2.0 * @access private * * @throws \RangeException If max value for this device is out of range. * * @param string $device_name Device name. * * @return int */ private function get_device_max_value( $device_name ) { $devices_names = array_keys( $this->devices ); $device_name_index = array_search( $device_name, $devices_names ); $next_index = $device_name_index + 1; if ( $next_index >= count( $devices_names ) ) { throw new \RangeException( 'Max value for this device is out of range.' ); } return $this->devices[ $devices_names[ $next_index ] ] - 1; } /** * Query to hash. * * Turns the media query into a hashed string that represents the query * endpoint in the rules list. * * @since 1.2.0 * @access private * * @param array $query CSS media query. * * @return string Hashed string of the query. */ private function query_to_hash( array $query ) { $hash = []; foreach ( $query as $endpoint => $value ) { $hash[] = $endpoint . '_' . $value; } return implode( '-', $hash ); } /** * Hash to query. * * Turns the hashed string to an array that contains the data of the query * endpoint. * * @since 1.2.0 * @access private * * @param string $hash Hashed string of the query. * * @return array Media query data. */ private function hash_to_query( $hash ) { $query = []; $hash = array_filter( explode( '-', $hash ) ); foreach ( $hash as $single_query ) { $query_parts = explode( '_', $single_query ); $end_point = $query_parts[0]; $device_name = $query_parts[1]; $query[ $end_point ] = 'max' === $end_point ? $this->get_device_max_value( $device_name ) : $this->devices[ $device_name ]; } return $query; } /** * Add query hash. * * Register new endpoint query and sort the rules the way they should be * displayed in the final stylesheet based on the device and the viewport * width. * * @since 1.2.0 * @access private * * @param string $query_hash Hashed string of the query. */ private function add_query_hash( $query_hash ) { $this->rules[ $query_hash ] = []; uksort( $this->rules, function( $a, $b ) { if ( 'all' === $a ) { return -1; } if ( 'all' === $b ) { return 1; } $a_query = $this->hash_to_query( $a ); $b_query = $this->hash_to_query( $b ); if ( isset( $a_query['min'] ) xor isset( $b_query['min'] ) ) { return 1; } if ( isset( $a_query['min'] ) ) { $range = $a_query['min'] - $b_query['min']; if ( $range ) { return $range; } $a_has_max = isset( $a_query['max'] ); if ( $a_has_max xor isset( $b_query['max'] ) ) { return $a_has_max ? 1 : -1; } if ( ! $a_has_max ) { return 0; } } return $b_query['max'] - $a_query['max']; } ); } /** * Get query hash style format. * * Retrieve formated media query rule with the endpoint width settings. * * The method returns the CSS `@media` rule and supported viewport width in * pixels. It can also handel multiple width endpoints. * * @since 1.2.0 * @access private * * @param string $query_hash The hash of the query. * * @return string CSS media query. */ private function get_query_hash_style_format( $query_hash ) { $query = $this->hash_to_query( $query_hash ); $style_format = []; foreach ( $query as $end_point => $value ) { $style_format[] = '(' . $end_point . '-width:' . $value . 'px)'; } return '@media' . implode( ' and ', $style_format ); } } includes/tracker.php000066600000021026152142641160010525 0ustar00 $last_send_interval ) { return; } } else { // Make sure there is at least a 1 hour delay between override sends, we dont want duplicate calls due to double clicking links. if ( $last_send && $last_send > strtotime( '-1 hours' ) ) { return; } } // Update time first before sending to ensure it is set. update_option( 'elementor_tracker_last_send', time() ); $params = self::get_tracking_data( empty( $last_send ) ); add_filter( 'https_ssl_verify', '__return_false' ); wp_safe_remote_post( self::$_api_url, [ 'timeout' => 25, 'blocking' => false, // 'sslverify' => false, 'body' => [ 'data' => wp_json_encode( $params ), ], ] ); } /** * Is allow track. * * Checks whether the site admin has opted-in for data tracking, or not. * * @since 1.0.0 * @access public * @static */ public static function is_allow_track() { return 'yes' === get_option( 'elementor_allow_tracking', 'no' ); } /** * Handle tracker actions. * * Check if the user opted-in or opted-out and update the database. * * Fired by `admin_init` action. * * @since 1.0.0 * @access public * @static */ public static function handle_tracker_actions() { if ( ! isset( $_GET['elementor_tracker'] ) ) { return; } if ( 'opt_into' === $_GET['elementor_tracker'] ) { check_admin_referer( 'opt_into' ); self::set_opt_in( true ); } if ( 'opt_out' === $_GET['elementor_tracker'] ) { check_admin_referer( 'opt_out' ); self::set_opt_in( false ); } wp_redirect( remove_query_arg( 'elementor_tracker' ) ); exit; } /** * @since 2.2.0 * @access public * @static */ public static function is_notice_shown() { return self::$notice_shown; } public static function set_opt_in( $value ) { if ( $value ) { update_option( 'elementor_allow_tracking', 'yes' ); self::send_tracking_data( true ); } else { update_option( 'elementor_allow_tracking', 'no' ); update_option( 'elementor_tracker_notice', '1' ); } } /** * Get system reports data. * * Retrieve the data from system reports. * * @since 2.0.0 * @access private * @static * * @return array The data from system reports. */ private static function get_system_reports_data() { $reports = Plugin::$instance->system_info->load_reports( System_Info\Main::get_allowed_reports() ); $system_reports = []; foreach ( $reports as $report_key => $report_details ) { $system_reports[ $report_key ] = []; foreach ( $report_details['report'] as $sub_report_key => $sub_report_details ) { $system_reports[ $report_key ][ $sub_report_key ] = $sub_report_details['value']; } } return $system_reports; } /** * Get last send time. * * Retrieve the last time tracking data was sent. * * @since 2.0.0 * @access private * @static * * @return int|false The last time tracking data was sent, or false if * tracking data never sent. */ private static function get_last_send_time() { $last_send_time = get_option( 'elementor_tracker_last_send', false ); /** * Tracker last send time. * * Filters the last time tracking data was sent. * * @since 1.0.0 * * @param int|false $last_send_time The last time tracking data was sent, * or false if tracking data never sent. */ $last_send_time = apply_filters( 'elementor/tracker/last_send_time', $last_send_time ); return $last_send_time; } /** * Get posts usage. * * Retrieve the number of posts using Elementor. * * @since 2.0.0 * @access public * @static * * @return array The number of posts using Elementor grouped by post types * and post status. */ public static function get_posts_usage() { global $wpdb; $usage = []; $results = $wpdb->get_results( "SELECT `post_type`, `post_status`, COUNT(`ID`) `hits` FROM {$wpdb->posts} `p` LEFT JOIN {$wpdb->postmeta} `pm` ON(`p`.`ID` = `pm`.`post_id`) WHERE `post_type` != 'elementor_library' AND `meta_key` = '_elementor_edit_mode' AND `meta_value` = 'builder' GROUP BY `post_type`, `post_status`;" ); if ( $results ) { foreach ( $results as $result ) { $usage[ $result->post_type ][ $result->post_status ] = $result->hits; } } return $usage; } /** * Get library usage. * * Retrieve the number of Elementor library items saved. * * @since 2.0.0 * @access public * @static * * @return array The number of Elementor library items grouped by post types * and meta value. */ public static function get_library_usage() { global $wpdb; $usage = []; $results = $wpdb->get_results( "SELECT `meta_value`, COUNT(`ID`) `hits` FROM {$wpdb->posts} `p` LEFT JOIN {$wpdb->postmeta} `pm` ON(`p`.`ID` = `pm`.`post_id`) WHERE `post_type` = 'elementor_library' AND `meta_key` = '_elementor_template_type' GROUP BY `post_type`, `meta_value`;" ); if ( $results ) { foreach ( $results as $result ) { $usage[ $result->meta_value ] = $result->hits; } } return $usage; } /** * Get the tracking data * * Retrieve tracking data and apply filter * * @access private * @static * * @param bool $is_first_time * * @return array */ private static function get_tracking_data( $is_first_time = false ) { $params = [ 'system' => self::get_system_reports_data(), 'site_lang' => get_bloginfo( 'language' ), 'email' => get_option( 'admin_email' ), 'usages' => [ 'posts' => self::get_posts_usage(), 'library' => self::get_library_usage(), ], 'is_first_time' => $is_first_time, ]; /** * Tracker send tracking data params. * * Filters the data parameters when sending tracking request. * * @param array $params Variable to encode as JSON. * * @since 1.0.0 * */ $params = apply_filters( 'elementor/tracker/send_tracking_data_params', $params ); return $params; } } includes/preview.php000066600000016216152142641160010560 0ustar00is_preview_mode() ) { return; } if ( isset( $_GET['preview-debug'] ) ) { register_shutdown_function( function () { $e = error_get_last(); if ( $e ) { echo '
';
					echo $e['message'];
					echo '
'; } } ); } $this->post_id = get_the_ID(); $this->is_preview = true; // Don't redirect to permalink. remove_action( 'template_redirect', 'redirect_canonical' ); // Compatibility with Yoast SEO plugin when 'Removes unneeded query variables from the URL' enabled. // TODO: Move this code to `includes/compatibility.php`. if ( class_exists( 'WPSEO_Frontend' ) ) { remove_action( 'template_redirect', [ \WPSEO_Frontend::get_instance(), 'clean_permalink' ], 1 ); } // Disable the WP admin bar in preview mode. add_filter( 'show_admin_bar', '__return_false' ); add_action( 'wp_enqueue_scripts', function() { $this->enqueue_styles(); $this->enqueue_scripts(); } ); add_filter( 'the_content', [ $this, 'builder_wrapper' ], 999999 ); add_action( 'wp_footer', [ $this, 'wp_footer' ] ); // Avoid Cloudflare's Rocket Loader lazy load the editor iframe add_filter( 'script_loader_tag', [ $this, 'rocket_loader_filter' ], 10, 3 ); // Tell to WP Cache plugins do not cache this request. Utils::do_not_cache(); /** * Preview init. * * Fires on Elementor preview init, after Elementor preview has finished * loading but before any headers are sent. * * @since 1.0.0 * * @param Preview $this The current preview. */ do_action( 'elementor/preview/init', $this ); } /** * Retrieve post ID. * * Get the ID of the current post. * * @since 1.8.0 * @access public * * @return int Post ID. */ public function get_post_id() { return $this->post_id; } /** * Is Preview. * * Whether current request is the elementor preview iframe. * The flag is not related to a specific post or edit permissions. * * @since 2.9.5 * @access public * * @return bool */ public function is_preview() { return $this->is_preview; } /** * Whether preview mode is active. * * Used to determine whether we are in the preview mode (iframe). * * @since 1.0.0 * @access public * * @param int $post_id Optional. Post ID. Default is `0`. * * @return bool Whether preview mode is active. */ public function is_preview_mode( $post_id = 0 ) { if ( ! isset( $_GET['elementor-preview'] ) ) { return false; } if ( empty( $post_id ) ) { $post_id = get_the_ID(); } if ( ! User::is_current_user_can_edit( $post_id ) ) { return false; } if ( $post_id !== (int) $_GET['elementor-preview'] ) { return false; } return true; } /** * Builder wrapper. * * Used to add an empty HTML wrapper for the builder, the javascript will add * the content later. * * @since 1.0.0 * @access public * * @param string $content The content of the builder. * * @return string HTML wrapper for the builder. */ public function builder_wrapper( $content ) { if ( get_the_ID() === $this->post_id ) { $document = Plugin::$instance->documents->get( $this->post_id ); $attributes = $document->get_container_attributes(); $attributes['class'] .= ' elementor-' . $this->post_id; $content = '
'; } return $content; } /** * Enqueue preview styles. * * Registers all the preview styles and enqueues them. * * Fired by `wp_enqueue_scripts` action. * * @since 1.0.0 * @access private */ private function enqueue_styles() { // Hold-on all jQuery plugins after all HTML markup render. wp_add_inline_script( 'jquery-migrate', 'jQuery.holdReady( true );' ); Plugin::$instance->frontend->enqueue_styles(); Plugin::$instance->widgets_manager->enqueue_widgets_styles(); $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; $direction_suffix = is_rtl() ? '-rtl' : ''; wp_register_style( 'elementor-select2', ELEMENTOR_ASSETS_URL . 'lib/e-select2/css/e-select2' . $suffix . '.css', [], '4.0.6-rc.1' ); wp_register_style( 'editor-preview', ELEMENTOR_ASSETS_URL . 'css/editor-preview' . $direction_suffix . $suffix . '.css', [ 'elementor-select2', ], ELEMENTOR_VERSION ); wp_enqueue_style( 'editor-preview' ); /** * Preview enqueue styles. * * Fires after Elementor preview styles are enqueued. * * @since 1.0.0 */ do_action( 'elementor/preview/enqueue_styles' ); } /** * Enqueue preview scripts. * * Registers all the preview scripts and enqueues them. * * Fired by `wp_enqueue_scripts` action. * * @since 1.5.4 * @access private */ private function enqueue_scripts() { Plugin::$instance->frontend->register_scripts(); Plugin::$instance->widgets_manager->enqueue_widgets_scripts(); $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; wp_enqueue_script( 'elementor-inline-editor', ELEMENTOR_ASSETS_URL . 'lib/inline-editor/js/inline-editor' . $suffix . '.js', [], ELEMENTOR_VERSION, true ); /** * Preview enqueue scripts. * * Fires after Elementor preview scripts are enqueued. * * @since 1.5.4 */ do_action( 'elementor/preview/enqueue_scripts' ); } public function rocket_loader_filter( $tag, $handle, $src ) { return str_replace( 'frontend; if ( $frontend->has_elementor_in_page() ) { // Has header/footer/widget-template - enqueue all style/scripts/fonts. $frontend->wp_footer(); } else { // Enqueue only scripts. $frontend->enqueue_scripts(); } } /** * Preview constructor. * * Initializing Elementor preview. * * @since 1.0.0 * @access public */ public function __construct() { add_action( 'template_redirect', [ $this, 'init' ], 0 ); } } includes/editor-templates/editor-wrapper.php000066600000004645152142641160015330 0ustar00role_manager->user_can( 'design' ) ) { $body_classes[] = 'elementor-editor-content-only'; } $notice = Plugin::$instance->editor->notice_bar->get_notice(); ?> > <?php echo __( 'Elementor', 'elementor' ) . ' | ' . get_the_title(); ?>
includes/editor-templates/library-layout.php000066600000002327152142641160015336 0ustar00 includes/editor-templates/navigator.php000066600000004124152142641160014346 0ustar00 includes/editor-templates/templates.php000066600000041116152142641160014354 0ustar00 includes/editor-templates/global.php000066600000003717152142641160013623 0ustar00 includes/editor-templates/panel.php000066600000034071152142641160013457 0ustar00documents->get( Plugin::$instance->editor->get_post_id() ); ?> includes/editor-templates/repeater.php000066600000002204152142641160014160 0ustar00 includes/editor-templates/hotkeys.php000066600000012244152142641160014044 0ustar00 includes/editor-templates/panel-elements.php000066600000006176152142641160015276 0ustar00 includes/base/widget-base.php000066600000055054152142641160012207 0ustar00is_type_instance(); if ( ! $is_type_instance && null === $args ) { throw new \Exception( '`$args` argument is required when initializing a full widget instance.' ); } if ( $is_type_instance ) { $this->_register_skins(); $widget_name = $this->get_name(); /** * Widget skin init. * * Fires when Elementor widget is being initialized. * * The dynamic portion of the hook name, `$widget_name`, refers to the widget name. * * @since 1.0.0 * * @param Widget_Base $this The current widget. */ do_action( "elementor/widget/{$widget_name}/skins_init", $this ); } } /** * Get stack. * * Retrieve the widget stack of controls. * * @since 1.9.2 * @access public * * @param bool $with_common_controls Optional. Whether to include the common controls. Default is true. * * @return array Widget stack of controls. */ public function get_stack( $with_common_controls = true ) { $stack = parent::get_stack(); if ( $with_common_controls && 'common' !== $this->get_unique_name() ) { /** @var Widget_Common $common_widget */ $common_widget = Plugin::$instance->widgets_manager->get_widget_types( 'common' ); $stack['controls'] = array_merge( $stack['controls'], $common_widget->get_controls() ); $stack['tabs'] = array_merge( $stack['tabs'], $common_widget->get_tabs_controls() ); } return $stack; } /** * Get widget controls pointer index. * * Retrieve widget pointer index where the next control should be added. * * While using injection point, it will return the injection point index. Otherwise index of the last control of the * current widget itself without the common controls, plus one. * * @since 1.9.2 * @access public * * @return int Widget controls pointer index. */ public function get_pointer_index() { $injection_point = $this->get_injection_point(); if ( null !== $injection_point ) { return $injection_point['index']; } return count( $this->get_stack( false )['controls'] ); } /** * Show in panel. * * Whether to show the widget in the panel or not. By default returns true. * * @since 1.0.0 * @access public * * @return bool Whether to show the widget in the panel or not. */ public function show_in_panel() { return true; } /** * Start widget controls section. * * Used to add a new section of controls to the widget. Regular controls and * skin controls. * * Note that when you add new controls to widgets they must be wrapped by * `start_controls_section()` and `end_controls_section()`. * * @since 1.0.0 * @access public * * @param string $section_id Section ID. * @param array $args Section arguments Optional. */ public function start_controls_section( $section_id, array $args = [] ) { parent::start_controls_section( $section_id, $args ); static $is_first_section = true; if ( $is_first_section ) { $this->register_skin_control(); $is_first_section = false; } } /** * Register the Skin Control if the widget has skins. * * An internal method that is used to add a skin control to the widget. * Added at the top of the controls section. * * @since 2.0.0 * @access private */ private function register_skin_control() { $skins = $this->get_skins(); if ( ! empty( $skins ) ) { $skin_options = []; if ( $this->_has_template_content ) { $skin_options[''] = __( 'Default', 'elementor' ); } foreach ( $skins as $skin_id => $skin ) { $skin_options[ $skin_id ] = $skin->get_title(); } // Get the first item for default value $default_value = array_keys( $skin_options ); $default_value = array_shift( $default_value ); if ( 1 >= count( $skin_options ) ) { $this->add_control( '_skin', [ 'label' => __( 'Skin', 'elementor' ), 'type' => Controls_Manager::HIDDEN, 'default' => $default_value, ] ); } else { $this->add_control( '_skin', [ 'label' => __( 'Skin', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => $default_value, 'options' => $skin_options, ] ); } } } /** * Register widget skins. * * This method is activated while initializing the widget base class. It is * used to assign skins to widgets with `add_skin()` method. * * Usage: * * protected function _register_skins() { * $this->add_skin( new Skin_Classic( $this ) ); * } * * @since 1.7.12 * @access protected */ protected function _register_skins() {} /** * Get initial config. * * Retrieve the current widget initial configuration. * * Adds more configuration on top of the controls list, the tabs assigned to * the control, element name, type, icon and more. This method also adds * widget type, keywords and categories. * * @since 2.9.0 * @access protected * * @return array The initial widget config. */ protected function get_initial_config() { $config = [ 'widget_type' => $this->get_name(), 'keywords' => $this->get_keywords(), 'categories' => $this->get_categories(), 'html_wrapper_class' => $this->get_html_wrapper_class(), 'show_in_panel' => $this->show_in_panel(), ]; $stack = Plugin::$instance->controls_manager->get_element_stack( $this ); if ( $stack ) { $config['controls'] = $this->get_stack( false )['controls']; $config['tabs_controls'] = $this->get_tabs_controls(); } return array_merge( parent::get_initial_config(), $config ); } /** * @since 2.3.1 * @access protected */ protected function should_print_empty() { return false; } /** * Print widget content template. * * Used to generate the widget content template on the editor, using a * Backbone JavaScript template. * * @since 2.0.0 * @access protected * * @param string $template_content Template content. */ protected function print_template_content( $template_content ) { ?>
get_settings() ); $content = shortcode_unautop( $content ); $content = do_shortcode( $content ); $content = wptexturize( $content ); if ( $GLOBALS['wp_embed'] instanceof \WP_Embed ) { $content = $GLOBALS['wp_embed']->autoembed( $content ); } return $content; } /** * Get HTML wrapper class. * * Retrieve the widget container class. Can be used to override the * container class for specific widgets. * * @since 2.0.9 * @access protected */ protected function get_html_wrapper_class() { return 'elementor-widget-' . $this->get_name(); } /** * Add widget render attributes. * * Used to add attributes to the current widget wrapper HTML tag. * * @since 1.0.0 * @access protected */ protected function _add_render_attributes() { parent::_add_render_attributes(); $this->add_render_attribute( '_wrapper', 'class', [ 'elementor-widget', $this->get_html_wrapper_class(), ] ); $settings = $this->get_settings(); $this->add_render_attribute( '_wrapper', 'data-widget_type', $this->get_name() . '.' . ( ! empty( $settings['_skin'] ) ? $settings['_skin'] : 'default' ) ); } /** * Add lightbox data to image link. * * Used to add lightbox data attributes to image link HTML. * * @since 2.9.1 * @access public * * @param string $link_html Image link HTML. * @param string $id Attachment id. * * @return string Image link HTML with lightbox data attributes. */ public function add_lightbox_data_to_image_link( $link_html, $id ) { $settings = $this->get_settings_for_display(); $open_lightbox = isset( $settings['open_lightbox'] ) ? $settings['open_lightbox'] : null; if ( Plugin::$instance->editor->is_edit_mode() ) { $this->add_render_attribute( 'link', 'class', 'elementor-clickable', true ); } $this->add_lightbox_data_attributes( 'link', $id, $open_lightbox, $this->get_id(), true ); return preg_replace( '/^get_render_attribute_string( 'link' ), $link_html ); } /** * Add Light-Box attributes. * * Used to add Light-Box-related data attributes to links that open media files. * * @param array|string $element The link HTML element. * @param int $id The ID of the image * @param string $lightbox_setting_key The setting key that dictates weather to open the image in a lightbox * @param string $group_id Unique ID for a group of lightbox images * @param bool $overwrite Optional. Whether to overwrite existing * attribute. Default is false, not to overwrite. * * @return Widget_Base Current instance of the widget. * @since 2.9.0 * @access public * */ public function add_lightbox_data_attributes( $element, $id = null, $lightbox_setting_key = null, $group_id = null, $overwrite = false ) { $general_settings_model = SettingsManager::get_settings_managers( 'general' )->get_model(); $is_global_image_lightbox_enabled = 'yes' === $general_settings_model->get_settings( 'elementor_global_image_lightbox' ); if ( 'no' === $lightbox_setting_key ) { if ( $is_global_image_lightbox_enabled ) { $this->add_render_attribute( $element, 'data-elementor-open-lightbox', 'no' ); } return $this; } if ( 'yes' !== $lightbox_setting_key && ! $is_global_image_lightbox_enabled ) { return $this; } $attributes['data-elementor-open-lightbox'] = 'yes'; if ( $group_id ) { $attributes['data-elementor-lightbox-slideshow'] = $group_id; } if ( $id ) { $lightbox_image_attributes = Plugin::$instance->images_manager->get_lightbox_image_attributes( $id ); if ( isset( $lightbox_image_attributes['title'] ) ) { $attributes['data-elementor-lightbox-title'] = $lightbox_image_attributes['title']; } if ( isset( $lightbox_image_attributes['description'] ) ) { $attributes['data-elementor-lightbox-description'] = $lightbox_image_attributes['description']; } } $this->add_render_attribute( $element, $attributes, null, $overwrite ); return $this; } /** * Render widget output on the frontend. * * Used to generate the final HTML displayed on the frontend. * * Note that if skin is selected, it will be rendered by the skin itself, * not the widget. * * @since 1.0.0 * @access public */ public function render_content() { /** * Before widget render content. * * Fires before Elementor widget is being rendered. * * @since 1.0.0 * * @param Widget_Base $this The current widget. */ do_action( 'elementor/widget/before_render_content', $this ); ob_start(); $skin = $this->get_current_skin(); if ( $skin ) { $skin->set_parent( $this ); $skin->render(); } else { $this->render(); } $widget_content = ob_get_clean(); if ( empty( $widget_content ) ) { return; } ?>
render_content(); } /** * Before widget rendering. * * Used to add stuff before the widget `_wrapper` element. * * @since 1.0.0 * @access public */ public function before_render() { ?>
print_render_attribute_string( '_wrapper' ); ?>>
get_data( 'widgetType' ); if ( $with_html_content ) { ob_start(); $this->render_content(); $data['htmlCache'] = ob_get_clean(); } return $data; } /** * Print widget content. * * Output the widget final HTML on the frontend. * * @since 1.0.0 * @access protected */ protected function _print_content() { $this->render_content(); } /** * Get default data. * * Retrieve the default widget data. Used to reset the data on initialization. * * @since 1.0.0 * @access protected * * @return array Default data. */ protected function get_default_data() { $data = parent::get_default_data(); $data['widgetType'] = ''; return $data; } /** * Get default child type. * * Retrieve the widget child type based on element data. * * @since 1.0.0 * @access protected * * @param array $element_data Widget ID. * * @return array|false Child type or false if it's not a valid widget. */ protected function _get_default_child_type( array $element_data ) { return Plugin::$instance->elements_manager->get_element_types( 'section' ); } /** * Get repeater setting key. * * Retrieve the unique setting key for the current repeater item. Used to connect the current element in the * repeater to it's settings model and it's control in the panel. * * PHP usage (inside `Widget_Base::render()` method): * * $tabs = $this->get_settings( 'tabs' ); * foreach ( $tabs as $index => $item ) { * $tab_title_setting_key = $this->get_repeater_setting_key( 'tab_title', 'tabs', $index ); * $this->add_inline_editing_attributes( $tab_title_setting_key, 'none' ); * echo '
get_render_attribute_string( $tab_title_setting_key ) . '>' . $item['tab_title'] . '
'; * } * * @since 1.8.0 * @access protected * * @param string $setting_key The current setting key inside the repeater item (e.g. `tab_title`). * @param string $repeater_key The repeater key containing the array of all the items in the repeater (e.g. `tabs`). * @param int $repeater_item_index The current item index in the repeater array (e.g. `3`). * * @return string The repeater setting key (e.g. `tabs.3.tab_title`). */ protected function get_repeater_setting_key( $setting_key, $repeater_key, $repeater_item_index ) { return implode( '.', [ $repeater_key, $repeater_item_index, $setting_key ] ); } /** * Add inline editing attributes. * * Define specific area in the element to be editable inline. The element can have several areas, with this method * you can set the area inside the element that can be edited inline. You can also define the type of toolbar the * user will see, whether it will be a basic toolbar or an advanced one. * * Note: When you use wysiwyg control use the advanced toolbar, with textarea control use the basic toolbar. Text * control should not have toolbar. * * PHP usage (inside `Widget_Base::render()` method): * * $this->add_inline_editing_attributes( 'text', 'advanced' ); * echo '
get_render_attribute_string( 'text' ) . '>' . $this->get_settings( 'text' ) . '
'; * * @since 1.8.0 * @access protected * * @param string $key Element key. * @param string $toolbar Optional. Toolbar type. Accepted values are `advanced`, `basic` or `none`. Default is * `basic`. */ protected function add_inline_editing_attributes( $key, $toolbar = 'basic' ) { if ( ! Plugin::$instance->editor->is_edit_mode() ) { return; } $this->add_render_attribute( $key, [ 'class' => 'elementor-inline-editing', 'data-elementor-setting-key' => $key, ] ); if ( 'basic' !== $toolbar ) { $this->add_render_attribute( $key, [ 'data-elementor-inline-editing-toolbar' => $toolbar, ] ); } } /** * Add new skin. * * Register new widget skin to allow the user to set custom designs. Must be * called inside the `_register_skins()` method. * * @since 1.0.0 * @access public * * @param Skin_Base $skin Skin instance. */ public function add_skin( Skin_Base $skin ) { Plugin::$instance->skins_manager->add_skin( $this, $skin ); } /** * Get single skin. * * Retrieve a single skin based on skin ID, from all the skin assigned to * the widget. If the skin does not exist or not assigned to the widget, * return false. * * @since 1.0.0 * @access public * * @param string $skin_id Skin ID. * * @return string|false Single skin, or false. */ public function get_skin( $skin_id ) { $skins = $this->get_skins(); if ( isset( $skins[ $skin_id ] ) ) { return $skins[ $skin_id ]; } return false; } /** * Get current skin ID. * * Retrieve the ID of the current skin. * * @since 1.0.0 * @access public * * @return string Current skin. */ public function get_current_skin_id() { return $this->get_settings( '_skin' ); } /** * Get current skin. * * Retrieve the current skin, or if non exist return false. * * @since 1.0.0 * @access public * * @return Skin_Base|false Current skin or false. */ public function get_current_skin() { return $this->get_skin( $this->get_current_skin_id() ); } /** * Remove widget skin. * * Unregister an existing skin and remove it from the widget. * * @since 1.0.0 * @access public * * @param string $skin_id Skin ID. * * @return \WP_Error|true Whether the skin was removed successfully from the widget. */ public function remove_skin( $skin_id ) { return Plugin::$instance->skins_manager->remove_skin( $this, $skin_id ); } /** * Get widget skins. * * Retrieve all the skin assigned to the widget. * * @since 1.0.0 * @access public * * @return Skin_Base[] */ public function get_skins() { return Plugin::$instance->skins_manager->get_skins( $this ); } /** * @param string $plugin_title Plugin's title * @param string $since Plugin version widget was deprecated * @param string $last Plugin version in which the widget will be removed * @param string $replacement Widget replacement */ protected function deprecated_notice( $plugin_title, $since, $last = '', $replacement = '' ) { $this->start_controls_section( 'Deprecated', [ 'label' => __( 'Deprecated', 'elementor' ), ] ); $this->add_control( 'deprecated_notice', [ 'type' => Controls_Manager::DEPRECATED_NOTICE, 'widget' => $this->get_title(), 'since' => $since, 'last' => $last, 'plugin' => $plugin_title, 'replacement' => $replacement, ] ); $this->end_controls_section(); } } includes/base/skin-base.php000066600000020202152142641160011653 0ustar00parent = $parent; $this->_register_controls_actions(); } /** * Get skin ID. * * Retrieve the skin ID. * * @since 1.0.0 * @access public * @abstract */ abstract public function get_id(); /** * Get skin title. * * Retrieve the skin title. * * @since 1.0.0 * @access public * @abstract */ abstract public function get_title(); /** * Render skin. * * Generates the final HTML on the frontend. * * @since 1.0.0 * @access public * @abstract */ abstract public function render(); /** * Render skin output in the editor. * * Written as a Backbone JavaScript template and used to generate the live preview. * * @since 1.0.0 * @deprecated 1.7.6 * @access public */ public function _content_template() { _deprecated_function( __METHOD__, '1.7.6' ); } /** * Register skin controls actions. * * Run on init and used to register new skins to be injected to the widget. * This method is used to register new actions that specify the location of * the skin in the widget. * * Example usage: * `add_action( 'elementor/element/{widget_id}/{section_id}/before_section_end', [ $this, 'register_controls' ] );` * * @since 1.0.0 * @access protected */ protected function _register_controls_actions() {} /** * Get skin control ID. * * Retrieve the skin control ID. Note that skin controls have special prefix * to distinguish them from regular controls, and from controls in other * skins. * * @since 1.0.0 * @access protected * * @param string $control_base_id Control base ID. * * @return string Control ID. */ protected function get_control_id( $control_base_id ) { $skin_id = str_replace( '-', '_', $this->get_id() ); return $skin_id . '_' . $control_base_id; } /** * Get skin settings. * * Retrieve all the skin settings or, when requested, a specific setting. * * @since 1.0.0 * @TODO: rename to get_setting() and create backward compatibility. * * @access public * * @param string $control_base_id Control base ID. * * @return Widget_Base Widget instance. */ public function get_instance_value( $control_base_id ) { $control_id = $this->get_control_id( $control_base_id ); return $this->parent->get_settings( $control_id ); } /** * Start skin controls section. * * Used to add a new section of controls to the skin. * * @since 1.3.0 * @access public * * @param string $id Section ID. * @param array $args Section arguments. */ public function start_controls_section( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); $this->parent->start_controls_section( $this->get_control_id( $id ), $args ); } /** * End skin controls section. * * Used to close an existing open skin controls section. * * @since 1.3.0 * @access public */ public function end_controls_section() { $this->parent->end_controls_section(); } /** * Add new skin control. * * Register a single control to the allow the user to set/update skin data. * * @since 1.0.0 * @access public * * @param string $id Control ID. * @param array $args Control arguments. * * @return bool True if skin added, False otherwise. */ public function add_control( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); return $this->parent->add_control( $this->get_control_id( $id ), $args ); } /** * Update skin control. * * Change the value of an existing skin control. * * @since 1.3.0 * @since 1.8.1 New `$options` parameter added. * * @access public * * @param string $id Control ID. * @param array $args Control arguments. Only the new fields you want to update. * @param array $options Optional. Some additional options. */ public function update_control( $id, $args, array $options = [] ) { $args['condition']['_skin'] = $this->get_id(); $this->parent->update_control( $this->get_control_id( $id ), $args, $options ); } /** * Remove skin control. * * Unregister an existing skin control. * * @since 1.3.0 * @access public * * @param string $id Control ID. */ public function remove_control( $id ) { $this->parent->remove_control( $this->get_control_id( $id ) ); } /** * Add new responsive skin control. * * Register a set of controls to allow editing based on user screen size. * * @since 1.0.5 * @access public * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. */ public function add_responsive_control( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); $this->parent->add_responsive_control( $this->get_control_id( $id ), $args ); } /** * Update responsive skin control. * * Change the value of an existing responsive skin control. * * @since 1.3.5 * @access public * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. */ public function update_responsive_control( $id, $args ) { $this->parent->update_responsive_control( $this->get_control_id( $id ), $args ); } /** * Remove responsive skin control. * * Unregister an existing skin responsive control. * * @since 1.3.5 * @access public * * @param string $id Responsive control ID. */ public function remove_responsive_control( $id ) { $this->parent->remove_responsive_control( $this->get_control_id( $id ) ); } /** * Start skin controls tab. * * Used to add a new tab inside a group of tabs. * * @since 1.5.0 * @access public * * @param string $id Control ID. * @param array $args Control arguments. */ public function start_controls_tab( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); $this->parent->start_controls_tab( $this->get_control_id( $id ), $args ); } /** * End skin controls tab. * * Used to close an existing open controls tab. * * @since 1.5.0 * @access public */ public function end_controls_tab() { $this->parent->end_controls_tab(); } /** * Start skin controls tabs. * * Used to add a new set of tabs inside a section. * * @since 1.5.0 * @access public * * @param string $id Control ID. */ public function start_controls_tabs( $id ) { $args['condition']['_skin'] = $this->get_id(); $this->parent->start_controls_tabs( $this->get_control_id( $id ) ); } /** * End skin controls tabs. * * Used to close an existing open controls tabs. * * @since 1.5.0 * @access public */ public function end_controls_tabs() { $this->parent->end_controls_tabs(); } /** * Add new group control. * * Register a set of related controls grouped together as a single unified * control. * * @since 1.0.0 * @access public * * @param string $group_name Group control name. * @param array $args Group control arguments. Default is an empty array. */ final public function add_group_control( $group_name, $args = [] ) { $args['name'] = $this->get_control_id( $args['name'] ); $args['condition']['_skin'] = $this->get_id(); $this->parent->add_group_control( $group_name, $args ); } /** * Set parent widget. * * Used to define the parent widget of the skin. * * @since 1.0.0 * @access public * * @param Widget_Base $parent Parent widget. */ public function set_parent( $parent ) { $this->parent = $parent; } } includes/base/element-base.php000066600000056740152142641160012360 0ustar00depended_scripts[] = $handler; } /** * Add style depends. * * Register new style to enqueue by the handler. * * @since 1.9.0 * @access public * * @param string $handler Depend style handler. */ public function add_style_depends( $handler ) { $this->depended_styles[] = $handler; } /** * Get script dependencies. * * Retrieve the list of script dependencies the element requires. * * @since 1.3.0 * @access public * * @return array Element scripts dependencies. */ public function get_script_depends() { return $this->depended_scripts; } /** * Enqueue scripts. * * Registers all the scripts defined as element dependencies and enqueues * them. Use `get_script_depends()` method to add custom script dependencies. * * @since 1.3.0 * @access public */ final public function enqueue_scripts() { $deprecated_scripts = [ 'jquery-slick' => [ 'version' => '2.7.0', 'replacement' => 'Swiper', ], ]; foreach ( $this->get_script_depends() as $script ) { if ( isset( $deprecated_scripts[ $script ] ) ) { Utils::handle_deprecation( $script, $deprecated_scripts[ $script ]['version'], $deprecated_scripts[ $script ]['replacement'] ); } wp_enqueue_script( $script ); } } /** * Get style dependencies. * * Retrieve the list of style dependencies the element requires. * * @since 1.9.0 * @access public * * @return array Element styles dependencies. */ public function get_style_depends() { return $this->depended_styles; } /** * Enqueue styles. * * Registers all the styles defined as element dependencies and enqueues * them. Use `get_style_depends()` method to add custom style dependencies. * * @since 1.9.0 * @access public */ final public function enqueue_styles() { foreach ( $this->get_style_depends() as $style ) { wp_enqueue_style( $style ); } } /** * @since 1.0.0 * @deprecated 2.6.0 * @access public * @static */ final public static function add_edit_tool() {} /** * @since 2.2.0 * @deprecated 2.6.0 * @access public * @static */ final public static function is_edit_buttons_enabled() { return get_option( 'elementor_edit_buttons' ); } /** * Get default child type. * * Retrieve the default child type based on element data. * * Note that not all elements support children. * * @since 1.0.0 * @access protected * @abstract * * @param array $element_data Element data. * * @return Element_Base */ abstract protected function _get_default_child_type( array $element_data ); /** * Before element rendering. * * Used to add stuff before the element. * * @since 1.0.0 * @access public */ public function before_render() {} /** * After element rendering. * * Used to add stuff after the element. * * @since 1.0.0 * @access public */ public function after_render() {} /** * Get element title. * * Retrieve the element title. * * @since 1.0.0 * @access public * * @return string Element title. */ public function get_title() { return ''; } /** * Get element icon. * * Retrieve the element icon. * * @since 1.0.0 * @access public * * @return string Element icon. */ public function get_icon() { return 'eicon-columns'; } public function get_help_url() { return 'https://go.elementor.com/widget-' . $this->get_name(); } public function get_custom_help_url() { return ''; } /** * Whether the reload preview is required. * * Used to determine whether the reload preview is required or not. * * @since 1.0.0 * @access public * * @return bool Whether the reload preview is required. */ public function is_reload_preview_required() { return false; } /** * @since 2.3.1 * @access protected */ protected function should_print_empty() { return true; } /** * Get child elements. * * Retrieve all the child elements of this element. * * @since 1.0.0 * @access public * * @return Element_Base[] Child elements. */ public function get_children() { if ( null === $this->children ) { $this->init_children(); } return $this->children; } /** * Get default arguments. * * Retrieve the element default arguments. Used to return all the default * arguments or a specific default argument, if one is set. * * @since 1.0.0 * @access public * * @param array $item Optional. Default is null. * * @return array Default argument(s). */ public function get_default_args( $item = null ) { return self::get_items( $this->default_args, $item ); } /** * Add new child element. * * Register new child element to allow hierarchy. * * @since 1.0.0 * @access public * @param array $child_data Child element data. * @param array $child_args Child element arguments. * * @return Element_Base|false Child element instance, or false if failed. */ public function add_child( array $child_data, array $child_args = [] ) { if ( null === $this->children ) { $this->init_children(); } $child_type = $this->get_child_type( $child_data ); if ( ! $child_type ) { return false; } $child = Plugin::$instance->elements_manager->create_element_instance( $child_data, $child_args, $child_type ); if ( $child ) { $this->children[] = $child; } return $child; } /** * Add render attribute. * * Used to add attributes to a specific HTML element. * * The HTML tag is represented by the element parameter, then you need to * define the attribute key and the attribute key. The final result will be: * ``. * * Example usage: * * `$this->add_render_attribute( 'wrapper', 'class', 'custom-widget-wrapper-class' );` * `$this->add_render_attribute( 'widget', 'id', 'custom-widget-id' );` * `$this->add_render_attribute( 'button', [ 'class' => 'custom-button-class', 'id' => 'custom-button-id' ] );` * * @since 1.0.0 * @access public * * @param array|string $element The HTML element. * @param array|string $key Optional. Attribute key. Default is null. * @param array|string $value Optional. Attribute value. Default is null. * @param bool $overwrite Optional. Whether to overwrite existing * attribute. Default is false, not to overwrite. * * @return Element_Base Current instance of the element. */ public function add_render_attribute( $element, $key = null, $value = null, $overwrite = false ) { if ( is_array( $element ) ) { foreach ( $element as $element_key => $attributes ) { $this->add_render_attribute( $element_key, $attributes, null, $overwrite ); } return $this; } if ( is_array( $key ) ) { foreach ( $key as $attribute_key => $attributes ) { $this->add_render_attribute( $element, $attribute_key, $attributes, $overwrite ); } return $this; } if ( empty( $this->render_attributes[ $element ][ $key ] ) ) { $this->render_attributes[ $element ][ $key ] = []; } settype( $value, 'array' ); if ( $overwrite ) { $this->render_attributes[ $element ][ $key ] = $value; } else { $this->render_attributes[ $element ][ $key ] = array_merge( $this->render_attributes[ $element ][ $key ], $value ); } return $this; } /** * Add link render attributes. * * Used to add link tag attributes to a specific HTML element. * * The HTML link tag is represented by the element parameter. The `url_control` parameter * needs to be an array of link settings in the same format they are set by Elementor's URL control. * * Example usage: * * `$this->add_link_attributes( 'button', $settings['link'] );` * * @since 2.8.0 * @access public * * @param array|string $element The HTML element. * @param array $url_control Array of link settings. * @param bool $overwrite Optional. Whether to overwrite existing * attribute. Default is false, not to overwrite. * * @return Element_Base Current instance of the element. */ public function add_link_attributes( $element, array $url_control, $overwrite = false ) { $attributes = []; if ( ! empty( $url_control['url'] ) ) { $attributes['href'] = $url_control['url']; } if ( ! empty( $url_control['is_external'] ) ) { $attributes['target'] = '_blank'; } if ( ! empty( $url_control['nofollow'] ) ) { $attributes['rel'] = 'nofollow'; } if ( ! empty( $url_control['custom_attributes'] ) ) { // Custom URL attributes should come as a string of comma-delimited key|value pairs $custom_attributes = explode( ',', $url_control['custom_attributes'] ); $blacklist = [ 'onclick', 'onfocus', 'onblur', 'onchange', 'onresize', 'onmouseover', 'onmouseout', 'onkeydown', 'onkeyup' ]; foreach ( $custom_attributes as $attribute ) { // Trim in case users inserted unwanted spaces $attr_key_value = explode( '|', $attribute ); $attr_key = $attr_key_value[0]; // Cover cases where key/value have spaces both before and/or after the actual value preg_match( '/[^=]+/', $attr_key, $attr_key_matches ); $attr_key = trim( $attr_key_matches[0] ); // Implement attribute blacklist if ( in_array( strtolower( $attr_key ), $blacklist, true ) ) { continue; } if ( isset( $attr_key_value[1] ) ) { $attr_value = trim( $attr_key_value[1] ); } else { $attr_value = ''; } $attributes[ $attr_key ] = $attr_value; } } if ( $attributes ) { $this->add_render_attribute( $element, $attributes, $overwrite ); } return $this; } /** * Get Render Attributes * * Used to retrieve render attribute. * * The returned array is either all elements and their attributes if no `$element` is specified, an array of all * attributes of a specific element or a specific attribute properties if `$key` is specified. * * Returns null if one of the requested parameters isn't set. * * @since 2.2.6 * @access public * @param string $element * @param string $key * * @return array */ public function get_render_attributes( $element = '', $key = '' ) { $attributes = $this->render_attributes; if ( $element ) { if ( ! isset( $attributes[ $element ] ) ) { return null; } $attributes = $attributes[ $element ]; if ( $key ) { if ( ! isset( $attributes[ $key ] ) ) { return null; } $attributes = $attributes[ $key ]; } } return $attributes; } /** * Set render attribute. * * Used to set the value of the HTML element render attribute or to update * an existing render attribute. * * @since 1.0.0 * @access public * * @param array|string $element The HTML element. * @param array|string $key Optional. Attribute key. Default is null. * @param array|string $value Optional. Attribute value. Default is null. * * @return Element_Base Current instance of the element. */ public function set_render_attribute( $element, $key = null, $value = null ) { return $this->add_render_attribute( $element, $key, $value, true ); } /** * Remove render attribute. * * Used to remove an element (with its keys and their values), key (with its values), * or value/s from an HTML element's render attribute. * * @since 2.7.0 * @access public * * @param string $element The HTML element. * @param string $key Optional. Attribute key. Default is null. * @param array|string $values Optional. Attribute value/s. Default is null. */ public function remove_render_attribute( $element, $key = null, $values = null ) { if ( $key && ! isset( $this->render_attributes[ $element ][ $key ] ) ) { return; } if ( $values ) { $values = (array) $values; $this->render_attributes[ $element ][ $key ] = array_diff( $this->render_attributes[ $element ][ $key ], $values ); return; } if ( $key ) { unset( $this->render_attributes[ $element ][ $key ] ); return; } if ( isset( $this->render_attributes[ $element ] ) ) { unset( $this->render_attributes[ $element ] ); } } /** * Get render attribute string. * * Used to retrieve the value of the render attribute. * * @since 1.0.0 * @access public * * @param string $element The element. * * @return string Render attribute string, or an empty string if the attribute * is empty or not exist. */ public function get_render_attribute_string( $element ) { if ( empty( $this->render_attributes[ $element ] ) ) { return ''; } return Utils::render_html_attributes( $this->render_attributes[ $element ] ); } /** * Print render attribute string. * * Used to output the rendered attribute. * * @since 2.0.0 * @access public * * @param array|string $element The element. */ public function print_render_attribute_string( $element ) { echo $this->get_render_attribute_string( $element ); // XSS ok. } /** * Print element. * * Used to generate the element final HTML on the frontend and the editor. * * @since 1.0.0 * @access public */ public function print_element() { $element_type = $this->get_type(); /** * Before frontend element render. * * Fires before Elementor element is rendered in the frontend. * * @since 2.2.0 * * @param Element_Base $this The element. */ do_action( 'elementor/frontend/before_render', $this ); /** * Before frontend element render. * * Fires before Elementor element is rendered in the frontend. * * The dynamic portion of the hook name, `$element_type`, refers to the element type. * * @since 1.0.0 * * @param Element_Base $this The element. */ do_action( "elementor/frontend/{$element_type}/before_render", $this ); ob_start(); $this->_print_content(); $content = ob_get_clean(); $should_render = ( ! empty( $content ) || $this->should_print_empty() ); /** * Should the element be rendered for frontend * * Filters if the element should be rendered on frontend. * * @since 2.3.3 * * @param bool true The element. * @param Element_Base $this The element. */ $should_render = apply_filters( "elementor/frontend/{$element_type}/should_render", $should_render, $this ); if ( $should_render ) { $this->_add_render_attributes(); $this->before_render(); echo $content; $this->after_render(); $this->enqueue_scripts(); $this->enqueue_styles(); } /** * After frontend element render. * * Fires after Elementor element is rendered in the frontend. * * The dynamic portion of the hook name, `$element_type`, refers to the element type. * * @since 1.0.0 * * @param Element_Base $this The element. */ do_action( "elementor/frontend/{$element_type}/after_render", $this ); /** * After frontend element render. * * Fires after Elementor element is rendered in the frontend. * * @since 2.3.0 * * @param Element_Base $this The element. */ do_action( 'elementor/frontend/after_render', $this ); } /** * Get the element raw data. * * Retrieve the raw element data, including the id, type, settings, child * elements and whether it is an inner element. * * The data with the HTML used always to display the data, but the Elementor * editor uses the raw data without the HTML in order not to render the data * again. * * @since 1.0.0 * @access public * * @param bool $with_html_content Optional. Whether to return the data with * HTML content or without. Used for caching. * Default is false, without HTML. * * @return array Element raw data. */ public function get_raw_data( $with_html_content = false ) { $data = $this->get_data(); $elements = []; foreach ( $this->get_children() as $child ) { $elements[] = $child->get_raw_data( $with_html_content ); } return [ 'id' => $this->get_id(), 'elType' => $data['elType'], 'settings' => $data['settings'], 'elements' => $elements, 'isInner' => $data['isInner'], ]; } /** * Get unique selector. * * Retrieve the unique selector of the element. Used to set a unique HTML * class for each HTML element. This way Elementor can set custom styles for * each element. * * @since 1.0.0 * @access public * * @return string Unique selector. */ public function get_unique_selector() { return '.elementor-element-' . $this->get_id(); } /** * Is type instance. * * Used to determine whether the element is an instance of that type or not. * * @since 1.0.0 * @access public * * @return bool Whether the element is an instance of that type. */ public function is_type_instance() { return $this->is_type_instance; } /** * Add render attributes. * * Used to add attributes to the current element wrapper HTML tag. * * @since 1.3.0 * @access protected */ protected function _add_render_attributes() { $id = $this->get_id(); $settings = $this->get_settings_for_display(); $frontend_settings = $this->get_frontend_settings(); $controls = $this->get_controls(); $this->add_render_attribute( '_wrapper', [ 'class' => [ 'elementor-element', 'elementor-element-' . $id, ], 'data-id' => $id, 'data-element_type' => $this->get_type(), ] ); $class_settings = []; foreach ( $settings as $setting_key => $setting ) { if ( isset( $controls[ $setting_key ]['prefix_class'] ) ) { $class_settings[ $setting_key ] = $setting; } } foreach ( $class_settings as $setting_key => $setting ) { if ( empty( $setting ) && '0' !== $setting ) { continue; } $this->add_render_attribute( '_wrapper', 'class', $controls[ $setting_key ]['prefix_class'] . $setting ); } if ( ! empty( $settings['animation'] ) || ! empty( $settings['_animation'] ) ) { // Hide the element until the animation begins $this->add_render_attribute( '_wrapper', 'class', 'elementor-invisible' ); } if ( ! empty( $settings['_element_id'] ) ) { $this->add_render_attribute( '_wrapper', 'id', trim( $settings['_element_id'] ) ); } if ( $frontend_settings ) { $this->add_render_attribute( '_wrapper', 'data-settings', wp_json_encode( $frontend_settings ) ); } /** * After element attribute rendered. * * Fires after the attributes of the element HTML tag are rendered. * * @since 2.3.0 * * @param Element_Base $this The element. */ do_action( 'elementor/element/after_add_attributes', $this ); } /** * Get default data. * * Retrieve the default element data. Used to reset the data on initialization. * * @since 1.0.0 * @access protected * * @return array Default data. */ protected function get_default_data() { $data = parent::get_default_data(); return array_merge( $data, [ 'elements' => [], 'isInner' => false, ] ); } /** * Print element content. * * Output the element final HTML on the frontend. * * @since 1.0.0 * @access protected */ protected function _print_content() { foreach ( $this->get_children() as $child ) { $child->print_element(); } } /** * Get initial config. * * Retrieve the current element initial configuration. * * Adds more configuration on top of the controls list and the tabs assigned * to the control. This method also adds element name, type, icon and more. * * @since 2.9.0 * @access protected * * @return array The initial config. */ protected function get_initial_config() { $config = [ 'name' => $this->get_name(), 'elType' => $this->get_type(), 'title' => $this->get_title(), 'icon' => $this->get_icon(), 'reload_preview' => $this->is_reload_preview_required(), ]; if ( preg_match( '/^' . __NAMESPACE__ . '(Pro)?\\\\/', get_called_class() ) ) { $config['help_url'] = $this->get_help_url(); } else { $config['help_url'] = $this->get_custom_help_url(); } if ( ! $this->is_editable() ) { $config['editable'] = false; } return $config; } /** * Get child type. * * Retrieve the element child type based on element data. * * @since 2.0.0 * @access private * * @param array $element_data Element ID. * * @return Element_Base|false Child type or false if type not found. */ private function get_child_type( $element_data ) { $child_type = $this->_get_default_child_type( $element_data ); // If it's not a valid widget ( like a deactivated plugin ) if ( ! $child_type ) { return false; } /** * Element child type. * * Filters the child type of the element. * * @since 1.0.0 * * @param Element_Base $child_type The child element. * @param array $element_data The original element ID. * @param Element_Base $this The original element. */ $child_type = apply_filters( 'elementor/element/get_child_type', $child_type, $element_data, $this ); return $child_type; } /** * Initialize children. * * Initializing the element child elements. * * @since 2.0.0 * @access private */ private function init_children() { $this->children = []; $children_data = $this->get_data( 'elements' ); if ( ! $children_data ) { return; } foreach ( $children_data as $child_data ) { if ( ! $child_data ) { continue; } $this->add_child( $child_data ); } } /** * Element base constructor. * * Initializing the element base class using `$data` and `$args`. * * The `$data` parameter is required for a normal instance because of the * way Elementor renders data when initializing elements. * * @since 1.0.0 * @access public * * @param array $data Optional. Element data. Default is an empty array. * @param array|null $args Optional. Element default arguments. Default is null. **/ public function __construct( array $data = [], array $args = null ) { if ( $data ) { $this->is_type_instance = false; } elseif ( $args ) { $this->default_args = $args; } parent::__construct( $data ); } } includes/base/controls-stack.php000066600000151162152142641160012757 0ustar00get_name(); } /** * Get element ID. * * Retrieve the element generic ID. * * @since 1.4.0 * @access public * * @return string The ID. */ public function get_id() { return $this->id; } /** * Get element ID. * * Retrieve the element generic ID as integer. * * @since 1.8.0 * @access public * * @return string The converted ID. */ public function get_id_int() { return hexdec( $this->id ); } /** * Get the type. * * Retrieve the type, e.g. 'stack', 'section', 'widget' etc. * * @since 1.4.0 * @access public * @static * * @return string The type. */ public static function get_type() { return 'stack'; } /** * @since 2.9.0 * @access public * * @return bool */ public function is_editable() { return true; } /** * Get items. * * Utility method that receives an array with a needle and returns all the * items that match the needle. If needle is not defined the entire haystack * will be returned. * * @since 1.4.0 * @deprecated 2.3.0 Use `Controls_Stack::get_items()` instead * @access protected * @static * * @param array $haystack An array of items. * @param string $needle Optional. Needle. Default is null. * * @return mixed The whole haystack or the needle from the haystack when requested. */ protected static function _get_items( array $haystack, $needle = null ) { _deprecated_function( __METHOD__, '2.3.0', __CLASS__ . '::get_items()' ); if ( $needle ) { return isset( $haystack[ $needle ] ) ? $haystack[ $needle ] : null; } return $haystack; } /** * Get current section. * * When inserting new controls, this method will retrieve the current section. * * @since 1.7.1 * @access public * * @return null|array Current section. */ public function get_current_section() { return $this->current_section; } /** * Get current tab. * * When inserting new controls, this method will retrieve the current tab. * * @since 1.7.1 * @access public * * @return null|array Current tab. */ public function get_current_tab() { return $this->current_tab; } /** * Get controls. * * Retrieve all the controls or, when requested, a specific control. * * @since 1.4.0 * @access public * * @param string $control_id The ID of the requested control. Optional field, * when set it will return a specific control. * Default is null. * * @return mixed Controls list. */ public function get_controls( $control_id = null ) { return self::get_items( $this->get_stack()['controls'], $control_id ); } /** * Get active controls. * * Retrieve an array of active controls that meet the condition field. * * If specific controls was given as a parameter, retrieve active controls * from that list, otherwise check for all the controls available. * * @since 1.4.0 * @since 2.0.9 Added the `controls` and the `settings` parameters. * @access public * * @param array $controls Optional. An array of controls. Default is null. * @param array $settings Optional. Controls settings. Default is null. * * @return array Active controls. */ public function get_active_controls( array $controls = null, array $settings = null ) { if ( ! $controls ) { $controls = $this->get_controls(); } if ( ! $settings ) { $settings = $this->get_controls_settings(); } $active_controls = array_reduce( array_keys( $controls ), function( $active_controls, $control_key ) use ( $controls, $settings ) { $control = $controls[ $control_key ]; if ( $this->is_control_visible( $control, $settings ) ) { $active_controls[ $control_key ] = $control; } return $active_controls; }, [] ); return $active_controls; } /** * Get controls settings. * * Retrieve the settings for all the controls that represent them. * * @since 1.5.0 * @access public * * @return array Controls settings. */ public function get_controls_settings() { return array_intersect_key( $this->get_settings(), $this->get_controls() ); } /** * Add new control to stack. * * Register a single control to allow the user to set/update data. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public * * @param string $id Control ID. * @param array $args Control arguments. * @param array $options Optional. Control options. Default is an empty array. * * @return bool True if control added, False otherwise. */ public function add_control( $id, array $args, $options = [] ) { $default_options = [ 'overwrite' => false, 'position' => null, ]; $options = array_merge( $default_options, $options ); if ( $options['position'] ) { $this->start_injection( $options['position'] ); } if ( $this->injection_point ) { $options['index'] = $this->injection_point['index']++; } if ( empty( $args['type'] ) || ! in_array( $args['type'], [ Controls_Manager::SECTION, Controls_Manager::WP_WIDGET ], true ) ) { $target_section_args = $this->current_section; $target_tab = $this->current_tab; if ( $this->injection_point ) { $target_section_args = $this->injection_point['section']; if ( ! empty( $this->injection_point['tab'] ) ) { $target_tab = $this->injection_point['tab']; } } if ( null !== $target_section_args ) { if ( ! empty( $args['section'] ) || ! empty( $args['tab'] ) ) { _doing_it_wrong( sprintf( '%s::%s', get_called_class(), __FUNCTION__ ), sprintf( 'Cannot redeclare control with `tab` or `section` args inside section "%s".', $id ), '1.0.0' ); } $args = array_replace_recursive( $target_section_args, $args ); if ( null !== $target_tab ) { $args = array_replace_recursive( $target_tab, $args ); } } elseif ( empty( $args['section'] ) && ( ! $options['overwrite'] || is_wp_error( Plugin::$instance->controls_manager->get_control_from_stack( $this->get_unique_name(), $id ) ) ) ) { wp_die( sprintf( '%s::%s: Cannot add a control outside of a section (use `start_controls_section`).', get_called_class(), __FUNCTION__ ) ); } } if ( $options['position'] ) { $this->end_injection(); } unset( $options['position'] ); if ( $this->current_popover && ! $this->current_popover['initialized'] ) { $args['popover'] = [ 'start' => true, ]; $this->current_popover['initialized'] = true; } return Plugin::$instance->controls_manager->add_control_to_stack( $this, $id, $args, $options ); } /** * Remove control from stack. * * Unregister an existing control and remove it from the stack. * * @since 1.4.0 * @access public * * @param string $control_id Control ID. * * @return bool|\WP_Error */ public function remove_control( $control_id ) { return Plugin::$instance->controls_manager->remove_control_from_stack( $this->get_unique_name(), $control_id ); } /** * Update control in stack. * * Change the value of an existing control in the stack. When you add new * control you set the `$args` parameter, this method allows you to update * the arguments by passing new data. * * @since 1.4.0 * @since 1.8.1 New `$options` parameter added. * * @access public * * @param string $control_id Control ID. * @param array $args Control arguments. Only the new fields you want * to update. * @param array $options Optional. Some additional options. Default is * an empty array. * * @return bool */ public function update_control( $control_id, array $args, array $options = [] ) { $is_updated = Plugin::$instance->controls_manager->update_control_in_stack( $this, $control_id, $args, $options ); if ( ! $is_updated ) { return false; } $control = $this->get_controls( $control_id ); if ( Controls_Manager::SECTION === $control['type'] ) { $section_args = $this->get_section_args( $control_id ); $section_controls = $this->get_section_controls( $control_id ); foreach ( $section_controls as $section_control_id => $section_control ) { $this->update_control( $section_control_id, $section_args, $options ); } } return true; } /** * Get stack. * * Retrieve the stack of controls. * * @since 1.9.2 * @access public * * @return array Stack of controls. */ public function get_stack() { $stack = Plugin::$instance->controls_manager->get_element_stack( $this ); if ( null === $stack ) { $this->init_controls(); return Plugin::$instance->controls_manager->get_element_stack( $this ); } return $stack; } /** * Get position information. * * Retrieve the position while injecting data, based on the element type. * * @since 1.7.0 * @access public * * @param array $position { * The injection position. * * @type string $type Injection type, either `control` or `section`. * Default is `control`. * @type string $at Where to inject. If `$type` is `control` accepts * `before` and `after`. If `$type` is `section` * accepts `start` and `end`. Default values based on * the `type`. * @type string $of Control/Section ID. * @type array $fallback Fallback injection position. When the position is * not found it will try to fetch the fallback * position. * } * * @return bool|array Position info. */ final public function get_position_info( array $position ) { $default_position = [ 'type' => 'control', 'at' => 'after', ]; if ( ! empty( $position['type'] ) && 'section' === $position['type'] ) { $default_position['at'] = 'end'; } $position = array_merge( $default_position, $position ); if ( 'control' === $position['type'] && in_array( $position['at'], [ 'start', 'end' ], true ) || 'section' === $position['type'] && in_array( $position['at'], [ 'before', 'after' ], true ) ) { _doing_it_wrong( sprintf( '%s::%s', get_called_class(), __FUNCTION__ ), 'Invalid position arguments. Use `before` / `after` for control or `start` / `end` for section.', '1.7.0' ); return false; } $target_control_index = $this->get_control_index( $position['of'] ); if ( false === $target_control_index ) { if ( ! empty( $position['fallback'] ) ) { return $this->get_position_info( $position['fallback'] ); } return false; } $target_section_index = $target_control_index; $registered_controls = $this->get_controls(); $controls_keys = array_keys( $registered_controls ); while ( Controls_Manager::SECTION !== $registered_controls[ $controls_keys[ $target_section_index ] ]['type'] ) { $target_section_index--; } if ( 'section' === $position['type'] ) { $target_control_index++; if ( 'end' === $position['at'] ) { while ( Controls_Manager::SECTION !== $registered_controls[ $controls_keys[ $target_control_index ] ]['type'] ) { if ( ++$target_control_index >= count( $registered_controls ) ) { break; } } } } $target_control = $registered_controls[ $controls_keys[ $target_control_index ] ]; if ( 'after' === $position['at'] ) { $target_control_index++; } $section_id = $registered_controls[ $controls_keys[ $target_section_index ] ]['name']; $position_info = [ 'index' => $target_control_index, 'section' => $this->get_section_args( $section_id ), ]; if ( ! empty( $target_control['tabs_wrapper'] ) ) { $position_info['tab'] = [ 'tabs_wrapper' => $target_control['tabs_wrapper'], 'inner_tab' => $target_control['inner_tab'], ]; } return $position_info; } /** * Get control key. * * Retrieve the key of the control based on a given index of the control. * * @since 1.9.2 * @access public * * @param string $control_index Control index. * * @return int Control key. */ final public function get_control_key( $control_index ) { $registered_controls = $this->get_controls(); $controls_keys = array_keys( $registered_controls ); return $controls_keys[ $control_index ]; } /** * Get control index. * * Retrieve the index of the control based on a given key of the control. * * @since 1.7.6 * @access public * * @param string $control_key Control key. * * @return false|int Control index. */ final public function get_control_index( $control_key ) { $controls = $this->get_controls(); $controls_keys = array_keys( $controls ); return array_search( $control_key, $controls_keys ); } /** * Get section controls. * * Retrieve all controls under a specific section. * * @since 1.7.6 * @access public * * @param string $section_id Section ID. * * @return array Section controls */ final public function get_section_controls( $section_id ) { $section_index = $this->get_control_index( $section_id ); $section_controls = []; $registered_controls = $this->get_controls(); $controls_keys = array_keys( $registered_controls ); while ( true ) { $section_index++; if ( ! isset( $controls_keys[ $section_index ] ) ) { break; } $control_key = $controls_keys[ $section_index ]; if ( Controls_Manager::SECTION === $registered_controls[ $control_key ]['type'] ) { break; } $section_controls[ $control_key ] = $registered_controls[ $control_key ]; }; return $section_controls; } /** * Add new group control to stack. * * Register a set of related controls grouped together as a single unified * control. For example grouping together like typography controls into a * single, easy-to-use control. * * @since 1.4.0 * @access public * * @param string $group_name Group control name. * @param array $args Group control arguments. Default is an empty array. * @param array $options Optional. Group control options. Default is an * empty array. */ final public function add_group_control( $group_name, array $args = [], array $options = [] ) { $group = Plugin::$instance->controls_manager->get_control_groups( $group_name ); if ( ! $group ) { wp_die( sprintf( '%s::%s: Group "%s" not found.', get_called_class(), __FUNCTION__, $group_name ) ); } $group->add_controls( $this, $args, $options ); } /** * Get scheme controls. * * Retrieve all the controls that use schemes. * * @since 1.4.0 * @access public * * @return array Scheme controls. */ final public function get_scheme_controls() { $enabled_schemes = Schemes_Manager::get_enabled_schemes(); return array_filter( $this->get_controls(), function( $control ) use ( $enabled_schemes ) { return ( ! empty( $control['scheme'] ) && in_array( $control['scheme']['type'], $enabled_schemes ) ); } ); } /** * Get style controls. * * Retrieve style controls for all active controls or, when requested, from * a specific set of controls. * * @since 1.4.0 * @since 2.0.9 Added the `settings` parameter. * @access public * * @param array $controls Optional. Controls list. Default is null. * @param array $settings Optional. Controls settings. Default is null. * * @return array Style controls. */ final public function get_style_controls( array $controls = null, array $settings = null ) { $controls = $this->get_active_controls( $controls, $settings ); $style_controls = []; foreach ( $controls as $control_name => $control ) { $control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] ); if ( ! $control_obj instanceof Base_Data_Control ) { continue; } $control = array_merge( $control_obj->get_settings(), $control ); if ( Controls_Manager::REPEATER === $control['type'] ) { $style_fields = []; foreach ( $this->get_settings( $control_name ) as $item ) { $style_fields[] = $this->get_style_controls( $control['fields'], $item ); } $control['style_fields'] = $style_fields; } if ( ! empty( $control['selectors'] ) || ! empty( $control['dynamic'] ) || ! empty( $control['style_fields'] ) ) { $style_controls[ $control_name ] = $control; } } return $style_controls; } /** * Get class controls. * * Retrieve the controls that use the same prefix class from all the active * controls * * @since 1.4.0 * @deprecated 2.1.0 * @access public * * @return array Class controls. */ final public function get_class_controls() { _deprecated_function( __METHOD__, '2.1.0' ); return array_filter( $this->get_active_controls(), function( $control ) { return ( isset( $control['prefix_class'] ) ); } ); } /** * Get tabs controls. * * Retrieve all the tabs assigned to the control. * * @since 1.4.0 * @access public * * @return array Tabs controls. */ final public function get_tabs_controls() { return $this->get_stack()['tabs']; } /** * Add new responsive control to stack. * * Register a set of controls to allow editing based on user screen size. * This method registers three screen sizes: Desktop, Tablet and Mobile. * * @since 1.4.0 * @access public * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. * @param array $options Optional. Responsive control options. Default is * an empty array. */ final public function add_responsive_control( $id, array $args, $options = [] ) { $args['responsive'] = []; $devices = [ self::RESPONSIVE_DESKTOP, self::RESPONSIVE_TABLET, self::RESPONSIVE_MOBILE, ]; if ( isset( $args['devices'] ) ) { $devices = array_intersect( $devices, $args['devices'] ); $args['responsive']['devices'] = $devices; unset( $args['devices'] ); } if ( isset( $args['default'] ) ) { $args['desktop_default'] = $args['default']; unset( $args['default'] ); } foreach ( $devices as $device_name ) { $control_args = $args; if ( isset( $control_args['device_args'] ) ) { if ( ! empty( $control_args['device_args'][ $device_name ] ) ) { $control_args = array_merge( $control_args, $control_args['device_args'][ $device_name ] ); } unset( $control_args['device_args'] ); } if ( ! empty( $args['prefix_class'] ) ) { $device_to_replace = self::RESPONSIVE_DESKTOP === $device_name ? '' : '-' . $device_name; $control_args['prefix_class'] = sprintf( $args['prefix_class'], $device_to_replace ); } $control_args['responsive']['max'] = $device_name; if ( isset( $control_args['min_affected_device'] ) ) { if ( ! empty( $control_args['min_affected_device'][ $device_name ] ) ) { $control_args['responsive']['min'] = $control_args['min_affected_device'][ $device_name ]; } unset( $control_args['min_affected_device'] ); } if ( isset( $control_args[ $device_name . '_default' ] ) ) { $control_args['default'] = $control_args[ $device_name . '_default' ]; } unset( $control_args['desktop_default'] ); unset( $control_args['tablet_default'] ); unset( $control_args['mobile_default'] ); $id_suffix = self::RESPONSIVE_DESKTOP === $device_name ? '' : '_' . $device_name; if ( ! empty( $options['overwrite'] ) ) { $this->update_control( $id . $id_suffix, $control_args, [ 'recursive' => ! empty( $options['recursive'] ), ] ); } else { $this->add_control( $id . $id_suffix, $control_args, $options ); } } } /** * Update responsive control in stack. * * Change the value of an existing responsive control in the stack. When you * add new control you set the `$args` parameter, this method allows you to * update the arguments by passing new data. * * @since 1.4.0 * @access public * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. * @param array $options Optional. Additional options. */ final public function update_responsive_control( $id, array $args, array $options = [] ) { $this->add_responsive_control( $id, $args, [ 'overwrite' => true, 'recursive' => ! empty( $options['recursive'] ), ] ); } /** * Remove responsive control from stack. * * Unregister an existing responsive control and remove it from the stack. * * @since 1.4.0 * @access public * * @param string $id Responsive control ID. */ final public function remove_responsive_control( $id ) { $devices = [ self::RESPONSIVE_DESKTOP, self::RESPONSIVE_TABLET, self::RESPONSIVE_MOBILE, ]; foreach ( $devices as $device_name ) { $id_suffix = self::RESPONSIVE_DESKTOP === $device_name ? '' : '_' . $device_name; $this->remove_control( $id . $id_suffix ); } } /** * Get class name. * * Retrieve the name of the current class. * * @since 1.4.0 * @access public * * @return string Class name. */ final public function get_class_name() { return get_called_class(); } /** * Get the config. * * Retrieve the config or, if non set, use the initial config. * * @since 1.4.0 * @access public * * @return array|null The config. */ final public function get_config() { if ( null === $this->config ) { // TODO: This is for backwards compatibility starting from 2.9.0 // This if statement should be removed when the method is hard-deprecated if ( method_exists( $this, '_get_initial_config' ) ) { $this->config = $this->_get_initial_config(); } else { $this->config = $this->get_initial_config(); } } return $this->config; } /** * Get frontend settings keys. * * Retrieve settings keys for all frontend controls. * * @since 1.6.0 * @access public * * @return array Settings keys for each control. */ final public function get_frontend_settings_keys() { $controls = []; foreach ( $this->get_controls() as $control ) { if ( ! empty( $control['frontend_available'] ) ) { $controls[] = $control['name']; } } return $controls; } /** * Get controls pointer index. * * Retrieve pointer index where the next control should be added. * * While using injection point, it will return the injection point index. * Otherwise index of the last control plus one. * * @since 1.9.2 * @access public * * @return int Controls pointer index. */ public function get_pointer_index() { if ( null !== $this->injection_point ) { return $this->injection_point['index']; } return count( $this->get_controls() ); } /** * Get the raw data. * * Retrieve all the items or, when requested, a specific item. * * @since 1.4.0 * @access public * * @param string $item Optional. The requested item. Default is null. * * @return mixed The raw data. */ public function get_data( $item = null ) { if ( ! $this->settings_sanitized && ( ! $item || 'settings' === $item ) ) { $this->data['settings'] = $this->sanitize_settings( $this->data['settings'] ); $this->settings_sanitized = true; } return self::get_items( $this->data, $item ); } /** * @since 2.0.14 * @access public */ public function get_parsed_dynamic_settings( $setting = null ) { if ( null === $this->parsed_dynamic_settings ) { $this->parsed_dynamic_settings = $this->parse_dynamic_settings( $this->get_settings() ); } return self::get_items( $this->parsed_dynamic_settings, $setting ); } /** * Get active settings. * * Retrieve the settings from all the active controls. * * @since 1.4.0 * @since 2.1.0 Added the `controls` and the `settings` parameters. * @access public * * @param array $controls Optional. An array of controls. Default is null. * @param array $settings Optional. Controls settings. Default is null. * * @return array Active settings. */ public function get_active_settings( $settings = null, $controls = null ) { $is_first_request = ! $settings && ! $this->active_settings; if ( ! $settings ) { if ( $this->active_settings ) { return $this->active_settings; } $settings = $this->get_controls_settings(); $controls = $this->get_controls(); } $active_settings = []; foreach ( $settings as $setting_key => $setting ) { if ( ! isset( $controls[ $setting_key ] ) ) { $active_settings[ $setting_key ] = $setting; continue; } $control = $controls[ $setting_key ]; if ( $this->is_control_visible( $control, $settings ) ) { if ( Controls_Manager::REPEATER === $control['type'] ) { foreach ( $setting as & $item ) { $item = $this->get_active_settings( $item, $control['fields'] ); } } $active_settings[ $setting_key ] = $setting; } else { $active_settings[ $setting_key ] = null; } } if ( $is_first_request ) { $this->active_settings = $active_settings; } return $active_settings; } /** * Get settings for display. * * Retrieve all the settings or, when requested, a specific setting for display. * * Unlike `get_settings()` method, this method retrieves only active settings * that passed all the conditions, rendered all the shortcodes and all the dynamic * tags. * * @since 2.0.0 * @access public * * @param string $setting_key Optional. The key of the requested setting. * Default is null. * * @return mixed The settings. */ public function get_settings_for_display( $setting_key = null ) { if ( ! $this->parsed_active_settings ) { $this->parsed_active_settings = $this->get_active_settings( $this->get_parsed_dynamic_settings(), $this->get_controls() ); } return self::get_items( $this->parsed_active_settings, $setting_key ); } /** * Parse dynamic settings. * * Retrieve the settings with rendered dynamic tags. * * @since 2.0.0 * @access public * * @param array $settings Optional. The requested setting. Default is null. * @param array $controls Optional. The controls array. Default is null. * @param array $all_settings Optional. All the settings. Default is null. * * @return array The settings with rendered dynamic tags. */ public function parse_dynamic_settings( $settings, $controls = null, $all_settings = null ) { if ( null === $all_settings ) { $all_settings = $this->get_settings(); } if ( null === $controls ) { $controls = $this->get_controls(); } foreach ( $controls as $control ) { $control_name = $control['name']; $control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] ); if ( ! $control_obj instanceof Base_Data_Control ) { continue; } if ( 'repeater' === $control_obj->get_type() ) { foreach ( $settings[ $control_name ] as & $field ) { $field = $this->parse_dynamic_settings( $field, $control['fields'], $field ); } continue; } $dynamic_settings = $control_obj->get_settings( 'dynamic' ); if ( ! $dynamic_settings ) { $dynamic_settings = []; } if ( ! empty( $control['dynamic'] ) ) { $dynamic_settings = array_merge( $dynamic_settings, $control['dynamic'] ); } if ( empty( $dynamic_settings ) || ! isset( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ] ) ) { continue; } if ( ! empty( $dynamic_settings['active'] ) && ! empty( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ] ) ) { $parsed_value = $control_obj->parse_tags( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ], $dynamic_settings ); $dynamic_property = ! empty( $dynamic_settings['property'] ) ? $dynamic_settings['property'] : null; if ( $dynamic_property ) { $settings[ $control_name ][ $dynamic_property ] = $parsed_value; } else { $settings[ $control_name ] = $parsed_value; } } } return $settings; } /** * Get frontend settings. * * Retrieve the settings for all frontend controls. * * @since 1.6.0 * @access public * * @return array Frontend settings. */ public function get_frontend_settings() { $frontend_settings = array_intersect_key( $this->get_active_settings(), array_flip( $this->get_frontend_settings_keys() ) ); foreach ( $frontend_settings as $key => $setting ) { if ( in_array( $setting, [ null, '' ], true ) ) { unset( $frontend_settings[ $key ] ); } } return $frontend_settings; } /** * Filter controls settings. * * Receives controls, settings and a callback function to filter the settings by * and returns filtered settings. * * @since 1.5.0 * @access public * * @param callable $callback The callback function. * @param array $settings Optional. Control settings. Default is an empty * array. * @param array $controls Optional. Controls list. Default is an empty * array. * * @return array Filtered settings. */ public function filter_controls_settings( callable $callback, array $settings = [], array $controls = [] ) { if ( ! $settings ) { $settings = $this->get_settings(); } if ( ! $controls ) { $controls = $this->get_controls(); } return array_reduce( array_keys( $settings ), function( $filtered_settings, $setting_key ) use ( $controls, $settings, $callback ) { if ( isset( $controls[ $setting_key ] ) ) { $result = $callback( $settings[ $setting_key ], $controls[ $setting_key ] ); if ( null !== $result ) { $filtered_settings[ $setting_key ] = $result; } } return $filtered_settings; }, [] ); } /** * Whether the control is visible or not. * * Used to determine whether the control is visible or not. * * @since 1.4.0 * @access public * * @param array $control The control. * @param array $values Optional. Condition values. Default is null. * * @return bool Whether the control is visible. */ public function is_control_visible( $control, $values = null ) { if ( null === $values ) { $values = $this->get_settings(); } if ( ! empty( $control['conditions'] ) && ! Conditions::check( $control['conditions'], $values ) ) { return false; } if ( empty( $control['condition'] ) ) { return true; } foreach ( $control['condition'] as $condition_key => $condition_value ) { preg_match( '/([a-z_\-0-9]+)(?:\[([a-z_]+)])?(!?)$/i', $condition_key, $condition_key_parts ); $pure_condition_key = $condition_key_parts[1]; $condition_sub_key = $condition_key_parts[2]; $is_negative_condition = ! ! $condition_key_parts[3]; if ( ! isset( $values[ $pure_condition_key ] ) || null === $values[ $pure_condition_key ] ) { return false; } $instance_value = $values[ $pure_condition_key ]; if ( $condition_sub_key && is_array( $instance_value ) ) { if ( ! isset( $instance_value[ $condition_sub_key ] ) ) { return false; } $instance_value = $instance_value[ $condition_sub_key ]; } /** * If the $condition_value is a non empty array - check if the $condition_value contains the $instance_value, * If the $instance_value is a non empty array - check if the $instance_value contains the $condition_value * otherwise check if they are equal. ( and give the ability to check if the value is an empty array ) */ if ( is_array( $condition_value ) && ! empty( $condition_value ) ) { $is_contains = in_array( $instance_value, $condition_value, true ); } elseif ( is_array( $instance_value ) && ! empty( $instance_value ) ) { $is_contains = in_array( $condition_value, $instance_value, true ); } else { $is_contains = $instance_value === $condition_value; } if ( $is_negative_condition && $is_contains || ! $is_negative_condition && ! $is_contains ) { return false; } } return true; } /** * Start controls section. * * Used to add a new section of controls. When you use this method, all the * registered controls from this point will be assigned to this section, * until you close the section using `end_controls_section()` method. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public * * @param string $section_id Section ID. * @param array $args Section arguments Optional. */ public function start_controls_section( $section_id, array $args = [] ) { $section_name = $this->get_name(); /** * Before section start. * * Fires before Elementor section starts in the editor panel. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param string $section_id Section ID. * @param array $args Section arguments. */ do_action( 'elementor/element/before_section_start', $this, $section_id, $args ); /** * Before section start. * * Fires before Elementor section starts in the editor panel. * * The dynamic portions of the hook name, `$section_name` and `$section_id`, refers to the section name and section ID, respectively. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param array $args Section arguments. */ do_action( "elementor/element/{$section_name}/{$section_id}/before_section_start", $this, $args ); $args['type'] = Controls_Manager::SECTION; $this->add_control( $section_id, $args ); if ( null !== $this->current_section ) { wp_die( sprintf( 'Elementor: You can\'t start a section before the end of the previous section "%s".', $this->current_section['section'] ) ); // XSS ok. } $this->current_section = $this->get_section_args( $section_id ); if ( $this->injection_point ) { $this->injection_point['section'] = $this->current_section; } /** * After section start. * * Fires after Elementor section starts in the editor panel. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param string $section_id Section ID. * @param array $args Section arguments. */ do_action( 'elementor/element/after_section_start', $this, $section_id, $args ); /** * After section start. * * Fires after Elementor section starts in the editor panel. * * The dynamic portions of the hook name, `$section_name` and `$section_id`, refers to the section name and section ID, respectively. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param array $args Section arguments. */ do_action( "elementor/element/{$section_name}/{$section_id}/after_section_start", $this, $args ); } /** * End controls section. * * Used to close an existing open controls section. When you use this method * it stops adding new controls to this section. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public */ public function end_controls_section() { $stack_name = $this->get_name(); // Save the current section for the action. $current_section = $this->current_section; $section_id = $current_section['section']; $args = [ 'tab' => $current_section['tab'], ]; /** * Before section end. * * Fires before Elementor section ends in the editor panel. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param string $section_id Section ID. * @param array $args Section arguments. */ do_action( 'elementor/element/before_section_end', $this, $section_id, $args ); /** * Before section end. * * Fires before Elementor section ends in the editor panel. * * The dynamic portions of the hook name, `$stack_name` and `$section_id`, refers to the stack name and section ID, respectively. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param array $args Section arguments. */ do_action( "elementor/element/{$stack_name}/{$section_id}/before_section_end", $this, $args ); $this->current_section = null; /** * After section end. * * Fires after Elementor section ends in the editor panel. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param string $section_id Section ID. * @param array $args Section arguments. */ do_action( 'elementor/element/after_section_end', $this, $section_id, $args ); /** * After section end. * * Fires after Elementor section ends in the editor panel. * * The dynamic portions of the hook name, `$stack_name` and `$section_id`, refers to the section name and section ID, respectively. * * @since 1.4.0 * * @param Controls_Stack $this The control. * @param array $args Section arguments. */ do_action( "elementor/element/{$stack_name}/{$section_id}/after_section_end", $this, $args ); } /** * Start controls tabs. * * Used to add a new set of tabs inside a section. You should use this * method before adding new individual tabs using `start_controls_tab()`. * Each tab added after this point will be assigned to this group of tabs, * until you close it using `end_controls_tabs()` method. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public * * @param string $tabs_id Tabs ID. * @param array $args Tabs arguments. */ public function start_controls_tabs( $tabs_id, array $args = [] ) { if ( null !== $this->current_tab ) { wp_die( sprintf( 'Elementor: You can\'t start tabs before the end of the previous tabs "%s".', $this->current_tab['tabs_wrapper'] ) ); // XSS ok. } $args['type'] = Controls_Manager::TABS; $this->add_control( $tabs_id, $args ); $this->current_tab = [ 'tabs_wrapper' => $tabs_id, ]; foreach ( [ 'condition', 'conditions' ] as $key ) { if ( ! empty( $args[ $key ] ) ) { $this->current_tab[ $key ] = $args[ $key ]; } } if ( $this->injection_point ) { $this->injection_point['tab'] = $this->current_tab; } } /** * End controls tabs. * * Used to close an existing open controls tabs. When you use this method it * stops adding new controls to this tabs. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public */ public function end_controls_tabs() { $this->current_tab = null; } /** * Start controls tab. * * Used to add a new tab inside a group of tabs. Use this method before * adding new individual tabs using `start_controls_tab()`. * Each tab added after this point will be assigned to this group of tabs, * until you close it using `end_controls_tab()` method. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public * * @param string $tab_id Tab ID. * @param array $args Tab arguments. */ public function start_controls_tab( $tab_id, $args ) { if ( ! empty( $this->current_tab['inner_tab'] ) ) { wp_die( sprintf( 'Elementor: You can\'t start a tab before the end of the previous tab "%s".', $this->current_tab['inner_tab'] ) ); // XSS ok. } $args['type'] = Controls_Manager::TAB; $args['tabs_wrapper'] = $this->current_tab['tabs_wrapper']; $this->add_control( $tab_id, $args ); $this->current_tab['inner_tab'] = $tab_id; if ( $this->injection_point ) { $this->injection_point['tab']['inner_tab'] = $this->current_tab['inner_tab']; } } /** * End controls tab. * * Used to close an existing open controls tab. When you use this method it * stops adding new controls to this tab. * * This method should be used inside `_register_controls()`. * * @since 1.4.0 * @access public */ public function end_controls_tab() { unset( $this->current_tab['inner_tab'] ); } /** * Start popover. * * Used to add a new set of controls in a popover. When you use this method, * all the registered controls from this point will be assigned to this * popover, until you close the popover using `end_popover()` method. * * This method should be used inside `_register_controls()`. * * @since 1.9.0 * @access public */ final public function start_popover() { $this->current_popover = [ 'initialized' => false, ]; } /** * End popover. * * Used to close an existing open popover. When you use this method it stops * adding new controls to this popover. * * This method should be used inside `_register_controls()`. * * @since 1.9.0 * @access public */ final public function end_popover() { $this->current_popover = null; $last_control_key = $this->get_control_key( $this->get_pointer_index() - 1 ); $args = [ 'popover' => [ 'end' => true, ], ]; $options = [ 'recursive' => true, ]; $this->update_control( $last_control_key, $args, $options ); } /** * Print element template. * * Used to generate the element template on the editor. * * @since 2.0.0 * @access public */ public function print_template() { ob_start(); // TODO: This is for backwards compatibility starting from 2.9.0 // This `if` statement should be removed when the method is removed if ( method_exists( $this, '_content_template' ) ) { $this->_content_template(); } else { $this->content_template(); } $template_content = ob_get_clean(); $element_type = $this->get_type(); /** * Template content. * * Filters the controls stack template content before it's printed in the editor. * * The dynamic portion of the hook name, `$element_type`, refers to the element type. * * @since 1.0.0 * * @param string $content_template The controls stack template in the editor. * @param Controls_Stack $this The controls stack. */ $template_content = apply_filters( "elementor/{$element_type}/print_template", $template_content, $this ); if ( empty( $template_content ) ) { return; } ?> injection_point ) { wp_die( 'A controls injection is already opened. Please close current injection before starting a new one (use `end_injection`).' ); } $this->injection_point = $this->get_position_info( $position ); } /** * End injection. * * Used to close an existing opened injection point. * * When you use this method it stops adding new controls and sections to * this point and continue to add controls to the regular position in the * stack. * * @since 1.7.1 * @access public */ final public function end_injection() { $this->injection_point = null; } /** * Get injection point. * * Retrieve the injection point in the stack where new controls and sections * will be inserted. * * @since 1.9.2 * @access public * * @return array|null An array when an injection point is defined, null * otherwise. */ final public function get_injection_point() { return $this->injection_point; } /** * Register controls. * * Used to add new controls to any element type. For example, external * developers use this method to register controls in a widget. * * Should be inherited and register new controls using `add_control()`, * `add_responsive_control()` and `add_group_control()`, inside control * wrappers like `start_controls_section()`, `start_controls_tabs()` and * `start_controls_tab()`. * * @since 1.4.0 * @access protected */ protected function _register_controls() {} /** * Get default data. * * Retrieve the default data. Used to reset the data on initialization. * * @since 1.4.0 * @access protected * * @return array Default data. */ protected function get_default_data() { return [ 'id' => 0, 'settings' => [], ]; } /** * @since 2.3.0 * @access protected */ protected function get_init_settings() { $settings = $this->get_data( 'settings' ); foreach ( $this->get_controls() as $control ) { $control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] ); if ( ! $control_obj instanceof Base_Data_Control ) { continue; } $control = array_merge_recursive( $control_obj->get_settings(), $control ); $settings[ $control['name'] ] = $control_obj->get_value( $control, $settings ); } return $settings; } /** * Get initial config. * * Retrieve the current element initial configuration - controls list and * the tabs assigned to the control. * * @since 2.9.0 * @access protected * * @return array The initial config. */ protected function get_initial_config() { return [ 'controls' => $this->get_controls(), ]; } /** * Get initial config. * * Retrieve the current element initial configuration - controls list and * the tabs assigned to the control. * * @since 1.4.0 * @deprecated 2.9.0 use `get_initial_config()` instead * @access protected * * @return array The initial config. */ protected function _get_initial_config() { // _deprecated_function( __METHOD__, '2.9.0', 'get_initial_config' ); return $this->get_initial_config(); } /** * Get section arguments. * * Retrieve the section arguments based on section ID. * * @since 1.4.0 * @access protected * * @param string $section_id Section ID. * * @return array Section arguments. */ protected function get_section_args( $section_id ) { $section_control = $this->get_controls( $section_id ); $section_args_keys = [ 'tab', 'condition' ]; $args = array_intersect_key( $section_control, array_flip( $section_args_keys ) ); $args['section'] = $section_id; return $args; } /** * Render element. * * Generates the final HTML on the frontend. * * @since 2.0.0 * @access protected */ protected function render() {} /** * Print content template. * * Used to generate the content template on the editor, using a * Backbone JavaScript template. * * @access protected * @since 2.0.0 * * @param string $template_content Template content. */ protected function print_template_content( $template_content ) { echo $template_content; } /** * Render element output in the editor. * * Used to generate the live preview, using a Backbone JavaScript template. * * @since 2.9.0 * @access protected */ protected function content_template() {} /** * Render element output in the editor. * * Used to generate the live preview, using a Backbone JavaScript template. * * @since 2.0.0 * @deprecated 2.9.0 use `content_template()` instead * @access protected */ protected function _content_template() { // _deprecated_function( __METHOD__, '2.9.0', 'content_template' ); $this->content_template(); } /** * Initialize controls. * * Register the all controls added by `_register_controls()`. * * @since 2.0.0 * @access protected */ protected function init_controls() { Plugin::$instance->controls_manager->open_stack( $this ); // TODO: This is for backwards compatibility starting from 2.9.0 // This `if` statement should be removed when the method is removed if ( method_exists( $this, '_register_controls' ) ) { $this->_register_controls(); } else { $this->register_controls(); } } /** * Initialize the class. * * Set the raw data, the ID and the parsed settings. * * @since 2.9.0 * @access protected * * @param array $data Initial data. */ protected function init( $data ) { $this->data = array_merge( $this->get_default_data(), $data ); $this->id = $data['id']; } /** * Initialize the class. * * Set the raw data, the ID and the parsed settings. * * @since 1.4.0 * @deprecated 2.9.0 use `init()` instead * @access protected * * @param array $data Initial data. */ protected function _init( $data ) { // _deprecated_function( __METHOD__, '2.9.0', 'init' ); $this->init( $data ); } /** * Sanitize initial data. * * Performs settings cleaning and sanitization. * * @since 2.1.5 * @access private * * @param array $settings Settings to sanitize. * @param array $controls Optional. An array of controls. Default is an * empty array. * * @return array Sanitized settings. */ private function sanitize_settings( array $settings, array $controls = [] ) { if ( ! $controls ) { $controls = $this->get_controls(); } foreach ( $controls as $control ) { if ( 'repeater' === $control['type'] ) { if ( empty( $settings[ $control['name'] ] ) ) { continue; } foreach ( $settings[ $control['name'] ] as $index => $repeater_row_data ) { $sanitized_row_data = $this->sanitize_settings( $repeater_row_data, $control['fields'] ); $settings[ $control['name'] ][ $index ] = $sanitized_row_data; } continue; } $is_dynamic = isset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] ); if ( ! $is_dynamic ) { continue; } $value_to_check = $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ]; $tag_text_data = Plugin::$instance->dynamic_tags->tag_text_to_tag_data( $value_to_check ); if ( ! Plugin::$instance->dynamic_tags->get_tag_info( $tag_text_data['name'] ) ) { unset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] ); } } return $settings; } /** * Controls stack constructor. * * Initializing the control stack class using `$data`. The `$data` is required * for a normal instance. It is optional only for internal `type instance`. * * @since 1.4.0 * @access public * * @param array $data Optional. Control stack data. Default is an empty array. */ public function __construct( array $data = [] ) { if ( $data ) { // TODO: This is for backwards compatibility starting from 2.9.0 // This if statement should be removed when the method is hard-deprecated if ( method_exists( $this, '_init' ) ) { $this->_init( $data ); } else { $this->init( $data ); } } } } includes/user.php000066600000015021152142641160010046 0ustar00register_ajax_action( 'introduction_viewed', [ __CLASS__, 'set_introduction_viewed' ] ); $ajax->register_ajax_action( 'beta_tester_signup', [ __CLASS__, 'register_as_beta_tester' ] ); } /** * Is current user can edit. * * Whether the current user can edit the post. * * @since 1.0.0 * @access public * @static * * @param int $post_id Optional. The post ID. Default is `0`. * * @return bool Whether the current user can edit the post. */ public static function is_current_user_can_edit( $post_id = 0 ) { $post = get_post( $post_id ); if ( ! $post ) { return false; } if ( 'trash' === get_post_status( $post_id ) ) { return false; } if ( ! self::is_current_user_can_edit_post_type( $post->post_type ) ) { return false; } $post_type_object = get_post_type_object( $post->post_type ); if ( ! isset( $post_type_object->cap->edit_post ) ) { return false; } $edit_cap = $post_type_object->cap->edit_post; if ( ! current_user_can( $edit_cap, $post_id ) ) { return false; } if ( get_option( 'page_for_posts' ) === $post_id ) { return false; } return true; } /** * Is current user can access elementor. * * Whether the current user role is not excluded by Elementor Settings. * * @since 2.1.7 * @access public * @static * * @return bool True if can access, False otherwise. */ public static function is_current_user_in_editing_black_list() { $user = wp_get_current_user(); $exclude_roles = get_option( 'elementor_exclude_user_roles', [] ); $compare_roles = array_intersect( $user->roles, $exclude_roles ); if ( ! empty( $compare_roles ) ) { return false; } return true; } /** * Is current user can edit post type. * * Whether the current user can edit the given post type. * * @since 1.9.0 * @access public * @static * * @param string $post_type the post type slug to check. * * @return bool True if can edit, False otherwise. */ public static function is_current_user_can_edit_post_type( $post_type ) { if ( ! self::is_current_user_in_editing_black_list() ) { return false; } if ( ! Utils::is_post_type_support( $post_type ) ) { return false; } $post_type_object = get_post_type_object( $post_type ); if ( ! current_user_can( $post_type_object->cap->edit_posts ) ) { return false; } return true; } /** * Get user notices. * * Retrieve the list of notices for the current user. * * @since 2.0.0 * @access private * @static * * @return array A list of user notices. */ private static function get_user_notices() { return get_user_meta( get_current_user_id(), self::ADMIN_NOTICES_KEY, true ); } /** * Is user notice viewed. * * Whether the notice was viewed by the user. * * @since 1.0.0 * @access public * @static * * @param int $notice_id The notice ID. * * @return bool Whether the notice was viewed by the user. */ public static function is_user_notice_viewed( $notice_id ) { $notices = self::get_user_notices(); if ( empty( $notices ) || empty( $notices[ $notice_id ] ) ) { return false; } return true; } /** * Set admin notice as viewed. * * Flag the user admin notice as viewed using an authenticated ajax request. * * Fired by `wp_ajax_elementor_set_admin_notice_viewed` action. * * @since 1.0.0 * @access public * @static */ public static function ajax_set_admin_notice_viewed() { if ( empty( $_REQUEST['notice_id'] ) ) { wp_die(); } $notices = self::get_user_notices(); if ( empty( $notices ) ) { $notices = []; } $notices[ $_REQUEST['notice_id'] ] = 'true'; update_user_meta( get_current_user_id(), self::ADMIN_NOTICES_KEY, $notices ); if ( ! wp_doing_ajax() ) { wp_safe_redirect( admin_url() ); die; } wp_die(); } /** * @since 2.1.0 * @access public * @static */ public static function set_introduction_viewed( array $data ) { $user_introduction_meta = self::get_introduction_meta(); $user_introduction_meta[ $data['introductionKey'] ] = true; update_user_meta( get_current_user_id(), self::INTRODUCTION_KEY, $user_introduction_meta ); } public static function register_as_beta_tester( array $data ) { update_user_meta( get_current_user_id(), self::BETA_TESTER_META_KEY, true ); $response = wp_safe_remote_post( self::BETA_TESTER_API_URL, [ 'timeout' => 25, 'body' => [ 'api_version' => ELEMENTOR_VERSION, 'site_lang' => get_bloginfo( 'language' ), 'beta_tester_email' => $data['betaTesterEmail'], ], ] ); $response_code = (int) wp_remote_retrieve_response_code( $response ); if ( 200 === $response_code ) { self::set_introduction_viewed( [ 'introductionKey' => Beta_Testers::BETA_TESTER_SIGNUP, ] ); } } /** * @param string $key * * @return array|mixed|string * @since 2.1.0 * @access public * @static */ public static function get_introduction_meta( $key = '' ) { $user_introduction_meta = get_user_meta( get_current_user_id(), self::INTRODUCTION_KEY, true ); if ( ! $user_introduction_meta ) { $user_introduction_meta = []; } if ( $key ) { return empty( $user_introduction_meta[ $key ] ) ? '' : $user_introduction_meta[ $key ]; } return $user_introduction_meta; } } includes/template-library/classes/class-import-images.php000066600000007522152142641160017671 0ustar00_replace_image_ids[ $attachment['id'] ] ) ) { return $this->_replace_image_ids[ $attachment['id'] ]; } $post_id = $wpdb->get_var( $wpdb->prepare( 'SELECT `post_id` FROM `' . $wpdb->postmeta . '` WHERE `meta_key` = \'_elementor_source_image_hash\' AND `meta_value` = %s ;', $this->get_hash_image( $attachment['url'] ) ) ); if ( $post_id ) { $new_attachment = [ 'id' => $post_id, 'url' => wp_get_attachment_url( $post_id ), ]; $this->_replace_image_ids[ $attachment['id'] ] = $new_attachment; return $new_attachment; } return false; } /** * Import image. * * Import a single image from a remote server, upload the image WordPress * uploads folder, create a new attachment in the database and updates the * attachment metadata. * * @since 1.0.0 * @access public * * @param array $attachment The attachment. * * @return false|array Imported image data, or false. */ public function import( $attachment ) { $saved_image = $this->get_saved_image( $attachment ); if ( $saved_image ) { return $saved_image; } // Extract the file name and extension from the url. $filename = basename( $attachment['url'] ); $file_content = wp_remote_retrieve_body( wp_safe_remote_get( $attachment['url'] ) ); if ( empty( $file_content ) ) { return false; } $upload = wp_upload_bits( $filename, null, $file_content ); $post = [ 'post_title' => $filename, 'guid' => $upload['url'], ]; $info = wp_check_filetype( $upload['file'] ); if ( $info ) { $post['post_mime_type'] = $info['type']; } else { // For now just return the origin attachment return $attachment; // return new \WP_Error( 'attachment_processing_error', __( 'Invalid file type.', 'elementor' ) ); } $post_id = wp_insert_attachment( $post, $upload['file'] ); wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) ); update_post_meta( $post_id, '_elementor_source_image_hash', $this->get_hash_image( $attachment['url'] ) ); $new_attachment = [ 'id' => $post_id, 'url' => $upload['url'], ]; $this->_replace_image_ids[ $attachment['id'] ] = $new_attachment; return $new_attachment; } /** * Template library import images constructor. * * Initializing the images import class used by the template library through * the WordPress Filesystem API. * * @since 1.0.0 * @access public */ public function __construct() { if ( ! function_exists( 'WP_Filesystem' ) ) { require_once ABSPATH . 'wp-admin/includes/file.php'; } WP_Filesystem(); } } includes/template-library/manager.php000066600000036410152142641160013764 0ustar00register_default_sources(); $this->add_actions(); } /** * @since 2.3.0 * @access public */ public function add_actions() { add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] ); add_action( 'wp_ajax_elementor_library_direct_actions', [ $this, 'handle_direct_actions' ] ); // TODO: bc since 2.3.0 add_action( 'wp_ajax_elementor_update_templates', function() { if ( ! isset( $_POST['templates'] ) ) { return; } foreach ( $_POST['templates'] as & $template ) { if ( ! isset( $template['content'] ) ) { return; } $template['content'] = stripslashes( $template['content'] ); } wp_send_json_success( $this->handle_ajax_request( 'update_templates', $_POST ) ); } ); } /** * Get `Import_Images` instance. * * Retrieve the instance of the `Import_Images` class. * * @since 1.0.0 * @access public * * @return Import_Images Imported images instance. */ public function get_import_images_instance() { if ( null === $this->_import_images ) { $this->_import_images = new Import_Images(); } return $this->_import_images; } /** * Register template source. * * Used to register new template sources displayed in the template library. * * @since 1.0.0 * @access public * * @param string $source_class The name of source class. * @param array $args Optional. Class arguments. Default is an * empty array. * * @return \WP_Error|true True if the source was registered, `WP_Error` * otherwise. */ public function register_source( $source_class, $args = [] ) { if ( ! class_exists( $source_class ) ) { return new \WP_Error( 'source_class_name_not_exists' ); } $source_instance = new $source_class( $args ); if ( ! $source_instance instanceof Source_Base ) { return new \WP_Error( 'wrong_instance_source' ); } $source_id = $source_instance->get_id(); if ( isset( $this->_registered_sources[ $source_id ] ) ) { return new \WP_Error( 'source_exists' ); } $this->_registered_sources[ $source_id ] = $source_instance; return true; } /** * Unregister template source. * * Remove an existing template sources from the list of registered template * sources. * * @deprecated 2.7.0 * * @since 1.0.0 * @access public * * @param string $id The source ID. * * @return bool Whether the source was unregistered. */ public function unregister_source( $id ) { return true; } /** * Get registered template sources. * * Retrieve registered template sources. * * @since 1.0.0 * @access public * * @return Source_Base[] Registered template sources. */ public function get_registered_sources() { return $this->_registered_sources; } /** * Get template source. * * Retrieve single template sources for a given template ID. * * @since 1.0.0 * @access public * * @param string $id The source ID. * * @return false|Source_Base Template sources if one exist, False otherwise. */ public function get_source( $id ) { $sources = $this->get_registered_sources(); if ( ! isset( $sources[ $id ] ) ) { return false; } return $sources[ $id ]; } /** * Get templates. * * Retrieve all the templates from all the registered sources. * * @since 1.0.0 * @access public * * @return array Templates array. */ public function get_templates() { $templates = []; foreach ( $this->get_registered_sources() as $source ) { $templates = array_merge( $templates, $source->get_items() ); } return $templates; } /** * Get library data. * * Retrieve the library data. * * @since 1.9.0 * @access public * * @param array $args Library arguments. * * @return array Library data. */ public function get_library_data( array $args ) { $library_data = Api::get_library_data( ! empty( $args['sync'] ) ); // Ensure all document are registered. Plugin::$instance->documents->get_document_types(); return [ 'templates' => $this->get_templates(), 'config' => $library_data['types_data'], ]; } /** * Save template. * * Save new or update existing template on the database. * * @since 1.0.0 * @access public * * @param array $args Template arguments. * * @return \WP_Error|int The ID of the saved/updated template. */ public function save_template( array $args ) { $validate_args = $this->ensure_args( [ 'post_id', 'source', 'content', 'type' ], $args ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } $source = $this->get_source( $args['source'] ); if ( ! $source ) { return new \WP_Error( 'template_error', 'Template source not found.' ); } $args['content'] = json_decode( $args['content'], true ); $page = SettingsManager::get_settings_managers( 'page' )->get_model( $args['post_id'] ); $args['page_settings'] = $page->get_data( 'settings' ); $template_id = $source->save_item( $args ); if ( is_wp_error( $template_id ) ) { return $template_id; } return $source->get_item( $template_id ); } /** * Update template. * * Update template on the database. * * @since 1.0.0 * @access public * * @param array $template_data New template data. * * @return \WP_Error|Source_Base Template sources instance if the templates * was updated, `WP_Error` otherwise. */ public function update_template( array $template_data ) { $validate_args = $this->ensure_args( [ 'source', 'content', 'type' ], $template_data ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } $source = $this->get_source( $template_data['source'] ); if ( ! $source ) { return new \WP_Error( 'template_error', 'Template source not found.' ); } $template_data['content'] = json_decode( $template_data['content'], true ); $update = $source->update_item( $template_data ); if ( is_wp_error( $update ) ) { return $update; } return $source->get_item( $template_data['id'] ); } /** * Update templates. * * Update template on the database. * * @since 1.0.0 * @access public * * @param array $args Template arguments. * * @return \WP_Error|true True if templates updated, `WP_Error` otherwise. */ public function update_templates( array $args ) { foreach ( $args['templates'] as $template_data ) { $result = $this->update_template( $template_data ); if ( is_wp_error( $result ) ) { return $result; } } return true; } /** * Get template data. * * Retrieve the template data. * * @since 1.5.0 * @access public * * @param array $args Template arguments. * * @return \WP_Error|bool|array ?? */ public function get_template_data( array $args ) { $validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } if ( isset( $args['edit_mode'] ) ) { Plugin::$instance->editor->set_edit_mode( $args['edit_mode'] ); } $source = $this->get_source( $args['source'] ); if ( ! $source ) { return new \WP_Error( 'template_error', 'Template source not found.' ); } do_action( 'elementor/template-library/before_get_source_data', $args, $source ); $data = $source->get_data( $args ); do_action( 'elementor/template-library/after_get_source_data', $args, $source ); return $data; } /** * Delete template. * * Delete template from the database. * * @since 1.0.0 * @access public * * @param array $args Template arguments. * * @return \WP_Post|\WP_Error|false|null Post data on success, false or null * or 'WP_Error' on failure. */ public function delete_template( array $args ) { $validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } $source = $this->get_source( $args['source'] ); if ( ! $source ) { return new \WP_Error( 'template_error', 'Template source not found.' ); } return $source->delete_template( $args['template_id'] ); } /** * Export template. * * Export template to a file. * * @since 1.0.0 * @access public * * @param array $args Template arguments. * * @return mixed Whether the export succeeded or failed. */ public function export_template( array $args ) { $validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } $source = $this->get_source( $args['source'] ); if ( ! $source ) { return new \WP_Error( 'template_error', 'Template source not found' ); } return $source->export_template( $args['template_id'] ); } /** * @since 2.3.0 * @access public */ public function direct_import_template() { /** @var Source_Local $source */ $source = $this->get_source( 'local' ); return $source->import_template( $_FILES['file']['name'], $_FILES['file']['tmp_name'] ); } /** * Import template. * * Import template from a file. * * @since 1.0.0 * @access public * * @param array $data * * @return mixed Whether the export succeeded or failed. */ public function import_template( array $data ) { /** @var Source_Local $source */ $file_content = base64_decode( $data['fileData'] ); $tmp_file = tmpfile(); fwrite( $tmp_file, $file_content ); $source = $this->get_source( 'local' ); $result = $source->import_template( $data['fileName'], stream_get_meta_data( $tmp_file )['uri'] ); fclose( $tmp_file ); return $result; } /** * Mark template as favorite. * * Add the template to the user favorite templates. * * @since 1.9.0 * @access public * * @param array $args Template arguments. * * @return mixed Whether the template marked as favorite. */ public function mark_template_as_favorite( $args ) { $validate_args = $this->ensure_args( [ 'source', 'template_id', 'favorite' ], $args ); if ( is_wp_error( $validate_args ) ) { return $validate_args; } $source = $this->get_source( $args['source'] ); return $source->mark_as_favorite( $args['template_id'], filter_var( $args['favorite'], FILTER_VALIDATE_BOOLEAN ) ); } /** * Register default template sources. * * Register the 'local' and 'remote' template sources that Elementor use by * default. * * @since 1.0.0 * @access private */ private function register_default_sources() { $sources = [ 'local', 'remote', ]; foreach ( $sources as $source_filename ) { $class_name = ucwords( $source_filename ); $class_name = str_replace( '-', '_', $class_name ); $this->register_source( __NAMESPACE__ . '\Source_' . $class_name ); } } /** * Handle ajax request. * * Fire authenticated ajax actions for any given ajax request. * * @since 1.0.0 * @access private * * @param string $ajax_request Ajax request. * * @param array $data * * @return mixed * @throws \Exception */ private function handle_ajax_request( $ajax_request, array $data ) { if ( ! User::is_current_user_can_edit_post_type( Source_Local::CPT ) ) { throw new \Exception( 'Access Denied' ); } if ( ! empty( $data['editor_post_id'] ) ) { $editor_post_id = absint( $data['editor_post_id'] ); if ( ! get_post( $editor_post_id ) ) { throw new \Exception( __( 'Post not found.', 'elementor' ) ); } Plugin::$instance->db->switch_to_post( $editor_post_id ); } $result = call_user_func( [ $this, $ajax_request ], $data ); if ( is_wp_error( $result ) ) { throw new \Exception( $result->get_error_message() ); } return $result; } /** * Init ajax calls. * * Initialize template library ajax calls for allowed ajax requests. * * @since 2.3.0 * @access public * * @param Ajax $ajax */ public function register_ajax_actions( Ajax $ajax ) { $library_ajax_requests = [ 'get_library_data', 'get_template_data', 'save_template', 'update_templates', 'delete_template', 'import_template', 'mark_template_as_favorite', ]; foreach ( $library_ajax_requests as $ajax_request ) { $ajax->register_ajax_action( $ajax_request, function( $data ) use ( $ajax_request ) { return $this->handle_ajax_request( $ajax_request, $data ); } ); } } /** * @since 2.3.0 * @access public */ public function handle_direct_actions() { if ( ! User::is_current_user_can_edit_post_type( Source_Local::CPT ) ) { return; } /** @var Ajax $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); if ( ! $ajax->verify_request_nonce() ) { $this->handle_direct_action_error( 'Access Denied' ); } $action = $_REQUEST['library_action']; $result = $this->$action( $_REQUEST ); if ( is_wp_error( $result ) ) { /** @var \WP_Error $result */ $this->handle_direct_action_error( $result->get_error_message() . '.' ); } $callback = "on_{$action}_success"; if ( method_exists( $this, $callback ) ) { $this->$callback( $result ); } die; } /** * On successful template import. * * Redirect the user to the template library after template import was * successful finished. * * @since 2.3.0 * @access private */ private function on_direct_import_template_success() { wp_safe_redirect( admin_url( Source_Local::ADMIN_MENU_SLUG ) ); } /** * @since 2.3.0 * @access private */ private function handle_direct_action_error( $message ) { _default_wp_die_handler( $message, 'Elementor Library' ); } /** * Ensure arguments exist. * * Checks whether the required arguments exist in the specified arguments. * * @since 1.0.0 * @access private * * @param array $required_args Required arguments to check whether they * exist. * @param array $specified_args The list of all the specified arguments to * check against. * * @return \WP_Error|true True on success, 'WP_Error' otherwise. */ private function ensure_args( array $required_args, array $specified_args ) { $not_specified_args = array_diff( $required_args, array_keys( array_filter( $specified_args ) ) ); if ( $not_specified_args ) { return new \WP_Error( 'arguments_not_specified', sprintf( 'The required argument(s) "%s" not specified.', implode( ', ', $not_specified_args ) ) ); } return true; } } includes/template-library/sources/base.php000066600000020720152142641160014744 0ustar00register_data(); } /** * Mark template as favorite. * * Update user meta containing his favorite templates. For a given template * ID, add the template to the favorite templates or remove it from the * favorites, based on the `favorite` parameter. * * @since 1.9.0 * @access public * * @param int $template_id The template ID. * @param bool $favorite Optional. Whether the template is marked as * favorite, or not. Default is true. * * @return int|bool User meta ID if the key didn't exist, true on successful * update, false on failure. */ public function mark_as_favorite( $template_id, $favorite = true ) { $favorites_templates = $this->get_user_meta( 'favorites' ); if ( ! $favorites_templates ) { $favorites_templates = []; } if ( $favorite ) { $favorites_templates[ $template_id ] = $favorite; } elseif ( isset( $favorites_templates[ $template_id ] ) ) { unset( $favorites_templates[ $template_id ] ); } return $this->update_user_meta( 'favorites', $favorites_templates ); } /** * Get current user meta. * * Retrieve Elementor meta data for the current user. * * @since 1.9.0 * @access public * * @param string $item Optional. User meta key. Default is null. * * @return null|array An array of user meta data, or null otherwise. */ public function get_user_meta( $item = null ) { if ( null === $this->user_meta ) { $this->user_meta = get_user_meta( get_current_user_id(), $this->get_user_meta_prefix(), true ); } if ( ! $this->user_meta ) { $this->user_meta = []; } if ( $item ) { if ( isset( $this->user_meta[ $item ] ) ) { return $this->user_meta[ $item ]; } return null; } return $this->user_meta; } /** * Update current user meta. * * Update user meta data based on meta key an value. * * @since 1.9.0 * @access public * * @param string $key Optional. User meta key. * @param mixed $value Optional. User meta value. * * @return int|bool User meta ID if the key didn't exist, true on successful * update, false on failure. */ public function update_user_meta( $key, $value ) { $meta = $this->get_user_meta(); $meta[ $key ] = $value; $this->user_meta = $meta; return update_user_meta( get_current_user_id(), $this->get_user_meta_prefix(), $meta ); } /** * Replace elements IDs. * * For any given Elementor content/data, replace the IDs with new randomly * generated IDs. * * @since 1.0.0 * @access protected * * @param array $content Any type of Elementor data. * * @return mixed Iterated data. */ protected function replace_elements_ids( $content ) { return Plugin::$instance->db->iterate_data( $content, function( $element ) { $element['id'] = Utils::generate_random_string(); return $element; } ); } /** * Get Elementor library user meta prefix. * * Retrieve user meta prefix used to save Elementor data. * * @since 1.9.0 * @access protected * * @return string User meta prefix. */ protected function get_user_meta_prefix() { return 'elementor_library_' . $this->get_id(); } /** * Process content for export/import. * * Process the content and all the inner elements, and prepare all the * elements data for export/import. * * @since 1.5.0 * @access protected * * @param array $content A set of elements. * @param string $method Accepts either `on_export` to export data or * `on_import` to import data. * * @return mixed Processed content data. */ protected function process_export_import_content( $content, $method ) { return Plugin::$instance->db->iterate_data( $content, function( $element_data ) use ( $method ) { $element = Plugin::$instance->elements_manager->create_element_instance( $element_data ); // If the widget/element isn't exist, like a plugin that creates a widget but deactivated if ( ! $element ) { return null; } return $this->process_element_export_import_content( $element, $method ); } ); } /** * Process single element content for export/import. * * Process any given element and prepare the element data for export/import. * * @since 1.5.0 * @access protected * * @param Controls_Stack $element * @param string $method * * @return array Processed element data. */ protected function process_element_export_import_content( Controls_Stack $element, $method ) { $element_data = $element->get_data(); if ( method_exists( $element, $method ) ) { // TODO: Use the internal element data without parameters. $element_data = $element->{$method}( $element_data ); } foreach ( $element->get_controls() as $control ) { $control_class = Plugin::$instance->controls_manager->get_control( $control['type'] ); // If the control isn't exist, like a plugin that creates the control but deactivated. if ( ! $control_class ) { return $element_data; } if ( method_exists( $control_class, $method ) ) { $element_data['settings'][ $control['name'] ] = $control_class->{$method}( $element->get_settings( $control['name'] ), $control ); } // On Export, check if the control has an argument 'export' => false. if ( 'on_export' === $method && isset( $control['export'] ) && false === $control['export'] ) { unset( $element_data['settings'][ $control['name'] ] ); } } return $element_data; } } includes/template-library/sources/remote.php000066600000012744152142641160015334 0ustar00prepare_template( $template_data ); } } return $templates; } /** * Get remote template. * * Retrieve a single remote template from Elementor.com servers. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return array Remote template. */ public function get_item( $template_id ) { $templates = $this->get_items(); return $templates[ $template_id ]; } /** * Save remote template. * * Remote template from Elementor.com servers cannot be saved on the * database as they are retrieved from remote servers. * * @since 1.0.0 * @access public * * @param array $template_data Remote template data. * * @return \WP_Error */ public function save_item( $template_data ) { return new \WP_Error( 'invalid_request', 'Cannot save template to a remote source' ); } /** * Update remote template. * * Remote template from Elementor.com servers cannot be updated on the * database as they are retrieved from remote servers. * * @since 1.0.0 * @access public * * @param array $new_data New template data. * * @return \WP_Error */ public function update_item( $new_data ) { return new \WP_Error( 'invalid_request', 'Cannot update template to a remote source' ); } /** * Delete remote template. * * Remote template from Elementor.com servers cannot be deleted from the * database as they are retrieved from remote servers. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return \WP_Error */ public function delete_template( $template_id ) { return new \WP_Error( 'invalid_request', 'Cannot delete template from a remote source' ); } /** * Export remote template. * * Remote template from Elementor.com servers cannot be exported from the * database as they are retrieved from remote servers. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return \WP_Error */ public function export_template( $template_id ) { return new \WP_Error( 'invalid_request', 'Cannot export template from a remote source' ); } /** * Get remote template data. * * Retrieve the data of a single remote template from Elementor.com servers. * * @since 1.5.0 * @access public * * @param array $args Custom template arguments. * @param string $context Optional. The context. Default is `display`. * * @return array|\WP_Error Remote Template data. */ public function get_data( array $args, $context = 'display' ) { $data = Api::get_template_content( $args['template_id'] ); if ( is_wp_error( $data ) ) { return $data; } // BC. $data = (array) $data; $data['content'] = $this->replace_elements_ids( $data['content'] ); $data['content'] = $this->process_export_import_content( $data['content'], 'on_import' ); $post_id = $args['editor_post_id']; $document = Plugin::$instance->documents->get( $post_id ); if ( $document ) { $data['content'] = $document->get_elements_raw_data( $data['content'], true ); } return $data; } /** * @since 2.2.0 * @access private */ private function prepare_template( array $template_data ) { $favorite_templates = $this->get_user_meta( 'favorites' ); return [ 'template_id' => $template_data['id'], 'source' => $this->get_id(), 'type' => $template_data['type'], 'subtype' => $template_data['subtype'], 'title' => $template_data['title'], 'thumbnail' => $template_data['thumbnail'], 'date' => $template_data['tmpl_created'], 'author' => $template_data['author'], 'tags' => json_decode( $template_data['tags'] ), 'isPro' => ( '1' === $template_data['is_pro'] ), 'popularityIndex' => (int) $template_data['popularity_index'], 'trendIndex' => (int) $template_data['trend_index'], 'hasPageSettings' => ( '1' === $template_data['has_page_settings'] ), 'url' => $template_data['url'], 'favorite' => ! empty( $favorite_templates[ $template_data['id'] ] ), ]; } } includes/template-library/sources/local.php000066600000125210152142641160015124 0ustar00base && self::CPT === $current_screen->post_type; } /** * Add template type. * * Register new template type to the list of supported local template types. * * @since 1.0.3 * @access public * @static * * @param string $type Template type. */ public static function add_template_type( $type ) { self::$template_types[ $type ] = $type; } /** * Remove template type. * * Remove existing template type from the list of supported local template * types. * * @since 1.8.0 * @access public * @static * * @param string $type Template type. */ public static function remove_template_type( $type ) { if ( isset( self::$template_types[ $type ] ) ) { unset( self::$template_types[ $type ] ); } } public static function get_admin_url( $relative = false ) { $base_url = self::ADMIN_MENU_SLUG; if ( ! $relative ) { $base_url = admin_url( $base_url ); } return add_query_arg( 'tabs_group', 'library', $base_url ); } /** * Get local template ID. * * Retrieve the local template ID. * * @since 1.0.0 * @access public * * @return string The local template ID. */ public function get_id() { return 'local'; } /** * Get local template title. * * Retrieve the local template title. * * @since 1.0.0 * @access public * * @return string The local template title. */ public function get_title() { return __( 'Local', 'elementor' ); } /** * Register local template data. * * Used to register custom template data like a post type, a taxonomy or any * other data. * * The local template class registers a new `elementor_library` post type * and an `elementor_library_type` taxonomy. They are used to store data for * local templates saved by the user on his site. * * @since 1.0.0 * @access public */ public function register_data() { $labels = [ 'name' => _x( 'My Templates', 'Template Library', 'elementor' ), 'singular_name' => _x( 'Template', 'Template Library', 'elementor' ), 'add_new' => _x( 'Add New', 'Template Library', 'elementor' ), 'add_new_item' => _x( 'Add New Template', 'Template Library', 'elementor' ), 'edit_item' => _x( 'Edit Template', 'Template Library', 'elementor' ), 'new_item' => _x( 'New Template', 'Template Library', 'elementor' ), 'all_items' => _x( 'All Templates', 'Template Library', 'elementor' ), 'view_item' => _x( 'View Template', 'Template Library', 'elementor' ), 'search_items' => _x( 'Search Template', 'Template Library', 'elementor' ), 'not_found' => _x( 'No Templates found', 'Template Library', 'elementor' ), 'not_found_in_trash' => _x( 'No Templates found in Trash', 'Template Library', 'elementor' ), 'parent_item_colon' => '', 'menu_name' => _x( 'Templates', 'Template Library', 'elementor' ), ]; $args = [ 'labels' => $labels, 'public' => true, 'rewrite' => false, 'menu_icon' => 'dashicons-admin-page', 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => false, 'exclude_from_search' => true, 'capability_type' => 'post', 'hierarchical' => false, 'supports' => [ 'title', 'thumbnail', 'author', 'elementor' ], ]; /** * Register template library post type args. * * Filters the post type arguments when registering elementor template library post type. * * @since 1.0.0 * * @param array $args Arguments for registering a post type. */ $args = apply_filters( 'elementor/template_library/sources/local/register_post_type_args', $args ); $this->post_type_object = register_post_type( self::CPT, $args ); $args = [ 'hierarchical' => false, 'show_ui' => false, 'show_in_nav_menus' => false, 'show_admin_column' => true, 'query_var' => is_admin(), 'rewrite' => false, 'public' => false, 'label' => _x( 'Type', 'Template Library', 'elementor' ), ]; /** * Register template library taxonomy args. * * Filters the taxonomy arguments when registering elementor template library taxonomy. * * @since 1.0.0 * * @param array $args Arguments for registering a taxonomy. */ $args = apply_filters( 'elementor/template_library/sources/local/register_taxonomy_args', $args ); register_taxonomy( self::TAXONOMY_TYPE_SLUG, self::CPT, $args ); /** * Categories */ $args = [ 'hierarchical' => true, 'show_ui' => true, 'show_in_nav_menus' => false, 'show_admin_column' => true, 'query_var' => is_admin(), 'rewrite' => false, 'public' => false, 'labels' => [ 'name' => _x( 'Categories', 'Template Library', 'elementor' ), 'singular_name' => _x( 'Category', 'Template Library', 'elementor' ), 'all_items' => _x( 'All Categories', 'Template Library', 'elementor' ), ], ]; /** * Register template library category args. * * Filters the category arguments when registering elementor template library category. * * @since 2.4.0 * * @param array $args Arguments for registering a category. */ $args = apply_filters( 'elementor/template_library/sources/local/register_category_args', $args ); register_taxonomy( self::TAXONOMY_CATEGORY_SLUG, self::CPT, $args ); } /** * Remove Add New item from admin menu. * * Fired by `admin_menu` action. * * @since 2.4.0 * @access public */ public function admin_menu_reorder() { global $submenu; if ( ! isset( $submenu[ self::ADMIN_MENU_SLUG ] ) ) { return; } $library_submenu = &$submenu[ self::ADMIN_MENU_SLUG ]; // Remove 'All Templates' menu. unset( $library_submenu[5] ); // If current use can 'Add New' - move the menu to end, and add the '#add_new' anchor. if ( isset( $library_submenu[10][2] ) ) { $library_submenu[700] = $library_submenu[10]; unset( $library_submenu[10] ); $library_submenu[700][2] = admin_url( self::ADMIN_MENU_SLUG . '#add_new' ); } // Move the 'Categories' menu to end. if ( isset( $library_submenu[15] ) ) { $library_submenu[800] = $library_submenu[15]; unset( $library_submenu[15] ); } if ( $this->is_current_screen() ) { $library_title = $this->get_library_title(); foreach ( $library_submenu as &$item ) { if ( $library_title === $item[0] ) { if ( ! isset( $item[4] ) ) { $item[4] = ''; } $item[4] .= ' current'; } } } } public function admin_menu() { add_submenu_page( self::ADMIN_MENU_SLUG, '', __( 'Saved Templates', 'elementor' ), Editor::EDITING_CAPABILITY, self::get_admin_url( true ) ); } public function admin_title( $admin_title, $title ) { $library_title = $this->get_library_title(); if ( $library_title ) { $admin_title = str_replace( $title, $library_title, $admin_title ); } return $admin_title; } public function replace_admin_heading() { $library_title = $this->get_library_title(); if ( $library_title ) { global $post_type_object; $post_type_object->labels->name = $library_title; } } /** * Get local templates. * * Retrieve local templates saved by the user on his site. * * @since 1.0.0 * @access public * * @param array $args Optional. Filter templates based on a set of * arguments. Default is an empty array. * * @return array Local templates. */ public function get_items( $args = [] ) { $template_types = array_values( self::$template_types ); if ( ! empty( $args['type'] ) ) { $template_types = $args['type']; } $templates_query = new \WP_Query( [ 'post_type' => self::CPT, 'post_status' => 'publish', 'posts_per_page' => -1, 'orderby' => 'title', 'order' => 'ASC', 'meta_query' => [ [ 'key' => Document::TYPE_META_KEY, 'value' => $template_types, ], ], ] ); $templates = []; if ( $templates_query->have_posts() ) { foreach ( $templates_query->get_posts() as $post ) { $templates[] = $this->get_item( $post->ID ); } } return $templates; } /** * Save local template. * * Save new or update existing template on the database. * * @since 1.0.0 * @access public * * @param array $template_data Local template data. * * @return \WP_Error|int The ID of the saved/updated template, `WP_Error` otherwise. */ public function save_item( $template_data ) { if ( ! current_user_can( $this->post_type_object->cap->edit_posts ) ) { return new \WP_Error( 'save_error', __( 'Access denied.', 'elementor' ) ); } $defaults = [ 'title' => __( '(no title)', 'elementor' ), 'page_settings' => [], 'status' => current_user_can( 'publish_posts' ) ? 'publish' : 'pending', ]; $template_data = wp_parse_args( $template_data, $defaults ); $document = Plugin::$instance->documents->create( $template_data['type'], [ 'post_title' => $template_data['title'], 'post_status' => $template_data['status'], 'post_type' => self::CPT, ] ); if ( is_wp_error( $document ) ) { /** * @var \WP_Error $document */ return $document; } if ( ! empty( $template_data['content'] ) ) { $template_data['content'] = $this->replace_elements_ids( $template_data['content'] ); } $document->save( [ 'elements' => $template_data['content'], 'settings' => $template_data['page_settings'], ] ); $template_id = $document->get_main_id(); /** * After template library save. * * Fires after Elementor template library was saved. * * @since 1.0.1 * * @param int $template_id The ID of the template. * @param array $template_data The template data. */ do_action( 'elementor/template-library/after_save_template', $template_id, $template_data ); /** * After template library update. * * Fires after Elementor template library was updated. * * @since 1.0.1 * * @param int $template_id The ID of the template. * @param array $template_data The template data. */ do_action( 'elementor/template-library/after_update_template', $template_id, $template_data ); return $template_id; } /** * Update local template. * * Update template on the database. * * @since 1.0.0 * @access public * * @param array $new_data New template data. * * @return \WP_Error|true True if template updated, `WP_Error` otherwise. */ public function update_item( $new_data ) { if ( ! current_user_can( $this->post_type_object->cap->edit_post, $new_data['id'] ) ) { return new \WP_Error( 'save_error', __( 'Access denied.', 'elementor' ) ); } $document = Plugin::$instance->documents->get( $new_data['id'] ); if ( ! $document ) { return new \WP_Error( 'save_error', __( 'Template not exist.', 'elementor' ) ); } $document->save( [ 'elements' => $new_data['content'], ] ); /** * After template library update. * * Fires after Elementor template library was updated. * * @since 1.0.0 * * @param int $new_data_id The ID of the new template. * @param array $new_data The new template data. */ do_action( 'elementor/template-library/after_update_template', $new_data['id'], $new_data ); return true; } /** * Get local template. * * Retrieve a single local template saved by the user on his site. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return array Local template. */ public function get_item( $template_id ) { $post = get_post( $template_id ); $user = get_user_by( 'id', $post->post_author ); $page = SettingsManager::get_settings_managers( 'page' )->get_model( $template_id ); $page_settings = $page->get_data( 'settings' ); $date = strtotime( $post->post_date ); $data = [ 'template_id' => $post->ID, 'source' => $this->get_id(), 'type' => self::get_template_type( $post->ID ), 'title' => $post->post_title, 'thumbnail' => get_the_post_thumbnail_url( $post ), 'date' => $date, 'human_date' => date_i18n( get_option( 'date_format' ), $date ), 'author' => $user->display_name, 'hasPageSettings' => ! empty( $page_settings ), 'tags' => [], 'export_link' => $this->get_export_link( $template_id ), 'url' => get_permalink( $post->ID ), ]; /** * Get template library template. * * Filters the template data when retrieving a single template from the * template library. * * @since 1.0.0 * * @param array $data Template data. */ $data = apply_filters( 'elementor/template-library/get_template', $data ); return $data; } /** * Get template data. * * Retrieve the data of a single local template saved by the user on his site. * * @since 1.5.0 * @access public * * @param array $args Custom template arguments. * * @return array Local template data. */ public function get_data( array $args ) { $db = Plugin::$instance->db; $template_id = $args['template_id']; // TODO: Validate the data (in JS too!). if ( ! empty( $args['display'] ) ) { $content = $db->get_builder( $template_id ); } else { $document = Plugin::$instance->documents->get( $template_id ); $content = $document ? $document->get_elements_data() : []; } if ( ! empty( $content ) ) { $content = $this->replace_elements_ids( $content ); } $data = [ 'content' => $content, ]; if ( ! empty( $args['with_page_settings'] ) ) { $page = SettingsManager::get_settings_managers( 'page' )->get_model( $args['template_id'] ); $data['page_settings'] = $page->get_data( 'settings' ); } return $data; } /** * Delete local template. * * Delete template from the database. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return \WP_Post|\WP_Error|false|null Post data on success, false or null * or 'WP_Error' on failure. */ public function delete_template( $template_id ) { if ( ! current_user_can( $this->post_type_object->cap->delete_post, $template_id ) ) { return new \WP_Error( 'template_error', __( 'Access denied.', 'elementor' ) ); } return wp_delete_post( $template_id, true ); } /** * Export local template. * * Export template to a file. * * @since 1.0.0 * @access public * * @param int $template_id The template ID. * * @return \WP_Error WordPress error if template export failed. */ public function export_template( $template_id ) { $file_data = $this->prepare_template_export( $template_id ); if ( is_wp_error( $file_data ) ) { return $file_data; } $this->send_file_headers( $file_data['name'], strlen( $file_data['content'] ) ); // Clear buffering just in case. @ob_end_clean(); flush(); // Output file contents. echo $file_data['content']; die; } /** * Export multiple local templates. * * Export multiple template to a ZIP file. * * @since 1.6.0 * @access public * * @param array $template_ids An array of template IDs. * * @return \WP_Error WordPress error if export failed. */ public function export_multiple_templates( array $template_ids ) { $files = []; $wp_upload_dir = wp_upload_dir(); $temp_path = $wp_upload_dir['basedir'] . '/' . self::TEMP_FILES_DIR; // Create temp path if it doesn't exist wp_mkdir_p( $temp_path ); // Create all json files foreach ( $template_ids as $template_id ) { $file_data = $this->prepare_template_export( $template_id ); if ( is_wp_error( $file_data ) ) { continue; } $complete_path = $temp_path . '/' . $file_data['name']; $put_contents = file_put_contents( $complete_path, $file_data['content'] ); if ( ! $put_contents ) { return new \WP_Error( '404', sprintf( 'Cannot create file "%s".', $file_data['name'] ) ); } $files[] = [ 'path' => $complete_path, 'name' => $file_data['name'], ]; } if ( ! $files ) { return new \WP_Error( 'empty_files', 'There is no files to export (probably all the requested templates are empty).' ); } // Create temporary .zip file $zip_archive_filename = 'elementor-templates-' . gmdate( 'Y-m-d' ) . '.zip'; $zip_archive = new \ZipArchive(); $zip_complete_path = $temp_path . '/' . $zip_archive_filename; $zip_archive->open( $zip_complete_path, \ZipArchive::CREATE ); foreach ( $files as $file ) { $zip_archive->addFile( $file['path'], $file['name'] ); } $zip_archive->close(); foreach ( $files as $file ) { unlink( $file['path'] ); } $this->send_file_headers( $zip_archive_filename, filesize( $zip_complete_path ) ); @ob_end_flush(); @readfile( $zip_complete_path ); unlink( $zip_complete_path ); die; } /** * Import local template. * * Import template from a file. * * @since 1.0.0 * @access public * * @param string $name - The file name * @param string $path - The file path * * @return \WP_Error|array An array of items on success, 'WP_Error' on failure. */ public function import_template( $name, $path ) { if ( empty( $path ) ) { return new \WP_Error( 'file_error', 'Please upload a file to import' ); } $items = []; $file_extension = pathinfo( $name, PATHINFO_EXTENSION ); if ( 'zip' === $file_extension ) { if ( ! class_exists( '\ZipArchive' ) ) { return new \WP_Error( 'zip_error', 'PHP Zip extension not loaded' ); } $zip = new \ZipArchive(); $wp_upload_dir = wp_upload_dir(); $temp_path = $wp_upload_dir['basedir'] . '/' . self::TEMP_FILES_DIR . '/' . uniqid(); $zip->open( $path ); $valid_entries = []; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase for ( $i = 0; $i < $zip->numFiles; $i++ ) { $zipped_file_name = $zip->getNameIndex( $i ); $zipped_extension = pathinfo( $zipped_file_name, PATHINFO_EXTENSION ); if ( 'json' === $zipped_extension ) { $valid_entries[] = $zipped_file_name; } } if ( ! empty( $valid_entries ) ) { $zip->extractTo( $temp_path, $valid_entries ); } $zip->close(); $file_names = array_diff( scandir( $temp_path ), [ '.', '..' ] ); foreach ( $file_names as $file_name ) { $full_file_name = $temp_path . '/' . $file_name; $import_result = $this->import_single_template( $full_file_name ); unlink( $full_file_name ); if ( is_wp_error( $import_result ) ) { return $import_result; } $items[] = $import_result; } rmdir( $temp_path ); } else { $import_result = $this->import_single_template( $path ); if ( is_wp_error( $import_result ) ) { return $import_result; } $items[] = $import_result; } return $items; } /** * Post row actions. * * Add an export link to the template library action links table list. * * Fired by `post_row_actions` filter. * * @since 1.0.0 * @access public * * @param array $actions An array of row action links. * @param \WP_Post $post The post object. * * @return array An updated array of row action links. */ public function post_row_actions( $actions, \WP_Post $post ) { if ( self::is_base_templates_screen() ) { if ( $this->is_template_supports_export( $post->ID ) ) { $actions['export-template'] = sprintf( '
%2$s', $this->get_export_link( $post->ID ), __( 'Export Template', 'elementor' ) ); } } return $actions; } /** * Admin import template form. * * The import form displayed in "My Library" screen in WordPress dashboard. * * The form allows the user to import template in json/zip format to the site. * * Fired by `admin_footer` action. * * @since 1.0.0 * @access public */ public function admin_import_template_form() { if ( ! self::is_base_templates_screen() ) { return; } /** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); ?>
post_type && isset( $post_states['elementor'] ) ) { unset( $post_states['elementor'] ); } return $post_states; } /** * Get template export link. * * Retrieve the link used to export a single template based on the template * ID. * * @since 2.0.0 * @access private * * @param int $template_id The template ID. * * @return string Template export URL. */ private function get_export_link( $template_id ) { // TODO: BC since 2.3.0 - Use `$ajax->create_nonce()` /** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */ // $ajax = Plugin::$instance->common->get_component( 'ajax' ); return add_query_arg( [ 'action' => 'elementor_library_direct_actions', 'library_action' => 'export_template', 'source' => $this->get_id(), '_nonce' => wp_create_nonce( 'elementor_ajax' ), 'template_id' => $template_id, ], admin_url( 'admin-ajax.php' ) ); } /** * On template save. * * Run this method when template is being saved. * * Fired by `save_post` action. * * @since 1.0.1 * @access public * * @param int $post_id Post ID. * @param \WP_Post $post The current post object. */ public function on_save_post( $post_id, \WP_Post $post ) { if ( self::CPT !== $post->post_type ) { return; } if ( self::get_template_type( $post_id ) ) { // It's already with a type return; } // Don't save type on import, the importer will do it. if ( did_action( 'import_start' ) ) { return; } $this->save_item_type( $post_id, 'page' ); } /** * Save item type. * * When saving/updating templates, this method is used to update the post * meta data and the taxonomy. * * @since 1.0.1 * @access private * * @param int $post_id Post ID. * @param string $type Item type. */ private function save_item_type( $post_id, $type ) { update_post_meta( $post_id, Document::TYPE_META_KEY, $type ); wp_set_object_terms( $post_id, $type, self::TAXONOMY_TYPE_SLUG ); } /** * Bulk export action. * * Adds an 'Export' action to the Bulk Actions drop-down in the template * library. * * Fired by `bulk_actions-edit-elementor_library` filter. * * @since 1.6.0 * @access public * * @param array $actions An array of the available bulk actions. * * @return array An array of the available bulk actions. */ public function admin_add_bulk_export_action( $actions ) { $actions[ self::BULK_EXPORT_ACTION ] = __( 'Export', 'elementor' ); return $actions; } /** * Add bulk export action. * * Handles the template library bulk export action. * * Fired by `handle_bulk_actions-edit-elementor_library` filter. * * @since 1.6.0 * @access public * * @param string $redirect_to The redirect URL. * @param string $action The action being taken. * @param array $post_ids The items to take the action on. */ public function admin_export_multiple_templates( $redirect_to, $action, $post_ids ) { if ( self::BULK_EXPORT_ACTION === $action ) { $result = $this->export_multiple_templates( $post_ids ); // If you reach this line, the export failed wp_die( $result->get_error_message() ); } } /** * Print admin tabs. * * Used to output the template library tabs with their labels. * * Fired by `views_edit-elementor_library` filter. * * @since 2.0.0 * @access public * * @param array $views An array of available list table views. * * @return array An updated array of available list table views. */ public function admin_print_tabs( $views ) { $current_type = ''; $active_class = ' nav-tab-active'; $current_tabs_group = $this->get_current_tab_group(); if ( ! empty( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ] ) ) { $current_type = $_REQUEST[ self::TAXONOMY_TYPE_SLUG ]; $active_class = ''; } $url_args = [ 'post_type' => self::CPT, 'tabs_group' => $current_tabs_group, ]; $baseurl = add_query_arg( $url_args, admin_url( 'edit.php' ) ); $filter = [ 'admin_tab_group' => $current_tabs_group, ]; $operator = 'and'; if ( empty( $current_tabs_group ) ) { // Don't include 'not-supported' or other templates that don't set their `admin_tab_group`. $operator = 'NOT'; } $doc_types = Plugin::$instance->documents->get_document_types( $filter, $operator ); if ( 1 >= count( $doc_types ) ) { return $views; } ?> get_pagination_arg( 'total_items' ); if ( ! empty( $total_items ) || ! empty( $_REQUEST['s'] ) ) { return; } $inline_style = '#posts-filter .wp-list-table, #posts-filter .tablenav.top, .tablenav.bottom .actions, .wrap .subsubsub { display:none;}'; $current_type = get_query_var( 'elementor_library_type' ); $document_types = Plugin::instance()->documents->get_document_types(); if ( empty( $document_types[ $current_type ] ) ) { return; } // TODO: Better way to exclude widget type. if ( 'widget' === $current_type ) { return; } if ( empty( $current_type ) ) { $counts = (array) wp_count_posts( self::CPT ); unset( $counts['auto-draft'] ); $count = array_sum( $counts ); if ( 0 < $count ) { return; } $current_type = 'template'; $inline_style .= '#elementor-template-library-tabs-wrapper {display: none;}'; } $current_type_label = $this->get_template_label_by_type( $current_type ); ?>
labels->all_items; $dropdown_options = array( 'show_option_all' => $all_items, 'show_option_none' => $all_items, 'hide_empty' => 0, 'hierarchical' => 1, 'show_count' => 0, 'orderby' => 'name', 'value_field' => 'slug', 'taxonomy' => self::TAXONOMY_CATEGORY_SLUG, 'name' => self::TAXONOMY_CATEGORY_SLUG, 'selected' => empty( $_GET[ self::TAXONOMY_CATEGORY_SLUG ] ) ? '' : $_GET[ self::TAXONOMY_CATEGORY_SLUG ], ); echo ''; wp_dropdown_categories( $dropdown_options ); } /** * Import single template. * * Import template from a file to the database. * * @since 1.6.0 * @access private * * @param string $file_name File name. * * @return \WP_Error|int|array Local template array, or template ID, or * `WP_Error`. */ private function import_single_template( $file_name ) { $data = json_decode( file_get_contents( $file_name ), true ); if ( empty( $data ) ) { return new \WP_Error( 'file_error', 'Invalid File' ); } $content = $data['content']; if ( ! is_array( $content ) ) { return new \WP_Error( 'file_error', 'Invalid File' ); } $content = $this->process_export_import_content( $content, 'on_import' ); $page_settings = []; if ( ! empty( $data['page_settings'] ) ) { $page = new Model( [ 'id' => 0, 'settings' => $data['page_settings'], ] ); $page_settings_data = $this->process_element_export_import_content( $page, 'on_import' ); if ( ! empty( $page_settings_data['settings'] ) ) { $page_settings = $page_settings_data['settings']; } } $template_id = $this->save_item( [ 'content' => $content, 'title' => $data['title'], 'type' => $data['type'], 'page_settings' => $page_settings, ] ); if ( is_wp_error( $template_id ) ) { return $template_id; } return $this->get_item( $template_id ); } /** * Prepare template to export. * * Retrieve the relevant template data and return them as an array. * * @since 1.6.0 * @access private * * @param int $template_id The template ID. * * @return \WP_Error|array Exported template data. */ private function prepare_template_export( $template_id ) { $template_data = $this->get_data( [ 'template_id' => $template_id, ] ); if ( empty( $template_data['content'] ) ) { return new \WP_Error( 'empty_template', 'The template is empty' ); } $template_data['content'] = $this->process_export_import_content( $template_data['content'], 'on_export' ); if ( get_post_meta( $template_id, '_elementor_page_settings', true ) ) { $page = SettingsManager::get_settings_managers( 'page' )->get_model( $template_id ); $page_settings_data = $this->process_element_export_import_content( $page, 'on_export' ); if ( ! empty( $page_settings_data['settings'] ) ) { $template_data['page_settings'] = $page_settings_data['settings']; } } $export_data = [ 'version' => DB::DB_VERSION, 'title' => get_the_title( $template_id ), 'type' => self::get_template_type( $template_id ), ]; $export_data += $template_data; return [ 'name' => 'elementor-' . $template_id . '-' . gmdate( 'Y-m-d' ) . '.json', 'content' => wp_json_encode( $export_data ), ]; } /** * Send file headers. * * Set the file header when export template data to a file. * * @since 1.6.0 * @access private * * @param string $file_name File name. * @param int $file_size File size. */ private function send_file_headers( $file_name, $file_size ) { header( 'Content-Type: application/octet-stream' ); header( 'Content-Disposition: attachment; filename=' . $file_name ); header( 'Expires: 0' ); header( 'Cache-Control: must-revalidate' ); header( 'Pragma: public' ); header( 'Content-Length: ' . $file_size ); } /** * Get template label by type. * * Retrieve the template label for any given template type. * * @since 2.0.0 * @access private * * @param string $template_type Template type. * * @return string Template label. */ private function get_template_label_by_type( $template_type ) { $document_types = Plugin::instance()->documents->get_document_types(); if ( isset( $document_types[ $template_type ] ) ) { $template_label = call_user_func( [ $document_types[ $template_type ], 'get_title' ] ); } else { $template_label = ucwords( str_replace( [ '_', '-' ], ' ', $template_type ) ); } /** * Template label by template type. * * Filters the template label by template type in the template library . * * @since 2.0.0 * * @param string $template_label Template label. * @param string $template_type Template type. */ $template_label = apply_filters( 'elementor/template-library/get_template_label_by_type', $template_label, $template_type ); return $template_label; } /** * Filter template types in admin query. * * Update the template types in the main admin query. * * Fired by `parse_query` action. * * @since 2.4.0 * @access public * * @param \WP_Query $query The `WP_Query` instance. */ public function admin_query_filter_types( \WP_Query $query ) { if ( ! $this->is_current_screen() || ! empty( $query->query_vars['meta_key'] ) ) { return; } $current_tabs_group = $this->get_current_tab_group(); if ( isset( $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] ) && '-1' === $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] ) { unset( $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] ); } if ( empty( $current_tabs_group ) ) { return; } $doc_types = Plugin::$instance->documents->get_document_types( [ 'admin_tab_group' => $current_tabs_group, ] ); $query->query_vars['meta_key'] = Document::TYPE_META_KEY; $query->query_vars['meta_value'] = array_keys( $doc_types ); } /** * Add template library actions. * * Register filters and actions for the template library. * * @since 2.0.0 * @access private */ private function add_actions() { if ( is_admin() ) { add_action( 'admin_menu', [ $this, 'admin_menu' ] ); add_action( 'admin_menu', [ $this, 'admin_menu_reorder' ], 800 ); add_filter( 'admin_title', [ $this, 'admin_title' ], 10, 2 ); add_action( 'all_admin_notices', [ $this, 'replace_admin_heading' ] ); add_filter( 'post_row_actions', [ $this, 'post_row_actions' ], 10, 2 ); add_action( 'admin_footer', [ $this, 'admin_import_template_form' ] ); add_action( 'save_post', [ $this, 'on_save_post' ], 10, 2 ); add_filter( 'display_post_states', [ $this, 'remove_elementor_post_state_from_library' ], 11, 2 ); add_action( 'parse_query', [ $this, 'admin_query_filter_types' ] ); // Template filter by category. add_action( 'restrict_manage_posts', [ $this, 'add_filter_by_category' ] ); // Template type column. add_action( 'manage_' . self::CPT . '_posts_columns', [ $this, 'admin_columns_headers' ] ); add_action( 'manage_' . self::CPT . '_posts_custom_column', [ $this, 'admin_columns_content' ], 10, 2 ); // Template library bulk actions. add_filter( 'bulk_actions-edit-elementor_library', [ $this, 'admin_add_bulk_export_action' ] ); add_filter( 'handle_bulk_actions-edit-elementor_library', [ $this, 'admin_export_multiple_templates' ], 10, 3 ); // Print template library tabs. add_filter( 'views_edit-' . self::CPT, [ $this, 'admin_print_tabs' ] ); // Show blank state. add_action( 'manage_posts_extra_tablenav', [ $this, 'maybe_render_blank_state' ] ); } add_action( 'template_redirect', [ $this, 'block_template_frontend' ] ); } /** * @since 2.0.6 * @access public */ public function admin_columns_content( $column_name, $post_id ) { if ( 'elementor_library_type' === $column_name ) { /** @var Document $document */ $document = Plugin::$instance->documents->get( $post_id ); if ( $document && $document instanceof Library_Document ) { $document->print_admin_column_type(); } } } /** * @since 2.0.6 * @access public */ public function admin_columns_headers( $posts_columns ) { // Replace original column that bind to the taxonomy - with another column. unset( $posts_columns['taxonomy-elementor_library_type'] ); $offset = 2; $posts_columns = array_slice( $posts_columns, 0, $offset, true ) + [ 'elementor_library_type' => __( 'Type', 'elementor' ), ] + array_slice( $posts_columns, $offset, null, true ); return $posts_columns; } private function get_current_tab_group( $default = '' ) { $current_tabs_group = $default; if ( ! empty( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ] ) ) { $doc_type = Plugin::$instance->documents->get_document_type( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ], '' ); if ( $doc_type ) { $current_tabs_group = $doc_type::get_property( 'admin_tab_group' ); } } elseif ( ! empty( $_REQUEST['tabs_group'] ) ) { $current_tabs_group = $_REQUEST['tabs_group']; } return $current_tabs_group; } private function get_library_title() { $title = ''; if ( $this->is_current_screen() ) { $current_tab_group = $this->get_current_tab_group(); if ( $current_tab_group ) { $titles = [ 'library' => __( 'Saved Templates', 'elementor' ), 'theme' => __( 'Theme Builder', 'elementor' ), 'popup' => __( 'Popups', 'elementor' ), ]; if ( ! empty( $titles[ $current_tab_group ] ) ) { $title = $titles[ $current_tab_group ]; } } } return $title; } private function is_current_screen() { global $pagenow, $typenow; return 'edit.php' === $pagenow && self::CPT === $typenow; } /** * Template library local source constructor. * * Initializing the template library local source base by registering custom * template data and running custom actions. * * @since 1.0.0 * @access public */ public function __construct() { parent::__construct(); $this->add_actions(); } } includes/libraries/bfi-thumb/bfi-thumb.php000066600000056732152142641160014614 0ustar00. */ /** Uses WP's Image Editor Class to resize and filter images * * @param $url string the local image URL to manipulate * @param $params array the options to perform on the image. Keys and values supported: * 'width' int pixels * 'height' int pixels * 'opacity' int 0-100 * 'color' string hex-color #000000-#ffffff * 'grayscale' bool * 'negate' bool * 'crop' bool * 'crop_only' bool * 'crop_x' bool string * 'crop_y' bool string * 'crop_width' bool string * 'crop_height' bool string * 'quality' int 1-100 * @param $single boolean, if false then an array of data will be returned * * @return string|array containing the url of the resized modified image */ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly. if ( ! defined( 'BFITHUMB_UPLOAD_DIR' ) ) { define( 'BFITHUMB_UPLOAD_DIR', 'elementor/thumbs' ); } if ( ! function_exists( 'bfi_thumb' ) ) { function bfi_thumb( $url, $params = array(), $single = true ) { $class = BFI_Class_Factory::getNewestVersion( 'BFI_Thumb' ); return call_user_func( array( $class, 'thumb' ), $url, $params, $single ); } } /** * Class factory, this is to make sure that when multiple bfi_thumb scripts * are used (e.g. a plugin and a theme both use it), we always use the * latest version. */ if ( ! class_exists( 'BFI_Class_Factory' ) ) { class BFI_Class_Factory { public static $versions = array(); public static $latestClass = array(); public static function addClassVersion( $baseClassName, $className, $version ) { if ( empty( self::$versions[ $baseClassName ] ) ) { self::$versions[ $baseClassName ] = array(); } self::$versions[ $baseClassName ][] = array( 'class' => $className, 'version' => $version, ); } public static function getNewestVersion( $baseClassName ) { if ( empty( self::$latestClass[ $baseClassName ] ) ) { usort( self::$versions[ $baseClassName ], array( __CLASS__, "versionCompare" ) ); self::$latestClass[ $baseClassName ] = self::$versions[ $baseClassName ][0]['class']; unset( self::$versions[ $baseClassName ] ); } return self::$latestClass[ $baseClassName ]; } public static function versionCompare( $a, $b ) { return version_compare( $a['version'], $b['version'] ) == 1 ? -1 : 1; } } } /* * Change the default image editors */ add_filter( 'wp_image_editors', 'bfi_wp_image_editor' ); // Instead of using the default image editors, use our extended ones if ( ! function_exists( 'bfi_wp_image_editor' ) ) { function bfi_wp_image_editor( $editorArray ) { // Make sure that we use the latest versions return array( BFI_Class_Factory::getNewestVersion( 'BFI_Image_Editor_GD' ), BFI_Class_Factory::getNewestVersion( 'BFI_Image_Editor_Imagick' ), ); } } /* * Include the WP Image classes */ require_once ABSPATH . WPINC . '/class-wp-image-editor.php'; require_once ABSPATH . WPINC . '/class-wp-image-editor-imagick.php'; require_once ABSPATH . WPINC . '/class-wp-image-editor-gd.php'; /* * Enhanced Imagemagick Image Editor */ if ( ! class_exists( 'BFI_Image_Editor_Imagick_1_3' ) ) { BFI_Class_Factory::addClassVersion( 'BFI_Image_Editor_Imagick', 'BFI_Image_Editor_Imagick_1_3', '1.3' ); class BFI_Image_Editor_Imagick_1_3 extends WP_Image_Editor_Imagick { /** Changes the opacity of the image * * @supports 3.5.1 * @access public * * @param float $opacity (0.0-1.0) * * @return boolean|WP_Error */ public function opacity( $opacity ) { $opacity /= 100; try { // From: http://stackoverflow.com/questions/3538851/php-imagick-setimageopacity-destroys-transparency-and-does-nothing // preserves transparency //$this->image->setImageOpacity($opacity); return $this->image->evaluateImage( Imagick::EVALUATE_MULTIPLY, $opacity, Imagick::CHANNEL_ALPHA ); } catch ( Exception $e ) { return new WP_Error( 'image_opacity_error', $e->getMessage() ); } } /** Tints the image a different color * * @supports 3.5.1 * @access public * * @param string hex color e.g. #ff00ff * * @return boolean|WP_Error */ public function colorize( $hexColor ) { try { return $this->image->colorizeImage( $hexColor, 1.0 ); } catch ( Exception $e ) { return new WP_Error( 'image_colorize_error', $e->getMessage() ); } } /** Makes the image grayscale * * @supports 3.5.1 * @access public * * @return boolean|WP_Error */ public function grayscale() { try { return $this->image->modulateImage( 100, 0, 100 ); } catch ( Exception $e ) { return new WP_Error( 'image_grayscale_error', $e->getMessage() ); } } /** Negates the image * * @supports 3.5.1 * @access public * * @return boolean|WP_Error */ public function negate() { try { return $this->image->negateImage( false ); } catch ( Exception $e ) { return new WP_Error( 'image_negate_error', $e->getMessage() ); } } } } /* * Enhanced GD Image Editor */ if ( ! class_exists( 'BFI_Image_Editor_GD_1_3' ) ) { BFI_Class_Factory::addClassVersion( 'BFI_Image_Editor_GD', 'BFI_Image_Editor_GD_1_3', '1.3' ); class BFI_Image_Editor_GD_1_3 extends WP_Image_Editor_GD { /** Rotates current image counter-clockwise by $angle. * Ported from image-edit.php * Added presevation of alpha channels * * @since 3.5.0 * @access public * * @param float $angle * * @return boolean|WP_Error */ public function rotate( $angle ) { if ( function_exists( 'imagerotate' ) ) { $rotated = imagerotate( $this->image, $angle, 0 ); // Add alpha blending imagealphablending( $rotated, true ); imagesavealpha( $rotated, true ); if ( is_resource( $rotated ) ) { imagedestroy( $this->image ); $this->image = $rotated; $this->update_size(); return true; } } return new WP_Error( 'image_rotate_error', 'Image rotate failed.', $this->file ); } /** Changes the opacity of the image * * @supports 3.5.1 * @access public * * @param float $opacity (0.0-1.0) * * @return boolean|WP_Error */ public function opacity( $opacity ) { $opacity /= 100; $filtered = $this->_opacity( $this->image, $opacity ); if ( is_resource( $filtered ) ) { // imagedestroy($this->image); $this->image = $filtered; return true; } return new WP_Error( 'image_opacity_error', 'Image opacity change failed.', $this->file ); } // from: http://php.net/manual/en/function.imagefilter.php // params: image resource id, opacity (eg. 0.0-1.0) protected function _opacity( $image, $opacity ) { if ( ! function_exists( 'imagealphablending' ) || ! function_exists( 'imagecolorat' ) || ! function_exists( 'imagecolorallocatealpha' ) || ! function_exists( 'imagesetpixel' ) ) { return false; } // get image width and height $w = imagesx( $image ); $h = imagesy( $image ); // turn alpha blending off imagealphablending( $image, false ); // find the most opaque pixel in the image (the one with the smallest alpha value) $minalpha = 127; for ( $x = 0; $x < $w; $x++ ) { for ( $y = 0; $y < $h; $y++ ) { $alpha = ( imagecolorat( $image, $x, $y ) >> 24 ) & 0xFF; if ( $alpha < $minalpha ) { $minalpha = $alpha; } } } // loop through image pixels and modify alpha for each for ( $x = 0; $x < $w; $x++ ) { for ( $y = 0; $y < $h; $y++ ) { // get current alpha value (represents the TANSPARENCY!) $colorxy = imagecolorat( $image, $x, $y ); $alpha = ( $colorxy >> 24 ) & 0xFF; // calculate new alpha if ( $minalpha !== 127 ) { $alpha = 127 + 127 * $opacity * ( $alpha - 127 ) / ( 127 - $minalpha ); } else { $alpha += 127 * $opacity; } // get the color index with new alpha $alphacolorxy = imagecolorallocatealpha( $image, ( $colorxy >> 16 ) & 0xFF, ( $colorxy >> 8 ) & 0xFF, $colorxy & 0xFF, $alpha ); // set pixel with the new color + opacity if ( ! imagesetpixel( $image, $x, $y, $alphacolorxy ) ) { return false; } } } imagesavealpha( $image, true ); return $image; } /** Tints the image a different color * * @supports 3.5.1 * @access public * * @param string hex color e.g. #ff00ff * * @return boolean|WP_Error */ public function colorize( $hexColor ) { if ( function_exists( 'imagefilter' ) && function_exists( 'imagesavealpha' ) && function_exists( 'imagealphablending' ) ) { $hexColor = preg_replace( '#^\##', '', $hexColor ); $r = hexdec( substr( $hexColor, 0, 2 ) ); $g = hexdec( substr( $hexColor, 2, 2 ) ); $b = hexdec( substr( $hexColor, 2, 2 ) ); imagealphablending( $this->image, false ); if ( imagefilter( $this->image, IMG_FILTER_COLORIZE, $r, $g, $b, 0 ) ) { imagesavealpha( $this->image, true ); return true; } } return new WP_Error( 'image_colorize_error', 'Image color change failed.', $this->file ); } /** Makes the image grayscale * * @supports 3.5.1 * @access public * * @return boolean|WP_Error */ public function grayscale() { if ( function_exists( 'imagefilter' ) ) { if ( imagefilter( $this->image, IMG_FILTER_GRAYSCALE ) ) { return true; } } return new WP_Error( 'image_grayscale_error', 'Image grayscale failed.', $this->file ); } /** Negates the image * * @supports 3.5.1 * @access public * * @return boolean|WP_Error */ public function negate() { if ( function_exists( 'imagefilter' ) ) { if ( imagefilter( $this->image, IMG_FILTER_NEGATE ) ) { return true; } } return new WP_Error( 'image_negate_error', 'Image negate failed.', $this->file ); } } } /* * Main Class */ if ( ! class_exists( 'BFI_Thumb_1_3' ) ) { BFI_Class_Factory::addClassVersion( 'BFI_Thumb', 'BFI_Thumb_1_3', '1.3' ); class BFI_Thumb_1_3 { /** Uses WP's Image Editor Class to resize and filter images * Inspired by: https://github.com/sy4mil/Aqua-Resizer/blob/master/aq_resizer.php * * @param $url string the local image URL to manipulate * @param $params array the options to perform on the image. Keys and values supported: * 'width' int pixels * 'height' int pixels * 'opacity' int 0-100 * 'color' string hex-color #000000-#ffffff * 'grayscale' bool * 'crop' bool * 'negate' bool * 'crop_only' bool * 'crop_x' bool string * 'crop_y' bool string * 'crop_width' bool string * 'crop_height' bool string * 'quality' int 1-100 * @param $single boolean, if false then an array of data will be returned * * @return string|array */ public static function thumb( $url, $params = array(), $single = true ) { extract( $params ); //validate inputs if ( ! $url ) { return false; } $crop_only = isset( $crop_only ) ? $crop_only : false; //define upload path & dir $upload_info = wp_upload_dir(); $upload_dir = $upload_info['basedir']; $upload_url = $upload_info['baseurl']; $theme_url = get_template_directory_uri(); $theme_dir = get_template_directory(); // find the path of the image. Perform 2 checks: // #1 check if the image is in the uploads folder if ( strpos( $url, $upload_url ) !== false ) { $rel_path = str_replace( $upload_url, '', $url ); $img_path = $upload_dir . $rel_path; // #2 check if the image is in the current theme folder } else if ( strpos( $url, $theme_url ) !== false ) { $rel_path = str_replace( $theme_url, '', $url ); $img_path = $theme_dir . $rel_path; } // Fail if we can't find the image in our WP local directory if ( empty( $img_path ) ) { return $url; } // check if img path exists, and is an image indeed if ( ! @file_exists( $img_path ) || ! getimagesize( $img_path ) ) { return $url; } // This is the filename $basename = basename( $img_path ); //get image info $info = pathinfo( $img_path ); $ext = $info['extension']; list( $orig_w, $orig_h ) = getimagesize( $img_path ); // support percentage dimensions. compute percentage based on // the original dimensions if ( isset( $width ) ) { if ( stripos( $width, '%' ) !== false ) { $width = (int) ( (float) str_replace( '%', '', $width ) / 100 * $orig_w ); } } if ( isset( $height ) ) { if ( stripos( $height, '%' ) !== false ) { $height = (int) ( (float) str_replace( '%', '', $height ) / 100 * $orig_h ); } } // The only purpose of this is to determine the final width and height // without performing any actual image manipulation, which will be used // to check whether a resize was previously done. if ( isset( $width ) && $crop_only === false ) { //get image size after cropping $dims = image_resize_dimensions( $orig_w, $orig_h, $width, isset( $height ) ? $height : null, isset( $crop ) ? $crop : false ); $dst_w = $dims[4]; $dst_h = $dims[5]; } else if ( $crop_only === true ) { // we don't want a resize, // but only a crop in the image // get x position to start croping $src_x = ( isset( $crop_x ) ) ? $crop_x : 0; // get y position to start croping $src_y = ( isset( $crop_y ) ) ? $crop_y : 0; // width of the crop if ( isset( $crop_width ) ) { $src_w = $crop_width; } else if ( isset( $width ) ) { $src_w = $width; } else { $src_w = $orig_w; } // height of the crop if ( isset( $crop_height ) ) { $src_h = $crop_height; } else if ( isset( $height ) ) { $src_h = $height; } else { $src_h = $orig_h; } // set the width resize with the crop if ( isset( $crop_width ) && isset( $width ) ) { $dst_w = $width; } else { $dst_w = null; } // set the height resize with the crop if ( isset( $crop_height ) && isset( $height ) ) { $dst_h = $height; } else { $dst_h = null; } // allow percentages if ( isset( $dst_w ) ) { if ( stripos( $dst_w, '%' ) !== false ) { $dst_w = (int) ( (float) str_replace( '%', '', $dst_w ) / 100 * $orig_w ); } } if ( isset( $dst_h ) ) { if ( stripos( $dst_h, '%' ) !== false ) { $dst_h = (int) ( (float) str_replace( '%', '', $dst_h ) / 100 * $orig_h ); } } $dims = image_resize_dimensions( $src_w, $src_h, $dst_w, $dst_h, false ); $dst_w = $dims[4]; $dst_h = $dims[5]; // Make the pos x and pos y work with percentages if ( stripos( $src_x, '%' ) !== false ) { $src_x = (int) ( (float) str_replace( '%', '', $width ) / 100 * $orig_w ); } if ( stripos( $src_y, '%' ) !== false ) { $src_y = (int) ( (float) str_replace( '%', '', $height ) / 100 * $orig_h ); } // allow center to position crop start if ( $src_x === 'center' ) { $src_x = ( $orig_w - $src_w ) / 2; } if ( $src_y === 'center' ) { $src_y = ( $orig_h - $src_h ) / 2; } } // create the suffix for the saved file // we can use this to check whether we need to create a new file or just use an existing one. $suffix = (string) filemtime( $img_path ) . ( isset( $width ) ? str_pad( (string) $width, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $height ) ? str_pad( (string) $height, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $opacity ) ? str_pad( (string) $opacity, 3, '0', STR_PAD_LEFT ) : '100' ) . ( isset( $color ) ? str_pad( preg_replace( '#^\##', '', $color ), 8, '0', STR_PAD_LEFT ) : '00000000' ) . ( isset( $grayscale ) ? ( $grayscale ? '1' : '0' ) : '0' ) . ( isset( $crop ) ? ( $crop ? '1' : '0' ) : '0' ) . ( isset( $negate ) ? ( $negate ? '1' : '0' ) : '0' ) . ( isset( $crop_only ) ? ( $crop_only ? '1' : '0' ) : '0' ) . ( isset( $src_x ) ? str_pad( (string) $src_x, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_y ) ? str_pad( (string) $src_y, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_w ) ? str_pad( (string) $src_w, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_h ) ? str_pad( (string) $src_h, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $dst_w ) ? str_pad( (string) $dst_w, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $dst_h ) ? str_pad( (string) $dst_h, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( ( isset ( $quality ) && $quality > 0 && $quality <= 100 ) ? ( $quality ? (string) $quality : '0' ) : '0' ); $suffix = self::base_convert_arbitrary( $suffix, 10, 36 ); // use this to check if cropped image already exists, so we can return that instead $dst_rel_path = str_replace( '.' . $ext, '', basename( $img_path ) ); // If opacity is set, change the image type to png if ( isset( $opacity ) ) { $ext = 'png'; } // Create the upload subdirectory, this is where // we store all our generated images if ( defined( 'BFITHUMB_UPLOAD_DIR' ) ) { $upload_dir .= "/" . BFITHUMB_UPLOAD_DIR; $upload_url .= "/" . BFITHUMB_UPLOAD_DIR; } else { $upload_dir .= "/bfi_thumb"; $upload_url .= "/bfi_thumb"; } if ( ! is_dir( $upload_dir ) ) { wp_mkdir_p( $upload_dir ); } // desination paths and urls $destfilename = "{$upload_dir}/{$dst_rel_path}-{$suffix}.{$ext}"; // The urls generated have lower case extensions regardless of the original case $ext = strtolower( $ext ); $img_url = "{$upload_url}/{$dst_rel_path}-{$suffix}.{$ext}"; // if file exists, just return it if ( @file_exists( $destfilename ) && getimagesize( $destfilename ) ) { } else { // perform resizing and other filters $editor = wp_get_image_editor( $img_path ); if ( is_wp_error( $editor ) ) { return false; } /* * Perform image manipulations */ if ( $crop_only === false ) { if ( ( isset( $width ) && $width ) || ( isset( $height ) && $height ) ) { if ( is_wp_error( $editor->resize( isset( $width ) ? $width : null, isset( $height ) ? $height : null, isset( $crop ) ? $crop : false ) ) ) { return false; } } } else { if ( is_wp_error( $editor->crop( $src_x, $src_y, $src_w, $src_h, $dst_w, $dst_h ) ) ) { return false; } } if ( isset( $negate ) ) { if ( $negate ) { if ( is_wp_error( $editor->negate() ) ) { return false; } } } if ( isset( $opacity ) ) { if ( is_wp_error( $editor->opacity( $opacity ) ) ) { return false; } } if ( isset( $grayscale ) ) { if ( $grayscale ) { if ( is_wp_error( $editor->grayscale() ) ) { return false; } } } if ( isset( $color ) ) { if ( is_wp_error( $editor->colorize( $color ) ) ) { return false; } } // set the image quality (1-100) to save this image at if ( isset( $quality ) && $quality > 0 && $quality <= 100 && $ext != 'png' ) { $editor->set_quality( $quality ); } // save our new image $mime_type = isset( $opacity ) ? 'image/png' : null; $resized_file = $editor->save( $destfilename, $mime_type ); } //return the output if ( $single ) { $image = $img_url; } else { //array return $image = array( 0 => $img_url, 1 => isset( $dst_w ) ? $dst_w : $orig_w, 2 => isset( $dst_h ) ? $dst_h : $orig_h, ); } return $image; } /** Shortens a number into a base 36 string * * @param $number string a string of numbers to convert * @param $fromBase starting base * @param $toBase base to convert the number to * * @return string base converted characters */ protected static function base_convert_arbitrary( $number, $fromBase, $toBase ) { $digits = '0123456789abcdefghijklmnopqrstuvwxyz'; $length = strlen( $number ); $result = ''; $nibbles = array(); for ( $i = 0; $i < $length; ++$i ) { $nibbles[ $i ] = strpos( $digits, $number[ $i ] ); } do { $value = 0; $newlen = 0; for ( $i = 0; $i < $length; ++$i ) { $value = $value * $fromBase + $nibbles[ $i ]; if ( $value >= $toBase ) { $nibbles[ $newlen++ ] = (int) ( $value / $toBase ); $value %= $toBase; } else if ( $newlen > 0 ) { $nibbles[ $newlen++ ] = 0; } } $length = $newlen; $result = $digits[ $value ] . $result; } while ( $newlen != 0 ); return $result; } } } // don't use the default resizer since we want to allow resizing to larger sizes (than the original one) // Parts are copied from media.php // Crop is always applied (just like timthumb) // Don't use this inside the admin since sometimes images in the media library get resized if ( ! is_admin() ) { add_filter( 'image_resize_dimensions', 'bfi_image_resize_dimensions', 10, 5 ); } if ( ! function_exists( 'bfi_image_resize_dimensions' ) ) { function bfi_image_resize_dimensions( $payload, $orig_w, $orig_h, $dest_w, $dest_h, $crop = false ) { $aspect_ratio = $orig_w / $orig_h; $new_w = $dest_w; $new_h = $dest_h; if ( empty( $new_w ) || $new_w < 0 ) { $new_w = intval( $new_h * $aspect_ratio ); } if ( empty( $new_h ) || $new_h < 0 ) { $new_h = intval( $new_w / $aspect_ratio ); } $size_ratio = max( $new_w / $orig_w, $new_h / $orig_h ); $crop_w = round( $new_w / $size_ratio ); $crop_h = round( $new_h / $size_ratio ); $s_x = floor( ( $orig_w - $crop_w ) / 2 ); $s_y = floor( ( $orig_h - $crop_h ) / 2 ); // Safe guard against super large or zero images which might cause 500 errors if ( $new_w > 5000 || $new_h > 5000 || $new_w <= 0 || $new_h <= 0 ) { return null; } // the return array matches the parameters to imagecopyresampled() // int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h return array( 0, 0, (int) $s_x, (int) $s_y, (int) $new_w, (int) $new_h, (int) $crop_w, (int) $crop_h ); } } // This function allows us to latch on WP image functions such as // the_post_thumbnail, get_image_tag and wp_get_attachment_image_src // so that you won't have to use the function bfi_thumb in order to do resizing. // To make this work, in the WP image functions, when specifying an // array for the image dimensions, add a 'bfi_thumb' => true to // the array, then add your normal $params arguments. // // e.g. the_post_thumbnail( array( 1024, 400, 'bfi_thumb' => true, 'grayscale' => true ) ); add_filter( 'image_downsize', 'bfi_image_downsize', 1, 3 ); if ( ! function_exists( 'bfi_image_downsize' ) ) { function bfi_image_downsize( $out, $id, $size ) { if ( ! is_array( $size ) ) { return false; } if ( ! array_key_exists( 'bfi_thumb', $size ) ) { return false; } if ( empty( $size['bfi_thumb'] ) ) { return false; } $img_url = wp_get_attachment_url( $id ); $params = $size; $params['width'] = $size[0]; $params['height'] = $size[1]; $resized_img_url = bfi_thumb( $img_url, $params ); return array( $resized_img_url, $size[0], $size[1], false ); } } includes/libraries/wp-background-process/wp-background-process.php000066600000025363152142641160021514 0ustar00cron_hook_identifier = $this->identifier . '_cron'; $this->cron_interval_identifier = $this->identifier . '_cron_interval'; add_action( $this->cron_hook_identifier, array( $this, 'handle_cron_healthcheck' ) ); add_filter( 'cron_schedules', array( $this, 'schedule_cron_healthcheck' ) ); } /** * Dispatch * * @access public * @return void */ public function dispatch() { // Schedule the cron healthcheck. $this->schedule_event(); // Perform remote post. return parent::dispatch(); } /** * Push to queue * * @param mixed $data Data. * * @return $this */ public function push_to_queue( $data ) { $this->data[] = $data; return $this; } /** * Save queue * * @return $this */ public function save() { $key = $this->generate_key(); if ( ! empty( $this->data ) ) { update_site_option( $key, $this->data ); } return $this; } /** * Update queue * * @param string $key Key. * @param array $data Data. * * @return $this */ public function update( $key, $data ) { if ( ! empty( $data ) ) { update_site_option( $key, $data ); } return $this; } /** * Delete queue * * @param string $key Key. * * @return $this */ public function delete( $key ) { delete_site_option( $key ); return $this; } /** * Generate key * * Generates a unique key based on microtime. Queue items are * given a unique key so that they can be merged upon save. * * @param int $length Length. * * @return string */ protected function generate_key( $length = 64 ) { $unique = md5( microtime() . rand() ); $prepend = $this->identifier . '_batch_'; return substr( $prepend . $unique, 0, $length ); } /** * Maybe process queue * * Checks whether data exists within the queue and that * the process is not already running. */ public function maybe_handle() { // Don't lock up other requests while processing session_write_close(); if ( $this->is_process_running() ) { // Background process already running. wp_die(); } if ( $this->is_queue_empty() ) { // No data to process. wp_die(); } check_ajax_referer( $this->identifier, 'nonce' ); $this->handle(); wp_die(); } /** * Is queue empty * * @return bool */ protected function is_queue_empty() { global $wpdb; $table = $wpdb->options; $column = 'option_name'; if ( is_multisite() ) { $table = $wpdb->sitemeta; $column = 'meta_key'; } $key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%'; $count = $wpdb->get_var( $wpdb->prepare( " SELECT COUNT(*) FROM {$table} WHERE {$column} LIKE %s ", $key ) ); return ( $count > 0 ) ? false : true; } /** * Is process running * * Check whether the current process is already running * in a background process. */ protected function is_process_running() { if ( get_site_transient( $this->identifier . '_process_lock' ) ) { // Process already running. return true; } return false; } /** * Lock process * * Lock the process so that multiple instances can't run simultaneously. * Override if applicable, but the duration should be greater than that * defined in the time_exceeded() method. */ protected function lock_process() { $this->start_time = time(); // Set start time of current process. $lock_duration = ( property_exists( $this, 'queue_lock_time' ) ) ? $this->queue_lock_time : 60; // 1 minute $lock_duration = apply_filters( $this->identifier . '_queue_lock_time', $lock_duration ); set_site_transient( $this->identifier . '_process_lock', microtime(), $lock_duration ); } /** * Unlock process * * Unlock the process so that other instances can spawn. * * @return $this */ protected function unlock_process() { delete_site_transient( $this->identifier . '_process_lock' ); return $this; } /** * Get batch * * @return stdClass Return the first batch from the queue */ protected function get_batch() { global $wpdb; $table = $wpdb->options; $column = 'option_name'; $key_column = 'option_id'; $value_column = 'option_value'; if ( is_multisite() ) { $table = $wpdb->sitemeta; $column = 'meta_key'; $key_column = 'meta_id'; $value_column = 'meta_value'; } $key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%'; $query = $wpdb->get_row( $wpdb->prepare( " SELECT * FROM {$table} WHERE {$column} LIKE %s ORDER BY {$key_column} ASC LIMIT 1 ", $key ) ); $batch = new stdClass(); $batch->key = $query->$column; $batch->data = maybe_unserialize( $query->$value_column ); return $batch; } /** * Handle * * Pass each queue item to the task handler, while remaining * within server memory and time limit constraints. */ protected function handle() { $this->lock_process(); do { $batch = $this->get_batch(); foreach ( $batch->data as $key => $value ) { $task = $this->task( $value ); if ( false !== $task ) { $batch->data[ $key ] = $task; } else { unset( $batch->data[ $key ] ); } if ( $this->time_exceeded() || $this->memory_exceeded() ) { // Batch limits reached. break; } } // Update or delete current batch. if ( ! empty( $batch->data ) ) { $this->update( $batch->key, $batch->data ); } else { $this->delete( $batch->key ); } } while ( ! $this->time_exceeded() && ! $this->memory_exceeded() && ! $this->is_queue_empty() ); $this->unlock_process(); // Start next batch or complete process. if ( ! $this->is_queue_empty() ) { $this->dispatch(); } else { $this->complete(); } wp_die(); } /** * Memory exceeded * * Ensures the batch process never exceeds 90% * of the maximum WordPress memory. * * @return bool */ protected function memory_exceeded() { $memory_limit = $this->get_memory_limit() * 0.9; // 90% of max memory $current_memory = memory_get_usage( true ); $return = false; if ( $current_memory >= $memory_limit ) { $return = true; } return apply_filters( $this->identifier . '_memory_exceeded', $return ); } /** * Get memory limit * * @return int */ protected function get_memory_limit() { if ( function_exists( 'ini_get' ) ) { $memory_limit = ini_get( 'memory_limit' ); } else { // Sensible default. $memory_limit = '128M'; } if ( ! $memory_limit || -1 === intval( $memory_limit ) ) { // Unlimited, set to 32GB. $memory_limit = '32000M'; } return intval( $memory_limit ) * 1024 * 1024; } /** * Time exceeded. * * Ensures the batch never exceeds a sensible time limit. * A timeout limit of 30s is common on shared hosting. * * @return bool */ protected function time_exceeded() { $finish = $this->start_time + apply_filters( $this->identifier . '_default_time_limit', 20 ); // 20 seconds $return = false; if ( time() >= $finish ) { $return = true; } return apply_filters( $this->identifier . '_time_exceeded', $return ); } /** * Complete. * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). */ protected function complete() { // Unschedule the cron healthcheck. $this->clear_scheduled_event(); } /** * Schedule cron healthcheck * * @access public * @param mixed $schedules Schedules. * @return mixed */ public function schedule_cron_healthcheck( $schedules ) { $interval = apply_filters( $this->identifier . '_cron_interval', 5 ); if ( property_exists( $this, 'cron_interval' ) ) { $interval = apply_filters( $this->identifier . '_cron_interval', $this->cron_interval ); } // Adds every 5 minutes to the existing schedules. $schedules[ $this->identifier . '_cron_interval' ] = array( 'interval' => MINUTE_IN_SECONDS * $interval, 'display' => sprintf( __( 'Every %d Minutes', 'elementor' ), $interval ), ); return $schedules; } /** * Handle cron healthcheck * * Restart the background process if not already running * and data exists in the queue. */ public function handle_cron_healthcheck() { if ( $this->is_process_running() ) { // Background process already running. exit; } if ( $this->is_queue_empty() ) { // No data to process. $this->clear_scheduled_event(); exit; } $this->handle(); exit; } /** * Schedule event */ protected function schedule_event() { if ( ! wp_next_scheduled( $this->cron_hook_identifier ) ) { wp_schedule_event( time(), $this->cron_interval_identifier, $this->cron_hook_identifier ); } } /** * Clear scheduled event */ protected function clear_scheduled_event() { $timestamp = wp_next_scheduled( $this->cron_hook_identifier ); if ( $timestamp ) { wp_unschedule_event( $timestamp, $this->cron_hook_identifier ); } } /** * Cancel Process * * Stop processing queue items, clear cronjob and delete batch. * */ public function cancel_process() { if ( ! $this->is_queue_empty() ) { $batch = $this->get_batch(); $this->delete( $batch->key ); wp_clear_scheduled_hook( $this->cron_hook_identifier ); } } /** * Task * * Override this method to perform any actions required on each * queue item. Return the modified item for further processing * in the next pass through. Or, return false to remove the * item from the queue. * * @param mixed $item Queue item to iterate over. * * @return mixed */ abstract protected function task( $item ); } } includes/libraries/wp-background-process/wp-async-request.php000066600000005671152142641160020524 0ustar00identifier = $this->prefix . '_' . $this->action; add_action( 'wp_ajax_' . $this->identifier, array( $this, 'maybe_handle' ) ); add_action( 'wp_ajax_nopriv_' . $this->identifier, array( $this, 'maybe_handle' ) ); } /** * Set data used during the request * * @param array $data Data. * * @return $this */ public function data( $data ) { $this->data = $data; return $this; } /** * Dispatch the async request * * @return array|WP_Error */ public function dispatch() { $url = add_query_arg( $this->get_query_args(), $this->get_query_url() ); $args = $this->get_post_args(); return wp_remote_post( esc_url_raw( $url ), $args ); } /** * Get query args * * @return array */ protected function get_query_args() { if ( property_exists( $this, 'query_args' ) ) { return $this->query_args; } return array( 'action' => $this->identifier, 'nonce' => wp_create_nonce( $this->identifier ), ); } /** * Get query URL * * @return string */ protected function get_query_url() { if ( property_exists( $this, 'query_url' ) ) { return $this->query_url; } return admin_url( 'admin-ajax.php' ); } /** * Get post args * * @return array */ protected function get_post_args() { if ( property_exists( $this, 'post_args' ) ) { return $this->post_args; } return array( 'timeout' => 0.01, 'blocking' => false, 'body' => $this->data, 'cookies' => $_COOKIE, 'sslverify' => apply_filters( 'https_local_ssl_verify', false ), ); } /** * Maybe handle * * Check for correct nonce and pass to handler. */ public function maybe_handle() { // Don't lock up other requests while processing session_write_close(); check_ajax_referer( $this->identifier, 'nonce' ); $this->handle(); wp_die(); } /** * Handle * * Override this method to perform any actions required * during the async request. */ abstract protected function handle(); } }includes/db.php000066600000040060152142641160007456 0ustar00documents->save()` method instead. * * @access public * * @param int $post_id Post ID. * @param array $data Post data. * @param string $status Optional. Post status. Default is `publish`. * * @return bool */ public function save_editor( $post_id, $data, $status = self::STATUS_PUBLISH ) { _deprecated_function( __METHOD__, '2.6.0', 'Plugin::$instance->documents->get( $post_id )->save()' ); $document = Plugin::$instance->documents->get( $post_id ); if ( self::STATUS_AUTOSAVE === $status ) { $document = $document->get_autosave( 0, true ); } return $document->save( [ 'elements' => $data, 'settings' => [ 'post_status' => $status, ], ] ); } /** * Get builder. * * Retrieve editor data from the database. * * @since 1.0.0 * * @access public * * @param int $post_id Post ID. * @param string $status Optional. Post status. Default is `publish`. * * @return array Editor data. */ public function get_builder( $post_id, $status = self::STATUS_PUBLISH ) { if ( self::STATUS_DRAFT === $status ) { $document = Plugin::$instance->documents->get_doc_or_auto_save( $post_id ); } else { $document = Plugin::$instance->documents->get( $post_id ); } if ( $document ) { $editor_data = $document->get_elements_raw_data( null, true ); } else { $editor_data = []; } return $editor_data; } /** * Get JSON meta. * * Retrieve post meta data, and return the JSON decoded data. * * @since 1.0.0 * @access protected * * @param int $post_id Post ID. * @param string $key The meta key to retrieve. * * @return array Decoded JSON data from post meta. */ protected function _get_json_meta( $post_id, $key ) { $meta = get_post_meta( $post_id, $key, true ); if ( is_string( $meta ) && ! empty( $meta ) ) { $meta = json_decode( $meta, true ); } if ( empty( $meta ) ) { $meta = []; } return $meta; } /** * Get plain editor. * * Retrieve post data that was saved in the database. Raw data before it * was parsed by elementor. * * @since 1.0.0 * @deprecated 2.0.0 Use `Plugin::$instance->documents->get_elements_data()` method instead. * * @access public * * @param int $post_id Post ID. * @param string $status Optional. Post status. Default is `publish`. * * @return array Post data. */ public function get_plain_editor( $post_id, $status = self::STATUS_PUBLISH ) { _deprecated_function( __METHOD__, '2.6.0', 'Plugin::$instance->documents->get( $post_id )->get_elements_data()' ); $document = Plugin::$instance->documents->get( $post_id ); if ( $document ) { return $document->get_elements_data( $status ); } return []; } /** * Get auto-saved post revision. * * Retrieve the auto-saved post revision that is newer than current post. * * @since 1.9.0 * @deprecated 2.0.0 * * @access public * * @param int $post_id Post ID. * * @return \WP_Post|false The auto-saved post, or false. */ public function get_newer_autosave( $post_id ) { _deprecated_function( __METHOD__, '2.0.0', 'Plugin::$instance->documents->get( $post_id )->get_newer_autosave()' ); $document = Plugin::$instance->documents->get( $post_id ); return $document->get_newer_autosave(); } /** * Get new editor from WordPress editor. * * When editing the with Elementor the first time, the current page content * is parsed into Text Editor Widget that contains the original data. * * @since 2.1.0 * @deprecated 2.3.0 Use `Plugin::$instance->documents->get( $post_id )->convert_to_elementor()` instead * @access public * * @param int $post_id Post ID. * * @return array Content in Elementor format. */ public function get_new_editor_from_wp_editor( $post_id ) { _deprecated_function( __METHOD__, '2.3.0', 'Plugin::$instance->documents->get( $post_id )->convert_to_elementor()' ); $document = Plugin::$instance->documents->get( $post_id ); if ( $document ) { return $document->convert_to_elementor(); } return []; } /** * Get new editor from WordPress editor. * * When editing the with Elementor the first time, the current page content * is parsed into Text Editor Widget that contains the original data. * * @since 1.0.0 * @deprecated 2.1.0 Use `Plugin::$instance->documents->get( $post_id )->convert_to_elementor()` instead * @access public * * @param int $post_id Post ID. * * @return array Content in Elementor format. */ public function _get_new_editor_from_wp_editor( $post_id ) { _deprecated_function( __METHOD__, '2.1.0', 'Plugin::$instance->documents->get( $post_id )->convert_to_elementor()' ); return $this->get_new_editor_from_wp_editor( $post_id ); } /** * Is using Elementor. * * Set whether the page is using Elementor or not. * * @since 1.5.0 * @access public * * @param int $post_id Post ID. * @param bool $is_elementor Optional. Whether the page is elementor page. * Default is true. */ public function set_is_elementor_page( $post_id, $is_elementor = true ) { if ( $is_elementor ) { // Use the string `builder` and not a boolean for rollback compatibility update_post_meta( $post_id, '_elementor_edit_mode', 'builder' ); } else { delete_post_meta( $post_id, '_elementor_edit_mode' ); } } /** * Render element plain content. * * When saving data in the editor, this method renders recursively the plain * content containing only the content and the HTML. No CSS data. * * @since 2.0.0 * @access private * * @param array $element_data Element data. */ private function render_element_plain_content( $element_data ) { if ( 'widget' === $element_data['elType'] ) { /** @var Widget_Base $widget */ $widget = Plugin::$instance->elements_manager->create_element_instance( $element_data ); if ( $widget ) { $widget->render_plain_content(); } } if ( ! empty( $element_data['elements'] ) ) { foreach ( $element_data['elements'] as $element ) { $this->render_element_plain_content( $element ); } } } /** * Save plain text. * * Retrieves the raw content, removes all kind of unwanted HTML tags and saves * the content as the `post_content` field in the database. * * @since 1.9.0 * @access public * * @param int $post_id Post ID. */ public function save_plain_text( $post_id ) { // Switch $dynamic_tags to parsing mode = remove. $dynamic_tags = Plugin::$instance->dynamic_tags; $parsing_mode = $dynamic_tags->get_parsing_mode(); $dynamic_tags->set_parsing_mode( Manager::MODE_REMOVE ); $plain_text = $this->get_plain_text( $post_id ); wp_update_post( [ 'ID' => $post_id, 'post_content' => $plain_text, ] ); // Restore parsing mode. $dynamic_tags->set_parsing_mode( $parsing_mode ); } /** * Iterate data. * * Accept any type of Elementor data and a callback function. The callback * function runs recursively for each element and his child elements. * * @since 1.0.0 * @access public * * @param array $data_container Any type of elementor data. * @param callable $callback A function to iterate data by. * @param array $args Array of args pointers for passing parameters in & out of the callback * * @return mixed Iterated data. */ public function iterate_data( $data_container, $callback, $args = [] ) { if ( isset( $data_container['elType'] ) ) { if ( ! empty( $data_container['elements'] ) ) { $data_container['elements'] = $this->iterate_data( $data_container['elements'], $callback, $args ); } return call_user_func( $callback, $data_container, $args ); } foreach ( $data_container as $element_key => $element_value ) { $element_data = $this->iterate_data( $data_container[ $element_key ], $callback, $args ); if ( null === $element_data ) { continue; } $data_container[ $element_key ] = $element_data; } return $data_container; } /** * Safely copy Elementor meta. * * Make sure the original page was built with Elementor and the post is not * auto-save. Only then copy elementor meta from one post to another using * `copy_elementor_meta()`. * * @since 1.9.2 * @access public * * @param int $from_post_id Original post ID. * @param int $to_post_id Target post ID. */ public function safe_copy_elementor_meta( $from_post_id, $to_post_id ) { // It's from WP-Admin & not from Elementor. if ( ! did_action( 'elementor/db/before_save' ) ) { if ( ! Plugin::$instance->db->is_built_with_elementor( $from_post_id ) ) { return; } // It's an exited Elementor auto-save if ( get_post_meta( $to_post_id, '_elementor_data', true ) ) { return; } } $this->copy_elementor_meta( $from_post_id, $to_post_id ); } /** * Copy Elementor meta. * * Duplicate the data from one post to another. * * Consider using `safe_copy_elementor_meta()` method instead. * * @since 1.1.0 * @access public * * @param int $from_post_id Original post ID. * @param int $to_post_id Target post ID. */ public function copy_elementor_meta( $from_post_id, $to_post_id ) { $from_post_meta = get_post_meta( $from_post_id ); $core_meta = [ '_wp_page_template', '_thumbnail_id', ]; foreach ( $from_post_meta as $meta_key => $values ) { // Copy only meta with the `_elementor` prefix if ( 0 === strpos( $meta_key, '_elementor' ) || in_array( $meta_key, $core_meta, true ) ) { $value = $values[0]; // The elementor JSON needs slashes before saving if ( '_elementor_data' === $meta_key ) { $value = wp_slash( $value ); } else { $value = maybe_unserialize( $value ); } // Don't use `update_post_meta` that can't handle `revision` post type update_metadata( 'post', $to_post_id, $meta_key, $value ); } } } /** * Is built with Elementor. * * Check whether the post was built with Elementor. * * @since 1.0.10 * @access public * * @param int $post_id Post ID. * * @return bool Whether the post was built with Elementor. */ public function is_built_with_elementor( $post_id ) { return ! ! get_post_meta( $post_id, '_elementor_edit_mode', true ); } /** * Switch to post. * * Change the global WordPress post to the requested post. * * @since 1.5.0 * @access public * * @param int $post_id Post ID to switch to. */ public function switch_to_post( $post_id ) { $post_id = absint( $post_id ); // If is already switched, or is the same post, return. if ( get_the_ID() === $post_id ) { $this->switched_post_data[] = false; return; } $this->switched_post_data[] = [ 'switched_id' => $post_id, 'original_id' => get_the_ID(), // Note, it can be false if the global isn't set ]; $GLOBALS['post'] = get_post( $post_id ); // WPCS: override ok. setup_postdata( $GLOBALS['post'] ); } /** * Restore current post. * * Rollback to the previous global post, rolling back from `DB::switch_to_post()`. * * @since 1.5.0 * @access public */ public function restore_current_post() { $data = array_pop( $this->switched_post_data ); // If not switched, return. if ( ! $data ) { return; } // It was switched from an empty global post, restore this state and unset the global post if ( false === $data['original_id'] ) { unset( $GLOBALS['post'] ); return; } $GLOBALS['post'] = get_post( $data['original_id'] ); // WPCS: override ok. setup_postdata( $GLOBALS['post'] ); } /** * Switch to query. * * Change the WordPress query to a new query with the requested * query variables. * * @since 2.0.0 * @access public * * @param array $query_vars New query variables. * @param bool $force_global_post */ public function switch_to_query( $query_vars, $force_global_post = false ) { global $wp_query; $current_query_vars = $wp_query->query; // If is already switched, or is the same query, return. if ( $current_query_vars === $query_vars ) { $this->switched_data[] = false; return; } $new_query = new \WP_Query( $query_vars ); $switched_data = [ 'switched' => $new_query, 'original' => $wp_query, ]; if ( ! empty( $GLOBALS['post'] ) ) { $switched_data['post'] = $GLOBALS['post']; } $this->switched_data[] = $switched_data; $wp_query = $new_query; // WPCS: override ok. // Ensure the global post is set only if needed unset( $GLOBALS['post'] ); if ( isset( $new_query->posts[0] ) ) { if ( $force_global_post || $new_query->is_singular() ) { $GLOBALS['post'] = $new_query->posts[0]; // WPCS: override ok. setup_postdata( $GLOBALS['post'] ); } } if ( $new_query->is_author() ) { $GLOBALS['authordata'] = get_userdata( $new_query->get( 'author' ) ); // WPCS: override ok. } } /** * Restore current query. * * Rollback to the previous query, rolling back from `DB::switch_to_query()`. * * @since 2.0.0 * @access public */ public function restore_current_query() { $data = array_pop( $this->switched_data ); // If not switched, return. if ( ! $data ) { return; } global $wp_query; $wp_query = $data['original']; // WPCS: override ok. // Ensure the global post/authordata is set only if needed. unset( $GLOBALS['post'] ); unset( $GLOBALS['authordata'] ); if ( ! empty( $data['post'] ) ) { $GLOBALS['post'] = $data['post']; // WPCS: override ok. setup_postdata( $GLOBALS['post'] ); } if ( $wp_query->is_author() ) { $GLOBALS['authordata'] = get_userdata( $wp_query->get( 'author' ) ); // WPCS: override ok. } } /** * Get plain text. * * Retrieve the post plain text. * * @since 1.9.0 * @access public * * @param int $post_id Post ID. * * @return string Post plain text. */ public function get_plain_text( $post_id ) { $document = Plugin::$instance->documents->get( $post_id ); $data = $document ? $document->get_elements_data() : []; return $this->get_plain_text_from_data( $data ); } /** * Get plain text from data. * * Retrieve the post plain text from any given Elementor data. * * @since 1.9.2 * @access public * * @param array $data Post ID. * * @return string Post plain text. */ public function get_plain_text_from_data( $data ) { ob_start(); if ( $data ) { foreach ( $data as $element_data ) { $this->render_element_plain_content( $element_data ); } } $plain_text = ob_get_clean(); // Remove unnecessary tags. $plain_text = preg_replace( '/<\/?div[^>]*\>/i', '', $plain_text ); $plain_text = preg_replace( '/<\/?span[^>]*\>/i', '', $plain_text ); $plain_text = preg_replace( '#(.*?)#is', '', $plain_text ); $plain_text = preg_replace( '/]*><\\/i[^>]*>/', '', $plain_text ); $plain_text = preg_replace( '/ class=".*?"/', '', $plain_text ); // Remove empty lines. $plain_text = preg_replace( '/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/', "\n", $plain_text ); $plain_text = trim( $plain_text ); return $plain_text; } } includes/beta-testers.php000066600000005763152142641160011506 0ustar00transient_key ); if ( false === $beta_version ) { $beta_version = 'false'; $response = wp_remote_get( 'https://plugins.svn.wordpress.org/elementor/trunk/readme.txt' ); if ( ! is_wp_error( $response ) && ! empty( $response['body'] ) ) { preg_match( '/Beta tag: (.*)/i', $response['body'], $matches ); if ( isset( $matches[1] ) ) { $beta_version = $matches[1]; } } set_site_transient( $this->transient_key, $beta_version, 6 * HOUR_IN_SECONDS ); } return $beta_version; } /** * Check version. * * Checks whether a beta version exist, and retrieve the version data. * * Fired by `pre_set_site_transient_update_plugins` filter, before WordPress * runs the plugin update checker. * * @since 1.5.0 * @access public * * @param array $transient Plugin version data. * * @return array Plugin version data. */ public function check_version( $transient ) { if ( empty( $transient->checked ) ) { return $transient; } delete_site_transient( $this->transient_key ); $plugin_slug = basename( ELEMENTOR__FILE__, '.php' ); $beta_version = $this->get_beta_version(); if ( 'false' !== $beta_version && version_compare( $beta_version, ELEMENTOR_VERSION, '>' ) ) { $response = new \stdClass(); $response->plugin = $plugin_slug; $response->slug = $plugin_slug; $response->new_version = $beta_version; $response->url = 'https://elementor.com/'; $response->package = sprintf( 'https://downloads.wordpress.org/plugin/elementor.%s.zip', $beta_version ); $transient->response[ ELEMENTOR_PLUGIN_BASE ] = $response; } return $transient; } /** * Beta testers constructor. * * Initializing Elementor beta testers. * * @since 1.5.0 * @access public */ public function __construct() { if ( 'yes' !== get_option( 'elementor_beta', 'no' ) ) { return; } $this->transient_key = md5( 'elementor_beta_testers_response_key' ); add_filter( 'pre_set_site_transient_update_plugins', [ $this, 'check_version' ] ); } } includes/maintenance-mode.php000066600000025032152142641160012277 0ustar00preview->is_preview_mode() ) { return; } $user = wp_get_current_user(); $exclude_mode = self::get( 'exclude_mode', [] ); $is_login_page = apply_filters( 'elementor/maintenance_mode/is_login_page', false ); if ( $is_login_page ) { return; } if ( 'logged_in' === $exclude_mode && is_user_logged_in() ) { return; } if ( 'custom' === $exclude_mode ) { $exclude_roles = self::get( 'exclude_roles', [] ); $user_roles = $user->roles; if ( is_multisite() && is_super_admin() ) { $user_roles[] = 'super_admin'; } $compare_roles = array_intersect( $user_roles, $exclude_roles ); if ( ! empty( $compare_roles ) ) { return; } } add_filter( 'body_class', [ $this, 'body_class' ] ); if ( 'maintenance' === self::get( 'mode' ) ) { $protocol = wp_get_server_protocol(); header( "$protocol 503 Service Unavailable", true, 503 ); header( 'Content-Type: text/html; charset=utf-8' ); header( 'Retry-After: 600' ); } // Setup global post for Elementor\frontend so `_has_elementor_in_page = true`. $GLOBALS['post'] = get_post( self::get( 'template_id' ) ); // WPCS: override ok. // Set the template as `$wp_query->current_object` for `wp_title` and etc. query_posts( [ 'p' => self::get( 'template_id' ), 'post_type' => Source_Local::CPT, ] ); } /** * Register settings fields. * * Adds new "Maintenance Mode" settings fields to Elementor admin page. * * The method need to receive the an instance of the Tools settings page * to add the new maintenance mode functionality. * * Fired by `elementor/admin/after_create_settings/{$page_id}` action. * * @since 1.4.0 * @access public * * @param Tools $tools An instance of the Tools settings page. */ public function register_settings_fields( Tools $tools ) { $templates = Plugin::$instance->templates_manager->get_source( 'local' )->get_items( [ 'type' => 'page', ] ); $templates_options = []; foreach ( $templates as $template ) { $templates_options[ $template['template_id'] ] = $template['title']; } ob_start(); $this->print_template_description(); $template_description = ob_get_clean(); $tools->add_tab( 'maintenance_mode', [ 'label' => __( 'Maintenance Mode', 'elementor' ), 'sections' => [ 'maintenance_mode' => [ 'callback' => function() { echo '

' . esc_html__( 'Maintenance Mode', 'elementor' ) . '

'; echo '
' . __( 'Set your entire website as MAINTENANCE MODE, meaning the site is offline temporarily for maintenance, or set it as COMING SOON mode, meaning the site is offline until it is ready to be launched.', 'elementor' ) . '
'; }, 'fields' => [ 'maintenance_mode_mode' => [ 'label' => __( 'Choose Mode', 'elementor' ), 'field_args' => [ 'type' => 'select', 'options' => [ '' => __( 'Disabled', 'elementor' ), self::MODE_COMING_SOON => __( 'Coming Soon', 'elementor' ), self::MODE_MAINTENANCE => __( 'Maintenance', 'elementor' ), ], 'desc' => '' . '' . '', ], ], 'maintenance_mode_exclude_mode' => [ 'label' => __( 'Who Can Access', 'elementor' ), 'field_args' => [ 'class' => 'elementor-default-hide', 'type' => 'select', 'std' => 'logged_in', 'options' => [ 'logged_in' => __( 'Logged In', 'elementor' ), 'custom' => __( 'Custom', 'elementor' ), ], ], ], 'maintenance_mode_exclude_roles' => [ 'label' => __( 'Roles', 'elementor' ), 'field_args' => [ 'class' => 'elementor-default-hide', 'type' => 'checkbox_list_roles', ], 'setting_args' => [ __NAMESPACE__ . '\Settings_Validations', 'checkbox_list' ], ], 'maintenance_mode_template_id' => [ 'label' => __( 'Choose Template', 'elementor' ), 'field_args' => [ 'class' => 'elementor-default-hide', 'type' => 'select', 'show_select' => true, 'options' => $templates_options, 'desc' => $template_description, ], ], ], ], ], ] ); } /** * Add menu in admin bar. * * Adds "Maintenance Mode" items to the WordPress admin bar. * * Fired by `admin_bar_menu` filter. * * @since 1.4.0 * @access public * * @param \WP_Admin_Bar $wp_admin_bar WP_Admin_Bar instance, passed by reference. */ public function add_menu_in_admin_bar( \WP_Admin_Bar $wp_admin_bar ) { $wp_admin_bar->add_node( [ 'id' => 'elementor-maintenance-on', 'title' => __( 'Maintenance Mode ON', 'elementor' ), 'href' => Tools::get_url() . '#tab-maintenance_mode', ] ); $document = Plugin::$instance->documents->get( self::get( 'template_id' ) ); $wp_admin_bar->add_node( [ 'id' => 'elementor-maintenance-edit', 'parent' => 'elementor-maintenance-on', 'title' => __( 'Edit Template', 'elementor' ), 'href' => $document ? $document->get_edit_url() : '', ] ); } /** * Print style. * * Adds custom CSS to the HEAD html tag. The CSS that emphasise the maintenance * mode with red colors. * * Fired by `admin_head` and `wp_head` filters. * * @since 1.4.0 * @access public */ public function print_style() { ?> documents->get( $template_id )->get_edit_url(); } ?>
create one now.', 'elementor' ), admin_url( 'post-new.php?post_type=' . Source_Local::CPT ) ); ?>
$value ) { $this->{$key} = $value; } } /** * Print inline style. * * Add an inline CSS to the rollback page. * * @since 1.5.0 * @access private */ private function print_inline_style() { ?> new_version = $this->version; $plugin_info->slug = $this->plugin_slug; $plugin_info->package = $this->package_url; $plugin_info->url = 'https://elementor.com/'; $update_plugins->response[ $this->plugin_name ] = $plugin_info; // Remove handle beta testers. remove_filter( 'pre_set_site_transient_update_plugins', [ Plugin::instance()->beta_testers, 'check_version' ] ); set_site_transient( 'update_plugins', $update_plugins ); } /** * Upgrade. * * Run WordPress upgrade to rollback Elementor to previous version. * * @since 1.5.0 * @access protected */ protected function upgrade() { require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' ); $logo_url = ELEMENTOR_ASSETS_URL . 'images/logo-panel.svg'; $upgrader_args = [ 'url' => 'update.php?action=upgrade-plugin&plugin=' . rawurlencode( $this->plugin_name ), 'plugin' => $this->plugin_name, 'nonce' => 'upgrade-plugin_' . $this->plugin_name, 'title' => 'Elementor' . __( 'Rollback to Previous Version', 'elementor' ), ]; $this->print_inline_style(); $upgrader = new \Plugin_Upgrader( new \Plugin_Upgrader_Skin( $upgrader_args ) ); $upgrader->upgrade( $this->plugin_name ); } /** * Run. * * Rollback Elementor to previous versions. * * @since 1.5.0 * @access public */ public function run() { $this->apply_package(); $this->upgrade(); } } includes/controls/text.php000066600000004071152142641160011722 0ustar00get_control_uid(); ?>
<# if ( data.label ) {#> <# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> 'text', 'placeholder' => '', 'title' => '', 'dynamic' => [ 'categories' => [ TagsModule::TEXT_CATEGORY, ], ], ]; } } includes/controls/exit-animation.php000066600000004110152142641160013656 0ustar00 [ 'fadeIn' => 'Fade Out', 'fadeInDown' => 'Fade Out Up', 'fadeInLeft' => 'Fade Out Left', 'fadeInRight' => 'Fade Out Right', 'fadeInUp' => 'Fade Out Down', ], 'Zooming' => [ 'zoomIn' => 'Zoom Out', 'zoomInDown' => 'Zoom Out Up', 'zoomInLeft' => 'Zoom Out Left', 'zoomInRight' => 'Zoom Out Right', 'zoomInUp' => 'Zoom Out Down', ], 'Sliding' => [ 'slideInDown' => 'Slide Out Up', 'slideInLeft' => 'Slide Out Left', 'slideInRight' => 'Slide Out Right', 'slideInUp' => 'Slide Out Down', ], 'Rotating' => [ 'rotateIn' => 'Rotate Out', 'rotateInDownLeft' => 'Rotate Out Up Left', 'rotateInDownRight' => 'Rotate Out Up Right', 'rotateInUpRight' => 'Rotate Out Down Left', 'rotateInUpLeft' => 'Rotate Out Down Right', ], 'Light Speed' => [ 'lightSpeedIn' => 'Light Speed Out', ], 'Specials' => [ 'rollIn' => 'Roll Out', ], ]; /** * Element appearance animations list. * * @since 2.5.0 * * @param array $additional_animations Additional Animations array. */ $additional_animations = apply_filters( 'elementor/controls/exit-animations/additional_animations', [] ); return array_merge( $animations, $additional_animations ); } } includes/controls/icons.php000066600000014712152142641160012054 0ustar00 '', 'library' => '', ]; } /** * Render Icons control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 2.6.0 * @access public */ public function content_template() { ?> <# if ( 'inline' === data.skin ) { #> render_inline_skin(); ?> <# } else { #> render_media_skin(); ?> <# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #>
get_control_uid(); ?>
<# if ( ! data.exclude_inline_options.includes( 'svg' ) ) { #> <# } if ( ! data.exclude_inline_options.includes( 'icon' ) ) { #> <# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> true, 'dynamic' => [ 'categories' => [ TagsModule::IMAGE_CATEGORY ], 'returnType' => 'object', ], 'search_bar' => true, 'recommended' => false, 'is_svg_enabled' => Svg_Handler::is_enabled(), 'skin' => 'media', 'exclude_inline_options' => [], ]; } public function support_svg_import( $mimes ) { $mimes['svg'] = 'image/svg+xml'; return $mimes; } public function on_import( $settings ) { if ( empty( $settings['library'] ) || 'svg' !== $settings['library'] || empty( $settings['value']['url'] ) ) { return $settings; } add_filter( 'upload_mimes', [ $this, 'support_svg_import' ], 100 ); $imported = Plugin::$instance->templates_manager->get_import_images_instance()->import( $settings['value'] ); remove_filter( 'upload_mimes', [ $this, 'support_svg_import' ], 100 ); if ( ! $imported ) { $settings['value'] = ''; $settings['library'] = ''; } else { $settings['value'] = $imported; } return $settings; } } includes/controls/hidden.php000066600000001664152142641160012176 0ustar00 'yes', ]; } /** * Render popover toggle control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.9.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
get_control_uid( '{{value}}' ); ?>
<# _.each( data.options, function( options, value ) { #> <# } ); #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> [], 'toggle' => true, ]; } } includes/controls/textarea.php000066600000003720152142641160012553 0ustar00 true, 'rows' => 5, 'placeholder' => '', 'dynamic' => [ 'categories' => [ TagsModule::TEXT_CATEGORY ], ], ]; } /** * Render textarea control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> '', 'description' => '', 'show_label' => true, 'label_block' => false, 'separator' => 'default', ]; /** * Get features. * * Retrieve the list of all the available features. Currently Elementor uses only * the `UI` feature. * * @since 1.5.0 * @access public * @static * * @return array Features array. */ public static function get_features() { return []; } /** * Get control type. * * Retrieve the control type. * * @since 1.5.0 * @access public * @abstract */ abstract public function get_type(); /** * Control base constructor. * * Initializing the control base class. * * @since 1.5.0 * @access public */ public function __construct() { $this->set_settings( array_merge( $this->_base_settings, $this->get_default_settings() ) ); $this->set_settings( 'features', static::get_features() ); } /** * Enqueue control scripts and styles. * * Used to register and enqueue custom scripts and styles used by the control. * * @since 1.5.0 * @access public */ public function enqueue() {} /** * Control content template. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * Note that the content template is wrapped by Base_Control::print_template(). * * @since 1.5.0 * @access public * @abstract */ abstract public function content_template(); /** * Print control template. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.5.0 * @access public */ final public function print_template() { ?> [], 'title_field' => '', 'prevent_empty' => true, 'is_repeater' => true, 'item_actions' => [ 'add' => true, 'duplicate' => true, 'remove' => true, 'sort' => true, ], ]; } /** * Get repeater control value. * * Retrieve the value of the repeater control from a specific Controls_Stack. * * @since 1.0.0 * @access public * * @param array $control Control * @param array $settings Controls_Stack settings * * @return mixed Control values. */ public function get_value( $control, $settings ) { $value = parent::get_value( $control, $settings ); if ( ! empty( $value ) ) { foreach ( $value as &$item ) { foreach ( $control['fields'] as $field ) { $control_obj = Plugin::$instance->controls_manager->get_control( $field['type'] ); // Prior to 1.5.0 the fields may contains non-data controls. if ( ! $control_obj instanceof Base_Data_Control ) { continue; } $item[ $field['name'] ] = $control_obj->get_value( $field, $item ); } } } return $value; } /** * Import repeater. * * Used as a wrapper method for inner controls while importing Elementor * template JSON file, and replacing the old data. * * @since 1.8.0 * @access public * * @param array $settings Control settings. * @param array $control_data Optional. Control data. Default is an empty array. * * @return array Control settings. */ public function on_import( $settings, $control_data = [] ) { if ( empty( $settings ) || empty( $control_data['fields'] ) ) { return $settings; } $method = 'on_import'; foreach ( $settings as &$item ) { foreach ( $control_data['fields'] as $field ) { if ( empty( $field['name'] ) || empty( $item[ $field['name'] ] ) ) { continue; } $control_obj = Plugin::$instance->controls_manager->get_control( $field['type'] ); if ( ! $control_obj ) { continue; } if ( method_exists( $control_obj, $method ) ) { $item[ $field['name'] ] = $control_obj->{$method}( $item[ $field['name'] ], $field ); } } } return $settings; } /** * Render repeater control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
<# if ( itemActions.add ) { #>
<# } #> '', 'id' => '', ]; } /** * Import media images. * * Used to import media control files from external sites while importing * Elementor template JSON file, and replacing the old data. * * @since 1.0.0 * @access public * * @param array $settings Control settings * * @return array Control settings. */ public function on_import( $settings ) { if ( empty( $settings['url'] ) ) { return $settings; } $settings = Plugin::$instance->templates_manager->get_import_images_instance()->import( $settings ); if ( ! $settings ) { $settings = [ 'id' => '', 'url' => Utils::get_placeholder_image_src(), ]; } return $settings; } /** * Enqueue media control scripts and styles. * * Used to register and enqueue custom scripts and styles used by the media * control. * * @since 1.0.0 * @access public */ public function enqueue() { global $wp_version; $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; wp_enqueue_media(); wp_enqueue_style( 'media', admin_url( '/css/media' . $suffix . '.css' ), [], $wp_version ); wp_register_script( 'image-edit', '/wp-admin/js/image-edit' . $suffix . '.js', [ 'jquery', 'json2', 'imgareaselect', ], $wp_version, true ); wp_enqueue_script( 'image-edit' ); } /** * Render media control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
<# if( 'image' === data.media_type ) { #>
<# } else if( 'video' === data.media_type ) { #> <# } #>
<# if( 'image' === data.media_type ) { #>
<# } else if( 'video' === data.media_type ) { #>
<# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #>
true, 'media_type' => 'image', 'dynamic' => [ 'categories' => [ TagsModule::IMAGE_CATEGORY ], 'returnType' => 'object', ], ]; } /** * Get media control image title. * * Retrieve the `title` of the image selected by the media control. * * @since 1.0.0 * @access public * @static * * @param array $attachment Media attachment. * * @return string Image title. */ public static function get_image_title( $attachment ) { if ( empty( $attachment['id'] ) ) { return ''; } return get_the_title( $attachment['id'] ); } /** * Get media control image alt. * * Retrieve the `alt` value of the image selected by the media control. * * @since 1.0.0 * @access public * @static * * @param array $instance Media attachment. * * @return string Image alt. */ public static function get_image_alt( $instance ) { if ( empty( $instance['id'] ) ) { return ''; } $attachment_id = $instance['id']; if ( ! $attachment_id ) { return ''; } $attachment = get_post( $attachment_id ); if ( ! $attachment ) { return ''; } $alt = get_post_meta( $attachment_id, '_wp_attachment_image_alt', true ); if ( ! $alt ) { $alt = $attachment->post_excerpt; if ( ! $alt ) { $alt = $attachment->post_title; } } return trim( strip_tags( $alt ) ); } } includes/controls/tabs.php000066600000002437152142641160011673 0ustar00start_controls_tabs()` * and in the end `$widget->end_controls_tabs()`. * * @since 1.0.0 */ class Control_Tabs extends Base_UI_Control { /** * Get tabs control type. * * Retrieve the control type, in this case `tabs`. * * @since 1.0.0 * @access public * * @return string Control type. */ public function get_type() { return 'tabs'; } /** * Render tabs control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() {} /** * Get tabs control default settings. * * Retrieve the default settings of the tabs control. Used to return the * default settings while initializing the tabs control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'separator' => 'none', ]; } } includes/controls/base-multiple.php000066600000004037152142641160013503 0ustar00 value` array. * * @since 1.0.0 * @abstract */ abstract class Control_Base_Multiple extends Base_Data_Control { /** * Get multiple control default value. * * Retrieve the default value of the multiple control. Used to return the default * values while initializing the multiple control. * * @since 1.0.0 * @access public * * @return array Control default value. */ public function get_default_value() { return []; } /** * Get multiple control value. * * Retrieve the value of the multiple control from a specific Controls_Stack settings. * * @since 1.0.0 * @access public * * @param array $control Control * @param array $settings Settings * * @return mixed Control values. */ public function get_value( $control, $settings ) { $value = parent::get_value( $control, $settings ); if ( empty( $control['default'] ) ) { $control['default'] = []; } if ( ! is_array( $value ) ) { $value = []; } $control['default'] = array_merge( $this->get_default_value(), $control['default'] ); return array_merge( $control['default'], $value ); } /** * Get multiple control style value. * * Retrieve the style of the control. Used when adding CSS rules to the control * while extracting CSS from the `selectors` data argument. * * @since 1.0.5 * @since 2.3.3 New `$control_data` parameter added. * @access public * * @param string $css_property CSS property. * @param array $control_value Control value. * @param array $control_data Control Data. * * @return array Control style value. */ public function get_style_value( $css_property, $control_value, array $control_data ) { return $control_value[ strtolower( $css_property ) ]; } } includes/controls/section.php000066600000003273152142641160012405 0ustar00start_controls_section()` * and `$widget->end_controls_section()` to wrap a set of controls. * * @since 1.0.0 */ class Control_Section extends Base_UI_Control { /** * Get section control type. * * Retrieve the control type, in this case `section`. * * @since 1.0.0 * @access public * * @return string Control type. */ public function get_type() { return 'section'; } /** * Render section control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
{{{ data.label }}}
'none', ]; } } includes/controls/code.php000066600000003451152142641160011651 0ustar00 true, 'language' => 'html', // html/css 'rows' => 10, ]; } /** * Render code control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> '', 'height' => '', ]; } /** * Get image dimensions control default settings. * * Retrieve the default settings of the image dimensions control. Used to return * the default settings while initializing the image dimensions control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'show_label' => false, 'label_block' => true, ]; } /** * Render image dimensions control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { if ( ! $this->is_image_editor_supports() ) : ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #>
get_control_uid( 'width' ); ?>
x
get_control_uid( 'height' ); ?>
'image/jpeg', ]; return ( wp_image_editor_supports( $arg ) ); } } includes/controls/wysiwyg.php000066600000003255152142641160012463 0ustar00
{{{ data.label }}}
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> true, 'dynamic' => [ 'active' => true, 'categories' => [ TagsModule::TEXT_CATEGORY ], ], ]; } } includes/controls/structure.php000066600000005005152142641160012774 0ustar00get_control_uid( '{{ preset.key }}' ); ?>
<# var morePresets = getMorePresets(); if ( morePresets.length ) { #>
<# _.each( morePresets, function( preset ) { #>
{{{ preset.preset.join( ', ' ) }}}
<# } ); #>
<# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> 'none', 'label_block' => true, 'show_label' => false, ]; } } includes/controls/url.php000066600000011371152142641160011541 0ustar00 '', 'is_external' => '', 'nofollow' => '', 'custom_attributes' => '', ]; } /** * Get url control default settings. * * Retrieve the default settings of the url control. Used to return the default * settings while initializing the url control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'label_block' => true, 'placeholder' => __( 'Paste URL or type', 'elementor' ), 'autocomplete' => true, 'options' => [ 'is_external', 'nofollow', 'custom_attributes' ], 'dynamic' => [ 'categories' => [ TagsModule::URL_CATEGORY ], 'property' => 'url', ], 'custom_attributes_description' => __( 'Set custom attributes for the link element. Separate attribute keys from values using the | (pipe) character. Separate key-value pairs with a comma.', 'elementor' ), ]; } /** * Render url control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); $is_external_control_uid = $this->get_control_uid( 'is_external' ); $nofollow_control_uid = $this->get_control_uid( 'nofollow' ); $custom_attributes_uid = $this->get_control_uid( 'custom_attributes' ); ?>
<# if ( ( data.options && -1 !== data.options.indexOf( 'custom_attributes' ) ) && data.custom_attributes_description ) { #>
{{{ data.custom_attributes_description }}}
<# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #>
true, 'scheme' => '', 'dynamic' => [ 'categories' => [ TagsModule::COLOR_CATEGORY, ], 'active' => true, ], ]; } } includes/controls/gallery.php000066600000007053152142641160012400 0ustar00templates_manager->get_import_images_instance()->import( $attachment ); } // Filter out attachments that don't exist $settings = array_filter( $settings ); return $settings; } /** * Render gallery control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
{{{ data.label }}}
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #>
true, 'separator' => 'none', 'dynamic' => [ 'categories' => [ TagsModule::GALLERY_CATEGORY ], 'returnType' => 'object', ], ]; } /** * Get gallery control default values. * * Retrieve the default value of the gallery control. Used to return the default * values while initializing the gallery control. * * @since 1.0.0 * @access public * * @return array Control default value. */ public function get_default_value() { return []; } } includes/controls/date-time.php000066600000003532152142641160012610 0ustar00 true, 'picker_options' => [], ]; } /** * Render date time control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> 0, 'vertical' => 0, 'blur' => 10, 'spread' => 0, 'color' => 'rgba(0,0,0,0.5)', ]; } /** * Get box shadow control sliders. * * Retrieve the sliders of the box shadow control. Sliders are used while * rendering the control output in the editor. * * @since 1.0.0 * @access public * * @return array Control sliders. */ public function get_sliders() { return [ 'horizontal' => [ 'label' => __( 'Horizontal', 'elementor' ), 'min' => -100, 'max' => 100, ], 'vertical' => [ 'label' => __( 'Vertical', 'elementor' ), 'min' => -100, 'max' => 100, ], 'blur' => [ 'label' => __( 'Blur', 'elementor' ), 'min' => 0, 'max' => 100, ], 'spread' => [ 'label' => __( 'Spread', 'elementor' ), 'min' => -100, 'max' => 100, ], ]; } /** * Render box shadow control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
get_sliders() as $slider_name => $slider ) : $control_uid = $this->get_control_uid( $slider_name ); ?>
'', 'event' => '', 'button_type' => 'default', ]; } /** * Render button control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.9.0 * @access public */ public function content_template() { ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> 'none', ]; } /** * Render divider control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 2.0.0 * @access public */ public function content_template() {} } includes/controls/dimensions.php000066600000007724152142641160013116 0ustar00 '', 'right' => '', 'bottom' => '', 'left' => '', 'isLinked' => true, ] ); } /** * Get dimensions control default settings. * * Retrieve the default settings of the dimensions control. Used to return the * default settings while initializing the dimensions control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return array_merge( parent::get_default_settings(), [ 'label_block' => true, 'allowed_dimensions' => 'all', 'placeholder' => '', ] ); } /** * Render dimensions control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $dimensions = [ 'top' => __( 'Top', 'elementor' ), 'right' => __( 'Right', 'elementor' ), 'bottom' => __( 'Bottom', 'elementor' ), 'left' => __( 'Left', 'elementor' ), ]; ?>
print_units_template(); ?>
    $dimension_title ) : $control_uid = $this->get_control_uid( $dimension_key ); ?>
  • ' ) ) { #> disabled <# } #> />
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> start_controls_tab()` * and in the end `$widget->end_controls_tab()`. * * @since 1.0.0 */ class Control_Tab extends Base_UI_Control { /** * Get tab control type. * * Retrieve the control type, in this case `tab`. * * @since 1.0.0 * @access public * * @return string Control type. */ public function get_type() { return 'tab'; } /** * Render tab control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>
{{{ data.label }}}
'none', ]; } } includes/controls/select.php000066600000004751152142641160012222 0ustar00 [], ]; } /** * Render select control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.label ) {#> <# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> __( 'No', 'elementor' ), 'label_on' => __( 'Yes', 'elementor' ), 'return_value' => 'yes', ]; } } includes/controls/base-units.php000066600000004340152142641160013007 0ustar00 'px', ]; } /** * Get units control default settings. * * Retrieve the default settings of the units control. Used to return the default * settings while initializing the units control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], 'em' => [ 'min' => 0.1, 'max' => 10, 'step' => 0.1, ], 'rem' => [ 'min' => 0.1, 'max' => 10, 'step' => 0.1, ], '%' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], 'deg' => [ 'min' => 0, 'max' => 360, 'step' => 1, ], 'vh' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], 'vw' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], ]; } /** * Print units control settings. * * Used to generate the units control template in the editor. * * @since 1.0.0 * @access protected */ protected function print_units_template() { ?> <# if ( data.size_units && data.size_units.length > 1 ) { #>
<# _.each( data.size_units, function( unit ) { #> <# } ); #>
<# } #>
Loading..
_x( 'Blur', 'Filter Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'required' => 'true', 'range' => [ 'px' => [ 'min' => 0, 'max' => 10, 'step' => 0.1, ], ], 'default' => [ 'size' => 0, ], 'selectors' => [ '{{SELECTOR}}' => 'filter: brightness( {{brightness.SIZE}}% ) contrast( {{contrast.SIZE}}% ) saturate( {{saturate.SIZE}}% ) blur( {{blur.SIZE}}px ) hue-rotate( {{hue.SIZE}}deg )', ], ]; $controls['brightness'] = [ 'label' => _x( 'Brightness', 'Filter Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'render_type' => 'ui', 'required' => 'true', 'default' => [ 'size' => 100, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 200, ], ], 'separator' => 'none', ]; $controls['contrast'] = [ 'label' => _x( 'Contrast', 'Filter Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'render_type' => 'ui', 'required' => 'true', 'default' => [ 'size' => 100, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 200, ], ], 'separator' => 'none', ]; $controls['saturate'] = [ 'label' => _x( 'Saturation', 'Filter Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'render_type' => 'ui', 'required' => 'true', 'default' => [ 'size' => 100, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 200, ], ], 'separator' => 'none', ]; $controls['hue'] = [ 'label' => _x( 'Hue', 'Filter Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'render_type' => 'ui', 'required' => 'true', 'default' => [ 'size' => 0, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 360, ], ], 'separator' => 'none', ]; return $controls; } /** * Get default options. * * Retrieve the default options of the CSS filter control. Used to return the * default options while initializing the CSS filter control. * * @since 2.1.0 * @access protected * * @return array Default CSS filter control options. */ protected function get_default_options() { return [ 'popover' => [ 'starter_name' => 'css_filter', 'starter_title' => _x( 'CSS Filters', 'Filter Control', 'elementor' ), 'settings' => [ 'render_type' => 'ui', ], ], ]; } } includes/controls/groups/box-shadow.php000066600000004471152142641160014334 0ustar00 _x( 'Box Shadow', 'Box Shadow Control', 'elementor' ), 'type' => Controls_Manager::BOX_SHADOW, 'selectors' => [ '{{SELECTOR}}' => 'box-shadow: {{HORIZONTAL}}px {{VERTICAL}}px {{BLUR}}px {{SPREAD}}px {{COLOR}} {{box_shadow_position.VALUE}};', ], ]; $controls['box_shadow_position'] = [ 'label' => _x( 'Position', 'Box Shadow Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ ' ' => _x( 'Outline', 'Box Shadow Control', 'elementor' ), 'inset' => _x( 'Inset', 'Box Shadow Control', 'elementor' ), ], 'default' => ' ', 'render_type' => 'ui', ]; return $controls; } /** * Get default options. * * Retrieve the default options of the box shadow control. Used to return the * default options while initializing the box shadow control. * * @since 1.9.0 * @access protected * * @return array Default box shadow control options. */ protected function get_default_options() { return [ 'popover' => [ 'starter_title' => _x( 'Box Shadow', 'Box Shadow Control', 'elementor' ), 'starter_name' => 'box_shadow_type', 'starter_value' => 'yes', 'settings' => [ 'render_type' => 'ui', ], ], ]; } } includes/controls/groups/background.php000066600000054423152142641160014402 0ustar00 [ 'title' => _x( 'Classic', 'Background Control', 'elementor' ), 'icon' => 'eicon-paint-brush', ], 'gradient' => [ 'title' => _x( 'Gradient', 'Background Control', 'elementor' ), 'icon' => 'eicon-barcode', ], 'video' => [ 'title' => _x( 'Video', 'Background Control', 'elementor' ), 'icon' => 'eicon-video-camera', ], 'slideshow' => [ 'title' => _x( 'Slideshow', 'Background Control', 'elementor' ), 'icon' => 'eicon-slideshow', ], ]; } /** * Init fields. * * Initialize background control fields. * * @since 1.2.2 * @access public * * @return array Control fields. */ public function init_fields() { $fields = []; $fields['background'] = [ 'label' => _x( 'Background Type', 'Background Control', 'elementor' ), 'type' => Controls_Manager::CHOOSE, 'render_type' => 'ui', ]; $fields['color'] = [ 'label' => _x( 'Color', 'Background Control', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'title' => _x( 'Background Color', 'Background Control', 'elementor' ), 'selectors' => [ '{{SELECTOR}}' => 'background-color: {{VALUE}};', ], 'condition' => [ 'background' => [ 'classic', 'gradient' ], ], ]; $fields['color_stop'] = [ 'label' => _x( 'Location', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ '%' ], 'default' => [ 'unit' => '%', 'size' => 0, ], 'render_type' => 'ui', 'condition' => [ 'background' => [ 'gradient' ], ], 'of_type' => 'gradient', ]; $fields['color_b'] = [ 'label' => _x( 'Second Color', 'Background Control', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '#f2295b', 'render_type' => 'ui', 'condition' => [ 'background' => [ 'gradient' ], ], 'of_type' => 'gradient', ]; $fields['color_b_stop'] = [ 'label' => _x( 'Location', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ '%' ], 'default' => [ 'unit' => '%', 'size' => 100, ], 'render_type' => 'ui', 'condition' => [ 'background' => [ 'gradient' ], ], 'of_type' => 'gradient', ]; $fields['gradient_type'] = [ 'label' => _x( 'Type', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ 'linear' => _x( 'Linear', 'Background Control', 'elementor' ), 'radial' => _x( 'Radial', 'Background Control', 'elementor' ), ], 'default' => 'linear', 'render_type' => 'ui', 'condition' => [ 'background' => [ 'gradient' ], ], 'of_type' => 'gradient', ]; $fields['gradient_angle'] = [ 'label' => _x( 'Angle', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'deg' ], 'default' => [ 'unit' => 'deg', 'size' => 180, ], 'range' => [ 'deg' => [ 'step' => 10, ], ], 'selectors' => [ '{{SELECTOR}}' => 'background-color: transparent; background-image: linear-gradient({{SIZE}}{{UNIT}}, {{color.VALUE}} {{color_stop.SIZE}}{{color_stop.UNIT}}, {{color_b.VALUE}} {{color_b_stop.SIZE}}{{color_b_stop.UNIT}})', ], 'condition' => [ 'background' => [ 'gradient' ], 'gradient_type' => 'linear', ], 'of_type' => 'gradient', ]; $fields['gradient_position'] = [ 'label' => _x( 'Position', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ 'center center' => _x( 'Center Center', 'Background Control', 'elementor' ), 'center left' => _x( 'Center Left', 'Background Control', 'elementor' ), 'center right' => _x( 'Center Right', 'Background Control', 'elementor' ), 'top center' => _x( 'Top Center', 'Background Control', 'elementor' ), 'top left' => _x( 'Top Left', 'Background Control', 'elementor' ), 'top right' => _x( 'Top Right', 'Background Control', 'elementor' ), 'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ), 'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ), 'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ), ], 'default' => 'center center', 'selectors' => [ '{{SELECTOR}}' => 'background-color: transparent; background-image: radial-gradient(at {{VALUE}}, {{color.VALUE}} {{color_stop.SIZE}}{{color_stop.UNIT}}, {{color_b.VALUE}} {{color_b_stop.SIZE}}{{color_b_stop.UNIT}})', ], 'condition' => [ 'background' => [ 'gradient' ], 'gradient_type' => 'radial', ], 'of_type' => 'gradient', ]; $fields['image'] = [ 'label' => _x( 'Image', 'Background Control', 'elementor' ), 'type' => Controls_Manager::MEDIA, 'dynamic' => [ 'active' => true, ], 'responsive' => true, 'title' => _x( 'Background Image', 'Background Control', 'elementor' ), 'selectors' => [ '{{SELECTOR}}' => 'background-image: url("{{URL}}");', ], 'render_type' => 'template', 'condition' => [ 'background' => [ 'classic' ], ], ]; $fields['position'] = [ 'label' => _x( 'Position', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'responsive' => true, 'options' => [ '' => _x( 'Default', 'Background Control', 'elementor' ), 'center center' => _x( 'Center Center', 'Background Control', 'elementor' ), 'center left' => _x( 'Center Left', 'Background Control', 'elementor' ), 'center right' => _x( 'Center Right', 'Background Control', 'elementor' ), 'top center' => _x( 'Top Center', 'Background Control', 'elementor' ), 'top left' => _x( 'Top Left', 'Background Control', 'elementor' ), 'top right' => _x( 'Top Right', 'Background Control', 'elementor' ), 'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ), 'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ), 'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ), 'initial' => _x( 'Custom', 'Background Control', 'elementor' ), ], 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{VALUE}};', ], 'condition' => [ 'background' => [ 'classic' ], 'image[url]!' => '', ], ]; $fields['xpos'] = [ 'label' => _x( 'X Position', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'responsive' => true, 'size_units' => [ 'px', 'em', '%', 'vw' ], 'default' => [ 'unit' => 'px', 'size' => 0, ], 'tablet_default' => [ 'unit' => 'px', 'size' => 0, ], 'mobile_default' => [ 'unit' => 'px', 'size' => 0, ], 'range' => [ 'px' => [ 'min' => -800, 'max' => 800, ], 'em' => [ 'min' => -100, 'max' => 100, ], '%' => [ 'min' => -100, 'max' => 100, ], 'vw' => [ 'min' => -100, 'max' => 100, ], ], 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos.SIZE}}{{ypos.UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position' => [ 'initial' ], 'image[url]!' => '', ], 'required' => true, 'device_args' => [ Controls_Stack::RESPONSIVE_TABLET => [ 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos_tablet.SIZE}}{{ypos_tablet.UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position_tablet' => [ 'initial' ], ], ], Controls_Stack::RESPONSIVE_MOBILE => [ 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos_mobile.SIZE}}{{ypos_mobile.UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position_mobile' => [ 'initial' ], ], ], ], ]; $fields['ypos'] = [ 'label' => _x( 'Y Position', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'responsive' => true, 'size_units' => [ 'px', 'em', '%', 'vh' ], 'default' => [ 'unit' => 'px', 'size' => 0, ], 'tablet_default' => [ 'unit' => 'px', 'size' => 0, ], 'mobile_default' => [ 'unit' => 'px', 'size' => 0, ], 'range' => [ 'px' => [ 'min' => -800, 'max' => 800, ], 'em' => [ 'min' => -100, 'max' => 100, ], '%' => [ 'min' => -100, 'max' => 100, ], 'vh' => [ 'min' => -100, 'max' => 100, ], ], 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{xpos.SIZE}}{{xpos.UNIT}} {{SIZE}}{{UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position' => [ 'initial' ], 'image[url]!' => '', ], 'required' => true, 'device_args' => [ Controls_Stack::RESPONSIVE_TABLET => [ 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{xpos_tablet.SIZE}}{{xpos_tablet.UNIT}} {{SIZE}}{{UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position_tablet' => [ 'initial' ], ], ], Controls_Stack::RESPONSIVE_MOBILE => [ 'selectors' => [ '{{SELECTOR}}' => 'background-position: {{xpos_mobile.SIZE}}{{xpos_mobile.UNIT}} {{SIZE}}{{UNIT}}', ], 'condition' => [ 'background' => [ 'classic' ], 'position_mobile' => [ 'initial' ], ], ], ], ]; $fields['attachment'] = [ 'label' => _x( 'Attachment', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => _x( 'Default', 'Background Control', 'elementor' ), 'scroll' => _x( 'Scroll', 'Background Control', 'elementor' ), 'fixed' => _x( 'Fixed', 'Background Control', 'elementor' ), ], 'selectors' => [ '(desktop+){{SELECTOR}}' => 'background-attachment: {{VALUE}};', ], 'condition' => [ 'background' => [ 'classic' ], 'image[url]!' => '', ], ]; $fields['attachment_alert'] = [ 'type' => Controls_Manager::RAW_HTML, 'content_classes' => 'elementor-control-field-description', 'raw' => __( 'Note: Attachment Fixed works only on desktop.', 'elementor' ), 'separator' => 'none', 'condition' => [ 'background' => [ 'classic' ], 'image[url]!' => '', 'attachment' => 'fixed', ], ]; $fields['repeat'] = [ 'label' => _x( 'Repeat', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'responsive' => true, 'options' => [ '' => _x( 'Default', 'Background Control', 'elementor' ), 'no-repeat' => _x( 'No-repeat', 'Background Control', 'elementor' ), 'repeat' => _x( 'Repeat', 'Background Control', 'elementor' ), 'repeat-x' => _x( 'Repeat-x', 'Background Control', 'elementor' ), 'repeat-y' => _x( 'Repeat-y', 'Background Control', 'elementor' ), ], 'selectors' => [ '{{SELECTOR}}' => 'background-repeat: {{VALUE}};', ], 'condition' => [ 'background' => [ 'classic' ], 'image[url]!' => '', ], ]; $fields['size'] = [ 'label' => _x( 'Size', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'responsive' => true, 'default' => '', 'options' => [ '' => _x( 'Default', 'Background Control', 'elementor' ), 'auto' => _x( 'Auto', 'Background Control', 'elementor' ), 'cover' => _x( 'Cover', 'Background Control', 'elementor' ), 'contain' => _x( 'Contain', 'Background Control', 'elementor' ), 'initial' => _x( 'Custom', 'Background Control', 'elementor' ), ], 'selectors' => [ '{{SELECTOR}}' => 'background-size: {{VALUE}};', ], 'condition' => [ 'background' => [ 'classic' ], 'image[url]!' => '', ], ]; $fields['bg_width'] = [ 'label' => _x( 'Width', 'Background Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'responsive' => true, 'size_units' => [ 'px', 'em', '%', 'vw' ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 1000, ], '%' => [ 'min' => 0, 'max' => 100, ], 'vw' => [ 'min' => 0, 'max' => 100, ], ], 'default' => [ 'size' => 100, 'unit' => '%', ], 'required' => true, 'selectors' => [ '{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto', ], 'condition' => [ 'background' => [ 'classic' ], 'size' => [ 'initial' ], 'image[url]!' => '', ], 'device_args' => [ Controls_Stack::RESPONSIVE_TABLET => [ 'selectors' => [ '{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto', ], 'condition' => [ 'background' => [ 'classic' ], 'size_tablet' => [ 'initial' ], ], ], Controls_Stack::RESPONSIVE_MOBILE => [ 'selectors' => [ '{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto', ], 'condition' => [ 'background' => [ 'classic' ], 'size_mobile' => [ 'initial' ], ], ], ], ]; $fields['video_link'] = [ 'label' => _x( 'Video Link', 'Background Control', 'elementor' ), 'type' => Controls_Manager::TEXT, 'placeholder' => 'https://www.youtube.com/watch?v=XHOmBV4js_E', 'description' => __( 'YouTube/Vimeo link, or link to video file (mp4 is recommended).', 'elementor' ), 'label_block' => true, 'default' => '', 'condition' => [ 'background' => [ 'video' ], ], 'of_type' => 'video', 'frontend_available' => true, ]; $fields['video_start'] = [ 'label' => __( 'Start Time', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'description' => __( 'Specify a start time (in seconds)', 'elementor' ), 'placeholder' => 10, 'condition' => [ 'background' => [ 'video' ], ], 'of_type' => 'video', 'frontend_available' => true, ]; $fields['video_end'] = [ 'label' => __( 'End Time', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'description' => __( 'Specify an end time (in seconds)', 'elementor' ), 'placeholder' => 70, 'condition' => [ 'background' => [ 'video' ], ], 'of_type' => 'video', 'frontend_available' => true, ]; $fields['play_once'] = [ 'label' => __( 'Play Once', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'condition' => [ 'background' => [ 'video' ], ], 'of_type' => 'video', 'frontend_available' => true, ]; $fields['play_on_mobile'] = [ 'label' => __( 'Play On Mobile', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'condition' => [ 'background' => [ 'video' ], ], 'of_type' => 'video', 'frontend_available' => true, ]; $fields['video_fallback'] = [ 'label' => _x( 'Background Fallback', 'Background Control', 'elementor' ), 'description' => __( 'This cover image will replace the background video in case that the video could not be loaded.', 'elementor' ), 'type' => Controls_Manager::MEDIA, 'condition' => [ 'background' => [ 'video' ], ], 'selectors' => [ '{{SELECTOR}}' => 'background: url("{{URL}}") 50% 50%; background-size: cover;', ], 'of_type' => 'video', ]; $fields['slideshow_gallery'] = [ 'label' => _x( 'Images', 'Background Control', 'elementor' ), 'type' => Controls_Manager::GALLERY, 'condition' => [ 'background' => [ 'slideshow' ], ], 'show_label' => false, 'of_type' => 'slideshow', 'frontend_available' => true, ]; $fields['slideshow_loop'] = [ 'label' => __( 'Infinite Loop', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', 'condition' => [ 'background' => [ 'slideshow' ], ], 'of_type' => 'slideshow', 'frontend_available' => true, ]; $fields['slideshow_slide_duration'] = [ 'label' => __( 'Duration', 'elementor' ) . ' (ms)', 'type' => Controls_Manager::NUMBER, 'default' => 5000, 'condition' => [ 'background' => [ 'slideshow' ], ], 'frontend_available' => true, ]; $fields['slideshow_slide_transition'] = [ 'label' => __( 'Transition', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'fade', 'options' => [ 'fade' => 'Fade', 'slide_right' => 'Slide Right', 'slide_left' => 'Slide Left', 'slide_up' => 'Slide Up', 'slide_down' => 'Slide Down', ], 'condition' => [ 'background' => [ 'slideshow' ], ], 'of_type' => 'slideshow', 'frontend_available' => true, ]; $fields['slideshow_transition_duration'] = [ 'label' => __( 'Transition Duration', 'elementor' ) . ' (ms)', 'type' => Controls_Manager::NUMBER, 'default' => 500, 'condition' => [ 'background' => [ 'slideshow' ], ], 'frontend_available' => true, ]; $fields['slideshow_background_size'] = [ 'label' => __( 'Background Size', 'elementor' ), 'type' => Controls_Manager::SELECT, 'responsive' => true, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'auto' => __( 'Auto', 'elementor' ), 'cover' => __( 'Cover', 'elementor' ), 'contain' => __( 'Contain', 'elementor' ), ], 'selectors' => [ '{{WRAPPER}} .elementor-background-slideshow__slide__image' => 'background-size: {{VALUE}};', ], 'condition' => [ 'background' => [ 'slideshow' ], ], ]; $fields['slideshow_background_position'] = [ 'label' => __( 'Background Position', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'responsive' => true, 'options' => [ '' => __( 'Default', 'elementor' ), 'center center' => _x( 'Center Center', 'Background Control', 'elementor' ), 'center left' => _x( 'Center Left', 'Background Control', 'elementor' ), 'center right' => _x( 'Center Right', 'Background Control', 'elementor' ), 'top center' => _x( 'Top Center', 'Background Control', 'elementor' ), 'top left' => _x( 'Top Left', 'Background Control', 'elementor' ), 'top right' => _x( 'Top Right', 'Background Control', 'elementor' ), 'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ), 'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ), 'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ), ], 'selectors' => [ '{{WRAPPER}} .elementor-background-slideshow__slide__image' => 'background-position: {{VALUE}};', ], 'condition' => [ 'background' => [ 'slideshow' ], ], ]; $fields['slideshow_ken_burns'] = [ 'label' => __( 'Ken Burns Effect', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'separator' => 'before', 'condition' => [ 'background' => [ 'slideshow' ], ], 'of_type' => 'slideshow', 'frontend_available' => true, ]; $fields['slideshow_ken_burns_zoom_direction'] = [ 'label' => __( 'Direction', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'in', 'options' => [ 'in' => __( 'In', 'elementor' ), 'out' => __( 'Out', 'elementor' ), ], 'condition' => [ 'background' => [ 'slideshow' ], 'slideshow_ken_burns!' => '', ], 'of_type' => 'slideshow', 'frontend_available' => true, ]; return $fields; } /** * Get child default args. * * Retrieve the default arguments for all the child controls for a specific group * control. * * @since 1.2.2 * @access protected * * @return array Default arguments for all the child controls. */ protected function get_child_default_args() { return [ 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}}:not(.elementor-motion-effects-element-type-background), {{WRAPPER}} > .elementor-motion-effects-container > .elementor-motion-effects-layer', ]; } /** * Filter fields. * * Filter which controls to display, using `include`, `exclude`, `condition` * and `of_type` arguments. * * @since 1.2.2 * @access protected * * @return array Control fields. */ protected function filter_fields() { $fields = parent::filter_fields(); $args = $this->get_args(); foreach ( $fields as &$field ) { if ( isset( $field['of_type'] ) && ! in_array( $field['of_type'], $args['types'] ) ) { unset( $field ); } } return $fields; } /** * Prepare fields. * * Process background control fields before adding them to `add_control()`. * * @since 1.2.2 * @access protected * * @param array $fields Background control fields. * * @return array Processed fields. */ protected function prepare_fields( $fields ) { $args = $this->get_args(); $background_types = self::get_background_types(); $choose_types = []; foreach ( $args['types'] as $type ) { if ( isset( $background_types[ $type ] ) ) { $choose_types[ $type ] = $background_types[ $type ]; } } $fields['background']['options'] = $choose_types; return parent::prepare_fields( $fields ); } /** * Get default options. * * Retrieve the default options of the background control. Used to return the * default options while initializing the background control. * * @since 1.9.0 * @access protected * * @return array Default background control options. */ protected function get_default_options() { return [ 'popover' => false, ]; } } includes/controls/groups/border.php000066600000004776152142641160013546 0ustar00 _x( 'Border Type', 'Border Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ '' => __( 'None', 'elementor' ), 'solid' => _x( 'Solid', 'Border Control', 'elementor' ), 'double' => _x( 'Double', 'Border Control', 'elementor' ), 'dotted' => _x( 'Dotted', 'Border Control', 'elementor' ), 'dashed' => _x( 'Dashed', 'Border Control', 'elementor' ), 'groove' => _x( 'Groove', 'Border Control', 'elementor' ), ], 'selectors' => [ '{{SELECTOR}}' => 'border-style: {{VALUE}};', ], ]; $fields['width'] = [ 'label' => _x( 'Width', 'Border Control', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'selectors' => [ '{{SELECTOR}}' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'border!' => '', ], 'responsive' => true, ]; $fields['color'] = [ 'label' => _x( 'Color', 'Border Control', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{SELECTOR}}' => 'border-color: {{VALUE}};', ], 'condition' => [ 'border!' => '', ], ]; return $fields; } /** * Get default options. * * Retrieve the default options of the border control. Used to return the * default options while initializing the border control. * * @since 1.9.0 * @access protected * * @return array Default border control options. */ protected function get_default_options() { return [ 'popover' => false, ]; } } includes/controls/groups/typography.php000066600000016330152142641160014464 0ustar00get_model()->get_settings( 'elementor_default_generic_fonts' ); if ( $default_fonts ) { $default_fonts = ', ' . $default_fonts; } $fields['font_family'] = [ 'label' => _x( 'Family', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::FONT, 'default' => '', 'selector_value' => 'font-family: "{{VALUE}}"' . $default_fonts . ';', ]; $fields['font_size'] = [ 'label' => _x( 'Size', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'px', 'em', 'rem', 'vw' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 200, ], 'vw' => [ 'min' => 0.1, 'max' => 10, 'step' => 0.1, ], ], 'responsive' => true, 'selector_value' => 'font-size: {{SIZE}}{{UNIT}}', ]; $typo_weight_options = [ '' => __( 'Default', 'elementor' ), ]; foreach ( array_merge( [ 'normal', 'bold' ], range( 100, 900, 100 ) ) as $weight ) { $typo_weight_options[ $weight ] = ucfirst( $weight ); } $fields['font_weight'] = [ 'label' => _x( 'Weight', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => $typo_weight_options, ]; $fields['text_transform'] = [ 'label' => _x( 'Transform', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'uppercase' => _x( 'Uppercase', 'Typography Control', 'elementor' ), 'lowercase' => _x( 'Lowercase', 'Typography Control', 'elementor' ), 'capitalize' => _x( 'Capitalize', 'Typography Control', 'elementor' ), 'none' => _x( 'Normal', 'Typography Control', 'elementor' ), ], ]; $fields['font_style'] = [ 'label' => _x( 'Style', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'normal' => _x( 'Normal', 'Typography Control', 'elementor' ), 'italic' => _x( 'Italic', 'Typography Control', 'elementor' ), 'oblique' => _x( 'Oblique', 'Typography Control', 'elementor' ), ], ]; $fields['text_decoration'] = [ 'label' => _x( 'Decoration', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'underline' => _x( 'Underline', 'Typography Control', 'elementor' ), 'overline' => _x( 'Overline', 'Typography Control', 'elementor' ), 'line-through' => _x( 'Line Through', 'Typography Control', 'elementor' ), 'none' => _x( 'None', 'Typography Control', 'elementor' ), ], ]; $fields['line_height'] = [ 'label' => _x( 'Line-Height', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'desktop_default' => [ 'unit' => 'em', ], 'tablet_default' => [ 'unit' => 'em', ], 'mobile_default' => [ 'unit' => 'em', ], 'range' => [ 'px' => [ 'min' => 1, ], ], 'responsive' => true, 'size_units' => [ 'px', 'em' ], 'selector_value' => 'line-height: {{SIZE}}{{UNIT}}', ]; $fields['letter_spacing'] = [ 'label' => _x( 'Letter Spacing', 'Typography Control', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => -5, 'max' => 10, 'step' => 0.1, ], ], 'responsive' => true, 'selector_value' => 'letter-spacing: {{SIZE}}{{UNIT}}', ]; return $fields; } /** * Prepare fields. * * Process typography control fields before adding them to `add_control()`. * * @since 1.2.3 * @access protected * * @param array $fields Typography control fields. * * @return array Processed fields. */ protected function prepare_fields( $fields ) { array_walk( $fields, function( &$field, $field_name ) { if ( in_array( $field_name, [ 'typography', 'popover_toggle' ] ) ) { return; } $selector_value = ! empty( $field['selector_value'] ) ? $field['selector_value'] : str_replace( '_', '-', $field_name ) . ': {{VALUE}};'; $field['selectors'] = [ '{{SELECTOR}}' => $selector_value, ]; } ); return parent::prepare_fields( $fields ); } /** * Add group arguments to field. * * Register field arguments to typography control. * * @since 1.2.2 * @access protected * * @param string $control_id Typography control id. * @param array $field_args Typography control field arguments. * * @return array Field arguments. */ protected function add_group_args_to_field( $control_id, $field_args ) { $field_args = parent::add_group_args_to_field( $control_id, $field_args ); $args = $this->get_args(); if ( in_array( $control_id, self::get_scheme_fields_keys() ) && ! empty( $args['scheme'] ) ) { $field_args['scheme'] = [ 'type' => self::get_type(), 'value' => $args['scheme'], 'key' => $control_id, ]; } return $field_args; } /** * Get default options. * * Retrieve the default options of the typography control. Used to return the * default options while initializing the typography control. * * @since 1.9.0 * @access protected * * @return array Default typography control options. */ protected function get_default_options() { return [ 'popover' => [ 'starter_name' => 'typography', 'starter_title' => _x( 'Typography', 'Typography Control', 'elementor' ), 'settings' => [ 'render_type' => 'ui', ], ], ]; } } includes/controls/groups/base.php000066600000032143152142641160013170 0ustar00options ) { $this->init_options(); } if ( $option ) { if ( isset( $this->options[ $option ] ) ) { return $this->options[ $option ]; } return null; } return $this->options; } /** * Add new controls to stack. * * Register multiple controls to allow the user to set/update data. * * @since 1.0.0 * @access public * * @param Controls_Stack $element The element stack. * @param array $user_args The control arguments defined by the user. * @param array $options Optional. The element options. Default is * an empty array. */ final public function add_controls( Controls_Stack $element, array $user_args, array $options = [] ) { $this->init_args( $user_args ); // Filter which controls to display $filtered_fields = $this->filter_fields(); $filtered_fields = $this->prepare_fields( $filtered_fields ); // For php < 7 reset( $filtered_fields ); if ( isset( $this->args['separator'] ) ) { $filtered_fields[ key( $filtered_fields ) ]['separator'] = $this->args['separator']; } $has_injection = false; if ( ! empty( $options['position'] ) ) { $has_injection = true; $element->start_injection( $options['position'] ); unset( $options['position'] ); } if ( $this->get_options( 'popover' ) ) { $this->start_popover( $element ); } foreach ( $filtered_fields as $field_id => $field_args ) { // Add the global group args to the control $field_args = $this->add_group_args_to_field( $field_id, $field_args ); // Register the control $id = $this->get_controls_prefix() . $field_id; if ( ! empty( $field_args['responsive'] ) ) { unset( $field_args['responsive'] ); $element->add_responsive_control( $id, $field_args, $options ); } else { $element->add_control( $id, $field_args, $options ); } } if ( $this->get_options( 'popover' ) ) { $element->end_popover(); } if ( $has_injection ) { $element->end_injection(); } } /** * Get arguments. * * Retrieve group control arguments. * * @since 1.0.0 * @access public * * @return array Group control arguments. */ final public function get_args() { return $this->args; } /** * Get fields. * * Retrieve group control fields. * * @since 1.2.2 * @access public * * @return array Control fields. */ final public function get_fields() { if ( null === static::$fields ) { static::$fields = $this->init_fields(); } return static::$fields; } /** * Get controls prefix. * * Retrieve the prefix of the group control, which is `{{ControlName}}_`. * * @since 1.0.0 * @access public * * @return string Control prefix. */ public function get_controls_prefix() { return $this->args['name'] . '_'; } /** * Get group control classes. * * Retrieve the classes of the group control. * * @since 1.0.0 * @access public * * @return string Group control classes. */ public function get_base_group_classes() { return 'elementor-group-control-' . static::get_type() . ' elementor-group-control'; } /** * Init fields. * * Initialize group control fields. * * @abstract * @since 1.2.2 * @access protected */ abstract protected function init_fields(); /** * Get default options. * * Retrieve the default options of the group control. Used to return the * default options while initializing the group control. * * @since 1.9.0 * @access protected * * @return array Default group control options. */ protected function get_default_options() { return []; } /** * Get child default arguments. * * Retrieve the default arguments for all the child controls for a specific group * control. * * @since 1.2.2 * @access protected * * @return array Default arguments for all the child controls. */ protected function get_child_default_args() { return []; } /** * Filter fields. * * Filter which controls to display, using `include`, `exclude` and the * `condition` arguments. * * @since 1.2.2 * @access protected * * @return array Control fields. */ protected function filter_fields() { $args = $this->get_args(); $fields = $this->get_fields(); if ( ! empty( $args['include'] ) ) { $fields = array_intersect_key( $fields, array_flip( $args['include'] ) ); } if ( ! empty( $args['exclude'] ) ) { $fields = array_diff_key( $fields, array_flip( $args['exclude'] ) ); } return $fields; } /** * Add group arguments to field. * * Register field arguments to group control. * * @since 1.2.2 * @access protected * * @param string $control_id Group control id. * @param array $field_args Group control field arguments. * * @return array */ protected function add_group_args_to_field( $control_id, $field_args ) { $args = $this->get_args(); if ( ! empty( $args['tab'] ) ) { $field_args['tab'] = $args['tab']; } if ( ! empty( $args['section'] ) ) { $field_args['section'] = $args['section']; } $field_args['classes'] = $this->get_base_group_classes() . ' elementor-group-control-' . $control_id; foreach ( [ 'condition', 'conditions' ] as $condition_type ) { if ( ! empty( $args[ $condition_type ] ) ) { if ( empty( $field_args[ $condition_type ] ) ) { $field_args[ $condition_type ] = []; } $field_args[ $condition_type ] += $args[ $condition_type ]; } } return $field_args; } /** * Prepare fields. * * Process group control fields before adding them to `add_control()`. * * @since 1.2.2 * @access protected * * @param array $fields Group control fields. * * @return array Processed fields. */ protected function prepare_fields( $fields ) { $popover_options = $this->get_options( 'popover' ); $popover_name = ! $popover_options ? null : $popover_options['starter_name']; foreach ( $fields as $field_key => &$field ) { if ( $popover_name ) { $field['condition'][ $popover_name . '!' ] = ''; } if ( isset( $this->args['fields_options']['__all'] ) ) { $field = array_merge( $field, $this->args['fields_options']['__all'] ); } if ( isset( $this->args['fields_options'][ $field_key ] ) ) { $field = array_merge( $field, $this->args['fields_options'][ $field_key ] ); } if ( ! empty( $field['condition'] ) ) { $field = $this->add_condition_prefix( $field ); } if ( ! empty( $field['conditions'] ) ) { $field['conditions'] = $this->add_conditions_prefix( $field['conditions'] ); } if ( ! empty( $field['selectors'] ) ) { $field['selectors'] = $this->handle_selectors( $field['selectors'] ); } if ( ! empty( $field['device_args'] ) ) { foreach ( $field['device_args'] as $device => $device_arg ) { if ( ! empty( $field['device_args'][ $device ]['condition'] ) ) { $field['device_args'][ $device ] = $this->add_condition_prefix( $field['device_args'][ $device ] ); } if ( ! empty( $field['device_args'][ $device ]['conditions'] ) ) { $field['device_args'][ $device ]['conditions'] = $this->add_conditions_prefix( $field['device_args'][ $device ]['conditions'] ); } if ( ! empty( $device_arg['selectors'] ) ) { $field['device_args'][ $device ]['selectors'] = $this->handle_selectors( $device_arg['selectors'] ); } } } } return $fields; } /** * Init options. * * Initializing group control options. * * @since 1.9.0 * @access private */ private function init_options() { $default_options = [ 'popover' => [ 'starter_name' => 'popover_toggle', 'starter_value' => 'custom', 'starter_title' => '', ], ]; $this->options = array_replace_recursive( $default_options, $this->get_default_options() ); } /** * Init arguments. * * Initializing group control base class. * * @since 1.2.2 * @access protected * * @param array $args Group control settings value. */ protected function init_args( $args ) { $this->args = array_merge( $this->get_default_args(), $this->get_child_default_args(), $args ); } /** * Get default arguments. * * Retrieve the default arguments of the group control. Used to return the * default arguments while initializing the group control. * * @since 1.2.2 * @access private * * @return array Control default arguments. */ private function get_default_args() { return [ 'default' => '', 'selector' => '{{WRAPPER}}', 'fields_options' => [], ]; } /** * Add condition prefix. * * Used to add the group prefix to controls with conditions, to * distinguish them from other controls with the same name. * * This way Elementor can apply condition logic to a specific control in a * group control. * * @since 1.2.0 * @access private * * @param array $field Group control field. * * @return array Group control field. */ private function add_condition_prefix( $field ) { $controls_prefix = $this->get_controls_prefix(); $prefixed_condition_keys = array_map( function( $key ) use ( $controls_prefix ) { return $controls_prefix . $key; }, array_keys( $field['condition'] ) ); $field['condition'] = array_combine( $prefixed_condition_keys, $field['condition'] ); return $field; } private function add_conditions_prefix( $conditions ) { $controls_prefix = $this->get_controls_prefix(); foreach ( $conditions['terms'] as & $condition ) { if ( isset( $condition['terms'] ) ) { $condition = $this->add_conditions_prefix( $condition ); continue; } $condition['name'] = $controls_prefix . $condition['name']; } return $conditions; } /** * Handle selectors. * * Used to process the CSS selector of group control fields. When using * group control, Elementor needs to apply the selector to different fields. * This method handles the process. * * In addition, it handles selector values from other fields and process the * css. * * @since 1.2.2 * @access private * * @param array $selectors An array of selectors to process. * * @return array Processed selectors. */ private function handle_selectors( $selectors ) { $args = $this->get_args(); $selectors = array_combine( array_map( function( $key ) use ( $args ) { return str_replace( '{{SELECTOR}}', $args['selector'], $key ); }, array_keys( $selectors ) ), $selectors ); if ( ! $selectors ) { return $selectors; } $controls_prefix = $this->get_controls_prefix(); foreach ( $selectors as &$selector ) { $selector = preg_replace_callback( '/\{\{\K(.*?)(?=}})/', function( $matches ) use ( $controls_prefix ) { return preg_replace_callback( '/[^ ]+(?=\.)/', function( $sub_matches ) use ( $controls_prefix ) { return $controls_prefix . $sub_matches[0]; }, $matches[1] ); }, $selector ); } return $selectors; } /** * Start popover. * * Starts a group controls popover. * * @since 1.9.1 * @access private * @param Controls_Stack $element Element. */ private function start_popover( Controls_Stack $element ) { $popover_options = $this->get_options( 'popover' ); $settings = $this->get_args(); if ( ! empty( $settings['label'] ) ) { $label = $settings['label']; } else { $label = $popover_options['starter_title']; } $control_params = [ 'type' => Controls_Manager::POPOVER_TOGGLE, 'label' => $label, 'return_value' => $popover_options['starter_value'], ]; if ( ! empty( $popover_options['settings'] ) ) { $control_params = array_replace_recursive( $control_params, $popover_options['settings'] ); } foreach ( [ 'condition', 'conditions' ] as $key ) { if ( ! empty( $settings[ $key ] ) ) { $control_params[ $key ] = $settings[ $key ]; } } $starter_name = $popover_options['starter_name']; if ( isset( $this->args['fields_options'][ $starter_name ] ) ) { $control_params = array_merge( $control_params, $this->args['fields_options'][ $starter_name ] ); } $element->add_control( $this->get_controls_prefix() . $starter_name, $control_params ); $element->start_popover(); } } includes/controls/groups/text-shadow.php000066600000003650152142641160014526 0ustar00 _x( 'Text Shadow', 'Text Shadow Control', 'elementor' ), 'type' => Controls_Manager::TEXT_SHADOW, 'selectors' => [ '{{SELECTOR}}' => 'text-shadow: {{HORIZONTAL}}px {{VERTICAL}}px {{BLUR}}px {{COLOR}};', ], ]; return $controls; } /** * Get default options. * * Retrieve the default options of the text shadow control. Used to return the * default options while initializing the text shadow control. * * @since 1.9.0 * @access protected * * @return array Default text shadow control options. */ protected function get_default_options() { return [ 'popover' => [ 'starter_title' => _x( 'Text Shadow', 'Text Shadow Control', 'elementor' ), 'starter_name' => 'text_shadow_type', 'starter_value' => 'yes', 'settings' => [ 'render_type' => 'ui', ], ], ]; } } includes/controls/groups/image-size.php000066600000024126152142641160014312 0ustar00 trim( $image_class ), ]; $html .= wp_get_attachment_image( $image['id'], $size, false, $image_attr ); } else { $image_src = self::get_attachment_image_src( $image['id'], $image_size_key, $settings ); if ( ! $image_src && isset( $image['url'] ) ) { $image_src = $image['url']; } if ( ! empty( $image_src ) ) { $image_class_html = ! empty( $image_class ) ? ' class="' . $image_class . '"' : ''; $html .= sprintf( '%s', esc_attr( $image_src ), Control_Media::get_image_title( $image ), Control_Media::get_image_alt( $image ), $image_class_html ); } } /** * Get Attachment Image HTML * * Filters the Attachment Image HTML * * @since 2.4.0 * @param string $html the attachment image HTML string * @param array $settings Control settings. * @param string $image_size_key Optional. Settings key for image size. * Default is `image`. * @param string $image_key Optional. Settings key for image. Default * is null. If not defined uses image size key * as the image key. */ return apply_filters( 'elementor/image_size/get_attachment_image_html', $html, $settings, $image_size_key, $image_key ); } /** * Get all image sizes. * * Retrieve available image sizes with data like `width`, `height` and `crop`. * * @since 1.0.0 * @access public * @static * * @return array An array of available image sizes. */ public static function get_all_image_sizes() { global $_wp_additional_image_sizes; $default_image_sizes = [ 'thumbnail', 'medium', 'medium_large', 'large' ]; $image_sizes = []; foreach ( $default_image_sizes as $size ) { $image_sizes[ $size ] = [ 'width' => (int) get_option( $size . '_size_w' ), 'height' => (int) get_option( $size . '_size_h' ), 'crop' => (bool) get_option( $size . '_crop' ), ]; } if ( $_wp_additional_image_sizes ) { $image_sizes = array_merge( $image_sizes, $_wp_additional_image_sizes ); } /** This filter is documented in wp-admin/includes/media.php */ return apply_filters( 'image_size_names_choose', $image_sizes ); } /** * Get attachment image src. * * Retrieve the attachment image source URL. * * @since 1.0.0 * @access public * @static * * @param string $attachment_id The attachment ID. * @param string $image_size_key Settings key for image size. * @param array $settings Control settings. * * @return string Attachment image source URL. */ public static function get_attachment_image_src( $attachment_id, $image_size_key, array $settings ) { if ( empty( $attachment_id ) ) { return false; } $size = $settings[ $image_size_key . '_size' ]; if ( 'custom' !== $size ) { $attachment_size = $size; } else { // Use BFI_Thumb script // TODO: Please rewrite this code. require_once( ELEMENTOR_PATH . 'includes/libraries/bfi-thumb/bfi-thumb.php' ); $custom_dimension = $settings[ $image_size_key . '_custom_dimension' ]; $attachment_size = [ // Defaults sizes 0 => null, // Width. 1 => null, // Height. 'bfi_thumb' => true, 'crop' => true, ]; $has_custom_size = false; if ( ! empty( $custom_dimension['width'] ) ) { $has_custom_size = true; $attachment_size[0] = $custom_dimension['width']; } if ( ! empty( $custom_dimension['height'] ) ) { $has_custom_size = true; $attachment_size[1] = $custom_dimension['height']; } if ( ! $has_custom_size ) { $attachment_size = 'full'; } } $image_src = wp_get_attachment_image_src( $attachment_id, $attachment_size ); if ( empty( $image_src[0] ) && 'thumbnail' !== $attachment_size ) { $image_src = wp_get_attachment_image_src( $attachment_id ); } return ! empty( $image_src[0] ) ? $image_src[0] : ''; } /** * Get child default arguments. * * Retrieve the default arguments for all the child controls for a specific group * control. * * @since 1.2.2 * @access protected * * @return array Default arguments for all the child controls. */ protected function get_child_default_args() { return [ 'include' => [], 'exclude' => [], ]; } /** * Init fields. * * Initialize image size control fields. * * @since 1.2.2 * @access protected * * @return array Control fields. */ protected function init_fields() { $fields = []; $fields['size'] = [ 'label' => _x( 'Image Size', 'Image Size Control', 'elementor' ), 'type' => Controls_Manager::SELECT, ]; $fields['custom_dimension'] = [ 'label' => _x( 'Image Dimension', 'Image Size Control', 'elementor' ), 'type' => Controls_Manager::IMAGE_DIMENSIONS, 'description' => __( 'You can crop the original image size to any custom size. You can also set a single value for height or width in order to keep the original size ratio.', 'elementor' ), 'condition' => [ 'size' => 'custom', ], 'separator' => 'none', ]; return $fields; } /** * Prepare fields. * * Process image size control fields before adding them to `add_control()`. * * @since 1.2.2 * @access protected * * @param array $fields Image size control fields. * * @return array Processed fields. */ protected function prepare_fields( $fields ) { $image_sizes = $this->get_image_sizes(); $args = $this->get_args(); if ( ! empty( $args['default'] ) && isset( $image_sizes[ $args['default'] ] ) ) { $default_value = $args['default']; } else { // Get the first item for default value. $default_value = array_keys( $image_sizes ); $default_value = array_shift( $default_value ); } $fields['size']['options'] = $image_sizes; $fields['size']['default'] = $default_value; if ( ! isset( $image_sizes['custom'] ) ) { unset( $fields['custom_dimension'] ); } return parent::prepare_fields( $fields ); } /** * Get image sizes. * * Retrieve available image sizes after filtering `include` and `exclude` arguments. * * @since 2.0.0 * @access private * * @return array Filtered image sizes. */ private function get_image_sizes() { $wp_image_sizes = self::get_all_image_sizes(); $args = $this->get_args(); if ( $args['include'] ) { $wp_image_sizes = array_intersect_key( $wp_image_sizes, array_flip( $args['include'] ) ); } elseif ( $args['exclude'] ) { $wp_image_sizes = array_diff_key( $wp_image_sizes, array_flip( $args['exclude'] ) ); } $image_sizes = []; foreach ( $wp_image_sizes as $size_key => $size_attributes ) { $control_title = ucwords( str_replace( '_', ' ', $size_key ) ); if ( is_array( $size_attributes ) ) { $control_title .= sprintf( ' - %d x %d', $size_attributes['width'], $size_attributes['height'] ); } $image_sizes[ $size_key ] = $control_title; } $image_sizes['full'] = _x( 'Full', 'Image Size Control', 'elementor' ); if ( ! empty( $args['include']['custom'] ) || ! in_array( 'custom', $args['exclude'] ) ) { $image_sizes['custom'] = _x( 'Custom', 'Image Size Control', 'elementor' ); } return $image_sizes; } /** * Get default options. * * Retrieve the default options of the image size control. Used to return the * default options while initializing the image size control. * * @since 1.9.0 * @access protected * * @return array Default image size control options. */ protected function get_default_options() { return [ 'popover' => false, ]; } } includes/controls/base-icon-font.php000066600000001164152142641160013542 0ustar00 <# data.raw = elementor.compileTemplate( data.raw, { view } ); if ( data.label ) { #> {{{ data.label }}} <# } #>
{{{ data.raw }}}
'', 'content_classes' => '', ]; } } includes/controls/number.php000066600000004150152142641160012224 0ustar00 '', 'max' => '', 'step' => '', 'placeholder' => '', 'title' => '', 'dynamic' => [ 'categories' => [ TagsModule::NUMBER_CATEGORY ], ], ]; } /** * Render number control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> <# if ( data.label ) { #> {{{ data.label }}} <# } let notice = elementor.translate( 'deprecated_notice', [ data.widget, data.plugin, data.since ] ); if ( data.replacement ) { notice += '
' + elementor.translate( 'deprecated_notice_replacement', [ data.replacement ] ); } if ( data.last ) { notice += '
' + elementor.translate( 'deprecated_notice_last', [ data.widget, data.plugin, data.last ] ); } #>
{{{ notice }}}
'', // Widgets name 'since' => '', // Plugin version widget was deprecated 'last' => '', // Plugin version in which the widget will be removed 'plugin' => '', // Plugin's title 'replacement' => '', // Widget replacement ]; } } includes/controls/icon.php000066600000076072152142641160011700 0ustar00 '500px', 'fa fa-address-book' => 'address-book', 'fa fa-address-book-o' => 'address-book-o', 'fa fa-address-card' => 'address-card', 'fa fa-address-card-o' => 'address-card-o', 'fa fa-adjust' => 'adjust', 'fa fa-adn' => 'adn', 'fa fa-align-center' => 'align-center', 'fa fa-align-justify' => 'align-justify', 'fa fa-align-left' => 'align-left', 'fa fa-align-right' => 'align-right', 'fa fa-amazon' => 'amazon', 'fa fa-ambulance' => 'ambulance', 'fa fa-american-sign-language-interpreting' => 'american-sign-language-interpreting', 'fa fa-anchor' => 'anchor', 'fa fa-android' => 'android', 'fa fa-angellist' => 'angellist', 'fa fa-angle-double-down' => 'angle-double-down', 'fa fa-angle-double-left' => 'angle-double-left', 'fa fa-angle-double-right' => 'angle-double-right', 'fa fa-angle-double-up' => 'angle-double-up', 'fa fa-angle-down' => 'angle-down', 'fa fa-angle-left' => 'angle-left', 'fa fa-angle-right' => 'angle-right', 'fa fa-angle-up' => 'angle-up', 'fa fa-apple' => 'apple', 'fa fa-archive' => 'archive', 'fa fa-area-chart' => 'area-chart', 'fa fa-arrow-circle-down' => 'arrow-circle-down', 'fa fa-arrow-circle-left' => 'arrow-circle-left', 'fa fa-arrow-circle-o-down' => 'arrow-circle-o-down', 'fa fa-arrow-circle-o-left' => 'arrow-circle-o-left', 'fa fa-arrow-circle-o-right' => 'arrow-circle-o-right', 'fa fa-arrow-circle-o-up' => 'arrow-circle-o-up', 'fa fa-arrow-circle-right' => 'arrow-circle-right', 'fa fa-arrow-circle-up' => 'arrow-circle-up', 'fa fa-arrow-down' => 'arrow-down', 'fa fa-arrow-left' => 'arrow-left', 'fa fa-arrow-right' => 'arrow-right', 'fa fa-arrow-up' => 'arrow-up', 'fa fa-arrows' => 'arrows', 'fa fa-arrows-alt' => 'arrows-alt', 'fa fa-arrows-h' => 'arrows-h', 'fa fa-arrows-v' => 'arrows-v', 'fa fa-asl-interpreting' => 'asl-interpreting', 'fa fa-assistive-listening-systems' => 'assistive-listening-systems', 'fa fa-asterisk' => 'asterisk', 'fa fa-at' => 'at', 'fa fa-audio-description' => 'audio-description', 'fa fa-automobile' => 'automobile', 'fa fa-backward' => 'backward', 'fa fa-balance-scale' => 'balance-scale', 'fa fa-ban' => 'ban', 'fa fa-bandcamp' => 'bandcamp', 'fa fa-bank' => 'bank', 'fa fa-bar-chart' => 'bar-chart', 'fa fa-bar-chart-o' => 'bar-chart-o', 'fa fa-barcode' => 'barcode', 'fa fa-bars' => 'bars', 'fa fa-bath' => 'bath', 'fa fa-bathtub' => 'bathtub', 'fa fa-battery' => 'battery', 'fa fa-battery-0' => 'battery-0', 'fa fa-battery-1' => 'battery-1', 'fa fa-battery-2' => 'battery-2', 'fa fa-battery-3' => 'battery-3', 'fa fa-battery-4' => 'battery-4', 'fa fa-battery-empty' => 'battery-empty', 'fa fa-battery-full' => 'battery-full', 'fa fa-battery-half' => 'battery-half', 'fa fa-battery-quarter' => 'battery-quarter', 'fa fa-battery-three-quarters' => 'battery-three-quarters', 'fa fa-bed' => 'bed', 'fa fa-beer' => 'beer', 'fa fa-behance' => 'behance', 'fa fa-behance-square' => 'behance-square', 'fa fa-bell' => 'bell', 'fa fa-bell-o' => 'bell-o', 'fa fa-bell-slash' => 'bell-slash', 'fa fa-bell-slash-o' => 'bell-slash-o', 'fa fa-bicycle' => 'bicycle', 'fa fa-binoculars' => 'binoculars', 'fa fa-birthday-cake' => 'birthday-cake', 'fa fa-bitbucket' => 'bitbucket', 'fa fa-bitbucket-square' => 'bitbucket-square', 'fa fa-bitcoin' => 'bitcoin', 'fa fa-black-tie' => 'black-tie', 'fa fa-blind' => 'blind', 'fa fa-bluetooth' => 'bluetooth', 'fa fa-bluetooth-b' => 'bluetooth-b', 'fa fa-bold' => 'bold', 'fa fa-bolt' => 'bolt', 'fa fa-bomb' => 'bomb', 'fa fa-book' => 'book', 'fa fa-bookmark' => 'bookmark', 'fa fa-bookmark-o' => 'bookmark-o', 'fa fa-braille' => 'braille', 'fa fa-briefcase' => 'briefcase', 'fa fa-btc' => 'btc', 'fa fa-bug' => 'bug', 'fa fa-building' => 'building', 'fa fa-building-o' => 'building-o', 'fa fa-bullhorn' => 'bullhorn', 'fa fa-bullseye' => 'bullseye', 'fa fa-bus' => 'bus', 'fa fa-buysellads' => 'buysellads', 'fa fa-cab' => 'cab', 'fa fa-calculator' => 'calculator', 'fa fa-calendar' => 'calendar', 'fa fa-calendar-check-o' => 'calendar-check-o', 'fa fa-calendar-minus-o' => 'calendar-minus-o', 'fa fa-calendar-o' => 'calendar-o', 'fa fa-calendar-plus-o' => 'calendar-plus-o', 'fa fa-calendar-times-o' => 'calendar-times-o', 'fa fa-camera' => 'camera', 'fa fa-camera-retro' => 'camera-retro', 'fa fa-car' => 'car', 'fa fa-caret-down' => 'caret-down', 'fa fa-caret-left' => 'caret-left', 'fa fa-caret-right' => 'caret-right', 'fa fa-caret-square-o-down' => 'caret-square-o-down', 'fa fa-caret-square-o-left' => 'caret-square-o-left', 'fa fa-caret-square-o-right' => 'caret-square-o-right', 'fa fa-caret-square-o-up' => 'caret-square-o-up', 'fa fa-caret-up' => 'caret-up', 'fa fa-cart-arrow-down' => 'cart-arrow-down', 'fa fa-cart-plus' => 'cart-plus', 'fa fa-cc' => 'cc', 'fa fa-cc-amex' => 'cc-amex', 'fa fa-cc-diners-club' => 'cc-diners-club', 'fa fa-cc-discover' => 'cc-discover', 'fa fa-cc-jcb' => 'cc-jcb', 'fa fa-cc-mastercard' => 'cc-mastercard', 'fa fa-cc-paypal' => 'cc-paypal', 'fa fa-cc-stripe' => 'cc-stripe', 'fa fa-cc-visa' => 'cc-visa', 'fa fa-certificate' => 'certificate', 'fa fa-chain' => 'chain', 'fa fa-chain-broken' => 'chain-broken', 'fa fa-check' => 'check', 'fa fa-check-circle' => 'check-circle', 'fa fa-check-circle-o' => 'check-circle-o', 'fa fa-check-square' => 'check-square', 'fa fa-check-square-o' => 'check-square-o', 'fa fa-chevron-circle-down' => 'chevron-circle-down', 'fa fa-chevron-circle-left' => 'chevron-circle-left', 'fa fa-chevron-circle-right' => 'chevron-circle-right', 'fa fa-chevron-circle-up' => 'chevron-circle-up', 'fa fa-chevron-down' => 'chevron-down', 'fa fa-chevron-left' => 'chevron-left', 'fa fa-chevron-right' => 'chevron-right', 'fa fa-chevron-up' => 'chevron-up', 'fa fa-child' => 'child', 'fa fa-chrome' => 'chrome', 'fa fa-circle' => 'circle', 'fa fa-circle-o' => 'circle-o', 'fa fa-circle-o-notch' => 'circle-o-notch', 'fa fa-circle-thin' => 'circle-thin', 'fa fa-clipboard' => 'clipboard', 'fa fa-clock-o' => 'clock-o', 'fa fa-clone' => 'clone', 'fa fa-close' => 'close', 'fa fa-cloud' => 'cloud', 'fa fa-cloud-download' => 'cloud-download', 'fa fa-cloud-upload' => 'cloud-upload', 'fa fa-cny' => 'cny', 'fa fa-code' => 'code', 'fa fa-code-fork' => 'code-fork', 'fa fa-codepen' => 'codepen', 'fa fa-codiepie' => 'codiepie', 'fa fa-coffee' => 'coffee', 'fa fa-cog' => 'cog', 'fa fa-cogs' => 'cogs', 'fa fa-columns' => 'columns', 'fa fa-comment' => 'comment', 'fa fa-comment-o' => 'comment-o', 'fa fa-commenting' => 'commenting', 'fa fa-commenting-o' => 'commenting-o', 'fa fa-comments' => 'comments', 'fa fa-comments-o' => 'comments-o', 'fa fa-compass' => 'compass', 'fa fa-compress' => 'compress', 'fa fa-connectdevelop' => 'connectdevelop', 'fa fa-contao' => 'contao', 'fa fa-copy' => 'copy', 'fa fa-copyright' => 'copyright', 'fa fa-creative-commons' => 'creative-commons', 'fa fa-credit-card' => 'credit-card', 'fa fa-credit-card-alt' => 'credit-card-alt', 'fa fa-crop' => 'crop', 'fa fa-crosshairs' => 'crosshairs', 'fa fa-css3' => 'css3', 'fa fa-cube' => 'cube', 'fa fa-cubes' => 'cubes', 'fa fa-cut' => 'cut', 'fa fa-cutlery' => 'cutlery', 'fa fa-dashboard' => 'dashboard', 'fa fa-dashcube' => 'dashcube', 'fa fa-database' => 'database', 'fa fa-deaf' => 'deaf', 'fa fa-deafness' => 'deafness', 'fa fa-dedent' => 'dedent', 'fa fa-delicious' => 'delicious', 'fa fa-desktop' => 'desktop', 'fa fa-deviantart' => 'deviantart', 'fa fa-diamond' => 'diamond', 'fa fa-digg' => 'digg', 'fa fa-dollar' => 'dollar', 'fa fa-dot-circle-o' => 'dot-circle-o', 'fa fa-download' => 'download', 'fa fa-dribbble' => 'dribbble', 'fa fa-drivers-license' => 'drivers-license', 'fa fa-drivers-license-o' => 'drivers-license-o', 'fa fa-dropbox' => 'dropbox', 'fa fa-drupal' => 'drupal', 'fa fa-edge' => 'edge', 'fa fa-edit' => 'edit', 'fa fa-eercast' => 'eercast', 'fa fa-eject' => 'eject', 'fa fa-ellipsis-h' => 'ellipsis-h', 'fa fa-ellipsis-v' => 'ellipsis-v', 'fa fa-empire' => 'empire', 'fa fa-envelope' => 'envelope', 'fa fa-envelope-o' => 'envelope-o', 'fa fa-envelope-open' => 'envelope-open', 'fa fa-envelope-open-o' => 'envelope-open-o', 'fa fa-envelope-square' => 'envelope-square', 'fa fa-envira' => 'envira', 'fa fa-eraser' => 'eraser', 'fa fa-etsy' => 'etsy', 'fa fa-eur' => 'eur', 'fa fa-euro' => 'euro', 'fa fa-exchange' => 'exchange', 'fa fa-exclamation' => 'exclamation', 'fa fa-exclamation-circle' => 'exclamation-circle', 'fa fa-exclamation-triangle' => 'exclamation-triangle', 'fa fa-expand' => 'expand', 'fa fa-expeditedssl' => 'expeditedssl', 'fa fa-external-link' => 'external-link', 'fa fa-external-link-square' => 'external-link-square', 'fa fa-eye' => 'eye', 'fa fa-eye-slash' => 'eye-slash', 'fa fa-eyedropper' => 'eyedropper', 'fa fa-fa' => 'fa', 'fa fa-facebook' => 'facebook', 'fa fa-facebook-f' => 'facebook-f', 'fa fa-facebook-official' => 'facebook-official', 'fa fa-facebook-square' => 'facebook-square', 'fa fa-fast-backward' => 'fast-backward', 'fa fa-fast-forward' => 'fast-forward', 'fa fa-fax' => 'fax', 'fa fa-feed' => 'feed', 'fa fa-female' => 'female', 'fa fa-fighter-jet' => 'fighter-jet', 'fa fa-file' => 'file', 'fa fa-file-archive-o' => 'file-archive-o', 'fa fa-file-audio-o' => 'file-audio-o', 'fa fa-file-code-o' => 'file-code-o', 'fa fa-file-excel-o' => 'file-excel-o', 'fa fa-file-image-o' => 'file-image-o', 'fa fa-file-movie-o' => 'file-movie-o', 'fa fa-file-o' => 'file-o', 'fa fa-file-pdf-o' => 'file-pdf-o', 'fa fa-file-photo-o' => 'file-photo-o', 'fa fa-file-picture-o' => 'file-picture-o', 'fa fa-file-powerpoint-o' => 'file-powerpoint-o', 'fa fa-file-sound-o' => 'file-sound-o', 'fa fa-file-text' => 'file-text', 'fa fa-file-text-o' => 'file-text-o', 'fa fa-file-video-o' => 'file-video-o', 'fa fa-file-word-o' => 'file-word-o', 'fa fa-file-zip-o' => 'file-zip-o', 'fa fa-files-o' => 'files-o', 'fa fa-film' => 'film', 'fa fa-filter' => 'filter', 'fa fa-fire' => 'fire', 'fa fa-fire-extinguisher' => 'fire-extinguisher', 'fa fa-firefox' => 'firefox', 'fa fa-first-order' => 'first-order', 'fa fa-flag' => 'flag', 'fa fa-flag-checkered' => 'flag-checkered', 'fa fa-flag-o' => 'flag-o', 'fa fa-flash' => 'flash', 'fa fa-flask' => 'flask', 'fa fa-flickr' => 'flickr', 'fa fa-floppy-o' => 'floppy-o', 'fa fa-folder' => 'folder', 'fa fa-folder-o' => 'folder-o', 'fa fa-folder-open' => 'folder-open', 'fa fa-folder-open-o' => 'folder-open-o', 'fa fa-font' => 'font', 'fa fa-font-awesome' => 'font-awesome', 'fa fa-fonticons' => 'fonticons', 'fa fa-fort-awesome' => 'fort-awesome', 'fa fa-forumbee' => 'forumbee', 'fa fa-forward' => 'forward', 'fa fa-foursquare' => 'foursquare', 'fa fa-free-code-camp' => 'free-code-camp', 'fa fa-frown-o' => 'frown-o', 'fa fa-futbol-o' => 'futbol-o', 'fa fa-gamepad' => 'gamepad', 'fa fa-gavel' => 'gavel', 'fa fa-gbp' => 'gbp', 'fa fa-ge' => 'ge', 'fa fa-gear' => 'gear', 'fa fa-gears' => 'gears', 'fa fa-genderless' => 'genderless', 'fa fa-get-pocket' => 'get-pocket', 'fa fa-gg' => 'gg', 'fa fa-gg-circle' => 'gg-circle', 'fa fa-gift' => 'gift', 'fa fa-git' => 'git', 'fa fa-git-square' => 'git-square', 'fa fa-github' => 'github', 'fa fa-github-alt' => 'github-alt', 'fa fa-github-square' => 'github-square', 'fa fa-gitlab' => 'gitlab', 'fa fa-gittip' => 'gittip', 'fa fa-glass' => 'glass', 'fa fa-glide' => 'glide', 'fa fa-glide-g' => 'glide-g', 'fa fa-globe' => 'globe', 'fa fa-google' => 'google', 'fa fa-google-plus' => 'google-plus', 'fa fa-google-plus-circle' => 'google-plus-circle', 'fa fa-google-plus-official' => 'google-plus-official', 'fa fa-google-plus-square' => 'google-plus-square', 'fa fa-google-wallet' => 'google-wallet', 'fa fa-graduation-cap' => 'graduation-cap', 'fa fa-gratipay' => 'gratipay', 'fa fa-grav' => 'grav', 'fa fa-group' => 'group', 'fa fa-h-square' => 'h-square', 'fa fa-hacker-news' => 'hacker-news', 'fa fa-hand-grab-o' => 'hand-grab-o', 'fa fa-hand-lizard-o' => 'hand-lizard-o', 'fa fa-hand-o-down' => 'hand-o-down', 'fa fa-hand-o-left' => 'hand-o-left', 'fa fa-hand-o-right' => 'hand-o-right', 'fa fa-hand-o-up' => 'hand-o-up', 'fa fa-hand-paper-o' => 'hand-paper-o', 'fa fa-hand-peace-o' => 'hand-peace-o', 'fa fa-hand-pointer-o' => 'hand-pointer-o', 'fa fa-hand-rock-o' => 'hand-rock-o', 'fa fa-hand-scissors-o' => 'hand-scissors-o', 'fa fa-hand-spock-o' => 'hand-spock-o', 'fa fa-hand-stop-o' => 'hand-stop-o', 'fa fa-handshake-o' => 'handshake-o', 'fa fa-hard-of-hearing' => 'hard-of-hearing', 'fa fa-hashtag' => 'hashtag', 'fa fa-hdd-o' => 'hdd-o', 'fa fa-header' => 'header', 'fa fa-headphones' => 'headphones', 'fa fa-heart' => 'heart', 'fa fa-heart-o' => 'heart-o', 'fa fa-heartbeat' => 'heartbeat', 'fa fa-history' => 'history', 'fa fa-home' => 'home', 'fa fa-hospital-o' => 'hospital-o', 'fa fa-hotel' => 'hotel', 'fa fa-hourglass' => 'hourglass', 'fa fa-hourglass-1' => 'hourglass-1', 'fa fa-hourglass-2' => 'hourglass-2', 'fa fa-hourglass-3' => 'hourglass-3', 'fa fa-hourglass-end' => 'hourglass-end', 'fa fa-hourglass-half' => 'hourglass-half', 'fa fa-hourglass-o' => 'hourglass-o', 'fa fa-hourglass-start' => 'hourglass-start', 'fa fa-houzz' => 'houzz', 'fa fa-html5' => 'html5', 'fa fa-i-cursor' => 'i-cursor', 'fa fa-id-badge' => 'id-badge', 'fa fa-id-card' => 'id-card', 'fa fa-id-card-o' => 'id-card-o', 'fa fa-ils' => 'ils', 'fa fa-image' => 'image', 'fa fa-imdb' => 'imdb', 'fa fa-inbox' => 'inbox', 'fa fa-indent' => 'indent', 'fa fa-industry' => 'industry', 'fa fa-info' => 'info', 'fa fa-info-circle' => 'info-circle', 'fa fa-inr' => 'inr', 'fa fa-instagram' => 'instagram', 'fa fa-institution' => 'institution', 'fa fa-internet-explorer' => 'internet-explorer', 'fa fa-intersex' => 'intersex', 'fa fa-ioxhost' => 'ioxhost', 'fa fa-italic' => 'italic', 'fa fa-joomla' => 'joomla', 'fa fa-jpy' => 'jpy', 'fa fa-jsfiddle' => 'jsfiddle', 'fa fa-key' => 'key', 'fa fa-keyboard-o' => 'keyboard-o', 'fa fa-krw' => 'krw', 'fa fa-language' => 'language', 'fa fa-laptop' => 'laptop', 'fa fa-lastfm' => 'lastfm', 'fa fa-lastfm-square' => 'lastfm-square', 'fa fa-leaf' => 'leaf', 'fa fa-leanpub' => 'leanpub', 'fa fa-legal' => 'legal', 'fa fa-lemon-o' => 'lemon-o', 'fa fa-level-down' => 'level-down', 'fa fa-level-up' => 'level-up', 'fa fa-life-bouy' => 'life-bouy', 'fa fa-life-buoy' => 'life-buoy', 'fa fa-life-ring' => 'life-ring', 'fa fa-life-saver' => 'life-saver', 'fa fa-lightbulb-o' => 'lightbulb-o', 'fa fa-line-chart' => 'line-chart', 'fa fa-link' => 'link', 'fa fa-linkedin' => 'linkedin', 'fa fa-linkedin-square' => 'linkedin-square', 'fa fa-linode' => 'linode', 'fa fa-linux' => 'linux', 'fa fa-list' => 'list', 'fa fa-list-alt' => 'list-alt', 'fa fa-list-ol' => 'list-ol', 'fa fa-list-ul' => 'list-ul', 'fa fa-location-arrow' => 'location-arrow', 'fa fa-lock' => 'lock', 'fa fa-long-arrow-down' => 'long-arrow-down', 'fa fa-long-arrow-left' => 'long-arrow-left', 'fa fa-long-arrow-right' => 'long-arrow-right', 'fa fa-long-arrow-up' => 'long-arrow-up', 'fa fa-low-vision' => 'low-vision', 'fa fa-magic' => 'magic', 'fa fa-magnet' => 'magnet', 'fa fa-mail-forward' => 'mail-forward', 'fa fa-mail-reply' => 'mail-reply', 'fa fa-mail-reply-all' => 'mail-reply-all', 'fa fa-male' => 'male', 'fa fa-map' => 'map', 'fa fa-map-marker' => 'map-marker', 'fa fa-map-o' => 'map-o', 'fa fa-map-pin' => 'map-pin', 'fa fa-map-signs' => 'map-signs', 'fa fa-mars' => 'mars', 'fa fa-mars-double' => 'mars-double', 'fa fa-mars-stroke' => 'mars-stroke', 'fa fa-mars-stroke-h' => 'mars-stroke-h', 'fa fa-mars-stroke-v' => 'mars-stroke-v', 'fa fa-maxcdn' => 'maxcdn', 'fa fa-meanpath' => 'meanpath', 'fa fa-medium' => 'medium', 'fa fa-medkit' => 'medkit', 'fa fa-meetup' => 'meetup', 'fa fa-meh-o' => 'meh-o', 'fa fa-mercury' => 'mercury', 'fa fa-microchip' => 'microchip', 'fa fa-microphone' => 'microphone', 'fa fa-microphone-slash' => 'microphone-slash', 'fa fa-minus' => 'minus', 'fa fa-minus-circle' => 'minus-circle', 'fa fa-minus-square' => 'minus-square', 'fa fa-minus-square-o' => 'minus-square-o', 'fa fa-mixcloud' => 'mixcloud', 'fa fa-mobile' => 'mobile', 'fa fa-mobile-phone' => 'mobile-phone', 'fa fa-modx' => 'modx', 'fa fa-money' => 'money', 'fa fa-moon-o' => 'moon-o', 'fa fa-mortar-board' => 'mortar-board', 'fa fa-motorcycle' => 'motorcycle', 'fa fa-mouse-pointer' => 'mouse-pointer', 'fa fa-music' => 'music', 'fa fa-navicon' => 'navicon', 'fa fa-neuter' => 'neuter', 'fa fa-newspaper-o' => 'newspaper-o', 'fa fa-object-group' => 'object-group', 'fa fa-object-ungroup' => 'object-ungroup', 'fa fa-odnoklassniki' => 'odnoklassniki', 'fa fa-odnoklassniki-square' => 'odnoklassniki-square', 'fa fa-opencart' => 'opencart', 'fa fa-openid' => 'openid', 'fa fa-opera' => 'opera', 'fa fa-optin-monster' => 'optin-monster', 'fa fa-outdent' => 'outdent', 'fa fa-pagelines' => 'pagelines', 'fa fa-paint-brush' => 'paint-brush', 'fa fa-paper-plane' => 'paper-plane', 'fa fa-paper-plane-o' => 'paper-plane-o', 'fa fa-paperclip' => 'paperclip', 'fa fa-paragraph' => 'paragraph', 'fa fa-paste' => 'paste', 'fa fa-pause' => 'pause', 'fa fa-pause-circle' => 'pause-circle', 'fa fa-pause-circle-o' => 'pause-circle-o', 'fa fa-paw' => 'paw', 'fa fa-paypal' => 'paypal', 'fa fa-pencil' => 'pencil', 'fa fa-pencil-square' => 'pencil-square', 'fa fa-pencil-square-o' => 'pencil-square-o', 'fa fa-percent' => 'percent', 'fa fa-phone' => 'phone', 'fa fa-phone-square' => 'phone-square', 'fa fa-photo' => 'photo', 'fa fa-picture-o' => 'picture-o', 'fa fa-pie-chart' => 'pie-chart', 'fa fa-pied-piper' => 'pied-piper', 'fa fa-pied-piper-alt' => 'pied-piper-alt', 'fa fa-pied-piper-pp' => 'pied-piper-pp', 'fa fa-pinterest' => 'pinterest', 'fa fa-pinterest-p' => 'pinterest-p', 'fa fa-pinterest-square' => 'pinterest-square', 'fa fa-plane' => 'plane', 'fa fa-play' => 'play', 'fa fa-play-circle' => 'play-circle', 'fa fa-play-circle-o' => 'play-circle-o', 'fa fa-plug' => 'plug', 'fa fa-plus' => 'plus', 'fa fa-plus-circle' => 'plus-circle', 'fa fa-plus-square' => 'plus-square', 'fa fa-plus-square-o' => 'plus-square-o', 'fa fa-podcast' => 'podcast', 'fa fa-power-off' => 'power-off', 'fa fa-print' => 'print', 'fa fa-product-hunt' => 'product-hunt', 'fa fa-pull-left' => 'pull-left', 'fa fa-pull-right' => 'pull-right', 'fa fa-puzzle-piece' => 'puzzle-piece', 'fa fa-qq' => 'qq', 'fa fa-qrcode' => 'qrcode', 'fa fa-question' => 'question', 'fa fa-question-circle' => 'question-circle', 'fa fa-question-circle-o' => 'question-circle-o', 'fa fa-quora' => 'quora', 'fa fa-quote-left' => 'quote-left', 'fa fa-quote-right' => 'quote-right', 'fa fa-ra' => 'ra', 'fa fa-random' => 'random', 'fa fa-ravelry' => 'ravelry', 'fa fa-rebel' => 'rebel', 'fa fa-recycle' => 'recycle', 'fa fa-reddit' => 'reddit', 'fa fa-reddit-alien' => 'reddit-alien', 'fa fa-reddit-square' => 'reddit-square', 'fa fa-refresh' => 'refresh', 'fa fa-registered' => 'registered', 'fa fa-remove' => 'remove', 'fa fa-renren' => 'renren', 'fa fa-reorder' => 'reorder', 'fa fa-repeat' => 'repeat', 'fa fa-reply' => 'reply', 'fa fa-reply-all' => 'reply-all', 'fa fa-resistance' => 'resistance', 'fa fa-retweet' => 'retweet', 'fa fa-rmb' => 'rmb', 'fa fa-road' => 'road', 'fa fa-rocket' => 'rocket', 'fa fa-rotate-left' => 'rotate-left', 'fa fa-rotate-right' => 'rotate-right', 'fa fa-rouble' => 'rouble', 'fa fa-rss' => 'rss', 'fa fa-rss-square' => 'rss-square', 'fa fa-rub' => 'rub', 'fa fa-ruble' => 'ruble', 'fa fa-rupee' => 'rupee', 'fa fa-s15' => 's15', 'fa fa-safari' => 'safari', 'fa fa-save' => 'save', 'fa fa-scissors' => 'scissors', 'fa fa-scribd' => 'scribd', 'fa fa-search' => 'search', 'fa fa-search-minus' => 'search-minus', 'fa fa-search-plus' => 'search-plus', 'fa fa-sellsy' => 'sellsy', 'fa fa-send' => 'send', 'fa fa-send-o' => 'send-o', 'fa fa-server' => 'server', 'fa fa-share' => 'share', 'fa fa-share-alt' => 'share-alt', 'fa fa-share-alt-square' => 'share-alt-square', 'fa fa-share-square' => 'share-square', 'fa fa-share-square-o' => 'share-square-o', 'fa fa-shekel' => 'shekel', 'fa fa-sheqel' => 'sheqel', 'fa fa-shield' => 'shield', 'fa fa-ship' => 'ship', 'fa fa-shirtsinbulk' => 'shirtsinbulk', 'fa fa-shopping-bag' => 'shopping-bag', 'fa fa-shopping-basket' => 'shopping-basket', 'fa fa-shopping-cart' => 'shopping-cart', 'fa fa-shower' => 'shower', 'fa fa-sign-in' => 'sign-in', 'fa fa-sign-language' => 'sign-language', 'fa fa-sign-out' => 'sign-out', 'fa fa-signal' => 'signal', 'fa fa-signing' => 'signing', 'fa fa-simplybuilt' => 'simplybuilt', 'fa fa-sitemap' => 'sitemap', 'fa fa-skyatlas' => 'skyatlas', 'fa fa-skype' => 'skype', 'fa fa-slack' => 'slack', 'fa fa-sliders' => 'sliders', 'fa fa-slideshare' => 'slideshare', 'fa fa-smile-o' => 'smile-o', 'fa fa-snapchat' => 'snapchat', 'fa fa-snapchat-ghost' => 'snapchat-ghost', 'fa fa-snapchat-square' => 'snapchat-square', 'fa fa-snowflake-o' => 'snowflake-o', 'fa fa-soccer-ball-o' => 'soccer-ball-o', 'fa fa-sort' => 'sort', 'fa fa-sort-alpha-asc' => 'sort-alpha-asc', 'fa fa-sort-alpha-desc' => 'sort-alpha-desc', 'fa fa-sort-amount-asc' => 'sort-amount-asc', 'fa fa-sort-amount-desc' => 'sort-amount-desc', 'fa fa-sort-asc' => 'sort-asc', 'fa fa-sort-desc' => 'sort-desc', 'fa fa-sort-down' => 'sort-down', 'fa fa-sort-numeric-asc' => 'sort-numeric-asc', 'fa fa-sort-numeric-desc' => 'sort-numeric-desc', 'fa fa-sort-up' => 'sort-up', 'fa fa-soundcloud' => 'soundcloud', 'fa fa-space-shuttle' => 'space-shuttle', 'fa fa-spinner' => 'spinner', 'fa fa-spoon' => 'spoon', 'fa fa-spotify' => 'spotify', 'fa fa-square' => 'square', 'fa fa-square-o' => 'square-o', 'fa fa-stack-exchange' => 'stack-exchange', 'fa fa-stack-overflow' => 'stack-overflow', 'fa fa-star' => 'star', 'fa fa-star-half' => 'star-half', 'fa fa-star-half-empty' => 'star-half-empty', 'fa fa-star-half-full' => 'star-half-full', 'fa fa-star-half-o' => 'star-half-o', 'fa fa-star-o' => 'star-o', 'fa fa-steam' => 'steam', 'fa fa-steam-square' => 'steam-square', 'fa fa-step-backward' => 'step-backward', 'fa fa-step-forward' => 'step-forward', 'fa fa-stethoscope' => 'stethoscope', 'fa fa-sticky-note' => 'sticky-note', 'fa fa-sticky-note-o' => 'sticky-note-o', 'fa fa-stop' => 'stop', 'fa fa-stop-circle' => 'stop-circle', 'fa fa-stop-circle-o' => 'stop-circle-o', 'fa fa-street-view' => 'street-view', 'fa fa-strikethrough' => 'strikethrough', 'fa fa-stumbleupon' => 'stumbleupon', 'fa fa-stumbleupon-circle' => 'stumbleupon-circle', 'fa fa-subscript' => 'subscript', 'fa fa-subway' => 'subway', 'fa fa-suitcase' => 'suitcase', 'fa fa-sun-o' => 'sun-o', 'fa fa-superpowers' => 'superpowers', 'fa fa-superscript' => 'superscript', 'fa fa-support' => 'support', 'fa fa-table' => 'table', 'fa fa-tablet' => 'tablet', 'fa fa-tachometer' => 'tachometer', 'fa fa-tag' => 'tag', 'fa fa-tags' => 'tags', 'fa fa-tasks' => 'tasks', 'fa fa-taxi' => 'taxi', 'fa fa-telegram' => 'telegram', 'fa fa-television' => 'television', 'fa fa-tencent-weibo' => 'tencent-weibo', 'fa fa-terminal' => 'terminal', 'fa fa-text-height' => 'text-height', 'fa fa-text-width' => 'text-width', 'fa fa-th' => 'th', 'fa fa-th-large' => 'th-large', 'fa fa-th-list' => 'th-list', 'fa fa-themeisle' => 'themeisle', 'fa fa-thermometer' => 'thermometer', 'fa fa-thermometer-0' => 'thermometer-0', 'fa fa-thermometer-1' => 'thermometer-1', 'fa fa-thermometer-2' => 'thermometer-2', 'fa fa-thermometer-3' => 'thermometer-3', 'fa fa-thermometer-4' => 'thermometer-4', 'fa fa-thermometer-empty' => 'thermometer-empty', 'fa fa-thermometer-full' => 'thermometer-full', 'fa fa-thermometer-half' => 'thermometer-half', 'fa fa-thermometer-quarter' => 'thermometer-quarter', 'fa fa-thermometer-three-quarters' => 'thermometer-three-quarters', 'fa fa-thumb-tack' => 'thumb-tack', 'fa fa-thumbs-down' => 'thumbs-down', 'fa fa-thumbs-o-down' => 'thumbs-o-down', 'fa fa-thumbs-o-up' => 'thumbs-o-up', 'fa fa-thumbs-up' => 'thumbs-up', 'fa fa-ticket' => 'ticket', 'fa fa-times' => 'times', 'fa fa-times-circle' => 'times-circle', 'fa fa-times-circle-o' => 'times-circle-o', 'fa fa-times-rectangle' => 'times-rectangle', 'fa fa-times-rectangle-o' => 'times-rectangle-o', 'fa fa-tint' => 'tint', 'fa fa-toggle-down' => 'toggle-down', 'fa fa-toggle-left' => 'toggle-left', 'fa fa-toggle-off' => 'toggle-off', 'fa fa-toggle-on' => 'toggle-on', 'fa fa-toggle-right' => 'toggle-right', 'fa fa-toggle-up' => 'toggle-up', 'fa fa-trademark' => 'trademark', 'fa fa-train' => 'train', 'fa fa-transgender' => 'transgender', 'fa fa-transgender-alt' => 'transgender-alt', 'fa fa-trash' => 'trash', 'fa fa-trash-o' => 'trash-o', 'fa fa-tree' => 'tree', 'fa fa-trello' => 'trello', 'fa fa-tripadvisor' => 'tripadvisor', 'fa fa-trophy' => 'trophy', 'fa fa-truck' => 'truck', 'fa fa-try' => 'try', 'fa fa-tty' => 'tty', 'fa fa-tumblr' => 'tumblr', 'fa fa-tumblr-square' => 'tumblr-square', 'fa fa-turkish-lira' => 'turkish-lira', 'fa fa-tv' => 'tv', 'fa fa-twitch' => 'twitch', 'fa fa-twitter' => 'twitter', 'fa fa-twitter-square' => 'twitter-square', 'fa fa-umbrella' => 'umbrella', 'fa fa-underline' => 'underline', 'fa fa-undo' => 'undo', 'fa fa-universal-access' => 'universal-access', 'fa fa-university' => 'university', 'fa fa-unlink' => 'unlink', 'fa fa-unlock' => 'unlock', 'fa fa-unlock-alt' => 'unlock-alt', 'fa fa-unsorted' => 'unsorted', 'fa fa-upload' => 'upload', 'fa fa-usb' => 'usb', 'fa fa-usd' => 'usd', 'fa fa-user' => 'user', 'fa fa-user-circle' => 'user-circle', 'fa fa-user-circle-o' => 'user-circle-o', 'fa fa-user-md' => 'user-md', 'fa fa-user-o' => 'user-o', 'fa fa-user-plus' => 'user-plus', 'fa fa-user-secret' => 'user-secret', 'fa fa-user-times' => 'user-times', 'fa fa-users' => 'users', 'fa fa-vcard' => 'vcard', 'fa fa-vcard-o' => 'vcard-o', 'fa fa-venus' => 'venus', 'fa fa-venus-double' => 'venus-double', 'fa fa-venus-mars' => 'venus-mars', 'fa fa-viacoin' => 'viacoin', 'fa fa-viadeo' => 'viadeo', 'fa fa-viadeo-square' => 'viadeo-square', 'fa fa-video-camera' => 'video-camera', 'fa fa-vimeo' => 'vimeo', 'fa fa-vimeo-square' => 'vimeo-square', 'fa fa-vine' => 'vine', 'fa fa-vk' => 'vk', 'fa fa-volume-control-phone' => 'volume-control-phone', 'fa fa-volume-down' => 'volume-down', 'fa fa-volume-off' => 'volume-off', 'fa fa-volume-up' => 'volume-up', 'fa fa-warning' => 'warning', 'fa fa-wechat' => 'wechat', 'fa fa-weibo' => 'weibo', 'fa fa-weixin' => 'weixin', 'fa fa-whatsapp' => 'whatsapp', 'fa fa-wheelchair' => 'wheelchair', 'fa fa-wheelchair-alt' => 'wheelchair-alt', 'fa fa-wifi' => 'wifi', 'fa fa-wikipedia-w' => 'wikipedia-w', 'fa fa-window-close' => 'window-close', 'fa fa-window-close-o' => 'window-close-o', 'fa fa-window-maximize' => 'window-maximize', 'fa fa-window-minimize' => 'window-minimize', 'fa fa-window-restore' => 'window-restore', 'fa fa-windows' => 'windows', 'fa fa-won' => 'won', 'fa fa-wordpress' => 'wordpress', 'fa fa-wpbeginner' => 'wpbeginner', 'fa fa-wpexplorer' => 'wpexplorer', 'fa fa-wpforms' => 'wpforms', 'fa fa-wrench' => 'wrench', 'fa fa-xing' => 'xing', 'fa fa-xing-square' => 'xing-square', 'fa fa-y-combinator' => 'y-combinator', 'fa fa-y-combinator-square' => 'y-combinator-square', 'fa fa-yahoo' => 'yahoo', 'fa fa-yc' => 'yc', 'fa fa-yc-square' => 'yc-square', 'fa fa-yelp' => 'yelp', 'fa fa-yen' => 'yen', 'fa fa-yoast' => 'yoast', 'fa fa-youtube' => 'youtube', 'fa fa-youtube-play' => 'youtube-play', 'fa fa-youtube-square' => 'youtube-square', ]; } /** * Get icons control default settings. * * Retrieve the default settings of the icons control. Used to return the default * settings while initializing the icons control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return [ 'options' => self::get_icons(), 'include' => '', 'exclude' => '', ]; } /** * Render icons control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{ data.description }}
<# } #> Fonts::get_font_groups(), 'options' => Fonts::get_fonts(), ]; } /** * Render font control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> '', 'sizes' => [], ] ); } /** * Get slider control default settings. * * Retrieve the default settings of the slider control. Used to return the * default settings while initializing the slider control. * * @since 1.0.0 * @access protected * * @return array Control default settings. */ protected function get_default_settings() { return array_merge( parent::get_default_settings(), [ 'label_block' => true, 'labels' => [], 'scales' => 0, 'handles' => 'default', 'dynamic' => [ 'categories' => [ TagsModule::NUMBER_CATEGORY ], 'property' => 'size', ], ] ); } /** * Render slider control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
print_units_template(); ?>
<# if ( isMultiple && ( data.labels.length || data.scales ) ) { #>
<# if ( data.labels.length ) { #>
<# jQuery.each( data.labels, ( index, label ) => { #>
{{{ label }}}
<# } ); #>
<# } if ( data.scales ) { #>
<# for ( var i = 0; i < data.scales; i++ ) { #>
<# } #>
<# } #>
<# } #>
<# if ( ! isMultiple ) { #>
<# } #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> get_default_value(); } if ( isset( $settings[ $control['name'] ] ) ) { $value = $settings[ $control['name'] ]; } else { $value = $control['default']; } return $value; } /** * Parse dynamic tags. * * Iterates through all the controls and renders all the dynamic tags. * * @since 2.0.0 * @access public * * @param string $dynamic_value The dynamic tag text. * @param array $dynamic_settings The dynamic tag settings. * * @return string|string[]|mixed A string or an array of strings with the * return value from each tag callback function. */ public function parse_tags( $dynamic_value, $dynamic_settings ) { $current_dynamic_settings = $this->get_settings( 'dynamic' ); if ( is_array( $current_dynamic_settings ) ) { $dynamic_settings = array_merge( $current_dynamic_settings, $dynamic_settings ); } return Plugin::$instance->dynamic_tags->parse_tags_text( $dynamic_value, $dynamic_settings, [ Plugin::$instance->dynamic_tags, 'get_tag_data_content' ] ); } /** * Get data control style value. * * Retrieve the style of the control. Used when adding CSS rules to the control * while extracting CSS from the `selectors` data argument. * * @since 1.5.0 * @since 2.3.3 New `$control_data` parameter added. * @access public * * @param string $css_property CSS property. * @param string $control_value Control value. * @param array $control_data Control Data. * * @return string Control style value. */ public function get_style_value( $css_property, $control_value, array $control_data ) { if ( 'DEFAULT' === $css_property ) { return $control_data['default']; } return $control_value; } /** * Get data control unique ID. * * Retrieve the unique ID of the control. Used to set a uniq CSS ID for the * element. * * @since 1.5.0 * @access protected * * @param string $input_type Input type. Default is 'default'. * * @return string Unique ID. */ protected function get_control_uid( $input_type = 'default' ) { return 'elementor-control-' . $input_type . '-{{{ data._cid }}}'; } } includes/controls/select2.php000066600000005046152142641160012302 0ustar00 [], 'multiple' => false, 'select2options' => [], ]; } /** * Render select2 control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.label ) {#> <# } #>
<# var multiple = ( data.multiple ) ? 'multiple' : ''; #>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> [ 'fadeIn' => 'Fade In', 'fadeInDown' => 'Fade In Down', 'fadeInLeft' => 'Fade In Left', 'fadeInRight' => 'Fade In Right', 'fadeInUp' => 'Fade In Up', ], 'Zooming' => [ 'zoomIn' => 'Zoom In', 'zoomInDown' => 'Zoom In Down', 'zoomInLeft' => 'Zoom In Left', 'zoomInRight' => 'Zoom In Right', 'zoomInUp' => 'Zoom In Up', ], 'Bouncing' => [ 'bounceIn' => 'Bounce In', 'bounceInDown' => 'Bounce In Down', 'bounceInLeft' => 'Bounce In Left', 'bounceInRight' => 'Bounce In Right', 'bounceInUp' => 'Bounce In Up', ], 'Sliding' => [ 'slideInDown' => 'Slide In Down', 'slideInLeft' => 'Slide In Left', 'slideInRight' => 'Slide In Right', 'slideInUp' => 'Slide In Up', ], 'Rotating' => [ 'rotateIn' => 'Rotate In', 'rotateInDownLeft' => 'Rotate In Down Left', 'rotateInDownRight' => 'Rotate In Down Right', 'rotateInUpLeft' => 'Rotate In Up Left', 'rotateInUpRight' => 'Rotate In Up Right', ], 'Attention Seekers' => [ 'bounce' => 'Bounce', 'flash' => 'Flash', 'pulse' => 'Pulse', 'rubberBand' => 'Rubber Band', 'shake' => 'Shake', 'headShake' => 'Head Shake', 'swing' => 'Swing', 'tada' => 'Tada', 'wobble' => 'Wobble', 'jello' => 'Jello', ], 'Light Speed' => [ 'lightSpeedIn' => 'Light Speed In', ], 'Specials' => [ 'rollIn' => 'Roll In', ], ]; /** * Element appearance animations list. * * @since 2.4.0 * * @param array $additional_animations Additional Animations array. */ $additional_animations = apply_filters( 'elementor/controls/animations/additional_animations', [] ); return array_merge( $animations, $additional_animations ); } /** * Render animations control template. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> 'Grow', 'shrink' => 'Shrink', 'pulse' => 'Pulse', 'pulse-grow' => 'Pulse Grow', 'pulse-shrink' => 'Pulse Shrink', 'push' => 'Push', 'pop' => 'Pop', 'bounce-in' => 'Bounce In', 'bounce-out' => 'Bounce Out', 'rotate' => 'Rotate', 'grow-rotate' => 'Grow Rotate', 'float' => 'Float', 'sink' => 'Sink', 'bob' => 'Bob', 'hang' => 'Hang', 'skew' => 'Skew', 'skew-forward' => 'Skew Forward', 'skew-backward' => 'Skew Backward', 'wobble-vertical' => 'Wobble Vertical', 'wobble-horizontal' => 'Wobble Horizontal', 'wobble-to-bottom-right' => 'Wobble To Bottom Right', 'wobble-to-top-right' => 'Wobble To Top Right', 'wobble-top' => 'Wobble Top', 'wobble-bottom' => 'Wobble Bottom', 'wobble-skew' => 'Wobble Skew', 'buzz' => 'Buzz', 'buzz-out' => 'Buzz Out', ]; $additional_animations = []; /** * Element hover animations list. * * @since 2.4.0 * * @param array $additional_animations Additional Animations array. */ $additional_animations = apply_filters( 'elementor/controls/hover_animations/additional_animations', $additional_animations ); self::$_animations = array_merge( self::$_animations, $additional_animations ); } return self::$_animations; } /** * Render hover animation control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { $control_uid = $this->get_control_uid(); ?>
<# if ( data.description ) { #>
{{{ data.description }}}
<# } #> true, ]; } } includes/controls/text-shadow.php000066600000006201152142641160013202 0ustar00 0, 'vertical' => 0, 'blur' => 10, 'color' => 'rgba(0,0,0,0.3)', ]; } /** * Get text shadow control sliders. * * Retrieve the sliders of the text shadow control. Sliders are used while * rendering the control output in the editor. * * @since 1.6.0 * @access public * * @return array Control sliders. */ public function get_sliders() { return [ 'blur' => [ 'label' => __( 'Blur', 'elementor' ), 'min' => 0, 'max' => 100, ], 'horizontal' => [ 'label' => __( 'Horizontal', 'elementor' ), 'min' => -100, 'max' => 100, ], 'vertical' => [ 'label' => __( 'Vertical', 'elementor' ), 'min' => -100, 'max' => 100, ], ]; } /** * Render text shadow control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.6.0 * @access public */ public function content_template() { ?>
get_sliders() as $slider_name => $slider ) : $control_uid = $this->get_control_uid( $slider_name ); ?>
true, ]; } /** * Render heading control output in the editor. * * Used to generate the control HTML in the editor using Underscore JS * template. The variables for the class are available using `data` JS * object. * * @since 1.0.0 * @access public */ public function content_template() { ?>

{{ data.label }}

get_current_tab(); if ( null !== $current_tab ) { $args = array_merge( $args, $current_tab ); } return Plugin::$instance->controls_manager->add_control_to_stack( $this, $id, $args, $options ); } /** * Get repeater fields. * * Retrieve the fields from the current repeater control. * * @since 1.5.0 * @deprecated 2.1.0 Use `Repeater::get_controls()` instead. * @access public * * @return array Repeater fields. */ public function get_fields() { _deprecated_function( __METHOD__, '2.1.0', __CLASS__ . '::get_controls()' ); return array_values( $this->get_controls() ); } /** * Get default child type. * * Retrieve the repeater child type based on element data. * * Note that repeater does not support children, therefore it returns false. * * @since 1.0.0 * @access protected * * @param array $element_data Element ID. * * @return false Repeater default child type or False if type not found. */ protected function _get_default_child_type( array $element_data ) { return false; } } includes/elements/column.php000066600000061340152142641160012206 0ustar00get_controls(); $config['tabs_controls'] = $this->get_tabs_controls(); return $config; } /** * Register column controls. * * Used to add new controls to the column element. * * @since 1.0.0 * @access protected */ protected function _register_controls() { // Section Layout. $this->start_controls_section( 'layout', [ 'label' => __( 'Layout', 'elementor' ), 'tab' => Controls_Manager::TAB_LAYOUT, ] ); // Element Name for the Navigator $this->add_control( '_title', [ 'label' => __( 'Title', 'elementor' ), 'type' => Controls_Manager::HIDDEN, 'render_type' => 'none', ] ); $this->add_responsive_control( '_inline_size', [ 'label' => __( 'Column Width', 'elementor' ) . ' (%)', 'type' => Controls_Manager::NUMBER, 'min' => 2, 'max' => 98, 'required' => true, 'device_args' => [ Controls_Stack::RESPONSIVE_TABLET => [ 'max' => 100, 'required' => false, ], Controls_Stack::RESPONSIVE_MOBILE => [ 'max' => 100, 'required' => false, ], ], 'min_affected_device' => [ Controls_Stack::RESPONSIVE_DESKTOP => Controls_Stack::RESPONSIVE_TABLET, Controls_Stack::RESPONSIVE_TABLET => Controls_Stack::RESPONSIVE_TABLET, ], 'selectors' => [ '{{WRAPPER}}' => 'width: {{VALUE}}%', ], ] ); $this->add_responsive_control( 'content_position', [ 'label' => __( 'Vertical Align', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'top' => __( 'Top', 'elementor' ), 'center' => __( 'Middle', 'elementor' ), 'bottom' => __( 'Bottom', 'elementor' ), 'space-between' => __( 'Space Between', 'elementor' ), 'space-around' => __( 'Space Around', 'elementor' ), 'space-evenly' => __( 'Space Evenly', 'elementor' ), ], 'selectors_dictionary' => [ 'top' => 'flex-start', 'bottom' => 'flex-end', ], 'selectors' => [ // TODO: The following line is for BC since 2.7.0 '.elementor-bc-flex-widget {{WRAPPER}}.elementor-column .elementor-column-wrap' => 'align-items: {{VALUE}}', // This specificity is intended to make sure column css overwrites section css on vertical alignment (content_position) '{{WRAPPER}}.elementor-column.elementor-element[data-element_type="column"] > .elementor-column-wrap.elementor-element-populated > .elementor-widget-wrap' => 'align-content: {{VALUE}}; align-items: {{VALUE}};', ], ] ); $this->add_responsive_control( 'align', [ 'label' => __( 'Horizontal Align', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'flex-start' => __( 'Start', 'elementor' ), 'center' => __( 'Center', 'elementor' ), 'flex-end' => __( 'End', 'elementor' ), 'space-between' => __( 'Space Between', 'elementor' ), 'space-around' => __( 'Space Around', 'elementor' ), 'space-evenly' => __( 'Space Evenly', 'elementor' ), ], 'selectors' => [ '{{WRAPPER}}.elementor-column > .elementor-column-wrap > .elementor-widget-wrap' => 'justify-content: {{VALUE}}', ], ] ); $this->add_responsive_control( 'space_between_widgets', [ 'label' => __( 'Widgets Space', 'elementor' ) . ' (px)', 'type' => Controls_Manager::NUMBER, 'placeholder' => 20, 'selectors' => [ '{{WRAPPER}} > .elementor-column-wrap > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute)' => 'margin-bottom: {{VALUE}}px', //Need the full path for exclude the inner section ], ] ); $possible_tags = [ 'div', 'header', 'footer', 'main', 'article', 'section', 'aside', 'nav', ]; $options = [ '' => __( 'Default', 'elementor' ), ] + array_combine( $possible_tags, $possible_tags ); $this->add_control( 'html_tag', [ 'label' => __( 'HTML Tag', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => $options, 'render_type' => 'none', ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style', [ 'label' => __( 'Background', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_background' ); $this->start_controls_tab( 'tab_background_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background', 'types' => [ 'classic', 'gradient', 'slideshow' ], 'selector' => '{{WRAPPER}}:not(.elementor-motion-effects-element-type-background) > .elementor-column-wrap, {{WRAPPER}} > .elementor-column-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer', 'fields_options' => [ 'background' => [ 'frontend_available' => true, ], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_background_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-element-populated', ] ); $this->add_control( 'background_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'render_type' => 'ui', 'separator' => 'before', ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); // Section Column Background Overlay. $this->start_controls_section( 'section_background_overlay', [ 'label' => __( 'Background Overlay', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'background_background' => [ 'classic', 'gradient' ], ], ] ); $this->start_controls_tabs( 'tabs_background_overlay' ); $this->start_controls_tab( 'tab_background_overlay_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_overlay', 'selector' => '{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => .5, ], 'range' => [ 'px' => [ 'max' => 1, 'step' => 0.01, ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay' => 'opacity: {{SIZE}};', ], 'condition' => [ 'background_overlay_background' => [ 'classic', 'gradient' ], ], ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'css_filters', 'selector' => '{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay', ] ); $this->add_control( 'overlay_blend_mode', [ 'label' => __( 'Blend Mode', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ '' => __( 'Normal', 'elementor' ), 'multiply' => 'Multiply', 'screen' => 'Screen', 'overlay' => 'Overlay', 'darken' => 'Darken', 'lighten' => 'Lighten', 'color-dodge' => 'Color Dodge', 'saturation' => 'Saturation', 'color' => 'Color', 'luminosity' => 'Luminosity', ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay' => 'mix-blend-mode: {{VALUE}}', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_background_overlay_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_overlay_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-element-populated > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_hover_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => .5, ], 'range' => [ 'px' => [ 'max' => 1, 'step' => 0.01, ], ], 'selectors' => [ '{{WRAPPER}}:hover > .elementor-element-populated > .elementor-background-overlay' => 'opacity: {{SIZE}};', ], 'condition' => [ 'background_overlay_hover_background' => [ 'classic', 'gradient' ], ], ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'css_filters_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-element-populated > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'render_type' => 'ui', 'separator' => 'before', ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); $this->start_controls_section( 'section_border', [ 'label' => __( 'Border', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_border' ); $this->start_controls_tab( 'tab_border_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'border', 'selector' => '{{WRAPPER}} > .elementor-element-populated', ] ); $this->add_responsive_control( 'border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated, {{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay, {{WRAPPER}} > .elementor-background-slideshow' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'box_shadow', 'selector' => '{{WRAPPER}} > .elementor-element-populated', ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_border_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'border_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-element-populated', ] ); $this->add_responsive_control( 'border_radius_hover', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}}:hover > .elementor-element-populated, {{WRAPPER}}:hover > .elementor-element-populated > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'box_shadow_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-element-populated', ] ); $this->add_control( 'border_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'separator' => 'before', 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'conditions' => [ 'relation' => 'or', 'terms' => [ [ 'name' => 'background_background', 'operator' => '!==', 'value' => '', ], [ 'name' => 'border_border', 'operator' => '!==', 'value' => '', ], ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated' => 'transition: background {{background_hover_transition.SIZE}}s, border {{SIZE}}s, border-radius {{SIZE}}s, box-shadow {{SIZE}}s', '{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay' => 'transition: background {{background_overlay_hover_transition.SIZE}}s, border-radius {{SIZE}}s, opacity {{background_overlay_hover_transition.SIZE}}s', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); // Section Typography. $this->start_controls_section( 'section_typo', [ 'label' => __( 'Typography', 'elementor' ), 'type' => Controls_Manager::SECTION, 'tab' => Controls_Manager::TAB_STYLE, ] ); if ( in_array( Schemes\Color::get_type(), Schemes\Manager::get_enabled_schemes(), true ) ) { $this->add_control( 'colors_warning', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => __( 'Note: The following set of controls has been deprecated. Those controls are only visible if they were previously populated.', 'elementor' ), 'content_classes' => 'elementor-panel-alert elementor-panel-alert-danger', ] ); } $this->add_control( 'heading_color', [ 'label' => __( 'Heading Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .elementor-element-populated .elementor-heading-title' => 'color: {{VALUE}};', ], 'separator' => 'none', ] ); $this->add_control( 'color_text', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'color_link', [ 'label' => __( 'Link Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .elementor-element-populated a' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'color_link_hover', [ 'label' => __( 'Link Hover Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .elementor-element-populated a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'text_align', [ 'label' => __( 'Text Align', 'elementor' ), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'left' => [ 'title' => __( 'Left', 'elementor' ), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => __( 'Center', 'elementor' ), 'icon' => 'eicon-text-align-center', ], 'right' => [ 'title' => __( 'Right', 'elementor' ), 'icon' => 'eicon-text-align-right', ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated' => 'text-align: {{VALUE}};', ], ] ); $this->end_controls_section(); // Section Advanced. $this->start_controls_section( 'section_advanced', [ 'label' => __( 'Advanced', 'elementor' ), 'type' => Controls_Manager::SECTION, 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_responsive_control( 'margin', [ 'label' => __( 'Margin', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'padding', [ 'label' => __( 'Padding', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', 'em', '%' ], 'selectors' => [ '{{WRAPPER}} > .elementor-element-populated' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'z_index', [ 'label' => __( 'Z-Index', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'min' => 0, 'selectors' => [ '{{WRAPPER}}' => 'z-index: {{VALUE}};', ], ] ); $this->add_control( '_element_id', [ 'label' => __( 'CSS ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'title' => __( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ), 'style_transfer' => false, 'classes' => 'elementor-control-direction-ltr', ] ); $this->add_control( 'css_classes', [ 'label' => __( 'CSS Classes', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'prefix_class' => '', 'title' => __( 'Add your custom class WITHOUT the dot. e.g: my-class', 'elementor' ), 'classes' => 'elementor-control-direction-ltr', ] ); // TODO: Backward comparability for deprecated controls $this->add_control( 'screen_sm', [ 'type' => Controls_Manager::HIDDEN, ] ); $this->add_control( 'screen_sm_width', [ 'type' => Controls_Manager::HIDDEN, 'condition' => [ 'screen_sm' => [ 'custom' ], ], 'prefix_class' => 'elementor-sm-', ] ); // END Backward comparability $this->end_controls_section(); $this->start_controls_section( 'section_effects', [ 'label' => __( 'Motion Effects', 'elementor' ), 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_responsive_control( 'animation', [ 'label' => __( 'Entrance Animation', 'elementor' ), 'type' => Controls_Manager::ANIMATION, 'frontend_available' => true, ] ); $this->add_control( 'animation_duration', [ 'label' => __( 'Animation Duration', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ 'slow' => __( 'Slow', 'elementor' ), '' => __( 'Normal', 'elementor' ), 'fast' => __( 'Fast', 'elementor' ), ], 'prefix_class' => 'animated-', 'condition' => [ 'animation!' => '', ], ] ); $this->add_control( 'animation_delay', [ 'label' => __( 'Animation Delay', 'elementor' ) . ' (ms)', 'type' => Controls_Manager::NUMBER, 'default' => '', 'min' => 0, 'step' => 100, 'condition' => [ 'animation!' => '', ], 'render_type' => 'none', 'frontend_available' => true, ] ); $this->end_controls_section(); $this->start_controls_section( '_section_responsive', [ 'label' => __( 'Responsive', 'elementor' ), 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_control( 'responsive_description', [ 'raw' => __( 'Responsive visibility will take effect only on preview or live page, and not while editing in Elementor.', 'elementor' ), 'type' => Controls_Manager::RAW_HTML, 'content_classes' => 'elementor-descriptor', ] ); $this->add_control( 'hide_desktop', [ 'label' => __( 'Hide On Desktop', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => 'Hide', 'label_off' => 'Show', 'return_value' => 'hidden-desktop', ] ); $this->add_control( 'hide_tablet', [ 'label' => __( 'Hide On Tablet', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => 'Hide', 'label_off' => 'Show', 'return_value' => 'hidden-tablet', ] ); $this->add_control( 'hide_mobile', [ 'label' => __( 'Hide On Mobile', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => 'Hide', 'label_off' => 'Show', 'return_value' => 'hidden-phone', ] ); $this->end_controls_section(); Plugin::$instance->controls_manager->add_custom_attributes_controls( $this ); Plugin::$instance->controls_manager->add_custom_css_controls( $this ); } /** * Render column output in the editor. * * Used to generate the live preview, using a Backbone JavaScript template. * * @since 2.9.0 * @access protected */ protected function content_template() { ?>
get_settings_for_display(); $has_background_overlay = in_array( $settings['background_overlay_background'], [ 'classic', 'gradient' ], true ) || in_array( $settings['background_overlay_hover_background'], [ 'classic', 'gradient' ], true ); $column_wrap_classes = [ 'elementor-column-wrap' ]; if ( $this->get_children() ) { $column_wrap_classes[] = ' elementor-element-populated'; } $this->add_render_attribute( [ '_inner_wrapper' => [ 'class' => $column_wrap_classes, ], '_widget_wrapper' => [ 'class' => [ 'elementor-widget-wrap' ], ], '_background_overlay' => [ 'class' => [ 'elementor-background-overlay' ], ], ] ); ?> <get_html_tag() . ' ' . $this->get_render_attribute_string( '_wrapper' ); ?>>
get_render_attribute_string( '_inner_wrapper' ); ?>>
get_render_attribute_string( '_background_overlay' ); ?>>
get_render_attribute_string( '_widget_wrapper' ); ?>>
get_html_tag(); ?>> get_data( 'isInner' ); $column_type = ! empty( $is_inner ) ? 'inner' : 'top'; $settings = $this->get_settings(); $this->add_render_attribute( '_wrapper', 'class', [ 'elementor-column', 'elementor-col-' . $settings['_column_size'], 'elementor-' . $column_type . '-column', ] ); } /** * Get default child type. * * Retrieve the column child type based on element data. * * @since 1.0.0 * @access protected * * @param array $element_data Element ID. * * @return Element_Base Column default child type. */ protected function _get_default_child_type( array $element_data ) { if ( 'section' === $element_data['elType'] ) { return Plugin::$instance->elements_manager->get_element_types( 'section' ); } return Plugin::$instance->widgets_manager->get_widget_types( $element_data['widgetType'] ); } /** * Get HTML tag. * * Retrieve the column element HTML tag. * * @since 1.5.3 * @access private * * @return string Column HTML tag. */ private function get_html_tag() { $html_tag = $this->get_settings( 'html_tag' ); if ( empty( $html_tag ) ) { $html_tag = 'div'; } return $html_tag; } } includes/elements/section.php000066600000107325152142641160012361 0ustar00 [ [ 'preset' => [ 33, 66 ], ], [ 'preset' => [ 66, 33 ], ], ], 3 => [ [ 'preset' => [ 25, 25, 50 ], ], [ 'preset' => [ 50, 25, 25 ], ], [ 'preset' => [ 25, 50, 25 ], ], [ 'preset' => [ 16, 66, 16 ], ], ], ]; foreach ( range( 1, 10 ) as $columns_count ) { self::$presets[ $columns_count ] = [ [ 'preset' => [], ], ]; $preset_unit = floor( 1 / $columns_count * 100 ); for ( $i = 0; $i < $columns_count; $i++ ) { self::$presets[ $columns_count ][0]['preset'][] = $preset_unit; } if ( ! empty( $additional_presets[ $columns_count ] ) ) { self::$presets[ $columns_count ] = array_merge( self::$presets[ $columns_count ], $additional_presets[ $columns_count ] ); } foreach ( self::$presets[ $columns_count ] as $preset_index => & $preset ) { $preset['key'] = $columns_count . $preset_index; } } } /** * Get initial config. * * Retrieve the current section initial configuration. * * Adds more configuration on top of the controls list, the tabs assigned to * the control, element name, type, icon and more. This method also adds * section presets. * * @since 2.9.0 * @access protected * * @return array The initial config. */ protected function get_initial_config() { $config = parent::get_initial_config(); $config['presets'] = self::get_presets(); $config['controls'] = $this->get_controls(); $config['tabs_controls'] = $this->get_tabs_controls(); return $config; } /** * Register section controls. * * Used to add new controls to the section element. * * @since 1.0.0 * @access protected */ protected function _register_controls() { $this->start_controls_section( 'section_layout', [ 'label' => __( 'Layout', 'elementor' ), 'tab' => Controls_Manager::TAB_LAYOUT, ] ); // Element Name for the Navigator $this->add_control( '_title', [ 'label' => __( 'Title', 'elementor' ), 'type' => Controls_Manager::HIDDEN, 'render_type' => 'none', ] ); $this->add_control( 'stretch_section', [ 'label' => __( 'Stretch Section', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'return_value' => 'section-stretched', 'prefix_class' => 'elementor-', 'hide_in_inner' => true, 'description' => __( 'Stretch the section to the full width of the page using JS.', 'elementor' ) . sprintf( ' %2$s', 'https://go.elementor.com/stretch-section/', __( 'Learn more.', 'elementor' ) ), 'render_type' => 'none', 'frontend_available' => true, ] ); $this->add_control( 'layout', [ 'label' => __( 'Content Width', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'boxed', 'options' => [ 'boxed' => __( 'Boxed', 'elementor' ), 'full_width' => __( 'Full Width', 'elementor' ), ], 'prefix_class' => 'elementor-section-', ] ); $this->add_control( 'content_width', [ 'label' => __( 'Content Width', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 500, 'max' => 1600, ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-container' => 'max-width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'layout' => [ 'boxed' ], ], 'show_label' => false, 'separator' => 'none', ] ); $this->add_control( 'gap', [ 'label' => __( 'Columns Gap', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'default', 'options' => [ 'default' => __( 'Default', 'elementor' ), 'no' => __( 'No Gap', 'elementor' ), 'narrow' => __( 'Narrow', 'elementor' ), 'extended' => __( 'Extended', 'elementor' ), 'wide' => __( 'Wide', 'elementor' ), 'wider' => __( 'Wider', 'elementor' ), ], ] ); $this->add_control( 'height', [ 'label' => __( 'Height', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'default', 'options' => [ 'default' => __( 'Default', 'elementor' ), 'full' => __( 'Fit To Screen', 'elementor' ), 'min-height' => __( 'Min Height', 'elementor' ), ], 'prefix_class' => 'elementor-section-height-', 'hide_in_inner' => true, ] ); $this->add_responsive_control( 'custom_height', [ 'label' => __( 'Minimum Height', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 400, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 1440, ], 'vh' => [ 'min' => 0, 'max' => 100, ], 'vw' => [ 'min' => 0, 'max' => 100, ], ], 'size_units' => [ 'px', 'vh', 'vw' ], 'selectors' => [ '{{WRAPPER}} > .elementor-container' => 'min-height: {{SIZE}}{{UNIT}};', '{{WRAPPER}} > .elementor-container:after' => 'content: ""; min-height: inherit;', // Hack for IE11 ], 'condition' => [ 'height' => [ 'min-height' ], ], 'hide_in_inner' => true, ] ); $this->add_control( 'height_inner', [ 'label' => __( 'Height', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'default', 'options' => [ 'default' => __( 'Default', 'elementor' ), 'min-height' => __( 'Min Height', 'elementor' ), ], 'prefix_class' => 'elementor-section-height-', 'hide_in_top' => true, ] ); $this->add_responsive_control( 'custom_height_inner', [ 'label' => __( 'Minimum Height', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 400, ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 1440, ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-container' => 'min-height: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'height_inner' => [ 'min-height' ], ], 'hide_in_top' => true, ] ); $this->add_control( 'column_position', [ 'label' => __( 'Column Position', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'middle', 'options' => [ 'stretch' => __( 'Stretch', 'elementor' ), 'top' => __( 'Top', 'elementor' ), 'middle' => __( 'Middle', 'elementor' ), 'bottom' => __( 'Bottom', 'elementor' ), ], 'prefix_class' => 'elementor-section-items-', 'condition' => [ 'height' => [ 'full', 'min-height' ], ], ] ); $this->add_control( 'content_position', [ 'label' => __( 'Vertical Align', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'top' => __( 'Top', 'elementor' ), 'middle' => __( 'Middle', 'elementor' ), 'bottom' => __( 'Bottom', 'elementor' ), 'space-between' => __( 'Space Between', 'elementor' ), 'space-around' => __( 'Space Around', 'elementor' ), 'space-evenly' => __( 'Space Evenly', 'elementor' ), ], 'selectors_dictionary' => [ 'top' => 'flex-start', 'middle' => 'center', 'bottom' => 'flex-end', ], 'selectors' => [ '{{WRAPPER}} > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap' => 'align-content: {{VALUE}}; align-items: {{VALUE}};', ], // TODO: The following line is for BC since 2.7.0 'prefix_class' => 'elementor-section-content-', ] ); $this->add_control( 'overflow', [ 'label' => __( 'Overflow', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => __( 'Default', 'elementor' ), 'hidden' => __( 'Hidden', 'elementor' ), ], 'selectors' => [ '{{WRAPPER}}' => 'overflow: {{VALUE}}', ], ] ); $possible_tags = [ 'div', 'header', 'footer', 'main', 'article', 'section', 'aside', 'nav', ]; $options = [ '' => __( 'Default', 'elementor' ), ] + array_combine( $possible_tags, $possible_tags ); $this->add_control( 'html_tag', [ 'label' => __( 'HTML Tag', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => $options, 'separator' => 'before', ] ); $this->end_controls_section(); // Section Structure $this->start_controls_section( 'section_structure', [ 'label' => __( 'Structure', 'elementor' ), 'tab' => Controls_Manager::TAB_LAYOUT, ] ); $this->add_control( 'structure', [ 'label' => __( 'Structure', 'elementor' ), 'type' => Controls_Manager::STRUCTURE, 'default' => '10', 'render_type' => 'none', 'style_transfer' => false, ] ); $this->end_controls_section(); // Section background $this->start_controls_section( 'section_background', [ 'label' => __( 'Background', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_background' ); $this->start_controls_tab( 'tab_background_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background', 'types' => [ 'classic', 'gradient', 'video', 'slideshow' ], 'fields_options' => [ 'background' => [ 'frontend_available' => true, ], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_background_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_hover', 'selector' => '{{WRAPPER}}:hover', ] ); $this->add_control( 'background_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'render_type' => 'ui', 'separator' => 'before', ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); // Background Overlay $this->start_controls_section( 'section_background_overlay', [ 'label' => __( 'Background Overlay', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_background_overlay' ); $this->start_controls_tab( 'tab_background_overlay_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_overlay', 'selector' => '{{WRAPPER}} > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => .5, ], 'range' => [ 'px' => [ 'max' => 1, 'step' => 0.01, ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-background-overlay' => 'opacity: {{SIZE}};', ], 'condition' => [ 'background_overlay_background' => [ 'classic', 'gradient' ], ], ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'css_filters', 'selector' => '{{WRAPPER}} .elementor-background-overlay', ] ); $this->add_control( 'overlay_blend_mode', [ 'label' => __( 'Blend Mode', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => [ '' => __( 'Normal', 'elementor' ), 'multiply' => 'Multiply', 'screen' => 'Screen', 'overlay' => 'Overlay', 'darken' => 'Darken', 'lighten' => 'Lighten', 'color-dodge' => 'Color Dodge', 'saturation' => 'Saturation', 'color' => 'Color', 'luminosity' => 'Luminosity', ], 'selectors' => [ '{{WRAPPER}} > .elementor-background-overlay' => 'mix-blend-mode: {{VALUE}}', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_background_overlay_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background_overlay_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_hover_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => .5, ], 'range' => [ 'px' => [ 'max' => 1, 'step' => 0.01, ], ], 'selectors' => [ '{{WRAPPER}}:hover > .elementor-background-overlay' => 'opacity: {{SIZE}};', ], 'condition' => [ 'background_overlay_hover_background' => [ 'classic', 'gradient' ], ], ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'css_filters_hover', 'selector' => '{{WRAPPER}}:hover > .elementor-background-overlay', ] ); $this->add_control( 'background_overlay_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'render_type' => 'ui', 'separator' => 'before', ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); // Section border $this->start_controls_section( 'section_border', [ 'label' => __( 'Border', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_border' ); $this->start_controls_tab( 'tab_border_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'border', ] ); $this->add_responsive_control( 'border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}}, {{WRAPPER}} > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'box_shadow', ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_border_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'border_hover', 'selector' => '{{WRAPPER}}:hover', ] ); $this->add_responsive_control( 'border_radius_hover', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}}:hover, {{WRAPPER}}:hover > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'box_shadow_hover', 'selector' => '{{WRAPPER}}:hover', ] ); $this->add_control( 'border_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'separator' => 'before', 'default' => [ 'size' => 0.3, ], 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'conditions' => [ 'relation' => 'or', 'terms' => [ [ 'name' => 'background_background', 'operator' => '!==', 'value' => '', ], [ 'name' => 'border_border', 'operator' => '!==', 'value' => '', ], ], ], 'selectors' => [ '{{WRAPPER}}' => 'transition: background {{background_hover_transition.SIZE}}s, border {{SIZE}}s, border-radius {{SIZE}}s, box-shadow {{SIZE}}s', '{{WRAPPER}} > .elementor-background-overlay' => 'transition: background {{background_overlay_hover_transition.SIZE}}s, border-radius {{SIZE}}s, opacity {{background_overlay_hover_transition.SIZE}}s', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); // Section Shape Divider $this->start_controls_section( 'section_shape_divider', [ 'label' => __( 'Shape Divider', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->start_controls_tabs( 'tabs_shape_dividers' ); $shapes_options = [ '' => __( 'None', 'elementor' ), ]; foreach ( Shapes::get_shapes() as $shape_name => $shape_props ) { $shapes_options[ $shape_name ] = $shape_props['title']; } foreach ( [ 'top' => __( 'Top', 'elementor' ), 'bottom' => __( 'Bottom', 'elementor' ), ] as $side => $side_label ) { $base_control_key = "shape_divider_$side"; $this->start_controls_tab( "tab_$base_control_key", [ 'label' => $side_label, ] ); $this->add_control( $base_control_key, [ 'label' => __( 'Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'options' => $shapes_options, 'render_type' => 'none', 'frontend_available' => true, ] ); $this->add_control( $base_control_key . '_color', [ 'label' => __( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'condition' => [ "shape_divider_$side!" => '', ], 'selectors' => [ "{{WRAPPER}} > .elementor-shape-$side .elementor-shape-fill" => 'fill: {{UNIT}};', ], ] ); $this->add_responsive_control( $base_control_key . '_width', [ 'label' => __( 'Width', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'default' => [ 'unit' => '%', ], 'tablet_default' => [ 'unit' => '%', ], 'mobile_default' => [ 'unit' => '%', ], 'range' => [ '%' => [ 'min' => 100, 'max' => 300, ], ], 'condition' => [ "shape_divider_$side" => array_keys( Shapes::filter_shapes( 'height_only', Shapes::FILTER_EXCLUDE ) ), ], 'selectors' => [ "{{WRAPPER}} > .elementor-shape-$side svg" => 'width: calc({{SIZE}}{{UNIT}} + 1.3px)', ], ] ); $this->add_responsive_control( $base_control_key . '_height', [ 'label' => __( 'Height', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'max' => 500, ], ], 'condition' => [ "shape_divider_$side!" => '', ], 'selectors' => [ "{{WRAPPER}} > .elementor-shape-$side svg" => 'height: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( $base_control_key . '_flip', [ 'label' => __( 'Flip', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'condition' => [ "shape_divider_$side" => array_keys( Shapes::filter_shapes( 'has_flip' ) ), ], 'selectors' => [ "{{WRAPPER}} > .elementor-shape-$side svg" => 'transform: translateX(-50%) rotateY(180deg)', ], ] ); $this->add_control( $base_control_key . '_negative', [ 'label' => __( 'Invert', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'frontend_available' => true, 'condition' => [ "shape_divider_$side" => array_keys( Shapes::filter_shapes( 'has_negative' ) ), ], 'render_type' => 'none', ] ); $this->add_control( $base_control_key . '_above_content', [ 'label' => __( 'Bring to Front', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'selectors' => [ "{{WRAPPER}} > .elementor-shape-$side" => 'z-index: 2; pointer-events: none', ], 'condition' => [ "shape_divider_$side!" => '', ], ] ); $this->end_controls_tab(); } $this->end_controls_tabs(); $this->end_controls_section(); // Section Typography $this->start_controls_section( 'section_typo', [ 'label' => __( 'Typography', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); if ( in_array( Schemes\Color::get_type(), Schemes\Manager::get_enabled_schemes(), true ) ) { $this->add_control( 'colors_warning', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => __( 'Note: The following set of controls has been deprecated. Those controls are only visible if they were previously populated.', 'elementor' ), 'content_classes' => 'elementor-panel-alert elementor-panel-alert-danger', ] ); } $this->add_control( 'heading_color', [ 'label' => __( 'Heading Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .elementor-heading-title' => 'color: {{VALUE}};', ], 'separator' => 'none', ] ); $this->add_control( 'color_text', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}}' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'color_link', [ 'label' => __( 'Link Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} a' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'color_link_hover', [ 'label' => __( 'Link Hover Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'text_align', [ 'label' => __( 'Text Align', 'elementor' ), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'left' => [ 'title' => __( 'Left', 'elementor' ), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => __( 'Center', 'elementor' ), 'icon' => 'eicon-text-align-center', ], 'right' => [ 'title' => __( 'Right', 'elementor' ), 'icon' => 'eicon-text-align-right', ], ], 'selectors' => [ '{{WRAPPER}} > .elementor-container' => 'text-align: {{VALUE}};', ], ] ); $this->end_controls_section(); // Section Advanced $this->start_controls_section( 'section_advanced', [ 'label' => __( 'Advanced', 'elementor' ), 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_responsive_control( 'margin', [ 'label' => __( 'Margin', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'allowed_dimensions' => 'vertical', 'placeholder' => [ 'top' => '', 'right' => 'auto', 'bottom' => '', 'left' => 'auto', ], 'selectors' => [ '{{WRAPPER}}' => 'margin-top: {{TOP}}{{UNIT}}; margin-bottom: {{BOTTOM}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'padding', [ 'label' => __( 'Padding', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', 'em', '%' ], 'selectors' => [ '{{WRAPPER}}' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'z_index', [ 'label' => __( 'Z-Index', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'min' => 0, 'selectors' => [ '{{WRAPPER}}' => 'z-index: {{VALUE}};', ], ] ); $this->add_control( '_element_id', [ 'label' => __( 'CSS ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'title' => __( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ), 'style_transfer' => false, 'classes' => 'elementor-control-direction-ltr', ] ); $this->add_control( 'css_classes', [ 'label' => __( 'CSS Classes', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'prefix_class' => '', 'title' => __( 'Add your custom class WITHOUT the dot. e.g: my-class', 'elementor' ), 'classes' => 'elementor-control-direction-ltr', ] ); $this->end_controls_section(); $this->start_controls_section( 'section_effects', [ 'label' => __( 'Motion Effects', 'elementor' ), 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_responsive_control( 'animation', [ 'label' => __( 'Entrance Animation', 'elementor' ), 'type' => Controls_Manager::ANIMATION, 'frontend_available' => true, ] ); $this->add_control( 'animation_duration', [ 'label' => __( 'Animation Duration', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ 'slow' => __( 'Slow', 'elementor' ), '' => __( 'Normal', 'elementor' ), 'fast' => __( 'Fast', 'elementor' ), ], 'prefix_class' => 'animated-', 'condition' => [ 'animation!' => '', ], ] ); $this->add_control( 'animation_delay', [ 'label' => __( 'Animation Delay', 'elementor' ) . ' (ms)', 'type' => Controls_Manager::NUMBER, 'default' => '', 'min' => 0, 'step' => 100, 'condition' => [ 'animation!' => '', ], 'render_type' => 'none', 'frontend_available' => true, ] ); $this->end_controls_section(); // Section Responsive $this->start_controls_section( '_section_responsive', [ 'label' => __( 'Responsive', 'elementor' ), 'tab' => Controls_Manager::TAB_ADVANCED, ] ); $this->add_control( 'reverse_order_tablet', [ 'label' => __( 'Reverse Columns', 'elementor' ) . ' (' . __( 'Tablet', 'elementor' ) . ')', 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'return_value' => 'reverse-tablet', ] ); $this->add_control( 'reverse_order_mobile', [ 'label' => __( 'Reverse Columns', 'elementor' ) . ' (' . __( 'Mobile', 'elementor' ) . ')', 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'return_value' => 'reverse-mobile', ] ); $this->add_control( 'heading_visibility', [ 'label' => __( 'Visibility', 'elementor' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'responsive_description', [ 'raw' => __( 'Responsive visibility will take effect only on preview or live page, and not while editing in Elementor.', 'elementor' ), 'type' => Controls_Manager::RAW_HTML, 'content_classes' => 'elementor-descriptor', ] ); $this->add_control( 'hide_desktop', [ 'label' => __( 'Hide On Desktop', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => __( 'Hide', 'elementor' ), 'label_off' => __( 'Show', 'elementor' ), 'return_value' => 'hidden-desktop', ] ); $this->add_control( 'hide_tablet', [ 'label' => __( 'Hide On Tablet', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => __( 'Hide', 'elementor' ), 'label_off' => __( 'Show', 'elementor' ), 'return_value' => 'hidden-tablet', ] ); $this->add_control( 'hide_mobile', [ 'label' => __( 'Hide On Mobile', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'default' => '', 'prefix_class' => 'elementor-', 'label_on' => __( 'Hide', 'elementor' ), 'label_off' => __( 'Show', 'elementor' ), 'return_value' => 'hidden-phone', ] ); $this->end_controls_section(); Plugin::$instance->controls_manager->add_custom_attributes_controls( $this ); Plugin::$instance->controls_manager->add_custom_css_controls( $this ); } /** * Render section output in the editor. * * Used to generate the live preview, using a Backbone JavaScript template. * * @since 2.9.0 * @access protected */ protected function content_template() { ?> <# if ( settings.background_video_link ) { let videoAttributes = 'autoplay muted playsinline'; if ( ! settings.background_play_once ) { videoAttributes += ' loop'; } view.addRenderAttribute( 'background-video-container', 'class', 'elementor-background-video-container' ); if ( ! settings.background_play_on_mobile ) { view.addRenderAttribute( 'background-video-container', 'class', 'elementor-hidden-phone' ); } #>
<# } #>
get_settings_for_display(); ?> <get_html_tag() ); ?> print_render_attribute_string( '_wrapper' ); ?>> add_render_attribute( 'background-video-container', 'class', 'elementor-background-video-container' ); if ( ! $settings['background_play_on_mobile'] ) { $this->add_render_attribute( 'background-video-container', 'class', 'elementor-hidden-phone' ); } ?>
get_render_attribute_string( 'background-video-container' ); ?>>
print_shape_divider( 'top' ); } if ( $settings['shape_divider_bottom'] ) { $this->print_shape_divider( 'bottom' ); } ?>
get_html_tag() ); ?>> get_data( 'isInner' ) ? 'inner' : 'top'; $this->add_render_attribute( '_wrapper', 'class', [ 'elementor-section', 'elementor-' . $section_type . '-section', ] ); } /** * Get default child type. * * Retrieve the section child type based on element data. * * @since 1.0.0 * @access protected * * @param array $element_data Element ID. * * @return Element_Base Section default child type. */ protected function _get_default_child_type( array $element_data ) { return Plugin::$instance->elements_manager->get_element_types( 'column' ); } /** * Get HTML tag. * * Retrieve the section element HTML tag. * * @since 1.5.3 * @access private * * @return string Section HTML tag. */ private function get_html_tag() { $html_tag = $this->get_settings( 'html_tag' ); if ( empty( $html_tag ) ) { $html_tag = 'section'; } return $html_tag; } /** * Print section shape divider. * * Used to generate the shape dividers HTML. * * @since 1.3.0 * @access private * * @param string $side Shape divider side, used to set the shape key. */ private function print_shape_divider( $side ) { $settings = $this->get_active_settings(); $base_setting_key = "shape_divider_$side"; $negative = ! empty( $settings[ $base_setting_key . '_negative' ] ); $shape_path = Shapes::get_shape_path( $settings[ $base_setting_key ], $negative ); if ( ! is_file( $shape_path ) || ! is_readable( $shape_path ) ) { return; } ?>
deleteCache(); } // WP Super Cache if ( function_exists( 'wp_cache_clean_cache' ) ) { global $file_prefix; wp_cache_clean_cache( $file_prefix, true ); } } /** * Add new button to gutenberg. * * Insert new "Elementor" button to the gutenberg editor to create new post * using Elementor page builder. * * @since 1.9.0 * @access public * @static */ public static function add_new_button_to_gutenberg() { global $typenow; if ( ! User::is_current_user_can_edit_post_type( $typenow ) ) { return; } // Introduced in WP 5.0 if ( function_exists( 'use_block_editor_for_post' ) && ! use_block_editor_for_post( $typenow ) ) { return; } // Deprecated/removed in Gutenberg plugin v5.3.0 if ( function_exists( 'gutenberg_can_edit_post_type' ) && ! gutenberg_can_edit_post_type( $typenow ) ) { return; } ?> editor->is_edit_mode() ) { $retval = true; } return $retval; } ); // Add the description (content) tab for a new product, so it can be edited with Elementor. add_filter( 'woocommerce_product_tabs', function( $tabs ) { if ( ! isset( $tabs['description'] ) && Plugin::$instance->preview->is_preview_mode() ) { $post = get_post(); if ( empty( $post->post_content ) ) { $tabs['description'] = [ 'title' => __( 'Description', 'elementor' ), 'priority' => 10, 'callback' => 'woocommerce_product_description_tab', ]; } } return $tabs; } ); // Fix WC session not defined in editor. if ( class_exists( 'woocommerce' ) ) { add_action( 'elementor/editor/before_enqueue_scripts', function() { remove_action( 'woocommerce_shortcode_before_product_cat_loop', 'wc_print_notices' ); remove_action( 'woocommerce_before_shop_loop', 'wc_print_notices' ); remove_action( 'woocommerce_before_single_product', 'wc_print_notices' ); } ); add_filter( 'elementor/maintenance_mode/is_login_page', function( $value ) { // Support Woocommerce Account Page. if ( is_account_page() && ! is_user_logged_in() ) { $value = true; } return $value; } ); } // Fix Jetpack Contact Form in Editor Mode. if ( class_exists( 'Grunion_Editor_View' ) ) { add_action( 'elementor/editor/before_enqueue_scripts', function() { remove_action( 'media_buttons', 'grunion_media_button', 999 ); remove_action( 'admin_enqueue_scripts', 'grunion_enable_spam_recheck' ); remove_action( 'admin_notices', [ 'Grunion_Editor_View', 'handle_editor_view_js' ] ); remove_action( 'admin_head', [ 'Grunion_Editor_View', 'admin_head' ] ); } ); } // Fix Popup Maker in Editor Mode. if ( class_exists( 'PUM_Admin_Shortcode_UI' ) ) { add_action( 'elementor/editor/before_enqueue_scripts', function() { $pum_admin_instance = \PUM_Admin_Shortcode_UI::instance(); remove_action( 'print_media_templates', [ $pum_admin_instance, 'print_media_templates' ] ); remove_action( 'admin_print_footer_scripts', [ $pum_admin_instance, 'admin_print_footer_scripts' ], 100 ); remove_action( 'wp_ajax_pum_do_shortcode', [ $pum_admin_instance, 'wp_ajax_pum_do_shortcode' ] ); remove_action( 'admin_enqueue_scripts', [ $pum_admin_instance, 'admin_enqueue_scripts' ] ); remove_filter( 'pum_admin_var', [ $pum_admin_instance, 'pum_admin_var' ] ); } ); } // Fix Preview URL for https://github.com/wpmudev/domain-mapping plugin if ( class_exists( 'domain_map' ) ) { add_filter( 'elementor/document/urls/preview', function( $preview_url ) { if ( wp_parse_url( $preview_url, PHP_URL_HOST ) !== $_SERVER['HTTP_HOST'] ) { $preview_url = \domain_map::utils()->unswap_url( $preview_url ); $preview_url = add_query_arg( [ 'dm' => \Domainmap_Module_Mapping::BYPASS, ], $preview_url ); } return $preview_url; } ); } // Gutenberg if ( function_exists( 'gutenberg_init' ) ) { add_action( 'admin_print_scripts-edit.php', [ __CLASS__, 'add_new_button_to_gutenberg' ], 11 ); } } public static function filter_library_post_type( $post_types ) { unset( $post_types[ Source_Local::CPT ] ); return $post_types; } /** * Polylang compatibility. * * Fix Polylang compatibility with Elementor. * * @since 2.0.0 * @access private * @static */ private static function polylang_compatibility() { // Fix language if the `get_user_locale` is difference from the `get_locale if ( isset( $_REQUEST['action'] ) && 0 === strpos( $_REQUEST['action'], 'elementor' ) ) { add_action( 'set_current_user', function() { global $current_user; $current_user->locale = get_locale(); } ); // Fix for Polylang define( 'PLL_AJAX_ON_FRONT', true ); add_action( 'pll_pre_init', function( $polylang ) { if ( isset( $_REQUEST['post'] ) ) { $post_language = $polylang->model->post->get_language( $_REQUEST['post'], 'locale' ); if ( ! empty( $post_language ) ) { $_REQUEST['lang'] = $post_language->locale; } } } ); } // Copy elementor data while polylang creates a translation copy add_filter( 'pll_copy_post_metas', [ __CLASS__, 'save_polylang_meta' ], 10, 4 ); } /** * Save polylang meta. * * Copy elementor data while polylang creates a translation copy. * * Fired by `pll_copy_post_metas` filter. * * @since 1.6.0 * @access public * @static * * @param array $keys List of custom fields names. * @param bool $sync True if it is synchronization, false if it is a copy. * @param int $from ID of the post from which we copy information. * @param int $to ID of the post to which we paste information. * * @return array List of custom fields names. */ public static function save_polylang_meta( $keys, $sync, $from, $to ) { // Copy only for a new post. if ( ! $sync ) { Plugin::$instance->db->copy_elementor_meta( $from, $to ); } return $keys; } /** * Process post meta before WP importer. * * Normalize Elementor post meta on import, We need the `wp_slash` in order * to avoid the unslashing during the `add_post_meta`. * * Fired by `wp_import_post_meta` filter. * * @since 1.0.0 * @access public * @static * * @param array $post_meta Post meta. * * @return array Updated post meta. */ public static function on_wp_import_post_meta( $post_meta ) { foreach ( $post_meta as &$meta ) { if ( '_elementor_data' === $meta['key'] ) { $meta['value'] = wp_slash( $meta['value'] ); break; } } return $post_meta; } /** * Process post meta before WXR importer. * * Normalize Elementor post meta on import with the new WP_importer, We need * the `wp_slash` in order to avoid the unslashing during the `add_post_meta`. * * Fired by `wxr_importer.pre_process.post_meta` filter. * * @since 1.0.0 * @access public * @static * * @param array $post_meta Post meta. * * @return array Updated post meta. */ public static function on_wxr_importer_pre_process_post_meta( $post_meta ) { if ( '_elementor_data' === $post_meta['key'] ) { $post_meta['value'] = wp_slash( $post_meta['value'] ); } return $post_meta; } } includes/fonts.php000066600000102227152142641160010226 0ustar00 __( 'System', 'elementor' ), self::GOOGLE => __( 'Google', 'elementor' ), self::EARLYACCESS => __( 'Google Early Access', 'elementor' ), ]; /** * Font groups. * * Filters the fonts groups used by Elementor. * * @since 1.9.4 * * @param array $font_groups Font groups. */ $font_groups = apply_filters( 'elementor/fonts/groups', $font_groups ); self::$font_groups = $font_groups; } return self::$font_groups; } /** * Get fonts. * * Retrieve the list of supported fonts. * * @since 1.0.0 * @access public * @static * * @return array Supported fonts. */ public static function get_fonts() { if ( null === self::$fonts ) { $additional_fonts = []; /** * Additional fonts. * * Filters the fonts used by Elementor to add additional fonts. * * @since 1.9.4 * * @param array $additional_fonts Additional Elementor fonts. */ $additional_fonts = apply_filters( 'elementor/fonts/additional_fonts', $additional_fonts ); self::$fonts = array_merge( self::get_native_fonts(), $additional_fonts ); } return self::$fonts; } /** * Get Elementor native fonts. * * Retrieve the list of supported fonts. * * @since 1.9.4 * @access private * @static * * @return array Supported fonts. */ private static function get_native_fonts() { return [ // System fonts. 'Arial' => self::SYSTEM, 'Tahoma' => self::SYSTEM, 'Verdana' => self::SYSTEM, 'Helvetica' => self::SYSTEM, 'Times New Roman' => self::SYSTEM, 'Trebuchet MS' => self::SYSTEM, 'Georgia' => self::SYSTEM, // Google Fonts (last update: 23/10/2018). 'ABeeZee' => self::GOOGLE, 'Abel' => self::GOOGLE, 'Abhaya Libre' => self::GOOGLE, 'Abril Fatface' => self::GOOGLE, 'Aclonica' => self::GOOGLE, 'Acme' => self::GOOGLE, 'Actor' => self::GOOGLE, 'Adamina' => self::GOOGLE, 'Advent Pro' => self::GOOGLE, 'Aguafina Script' => self::GOOGLE, 'Akronim' => self::GOOGLE, 'Aladin' => self::GOOGLE, 'Aldrich' => self::GOOGLE, 'Alef' => self::GOOGLE, 'Alef Hebrew' => self::EARLYACCESS, // Hack for Google Early Access. 'Alegreya' => self::GOOGLE, 'Alegreya SC' => self::GOOGLE, 'Alegreya Sans' => self::GOOGLE, 'Alegreya Sans SC' => self::GOOGLE, 'Alex Brush' => self::GOOGLE, 'Alfa Slab One' => self::GOOGLE, 'Alice' => self::GOOGLE, 'Alike' => self::GOOGLE, 'Alike Angular' => self::GOOGLE, 'Allan' => self::GOOGLE, 'Allerta' => self::GOOGLE, 'Allerta Stencil' => self::GOOGLE, 'Allura' => self::GOOGLE, 'Almendra' => self::GOOGLE, 'Almendra Display' => self::GOOGLE, 'Almendra SC' => self::GOOGLE, 'Amarante' => self::GOOGLE, 'Amaranth' => self::GOOGLE, 'Amatic SC' => self::GOOGLE, 'Amethysta' => self::GOOGLE, 'Amiko' => self::GOOGLE, 'Amiri' => self::GOOGLE, 'Amita' => self::GOOGLE, 'Anaheim' => self::GOOGLE, 'Andada' => self::GOOGLE, 'Andika' => self::GOOGLE, 'Angkor' => self::GOOGLE, 'Annie Use Your Telescope' => self::GOOGLE, 'Anonymous Pro' => self::GOOGLE, 'Antic' => self::GOOGLE, 'Antic Didone' => self::GOOGLE, 'Antic Slab' => self::GOOGLE, 'Anton' => self::GOOGLE, 'Arapey' => self::GOOGLE, 'Arbutus' => self::GOOGLE, 'Arbutus Slab' => self::GOOGLE, 'Architects Daughter' => self::GOOGLE, 'Archivo' => self::GOOGLE, 'Archivo Black' => self::GOOGLE, 'Archivo Narrow' => self::GOOGLE, 'Aref Ruqaa' => self::GOOGLE, 'Arima Madurai' => self::GOOGLE, 'Arimo' => self::GOOGLE, 'Arizonia' => self::GOOGLE, 'Armata' => self::GOOGLE, 'Arsenal' => self::GOOGLE, 'Artifika' => self::GOOGLE, 'Arvo' => self::GOOGLE, 'Arya' => self::GOOGLE, 'Asap' => self::GOOGLE, 'Asap Condensed' => self::GOOGLE, 'Asar' => self::GOOGLE, 'Asset' => self::GOOGLE, 'Assistant' => self::GOOGLE, 'Astloch' => self::GOOGLE, 'Asul' => self::GOOGLE, 'Athiti' => self::GOOGLE, 'Atma' => self::GOOGLE, 'Atomic Age' => self::GOOGLE, 'Aubrey' => self::GOOGLE, 'Audiowide' => self::GOOGLE, 'Autour One' => self::GOOGLE, 'Average' => self::GOOGLE, 'Average Sans' => self::GOOGLE, 'Averia Gruesa Libre' => self::GOOGLE, 'Averia Libre' => self::GOOGLE, 'Averia Sans Libre' => self::GOOGLE, 'Averia Serif Libre' => self::GOOGLE, 'Bad Script' => self::GOOGLE, 'Bahiana' => self::GOOGLE, 'Bai Jamjuree' => self::GOOGLE, 'Baloo' => self::GOOGLE, 'Baloo Bhai' => self::GOOGLE, 'Baloo Bhaijaan' => self::GOOGLE, 'Baloo Bhaina' => self::GOOGLE, 'Baloo Chettan' => self::GOOGLE, 'Baloo Da' => self::GOOGLE, 'Baloo Paaji' => self::GOOGLE, 'Baloo Tamma' => self::GOOGLE, 'Baloo Tammudu' => self::GOOGLE, 'Baloo Thambi' => self::GOOGLE, 'Balthazar' => self::GOOGLE, 'Bangers' => self::GOOGLE, 'Barlow' => self::GOOGLE, 'Barlow Condensed' => self::GOOGLE, 'Barlow Semi Condensed' => self::GOOGLE, 'Barrio' => self::GOOGLE, 'Basic' => self::GOOGLE, 'Battambang' => self::GOOGLE, 'Baumans' => self::GOOGLE, 'Bayon' => self::GOOGLE, 'Belgrano' => self::GOOGLE, 'Bellefair' => self::GOOGLE, 'Belleza' => self::GOOGLE, 'BenchNine' => self::GOOGLE, 'Bentham' => self::GOOGLE, 'Berkshire Swash' => self::GOOGLE, 'Bevan' => self::GOOGLE, 'Bigelow Rules' => self::GOOGLE, 'Bigshot One' => self::GOOGLE, 'Bilbo' => self::GOOGLE, 'Bilbo Swash Caps' => self::GOOGLE, 'BioRhyme' => self::GOOGLE, 'BioRhyme Expanded' => self::GOOGLE, 'Biryani' => self::GOOGLE, 'Bitter' => self::GOOGLE, 'Black And White Picture' => self::GOOGLE, 'Black Han Sans' => self::GOOGLE, 'Black Ops One' => self::GOOGLE, 'Bokor' => self::GOOGLE, 'Bonbon' => self::GOOGLE, 'Boogaloo' => self::GOOGLE, 'Bowlby One' => self::GOOGLE, 'Bowlby One SC' => self::GOOGLE, 'Brawler' => self::GOOGLE, 'Bree Serif' => self::GOOGLE, 'Bubblegum Sans' => self::GOOGLE, 'Bubbler One' => self::GOOGLE, 'Buda' => self::GOOGLE, 'Buenard' => self::GOOGLE, 'Bungee' => self::GOOGLE, 'Bungee Hairline' => self::GOOGLE, 'Bungee Inline' => self::GOOGLE, 'Bungee Outline' => self::GOOGLE, 'Bungee Shade' => self::GOOGLE, 'Butcherman' => self::GOOGLE, 'Butterfly Kids' => self::GOOGLE, 'Cabin' => self::GOOGLE, 'Cabin Condensed' => self::GOOGLE, 'Cabin Sketch' => self::GOOGLE, 'Caesar Dressing' => self::GOOGLE, 'Cagliostro' => self::GOOGLE, 'Cairo' => self::GOOGLE, 'Calligraffitti' => self::GOOGLE, 'Cambay' => self::GOOGLE, 'Cambo' => self::GOOGLE, 'Candal' => self::GOOGLE, 'Cantarell' => self::GOOGLE, 'Cantata One' => self::GOOGLE, 'Cantora One' => self::GOOGLE, 'Capriola' => self::GOOGLE, 'Cardo' => self::GOOGLE, 'Carme' => self::GOOGLE, 'Carrois Gothic' => self::GOOGLE, 'Carrois Gothic SC' => self::GOOGLE, 'Carter One' => self::GOOGLE, 'Catamaran' => self::GOOGLE, 'Caudex' => self::GOOGLE, 'Caveat' => self::GOOGLE, 'Caveat Brush' => self::GOOGLE, 'Cedarville Cursive' => self::GOOGLE, 'Ceviche One' => self::GOOGLE, 'Chakra Petch' => self::GOOGLE, 'Changa' => self::GOOGLE, 'Changa One' => self::GOOGLE, 'Chango' => self::GOOGLE, 'Charmonman' => self::GOOGLE, 'Chathura' => self::GOOGLE, 'Chau Philomene One' => self::GOOGLE, 'Chela One' => self::GOOGLE, 'Chelsea Market' => self::GOOGLE, 'Chenla' => self::GOOGLE, 'Cherry Cream Soda' => self::GOOGLE, 'Cherry Swash' => self::GOOGLE, 'Chewy' => self::GOOGLE, 'Chicle' => self::GOOGLE, 'Chivo' => self::GOOGLE, 'Chonburi' => self::GOOGLE, 'Cinzel' => self::GOOGLE, 'Cinzel Decorative' => self::GOOGLE, 'Clicker Script' => self::GOOGLE, 'Coda' => self::GOOGLE, 'Coda Caption' => self::GOOGLE, 'Codystar' => self::GOOGLE, 'Coiny' => self::GOOGLE, 'Combo' => self::GOOGLE, 'Comfortaa' => self::GOOGLE, 'Coming Soon' => self::GOOGLE, 'Concert One' => self::GOOGLE, 'Condiment' => self::GOOGLE, 'Content' => self::GOOGLE, 'Contrail One' => self::GOOGLE, 'Convergence' => self::GOOGLE, 'Cookie' => self::GOOGLE, 'Copse' => self::GOOGLE, 'Corben' => self::GOOGLE, 'Cormorant' => self::GOOGLE, 'Cormorant Garamond' => self::GOOGLE, 'Cormorant Infant' => self::GOOGLE, 'Cormorant SC' => self::GOOGLE, 'Cormorant Unicase' => self::GOOGLE, 'Cormorant Upright' => self::GOOGLE, 'Courgette' => self::GOOGLE, 'Cousine' => self::GOOGLE, 'Coustard' => self::GOOGLE, 'Covered By Your Grace' => self::GOOGLE, 'Crafty Girls' => self::GOOGLE, 'Creepster' => self::GOOGLE, 'Crete Round' => self::GOOGLE, 'Crimson Text' => self::GOOGLE, 'Croissant One' => self::GOOGLE, 'Crushed' => self::GOOGLE, 'Cuprum' => self::GOOGLE, 'Cute Font' => self::GOOGLE, 'Cutive' => self::GOOGLE, 'Cutive Mono' => self::GOOGLE, 'Damion' => self::GOOGLE, 'Dancing Script' => self::GOOGLE, 'Dangrek' => self::GOOGLE, 'David Libre' => self::GOOGLE, 'Dawning of a New Day' => self::GOOGLE, 'Days One' => self::GOOGLE, 'Dekko' => self::GOOGLE, 'Delius' => self::GOOGLE, 'Delius Swash Caps' => self::GOOGLE, 'Delius Unicase' => self::GOOGLE, 'Della Respira' => self::GOOGLE, 'Denk One' => self::GOOGLE, 'Devonshire' => self::GOOGLE, 'Dhurjati' => self::GOOGLE, 'Didact Gothic' => self::GOOGLE, 'Diplomata' => self::GOOGLE, 'Diplomata SC' => self::GOOGLE, 'Do Hyeon' => self::GOOGLE, 'Dokdo' => self::GOOGLE, 'Domine' => self::GOOGLE, 'Donegal One' => self::GOOGLE, 'Doppio One' => self::GOOGLE, 'Dorsa' => self::GOOGLE, 'Dosis' => self::GOOGLE, 'Dr Sugiyama' => self::GOOGLE, 'Droid Arabic Kufi' => self::EARLYACCESS, // Hack for Google Early Access. 'Droid Arabic Naskh' => self::EARLYACCESS, // Hack for Google Early Access. 'Duru Sans' => self::GOOGLE, 'Dynalight' => self::GOOGLE, 'EB Garamond' => self::GOOGLE, 'Eagle Lake' => self::GOOGLE, 'East Sea Dokdo' => self::GOOGLE, 'Eater' => self::GOOGLE, 'Economica' => self::GOOGLE, 'Eczar' => self::GOOGLE, 'El Messiri' => self::GOOGLE, 'Electrolize' => self::GOOGLE, 'Elsie' => self::GOOGLE, 'Elsie Swash Caps' => self::GOOGLE, 'Emblema One' => self::GOOGLE, 'Emilys Candy' => self::GOOGLE, 'Encode Sans' => self::GOOGLE, 'Encode Sans Condensed' => self::GOOGLE, 'Encode Sans Expanded' => self::GOOGLE, 'Encode Sans Semi Condensed' => self::GOOGLE, 'Encode Sans Semi Expanded' => self::GOOGLE, 'Engagement' => self::GOOGLE, 'Englebert' => self::GOOGLE, 'Enriqueta' => self::GOOGLE, 'Erica One' => self::GOOGLE, 'Esteban' => self::GOOGLE, 'Euphoria Script' => self::GOOGLE, 'Ewert' => self::GOOGLE, 'Exo' => self::GOOGLE, 'Exo 2' => self::GOOGLE, 'Expletus Sans' => self::GOOGLE, 'Fahkwang' => self::GOOGLE, 'Fanwood Text' => self::GOOGLE, 'Farsan' => self::GOOGLE, 'Fascinate' => self::GOOGLE, 'Fascinate Inline' => self::GOOGLE, 'Faster One' => self::GOOGLE, 'Fasthand' => self::GOOGLE, 'Fauna One' => self::GOOGLE, 'Faustina' => self::GOOGLE, 'Federant' => self::GOOGLE, 'Federo' => self::GOOGLE, 'Felipa' => self::GOOGLE, 'Fenix' => self::GOOGLE, 'Finger Paint' => self::GOOGLE, 'Fira Mono' => self::GOOGLE, 'Fira Sans' => self::GOOGLE, 'Fira Sans Condensed' => self::GOOGLE, 'Fira Sans Extra Condensed' => self::GOOGLE, 'Fjalla One' => self::GOOGLE, 'Fjord One' => self::GOOGLE, 'Flamenco' => self::GOOGLE, 'Flavors' => self::GOOGLE, 'Fondamento' => self::GOOGLE, 'Fontdiner Swanky' => self::GOOGLE, 'Forum' => self::GOOGLE, 'Francois One' => self::GOOGLE, 'Frank Ruhl Libre' => self::GOOGLE, 'Freckle Face' => self::GOOGLE, 'Fredericka the Great' => self::GOOGLE, 'Fredoka One' => self::GOOGLE, 'Freehand' => self::GOOGLE, 'Fresca' => self::GOOGLE, 'Frijole' => self::GOOGLE, 'Fruktur' => self::GOOGLE, 'Fugaz One' => self::GOOGLE, 'GFS Didot' => self::GOOGLE, 'GFS Neohellenic' => self::GOOGLE, 'Gabriela' => self::GOOGLE, 'Gaegu' => self::GOOGLE, 'Gafata' => self::GOOGLE, 'Galada' => self::GOOGLE, 'Galdeano' => self::GOOGLE, 'Galindo' => self::GOOGLE, 'Gamja Flower' => self::GOOGLE, 'Gentium Basic' => self::GOOGLE, 'Gentium Book Basic' => self::GOOGLE, 'Geo' => self::GOOGLE, 'Geostar' => self::GOOGLE, 'Geostar Fill' => self::GOOGLE, 'Germania One' => self::GOOGLE, 'Gidugu' => self::GOOGLE, 'Gilda Display' => self::GOOGLE, 'Give You Glory' => self::GOOGLE, 'Glass Antiqua' => self::GOOGLE, 'Glegoo' => self::GOOGLE, 'Gloria Hallelujah' => self::GOOGLE, 'Goblin One' => self::GOOGLE, 'Gochi Hand' => self::GOOGLE, 'Gorditas' => self::GOOGLE, 'Gothic A1' => self::GOOGLE, 'Goudy Bookletter 1911' => self::GOOGLE, 'Graduate' => self::GOOGLE, 'Grand Hotel' => self::GOOGLE, 'Gravitas One' => self::GOOGLE, 'Great Vibes' => self::GOOGLE, 'Griffy' => self::GOOGLE, 'Gruppo' => self::GOOGLE, 'Gudea' => self::GOOGLE, 'Gugi' => self::GOOGLE, 'Gurajada' => self::GOOGLE, 'Habibi' => self::GOOGLE, 'Halant' => self::GOOGLE, 'Hammersmith One' => self::GOOGLE, 'Hanalei' => self::GOOGLE, 'Hanalei Fill' => self::GOOGLE, 'Handlee' => self::GOOGLE, 'Hanuman' => self::GOOGLE, 'Happy Monkey' => self::GOOGLE, 'Harmattan' => self::GOOGLE, 'Headland One' => self::GOOGLE, 'Heebo' => self::GOOGLE, 'Henny Penny' => self::GOOGLE, 'Herr Von Muellerhoff' => self::GOOGLE, 'Hi Melody' => self::GOOGLE, 'Hind' => self::GOOGLE, 'Hind Guntur' => self::GOOGLE, 'Hind Madurai' => self::GOOGLE, 'Hind Siliguri' => self::GOOGLE, 'Hind Vadodara' => self::GOOGLE, 'Holtwood One SC' => self::GOOGLE, 'Homemade Apple' => self::GOOGLE, 'Homenaje' => self::GOOGLE, 'IBM Plex Mono' => self::GOOGLE, 'IBM Plex Sans' => self::GOOGLE, 'IBM Plex Sans Condensed' => self::GOOGLE, 'IBM Plex Serif' => self::GOOGLE, 'IM Fell DW Pica' => self::GOOGLE, 'IM Fell DW Pica SC' => self::GOOGLE, 'IM Fell Double Pica' => self::GOOGLE, 'IM Fell Double Pica SC' => self::GOOGLE, 'IM Fell English' => self::GOOGLE, 'IM Fell English SC' => self::GOOGLE, 'IM Fell French Canon' => self::GOOGLE, 'IM Fell French Canon SC' => self::GOOGLE, 'IM Fell Great Primer' => self::GOOGLE, 'IM Fell Great Primer SC' => self::GOOGLE, 'Iceberg' => self::GOOGLE, 'Iceland' => self::GOOGLE, 'Imprima' => self::GOOGLE, 'Inconsolata' => self::GOOGLE, 'Inder' => self::GOOGLE, 'Indie Flower' => self::GOOGLE, 'Inika' => self::GOOGLE, 'Inknut Antiqua' => self::GOOGLE, 'Irish Grover' => self::GOOGLE, 'Istok Web' => self::GOOGLE, 'Italiana' => self::GOOGLE, 'Italianno' => self::GOOGLE, 'Itim' => self::GOOGLE, 'Jacques Francois' => self::GOOGLE, 'Jacques Francois Shadow' => self::GOOGLE, 'Jaldi' => self::GOOGLE, 'Jim Nightshade' => self::GOOGLE, 'Jockey One' => self::GOOGLE, 'Jolly Lodger' => self::GOOGLE, 'Jomhuria' => self::GOOGLE, 'Josefin Sans' => self::GOOGLE, 'Josefin Slab' => self::GOOGLE, 'Joti One' => self::GOOGLE, 'Jua' => self::GOOGLE, 'Judson' => self::GOOGLE, 'Julee' => self::GOOGLE, 'Julius Sans One' => self::GOOGLE, 'Junge' => self::GOOGLE, 'Jura' => self::GOOGLE, 'Just Another Hand' => self::GOOGLE, 'Just Me Again Down Here' => self::GOOGLE, 'K2D' => self::GOOGLE, 'Kadwa' => self::GOOGLE, 'Kalam' => self::GOOGLE, 'Kameron' => self::GOOGLE, 'Kanit' => self::GOOGLE, 'Kantumruy' => self::GOOGLE, 'Karla' => self::GOOGLE, 'Karma' => self::GOOGLE, 'Katibeh' => self::GOOGLE, 'Kaushan Script' => self::GOOGLE, 'Kavivanar' => self::GOOGLE, 'Kavoon' => self::GOOGLE, 'Kdam Thmor' => self::GOOGLE, 'Keania One' => self::GOOGLE, 'Kelly Slab' => self::GOOGLE, 'Kenia' => self::GOOGLE, 'Khand' => self::GOOGLE, 'Khmer' => self::GOOGLE, 'Khula' => self::GOOGLE, 'Kirang Haerang' => self::GOOGLE, 'Kite One' => self::GOOGLE, 'Knewave' => self::GOOGLE, 'KoHo' => self::GOOGLE, 'Kodchasan' => self::GOOGLE, 'Kosugi' => self::GOOGLE, 'Kosugi Maru' => self::GOOGLE, 'Kotta One' => self::GOOGLE, 'Koulen' => self::GOOGLE, 'Kranky' => self::GOOGLE, 'Kreon' => self::GOOGLE, 'Kristi' => self::GOOGLE, 'Krona One' => self::GOOGLE, 'Krub' => self::GOOGLE, 'Kumar One' => self::GOOGLE, 'Kumar One Outline' => self::GOOGLE, 'Kurale' => self::GOOGLE, 'La Belle Aurore' => self::GOOGLE, 'Laila' => self::GOOGLE, 'Lakki Reddy' => self::GOOGLE, 'Lalezar' => self::GOOGLE, 'Lancelot' => self::GOOGLE, 'Lateef' => self::GOOGLE, 'Lato' => self::GOOGLE, 'League Script' => self::GOOGLE, 'Leckerli One' => self::GOOGLE, 'Ledger' => self::GOOGLE, 'Lekton' => self::GOOGLE, 'Lemon' => self::GOOGLE, 'Lemonada' => self::GOOGLE, 'Libre Barcode 128' => self::GOOGLE, 'Libre Barcode 128 Text' => self::GOOGLE, 'Libre Barcode 39' => self::GOOGLE, 'Libre Barcode 39 Extended' => self::GOOGLE, 'Libre Barcode 39 Extended Text' => self::GOOGLE, 'Libre Barcode 39 Text' => self::GOOGLE, 'Libre Baskerville' => self::GOOGLE, 'Libre Franklin' => self::GOOGLE, 'Life Savers' => self::GOOGLE, 'Lilita One' => self::GOOGLE, 'Lily Script One' => self::GOOGLE, 'Limelight' => self::GOOGLE, 'Linden Hill' => self::GOOGLE, 'Lobster' => self::GOOGLE, 'Lobster Two' => self::GOOGLE, 'Londrina Outline' => self::GOOGLE, 'Londrina Shadow' => self::GOOGLE, 'Londrina Sketch' => self::GOOGLE, 'Londrina Solid' => self::GOOGLE, 'Lora' => self::GOOGLE, 'Love Ya Like A Sister' => self::GOOGLE, 'Loved by the King' => self::GOOGLE, 'Lovers Quarrel' => self::GOOGLE, 'Luckiest Guy' => self::GOOGLE, 'Lusitana' => self::GOOGLE, 'Lustria' => self::GOOGLE, 'M PLUS 1p' => self::GOOGLE, 'M PLUS Rounded 1c' => self::GOOGLE, 'Macondo' => self::GOOGLE, 'Macondo Swash Caps' => self::GOOGLE, 'Mada' => self::GOOGLE, 'Magra' => self::GOOGLE, 'Maiden Orange' => self::GOOGLE, 'Maitree' => self::GOOGLE, 'Mako' => self::GOOGLE, 'Mali' => self::GOOGLE, 'Mallanna' => self::GOOGLE, 'Mandali' => self::GOOGLE, 'Manuale' => self::GOOGLE, 'Marcellus' => self::GOOGLE, 'Marcellus SC' => self::GOOGLE, 'Marck Script' => self::GOOGLE, 'Margarine' => self::GOOGLE, 'Markazi Text' => self::GOOGLE, 'Marko One' => self::GOOGLE, 'Marmelad' => self::GOOGLE, 'Martel' => self::GOOGLE, 'Martel Sans' => self::GOOGLE, 'Marvel' => self::GOOGLE, 'Mate' => self::GOOGLE, 'Mate SC' => self::GOOGLE, 'Maven Pro' => self::GOOGLE, 'McLaren' => self::GOOGLE, 'Meddon' => self::GOOGLE, 'MedievalSharp' => self::GOOGLE, 'Medula One' => self::GOOGLE, 'Meera Inimai' => self::GOOGLE, 'Megrim' => self::GOOGLE, 'Meie Script' => self::GOOGLE, 'Merienda' => self::GOOGLE, 'Merienda One' => self::GOOGLE, 'Merriweather' => self::GOOGLE, 'Merriweather Sans' => self::GOOGLE, 'Metal' => self::GOOGLE, 'Metal Mania' => self::GOOGLE, 'Metamorphous' => self::GOOGLE, 'Metrophobic' => self::GOOGLE, 'Michroma' => self::GOOGLE, 'Milonga' => self::GOOGLE, 'Miltonian' => self::GOOGLE, 'Miltonian Tattoo' => self::GOOGLE, 'Mina' => self::GOOGLE, 'Miniver' => self::GOOGLE, 'Miriam Libre' => self::GOOGLE, 'Mirza' => self::GOOGLE, 'Miss Fajardose' => self::GOOGLE, 'Mitr' => self::GOOGLE, 'Modak' => self::GOOGLE, 'Modern Antiqua' => self::GOOGLE, 'Mogra' => self::GOOGLE, 'Molengo' => self::GOOGLE, 'Molle' => self::GOOGLE, 'Monda' => self::GOOGLE, 'Monofett' => self::GOOGLE, 'Monoton' => self::GOOGLE, 'Monsieur La Doulaise' => self::GOOGLE, 'Montaga' => self::GOOGLE, 'Montez' => self::GOOGLE, 'Montserrat' => self::GOOGLE, 'Montserrat Alternates' => self::GOOGLE, 'Montserrat Subrayada' => self::GOOGLE, 'Moul' => self::GOOGLE, 'Moulpali' => self::GOOGLE, 'Mountains of Christmas' => self::GOOGLE, 'Mouse Memoirs' => self::GOOGLE, 'Mr Bedfort' => self::GOOGLE, 'Mr Dafoe' => self::GOOGLE, 'Mr De Haviland' => self::GOOGLE, 'Mrs Saint Delafield' => self::GOOGLE, 'Mrs Sheppards' => self::GOOGLE, 'Mukta' => self::GOOGLE, 'Mukta Mahee' => self::GOOGLE, 'Mukta Malar' => self::GOOGLE, 'Mukta Vaani' => self::GOOGLE, 'Muli' => self::GOOGLE, 'Mystery Quest' => self::GOOGLE, 'NTR' => self::GOOGLE, 'Nanum Brush Script' => self::GOOGLE, 'Nanum Gothic' => self::GOOGLE, 'Nanum Gothic Coding' => self::GOOGLE, 'Nanum Myeongjo' => self::GOOGLE, 'Nanum Pen Script' => self::GOOGLE, 'Neucha' => self::GOOGLE, 'Neuton' => self::GOOGLE, 'New Rocker' => self::GOOGLE, 'News Cycle' => self::GOOGLE, 'Niconne' => self::GOOGLE, 'Niramit' => self::GOOGLE, 'Nixie One' => self::GOOGLE, 'Nobile' => self::GOOGLE, 'Nokora' => self::GOOGLE, 'Norican' => self::GOOGLE, 'Nosifer' => self::GOOGLE, 'Notable' => self::GOOGLE, 'Nothing You Could Do' => self::GOOGLE, 'Noticia Text' => self::GOOGLE, 'Noto Kufi Arabic' => self::EARLYACCESS, // Hack for Google Early Access. 'Noto Naskh Arabic' => self::EARLYACCESS, // Hack for Google Early Access. 'Noto Sans' => self::GOOGLE, 'Noto Sans Hebrew' => self::EARLYACCESS, // Hack for Google Early Access. 'Noto Sans JP' => self::GOOGLE, 'Noto Sans KR' => self::GOOGLE, 'Noto Serif' => self::GOOGLE, 'Noto Serif JP' => self::GOOGLE, 'Noto Serif KR' => self::GOOGLE, 'Nova Cut' => self::GOOGLE, 'Nova Flat' => self::GOOGLE, 'Nova Mono' => self::GOOGLE, 'Nova Oval' => self::GOOGLE, 'Nova Round' => self::GOOGLE, 'Nova Script' => self::GOOGLE, 'Nova Slim' => self::GOOGLE, 'Nova Square' => self::GOOGLE, 'Numans' => self::GOOGLE, 'Nunito' => self::GOOGLE, 'Nunito Sans' => self::GOOGLE, 'Odor Mean Chey' => self::GOOGLE, 'Offside' => self::GOOGLE, 'Old Standard TT' => self::GOOGLE, 'Oldenburg' => self::GOOGLE, 'Oleo Script' => self::GOOGLE, 'Oleo Script Swash Caps' => self::GOOGLE, 'Open Sans' => self::GOOGLE, 'Open Sans Condensed' => self::GOOGLE, 'Open Sans Hebrew' => self::EARLYACCESS, // Hack for Google Early Access. 'Open Sans Hebrew Condensed' => self::EARLYACCESS, // Hack for Google Early Access. 'Oranienbaum' => self::GOOGLE, 'Orbitron' => self::GOOGLE, 'Oregano' => self::GOOGLE, 'Orienta' => self::GOOGLE, 'Original Surfer' => self::GOOGLE, 'Oswald' => self::GOOGLE, 'Over the Rainbow' => self::GOOGLE, 'Overlock' => self::GOOGLE, 'Overlock SC' => self::GOOGLE, 'Overpass' => self::GOOGLE, 'Overpass Mono' => self::GOOGLE, 'Ovo' => self::GOOGLE, 'Oxygen' => self::GOOGLE, 'Oxygen Mono' => self::GOOGLE, 'PT Mono' => self::GOOGLE, 'PT Sans' => self::GOOGLE, 'PT Sans Caption' => self::GOOGLE, 'PT Sans Narrow' => self::GOOGLE, 'PT Serif' => self::GOOGLE, 'PT Serif Caption' => self::GOOGLE, 'Pacifico' => self::GOOGLE, 'Padauk' => self::GOOGLE, 'Palanquin' => self::GOOGLE, 'Palanquin Dark' => self::GOOGLE, 'Pangolin' => self::GOOGLE, 'Paprika' => self::GOOGLE, 'Parisienne' => self::GOOGLE, 'Passero One' => self::GOOGLE, 'Passion One' => self::GOOGLE, 'Pathway Gothic One' => self::GOOGLE, 'Patrick Hand' => self::GOOGLE, 'Patrick Hand SC' => self::GOOGLE, 'Pattaya' => self::GOOGLE, 'Patua One' => self::GOOGLE, 'Pavanam' => self::GOOGLE, 'Paytone One' => self::GOOGLE, 'Peddana' => self::GOOGLE, 'Peralta' => self::GOOGLE, 'Permanent Marker' => self::GOOGLE, 'Petit Formal Script' => self::GOOGLE, 'Petrona' => self::GOOGLE, 'Philosopher' => self::GOOGLE, 'Piedra' => self::GOOGLE, 'Pinyon Script' => self::GOOGLE, 'Pirata One' => self::GOOGLE, 'Plaster' => self::GOOGLE, 'Play' => self::GOOGLE, 'Playball' => self::GOOGLE, 'Playfair Display' => self::GOOGLE, 'Playfair Display SC' => self::GOOGLE, 'Podkova' => self::GOOGLE, 'Poiret One' => self::GOOGLE, 'Poller One' => self::GOOGLE, 'Poly' => self::GOOGLE, 'Pompiere' => self::GOOGLE, 'Pontano Sans' => self::GOOGLE, 'Poor Story' => self::GOOGLE, 'Poppins' => self::GOOGLE, 'Port Lligat Sans' => self::GOOGLE, 'Port Lligat Slab' => self::GOOGLE, 'Pragati Narrow' => self::GOOGLE, 'Prata' => self::GOOGLE, 'Preahvihear' => self::GOOGLE, 'Press Start 2P' => self::GOOGLE, 'Pridi' => self::GOOGLE, 'Princess Sofia' => self::GOOGLE, 'Prociono' => self::GOOGLE, 'Prompt' => self::GOOGLE, 'Prosto One' => self::GOOGLE, 'Proza Libre' => self::GOOGLE, 'Puritan' => self::GOOGLE, 'Purple Purse' => self::GOOGLE, 'Quando' => self::GOOGLE, 'Quantico' => self::GOOGLE, 'Quattrocento' => self::GOOGLE, 'Quattrocento Sans' => self::GOOGLE, 'Questrial' => self::GOOGLE, 'Quicksand' => self::GOOGLE, 'Quintessential' => self::GOOGLE, 'Qwigley' => self::GOOGLE, 'Racing Sans One' => self::GOOGLE, 'Radley' => self::GOOGLE, 'Rajdhani' => self::GOOGLE, 'Rakkas' => self::GOOGLE, 'Raleway' => self::GOOGLE, 'Raleway Dots' => self::GOOGLE, 'Ramabhadra' => self::GOOGLE, 'Ramaraja' => self::GOOGLE, 'Rambla' => self::GOOGLE, 'Rammetto One' => self::GOOGLE, 'Ranchers' => self::GOOGLE, 'Rancho' => self::GOOGLE, 'Ranga' => self::GOOGLE, 'Rasa' => self::GOOGLE, 'Rationale' => self::GOOGLE, 'Ravi Prakash' => self::GOOGLE, 'Redressed' => self::GOOGLE, 'Reem Kufi' => self::GOOGLE, 'Reenie Beanie' => self::GOOGLE, 'Revalia' => self::GOOGLE, 'Rhodium Libre' => self::GOOGLE, 'Ribeye' => self::GOOGLE, 'Ribeye Marrow' => self::GOOGLE, 'Righteous' => self::GOOGLE, 'Risque' => self::GOOGLE, 'Roboto' => self::GOOGLE, 'Roboto Condensed' => self::GOOGLE, 'Roboto Mono' => self::GOOGLE, 'Roboto Slab' => self::GOOGLE, 'Rochester' => self::GOOGLE, 'Rock Salt' => self::GOOGLE, 'Rokkitt' => self::GOOGLE, 'Romanesco' => self::GOOGLE, 'Ropa Sans' => self::GOOGLE, 'Rosario' => self::GOOGLE, 'Rosarivo' => self::GOOGLE, 'Rouge Script' => self::GOOGLE, 'Rozha One' => self::GOOGLE, 'Rubik' => self::GOOGLE, 'Rubik Mono One' => self::GOOGLE, 'Ruda' => self::GOOGLE, 'Rufina' => self::GOOGLE, 'Ruge Boogie' => self::GOOGLE, 'Ruluko' => self::GOOGLE, 'Rum Raisin' => self::GOOGLE, 'Ruslan Display' => self::GOOGLE, 'Russo One' => self::GOOGLE, 'Ruthie' => self::GOOGLE, 'Rye' => self::GOOGLE, 'Sacramento' => self::GOOGLE, 'Sahitya' => self::GOOGLE, 'Sail' => self::GOOGLE, 'Saira' => self::GOOGLE, 'Saira Condensed' => self::GOOGLE, 'Saira Extra Condensed' => self::GOOGLE, 'Saira Semi Condensed' => self::GOOGLE, 'Salsa' => self::GOOGLE, 'Sanchez' => self::GOOGLE, 'Sancreek' => self::GOOGLE, 'Sansita' => self::GOOGLE, 'Sarala' => self::GOOGLE, 'Sarina' => self::GOOGLE, 'Sarpanch' => self::GOOGLE, 'Satisfy' => self::GOOGLE, 'Sawarabi Gothic' => self::GOOGLE, 'Sawarabi Mincho' => self::GOOGLE, 'Scada' => self::GOOGLE, 'Scheherazade' => self::GOOGLE, 'Schoolbell' => self::GOOGLE, 'Scope One' => self::GOOGLE, 'Seaweed Script' => self::GOOGLE, 'Secular One' => self::GOOGLE, 'Sedgwick Ave' => self::GOOGLE, 'Sedgwick Ave Display' => self::GOOGLE, 'Sevillana' => self::GOOGLE, 'Seymour One' => self::GOOGLE, 'Shadows Into Light' => self::GOOGLE, 'Shadows Into Light Two' => self::GOOGLE, 'Shanti' => self::GOOGLE, 'Share' => self::GOOGLE, 'Share Tech' => self::GOOGLE, 'Share Tech Mono' => self::GOOGLE, 'Shojumaru' => self::GOOGLE, 'Short Stack' => self::GOOGLE, 'Shrikhand' => self::GOOGLE, 'Siemreap' => self::GOOGLE, 'Sigmar One' => self::GOOGLE, 'Signika' => self::GOOGLE, 'Signika Negative' => self::GOOGLE, 'Simonetta' => self::GOOGLE, 'Sintony' => self::GOOGLE, 'Sirin Stencil' => self::GOOGLE, 'Six Caps' => self::GOOGLE, 'Skranji' => self::GOOGLE, 'Slabo 13px' => self::GOOGLE, 'Slabo 27px' => self::GOOGLE, 'Slackey' => self::GOOGLE, 'Smokum' => self::GOOGLE, 'Smythe' => self::GOOGLE, 'Sniglet' => self::GOOGLE, 'Snippet' => self::GOOGLE, 'Snowburst One' => self::GOOGLE, 'Sofadi One' => self::GOOGLE, 'Sofia' => self::GOOGLE, 'Song Myung' => self::GOOGLE, 'Sonsie One' => self::GOOGLE, 'Sorts Mill Goudy' => self::GOOGLE, 'Source Code Pro' => self::GOOGLE, 'Source Sans Pro' => self::GOOGLE, 'Source Serif Pro' => self::GOOGLE, 'Space Mono' => self::GOOGLE, 'Special Elite' => self::GOOGLE, 'Spectral' => self::GOOGLE, 'Spectral SC' => self::GOOGLE, 'Spicy Rice' => self::GOOGLE, 'Spinnaker' => self::GOOGLE, 'Spirax' => self::GOOGLE, 'Squada One' => self::GOOGLE, 'Sree Krushnadevaraya' => self::GOOGLE, 'Sriracha' => self::GOOGLE, 'Srisakdi' => self::GOOGLE, 'Stalemate' => self::GOOGLE, 'Stalinist One' => self::GOOGLE, 'Stardos Stencil' => self::GOOGLE, 'Stint Ultra Condensed' => self::GOOGLE, 'Stint Ultra Expanded' => self::GOOGLE, 'Stoke' => self::GOOGLE, 'Strait' => self::GOOGLE, 'Stylish' => self::GOOGLE, 'Sue Ellen Francisco' => self::GOOGLE, 'Suez One' => self::GOOGLE, 'Sumana' => self::GOOGLE, 'Sunflower' => self::GOOGLE, 'Sunshiney' => self::GOOGLE, 'Supermercado One' => self::GOOGLE, 'Sura' => self::GOOGLE, 'Suranna' => self::GOOGLE, 'Suravaram' => self::GOOGLE, 'Suwannaphum' => self::GOOGLE, 'Swanky and Moo Moo' => self::GOOGLE, 'Syncopate' => self::GOOGLE, 'Tajawal' => self::GOOGLE, 'Tangerine' => self::GOOGLE, 'Taprom' => self::GOOGLE, 'Tauri' => self::GOOGLE, 'Taviraj' => self::GOOGLE, 'Teko' => self::GOOGLE, 'Telex' => self::GOOGLE, 'Tenali Ramakrishna' => self::GOOGLE, 'Tenor Sans' => self::GOOGLE, 'Text Me One' => self::GOOGLE, 'The Girl Next Door' => self::GOOGLE, 'Tienne' => self::GOOGLE, 'Tillana' => self::GOOGLE, 'Timmana' => self::GOOGLE, 'Tinos' => self::GOOGLE, 'Titan One' => self::GOOGLE, 'Titillium Web' => self::GOOGLE, 'Trade Winds' => self::GOOGLE, 'Trirong' => self::GOOGLE, 'Trocchi' => self::GOOGLE, 'Trochut' => self::GOOGLE, 'Trykker' => self::GOOGLE, 'Tulpen One' => self::GOOGLE, 'Ubuntu' => self::GOOGLE, 'Ubuntu Condensed' => self::GOOGLE, 'Ubuntu Mono' => self::GOOGLE, 'Ultra' => self::GOOGLE, 'Uncial Antiqua' => self::GOOGLE, 'Underdog' => self::GOOGLE, 'Unica One' => self::GOOGLE, 'UnifrakturCook' => self::GOOGLE, 'UnifrakturMaguntia' => self::GOOGLE, 'Unkempt' => self::GOOGLE, 'Unlock' => self::GOOGLE, 'Unna' => self::GOOGLE, 'VT323' => self::GOOGLE, 'Vampiro One' => self::GOOGLE, 'Varela' => self::GOOGLE, 'Varela Round' => self::GOOGLE, 'Vast Shadow' => self::GOOGLE, 'Vesper Libre' => self::GOOGLE, 'Vibur' => self::GOOGLE, 'Vidaloka' => self::GOOGLE, 'Viga' => self::GOOGLE, 'Voces' => self::GOOGLE, 'Volkhov' => self::GOOGLE, 'Vollkorn' => self::GOOGLE, 'Vollkorn SC' => self::GOOGLE, 'Voltaire' => self::GOOGLE, 'Waiting for the Sunrise' => self::GOOGLE, 'Wallpoet' => self::GOOGLE, 'Walter Turncoat' => self::GOOGLE, 'Warnes' => self::GOOGLE, 'Wellfleet' => self::GOOGLE, 'Wendy One' => self::GOOGLE, 'Wire One' => self::GOOGLE, 'Work Sans' => self::GOOGLE, 'Yanone Kaffeesatz' => self::GOOGLE, 'Yantramanav' => self::GOOGLE, 'Yatra One' => self::GOOGLE, 'Yellowtail' => self::GOOGLE, 'Yeon Sung' => self::GOOGLE, 'Yeseva One' => self::GOOGLE, 'Yesteryear' => self::GOOGLE, 'Yrsa' => self::GOOGLE, 'Zeyada' => self::GOOGLE, 'Zilla Slab' => self::GOOGLE, 'Zilla Slab Highlight' => self::GOOGLE, ]; } /** * Get font type. * * Retrieve the font type for a given font. * * @since 1.0.0 * @access public * @static * * @param string $name Font name. * * @return string|false Font type, or false if font doesn't exist. */ public static function get_font_type( $name ) { $fonts = self::get_fonts(); if ( empty( $fonts[ $name ] ) ) { return false; } return $fonts[ $name ]; } /** * Get fonts by group. * * Retrieve all the fonts belong to specific group. * * @since 1.0.0 * @access public * @static * * @param array $groups Optional. Font group. Default is an empty array. * * @return array Font type, or false if font doesn't exist. */ public static function get_fonts_by_groups( $groups = [] ) { return array_filter( self::get_fonts(), function( $font ) use ( $groups ) { return in_array( $font, $groups ); } ); } } includes/autoloader.php000066600000021452152142641160011234 0ustar00 'includes/api.php', 'Base_Control' => 'includes/controls/base.php', 'Base_Data_Control' => 'includes/controls/base-data.php', 'Base_UI_Control' => 'includes/controls/base-ui.php', 'Beta_Testers' => 'includes/beta-testers.php', 'Compatibility' => 'includes/compatibility.php', 'Conditions' => 'includes/conditions.php', 'Controls_Manager' => 'includes/managers/controls.php', 'Controls_Stack' => 'includes/base/controls-stack.php', 'DB' => 'includes/db.php', 'Elements_Manager' => 'includes/managers/elements.php', 'Embed' => 'includes/embed.php', 'Fonts' => 'includes/fonts.php', 'Frontend' => 'includes/frontend.php', 'Group_Control_Base' => 'includes/controls/groups/base.php', 'Group_Control_Interface' => 'includes/interfaces/group-control.php', 'Heartbeat' => 'includes/heartbeat.php', 'Images_Manager' => 'includes/managers/image.php', 'Maintenance' => 'includes/maintenance.php', 'Maintenance_Mode' => 'includes/maintenance-mode.php', 'Preview' => 'includes/preview.php', 'Rollback' => 'includes/rollback.php', 'Settings' => 'includes/settings/settings.php', 'Settings_Controls' => 'includes/settings/controls.php', 'Settings_Validations' => 'includes/settings/validations.php', 'Settings_Page' => 'includes/settings/settings-page.php', 'Shapes' => 'includes/shapes.php', 'Skins_Manager' => 'includes/managers/skins.php', 'Icons_Manager' => 'includes/managers/icons.php', 'Stylesheet' => 'includes/stylesheet.php', 'System_Info\Main' => 'includes/settings/system-info/main.php', 'TemplateLibrary\Classes\Import_Images' => 'includes/template-library/classes/class-import-images.php', 'TemplateLibrary\Manager' => 'includes/template-library/manager.php', 'TemplateLibrary\Source_Base' => 'includes/template-library/sources/base.php', 'TemplateLibrary\Source_Local' => 'includes/template-library/sources/local.php', 'TemplateLibrary\Source_Remote' => 'includes/template-library/sources/remote.php', 'Tools' => 'includes/settings/tools.php', 'Tracker' => 'includes/tracker.php', 'User' => 'includes/user.php', 'Utils' => 'includes/utils.php', 'Widget_WordPress' => 'includes/widgets/wordpress.php', 'Widgets_Manager' => 'includes/managers/widgets.php', 'WordPress_Widgets_Manager' => 'includes/managers/wordpress-widgets.php', ]; $controls_names = Controls_Manager::get_controls_names(); $controls_names = array_merge( $controls_names, [ 'base_multiple', 'base_units', ] ); foreach ( $controls_names as $control_name ) { $class_name = 'Control_' . self::normalize_class_name( $control_name, '_' ); self::$classes_map[ $class_name ] = 'includes/controls/' . str_replace( '_', '-', $control_name ) . '.php'; } $controls_groups_names = Controls_Manager::get_groups_names(); foreach ( $controls_groups_names as $group_name ) { $class_name = 'Group_Control_' . self::normalize_class_name( str_replace( '-', '_', $group_name ), '_' ); self::$classes_map[ $class_name ] = 'includes/controls/groups/' . $group_name . '.php'; } } /** * Normalize Class Name * * Used to convert control names to class name, * a ucwords polyfill for php versions not supporting delimiter parameter * reference : https://github.com/elementor/elementor/issues/7310#issuecomment-469593385 * * @param $string * @param string $delimiter * * @todo Remove once we bump minimum php version to 5.6 * @return mixed */ private static function normalize_class_name( $string, $delimiter = ' ' ) { return str_replace( ' ', $delimiter, ucwords( str_replace( $delimiter, ' ', $string ) ) ); } private static function init_classes_aliases() { self::$classes_aliases = [ 'Core\Ajax' => [ 'replacement' => 'Core\Common\Modules\Ajax\Module', 'version' => '2.3.0', ], 'Editor' => [ 'replacement' => 'Core\Editor\Editor', 'version' => '2.6.0', ], 'Scheme_Base' => [ 'replacement' => 'Core\Schemes\Base', 'version' => '2.8.0', ], 'Scheme_Color' => [ 'replacement' => 'Core\Schemes\Color', 'version' => '2.8.0', ], 'Scheme_Color_Picker' => [ 'replacement' => 'Core\Schemes\Color_Picker', 'version' => '2.8.0', ], 'Schemes_Manager' => [ 'replacement' => 'Core\Schemes\Manager', 'version' => '2.8.0', ], 'Scheme_Typography' => [ 'replacement' => 'Core\Schemes\Typography', 'version' => '2.8.0', ], 'System_Info\Main' => [ 'replacement' => 'Modules\System_Info\Module', 'version' => '2.9.0', ], 'System_Info\Classes\Abstracts\Base_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\Base', 'version' => '2.9.0', ], 'System_Info\Classes\Server_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\Server', 'version' => '2.9.0', ], 'System_Info\Classes\MU_Plugins_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\MU_Plugins', 'version' => '2.9.0', ], 'System_Info\Classes\Network_Plugins_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\Network_Plugins', 'version' => '2.9.0', ], 'System_Info\Classes\Plugins_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\Plugins', 'version' => '2.9.0', ], 'System_Info\Classes\Theme_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\Theme', 'version' => '2.9.0', ], 'System_Info\Classes\User_Reporter' => [ 'replacement' => 'Modules\System_Info\Reporters\User', 'version' => '2.9.0', ], 'System_Info\Helpers\Model_Helper' => [ 'replacement' => 'Modules\System_Info\Helpers\Model_Helper', 'version' => '2.9.0', ], ]; } /** * Load class. * * For a given class name, require the class file. * * @since 1.6.0 * @access private * @static * * @param string $relative_class_name Class name. */ private static function load_class( $relative_class_name ) { $classes_map = self::get_classes_map(); if ( isset( $classes_map[ $relative_class_name ] ) ) { $filename = ELEMENTOR_PATH . '/' . $classes_map[ $relative_class_name ]; } else { $filename = strtolower( preg_replace( [ '/([a-z])([A-Z])/', '/_/', '/\\\/' ], [ '$1-$2', '-', DIRECTORY_SEPARATOR ], $relative_class_name ) ); $filename = ELEMENTOR_PATH . $filename . '.php'; } if ( is_readable( $filename ) ) { require $filename; } } /** * Autoload. * * For a given class, check if it exist and load it. * * @since 1.6.0 * @access private * @static * * @param string $class Class name. */ private static function autoload( $class ) { if ( 0 !== strpos( $class, __NAMESPACE__ . '\\' ) ) { return; } $relative_class_name = preg_replace( '/^' . __NAMESPACE__ . '\\\/', '', $class ); $classes_aliases = self::get_classes_aliases(); $has_class_alias = isset( $classes_aliases[ $relative_class_name ] ); // Backward Compatibility: Save old class name for set an alias after the new class is loaded if ( $has_class_alias ) { $alias_data = $classes_aliases[ $relative_class_name ]; $relative_class_name = $alias_data['replacement']; } $final_class_name = __NAMESPACE__ . '\\' . $relative_class_name; if ( ! class_exists( $final_class_name ) ) { self::load_class( $relative_class_name ); } if ( $has_class_alias ) { class_alias( $final_class_name, $class ); Utils::handle_deprecation( $class, $alias_data['version'], $final_class_name ); } } } includes/interfaces/group-control.php000066600000000631152142641160014026 0ustar00 '/^.*(?:youtu\.be\/|youtube(?:-nocookie)?\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^\?&\"\'>]+)/', 'vimeo' => '/^.*vimeo\.com\/(?:[a-z]*\/)*([‌​0-9]{6,11})[?]?.*/', 'dailymotion' => '/^.*dailymotion.com\/(?:video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/', ]; /** * Embed patterns. * * Holds a list of supported providers with their embed patters. * * @since 1.5.0 * @access private * @static * * @var array Embed patters. */ private static $embed_patterns = [ 'youtube' => 'https://www.youtube{NO_COOKIE}.com/embed/{VIDEO_ID}?feature=oembed', 'vimeo' => 'https://player.vimeo.com/video/{VIDEO_ID}#t={TIME}', 'dailymotion' => 'https://dailymotion.com/embed/video/{VIDEO_ID}', ]; /** * Get video properties. * * Retrieve the video properties for a given video URL. * * @since 1.5.0 * @access public * @static * * @param string $video_url Video URL. * * @return null|array The video properties, or null. */ public static function get_video_properties( $video_url ) { foreach ( self::$provider_match_masks as $provider => $match_mask ) { preg_match( $match_mask, $video_url, $matches ); if ( $matches ) { return [ 'provider' => $provider, 'video_id' => $matches[1], ]; } } return null; } /** * Get embed URL. * * Retrieve the embed URL for a given video. * * @since 1.5.0 * @access public * @static * * @param string $video_url Video URL. * @param array $embed_url_params Optional. Embed parameters. Default is an * empty array. * @param array $options Optional. Embed options. Default is an * empty array. * * @return null|array The video properties, or null. */ public static function get_embed_url( $video_url, array $embed_url_params = [], array $options = [] ) { $video_properties = self::get_video_properties( $video_url ); if ( ! $video_properties ) { return null; } $embed_pattern = self::$embed_patterns[ $video_properties['provider'] ]; $replacements = [ '{VIDEO_ID}' => $video_properties['video_id'], ]; if ( 'youtube' === $video_properties['provider'] ) { $replacements['{NO_COOKIE}'] = ! empty( $options['privacy'] ) ? '-nocookie' : ''; } elseif ( 'vimeo' === $video_properties['provider'] ) { $time_text = ''; if ( ! empty( $options['start'] ) ) { $time_text = date( 'H\hi\ms\s', $options['start'] ); // PHPCS:Ignore WordPress.DateTime.RestrictedFunctions.date_date } $replacements['{TIME}'] = $time_text; } $embed_pattern = str_replace( array_keys( $replacements ), $replacements, $embed_pattern ); return add_query_arg( $embed_url_params, $embed_pattern ); } /** * Get embed HTML. * * Retrieve the final HTML of the embedded URL. * * @since 1.5.0 * @access public * @static * * @param string $video_url Video URL. * @param array $embed_url_params Optional. Embed parameters. Default is an * empty array. * @param array $options Optional. Embed options. Default is an * empty array. * @param array $frame_attributes Optional. IFrame attributes. Default is an * empty array. * * @return string The embed HTML. */ public static function get_embed_html( $video_url, array $embed_url_params = [], array $options = [], array $frame_attributes = [] ) { $video_properties = self::get_video_properties( $video_url ); $default_frame_attributes = [ 'class' => 'elementor-video-iframe', 'allowfullscreen', 'title' => sprintf( /* translators: %s: Video provider */ __( '%s Video Player', 'elementor' ), $video_properties['provider'] ), ]; $video_embed_url = self::get_embed_url( $video_url, $embed_url_params, $options ); if ( ! $video_embed_url ) { return null; } if ( ! $options['lazy_load'] ) { $default_frame_attributes['src'] = $video_embed_url; } else { $default_frame_attributes['data-lazy-load'] = $video_embed_url; } $frame_attributes = array_merge( $default_frame_attributes, $frame_attributes ); $attributes_for_print = []; foreach ( $frame_attributes as $attribute_key => $attribute_value ) { $attribute_value = esc_attr( $attribute_value ); if ( is_numeric( $attribute_key ) ) { $attributes_for_print[] = $attribute_value; } else { $attributes_for_print[] = sprintf( '%1$s="%2$s"', $attribute_key, $attribute_value ); } } $attributes_for_print = implode( ' ', $attributes_for_print ); $iframe_html = ""; /** This filter is documented in wp-includes/class-oembed.php */ return apply_filters( 'oembed_result', $iframe_html, $video_url, $frame_attributes ); } } assets/css/admin-rtl.css000066600000105155152142641160011254 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-weight: 500; text-transform: uppercase; outline: none; border: none; -webkit-border-radius: 3px; 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: .3s; -o-transition-duration: .3s; transition-duration: .3s; } .elementor-button:hover { border: none; } .elementor-button:not([disabled]) { cursor: pointer; } .elementor-button:not(.elementor-button-state) .elementor-state-icon { display: none; } .elementor-button.elementor-button-success { color: #fff; } .elementor-button.elementor-button-success[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-success:not([disabled]) { background-color: #39b54a; } .elementor-button.elementor-button-success:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-success:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-warning { background-color: #a4afb7; color: #fff; } .elementor-button.elementor-button-warning[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-warning:not([disabled]):hover { background-color: #b01b1b; opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-warning:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-danger { background-color: #d72b3f; color: #fff; } .elementor-button.elementor-button-danger[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-danger:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-danger:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .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; padding: 7px 21px; } .elementor-button.elementor-button-default:hover { background-color: #6d7882; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-default:active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-default:visited { color: #fff; } .elementor-button.elementor-button-go-pro { background-color: #D30C5C; } .elementor-button i { margin-left: 10px; } #adminmenu #toplevel_page_elementor div.wp-menu-image:before { content: "\e813"; font-family: eicons; font-size: 18px; margin-top: 1px; } #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] { font-weight: 700; } #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover { color: #f43883; } #adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled { height: auto; } #adminmenu #menu-posts-elementor_library .wp-menu-image:before { content: '\e8ff'; font-family: eicons; font-size: 18px; } body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] { color: #f22074; } .elementor-plugins-gopro { color: #D30C5C; text-shadow: 1px 1px 1px #eee; font-weight: bold; } .e-logo-wrapper { display: inline-block; padding: .75em; background-image: -webkit-linear-gradient(225deg, #EF295A, #434363); background-image: -o-linear-gradient(225deg, #EF295A, #434363); background-image: linear-gradient(-135deg, #EF295A, #434363); -webkit-border-radius: 7.5%; border-radius: 7.5%; line-height: 1; } .e-logo-wrapper i { color: #ffffff; font-size: 1em; } #elementor-switch-mode { margin: 15px 0; } #elementor-switch-mode-button, #elementor-editor-button { outline: none; cursor: pointer; } #elementor-switch-mode-button i, #elementor-editor-button i { margin-left: 3px; font-size: 125%; font-style: normal; } 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 #postdivrich { display: none !important; } body.elementor-editor-active .editor-block-list__layout, body.elementor-editor-active .block-editor-block-list__layout { display: none; } body.elementor-editor-inactive .elementor-switch-mode-on { display: none; } body.elementor-editor-inactive #elementor-editor { display: none; } body.elementor-editor-active .editor-block-list__layout { display: none; } body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; } body.elementor-editor-active #elementor-editor { margin-bottom: 50px; } body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor { display: none; } body .block-editor #elementor-switch-mode { margin: 0 15px; } body .block-editor #elementor-switch-mode .button { margin: 2px; height: 33px; font-size: 13px; line-height: 1; } body .block-editor #elementor-switch-mode .button i { padding-left: 5px; } .elementor-button { font-size: 13px; text-decoration: none; padding: 15px 40px; } #elementor-editor { height: 300px; width: 100%; -webkit-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; } #elementor-editor .elementor-loader-wrapper { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 300px; 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: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } #elementor-editor .elementor-loader { -webkit-border-radius: 7px; border-radius: 7px; padding: 40px; height: 150px; width: 150px; background-color: rgba(255, 255, 255, 0.9); -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); } #elementor-editor .elementor-loader-boxes { height: 100%; width: 100%; position: relative; } #elementor-editor .elementor-loader-box { position: absolute; background-color: #d5dadf; -webkit-animation: load 1.8s linear infinite; animation: load 1.8s linear infinite; } #elementor-editor .elementor-loader-box:nth-of-type(1) { width: 20%; height: 100%; left: 0; top: 0; } #elementor-editor .elementor-loader-box:not(:nth-of-type(1)) { right: 0; height: 20%; width: 60%; } #elementor-editor .elementor-loader-box:nth-of-type(2) { top: 0; -webkit-animation-delay: -0.45s; animation-delay: -0.45s; } #elementor-editor .elementor-loader-box:nth-of-type(3) { top: 40%; -webkit-animation-delay: -0.9s; animation-delay: -0.9s; } #elementor-editor .elementor-loader-box:nth-of-type(4) { bottom: 0; -webkit-animation-delay: -1.35s; animation-delay: -1.35s; } #elementor-editor .elementor-loading-title { color: #a4afb7; text-align: center; text-transform: uppercase; margin-top: 30px; letter-spacing: 7px; text-indent: 7px; font-size: 10px; width: 100%; } #elementor-go-to-edit-page-link { 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; border: 1px solid #DDD; background-color: #F7F7F7; text-decoration: none; position: relative; font-family: Sans-serif; } #elementor-go-to-edit-page-link:hover { background-color: #ffffff; } #elementor-go-to-edit-page-link:focus { -webkit-box-shadow: none; box-shadow: none; } #elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button { display: none; } #elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper { display: none; } .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; } .elementor-blank_state { padding: 5em 0; margin: auto; max-width: 520px; text-align: center; color: #6d7882; font-family: Roboto, sans-serif; } .elementor-blank_state i { font-size: 50px; color: #a4afb7; } .elementor-blank_state h2 { font-size: 32px; font-weight: 300; color: inherit; margin: 40px 0 10px; line-height: 1.2; } .elementor-blank_state p { font-size: 16px; font-weight: normal; color: #a4afb7; margin-bottom: 40px; } .elementor-blank_state .elementor-button { display: inline-block; } #available-widgets [class*="elementor-template"] .widget-title:before { content: "\e813"; font-family: eicons; font-size: 17px; } .elementor-settings-form-page { padding-top: 30px; } .elementor-settings-form-page:not(.elementor-active) { display: none; } ._elementor_settings_update_time { display: none; } #confirm_fa_migration_admin_modal .dialog-confirm-ok { color: #6d7882; } body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"] { width: 100%; } .e-getting-started { max-width: 900px; padding: 2.5em 0; margin: auto; text-align: center; } .e-getting-started__header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); } .e-getting-started__header .e-logo-wrapper { font-size: 10px; margin-left: 10px; } .e-getting-started__title { padding: 0 15px; font-weight: 600; text-transform: uppercase; 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; } .e-getting-started__skip { border-right: 1px solid #eee; font-size: 16px; color: inherit; } .e-getting-started__skip i { padding: 15px; } .e-getting-started__content { padding: 50px; } .e-getting-started__content h2 { font-size: 2em; margin-top: 0; } .e-getting-started__content--narrow { max-width: 500px; margin: auto; } .e-getting-started__video { margin: 40px 0 60px; } .e-getting-started__video iframe { -webkit-box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); } .e-getting-started__actions .button-primary { margin-left: 20px; } /*= Elementor Message ---------------------------------------*/ .notice.elementor-message { padding: 20px; border-right-color: #D30C5C; } .notice.elementor-message .elementor-message-inner { 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; } .notice.elementor-message .elementor-message-icon { font-size: 20px; } .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-message-action { text-align: center; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin-right: auto; } .notice.elementor-message .elementor-message-action .elementor-button { background-color: #D30C5C; 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-message-action .elementor-button i { margin-left: 5px; } .notice.elementor-message .elementor-message-action .elementor-button:hover { background-color: #a0124a; } .notice.elementor-message .elementor-message-action .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); } .notice.elementor-message .elementor-message-action .elementor-link { padding-top: 5px; } .notice.elementor-message .elementor-message-actions { margin-top: 10px; } .notice.elementor-message .elementor-message-actions .button.button-primary { margin-left: 5px; } .notice.elementor-message-announcement { border-color: #D30C5C; } .notice.elementor-message-announcement a { color: #D30C5C; } @media (min-width: 1200px) { .elementor-message-action { padding-left: 10px; } } @media (max-width: 600px) { .notice.elementor-message { padding: 20px; } .notice.elementor-message .elementor-message-inner { display: block; text-align: center; } .notice.elementor-message .elementor-message-inner .elementor-message-icon, .notice.elementor-message .elementor-message-inner .elementor-message-content, .notice.elementor-message .elementor-message-inner .elementor-message-action { display: block; } .notice.elementor-message .elementor-message-inner .elementor-message-action { text-align: center; } .notice.elementor-message .elementor-message-inner .elementor-message-icon { width: auto; } .notice.elementor-message .elementor-message-inner .elementor-message-content { padding: 10px 0; } } /*= Elementor Admin Alert ---------------------------------------*/ .elementor-admin-alert { padding: 15px; border-left: 5px solid transparent; position: relative; font-size: 12px; line-height: 1.5; text-align: right; } .elementor-admin-alert a { color: inherit; } .elementor-admin-alert.elementor-alert-info { color: #31708f; background-color: #d9edf7; border-color: #bcdff1; } .elementor-admin-alert.elementor-alert-success { color: #3c763d; background-color: #dff0d8; border-color: #cae6be; } .elementor-admin-alert.elementor-alert-warning { color: #8a6d3b; background-color: #fcf8e3; border-color: #f9f0c3; } .elementor-admin-alert.elementor-alert-danger { color: #a94442; background-color: #f2dede; border-color: #e8c4c4; } /*= Elementor System Info ---------------------------------------*/ #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-section .widefat { white-space: pre; } #elementor-system-info .elementor-system-info-section .elementor-log-entries { white-space: pre-wrap; } #elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child { width: 300px; } #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-report-field, #elementor-system-info .elementor-system-info-field-recommendation { 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; } #elementor-system-info .elementor-warning td:first-child { border-right: 3px solid #fcb92c; } #elementor-system-info a.box-title-tool { font-size: 80%; margin-right: 15px; color: #818a91; } #elementor-system-info a.box-title-tool:hover { text-decoration: underline; } #elementor-system-info #elementor-usage-recalc { font-size: 12px; color: #ffffff; background-color: #a4afb7; padding: 4px 18px 5px 18px; -webkit-border-radius: 3px; border-radius: 3px; } @-webkit-keyframes elementor-rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } @keyframes elementor-rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -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-header { padding: 18px 15px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 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; overflow: hidden; } #elementor-deactivate-feedback-modal .dialog-submit { background-color: #D30C5C; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; line-height: 1; padding: 12px 20px; font-size: 13px; width: 180px; height: 38px; } #elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before { display: inline-block; content: '\f463'; font: 18px dashicons; -webkit-animation: elementor-rotation 2s infinite linear; animation: elementor-rotation 2s infinite linear; } #elementor-deactivate-feedback-modal .dialog-skip { font-size: 12px; color: #a4afb7; background: none; float: left; width: auto; } #elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .elementor-feedback-text { color: #b01b1b; padding: 0; } #elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .dialog-submit { display: none; } #elementor-deactivate-feedback-dialog-header i { color: #D30C5C; font-size: 19px; } #elementor-deactivate-feedback-dialog-header-title { font-size: 15px; text-transform: uppercase; font-weight: bold; padding-right: 5px; } #elementor-deactivate-feedback-dialog-form-caption { font-weight: bold; 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: #FFFFFF; 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; line-height: 1.6; display: none; } #tab-replace_url.elementor-active ~ p.submit, #tab-fontawesome4_migration.elementor-active ~ p.submit { display: none; } #elementor_rollback > div, #elementor_rollback_pro > div, #elementor_replace_url > div { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor_rollback > div input, #elementor_rollback > div select, #elementor_rollback_pro > div input, #elementor_rollback_pro > div select, #elementor_replace_url > div input, #elementor_replace_url > div select { margin-left: 6px; } #e-dashboard-overview .dashicons { vertical-align: middle; font-size: 17px; } #e-dashboard-overview .e-overview__header { display: table; width: 100%; -webkit-box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05); box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05); margin: 0 -12px 8px; padding: 0 12px 12px; } #e-dashboard-overview .e-overview__logo, #e-dashboard-overview .e-overview__versions, #e-dashboard-overview .e-overview__create { display: table-cell; vertical-align: middle; } #e-dashboard-overview .e-overview__logo { width: 30px; } #e-dashboard-overview .e-overview__versions { padding: 0 10px; font-size: 0.9em; line-height: 1.5; } #e-dashboard-overview .e-overview__version { display: block; } #e-dashboard-overview .e-overview__create { text-align: left; } #e-dashboard-overview .e-overview__post { margin-top: 10px; } #e-dashboard-overview .e-overview__post-link { display: inline-block; } #e-dashboard-overview .e-overview__badge { background: #39b54a; color: white; font-size: 0.75em; padding: 3px 6px; -webkit-border-radius: 3px; border-radius: 3px; text-transform: uppercase; } #e-dashboard-overview .e-overview__post-description { margin: 0 0 1.5em; } #e-dashboard-overview .e-overview__recently-edited li { color: #72777c; } #e-dashboard-overview .e-overview__feed { font-size: 14px; font-weight: 500; } #e-dashboard-overview .e-overview__feed .e-overview__post-link { padding-bottom: 5px; } #e-dashboard-overview .e-overview__recently-edited .e-overview__heading, #e-dashboard-overview .e-overview__feed .e-overview__heading { font-weight: 700; border-bottom: 1px solid #eee; margin: 0 -12px; padding: 6px 12px; } #e-dashboard-overview .e-overview__footer { margin: 0 -12px -12px; padding: 12px; border-top: 1px solid #eee; } #e-dashboard-overview .e-overview__footer ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; list-style: none; margin: 0; padding: 0; } #e-dashboard-overview .e-overview__footer ul li { padding: 0 10px; margin: 0; border-right: 1px solid #ddd; } #e-dashboard-overview .e-overview__footer ul li:first-child { padding-right: 0; border: none; } #e-dashboard-overview .e-overview__go-pro a { color: #D30C5C; font-weight: 500; } .post-type-elementor_library #elementor-template-library-tabs-wrapper { padding-top: 2em; margin-bottom: 2em; } .post-type-elementor_library th#taxonomy-elementor_library_category { width: 110px; } #elementor-new-template-modal .dialog-message { max-height: 70vh; } #elementor-new-template-dialog-content { 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; height: 100%; text-align: right; color: #6d7882; } @media (max-width: 1439px) { #elementor-new-template-dialog-content { padding: 0 50px; } } @media (min-width: 1440px) { #elementor-new-template-dialog-content { padding: 0 120px; } } #elementor-new-template__description { width: 35%; max-width: 300px; padding-left: 100px; } #elementor-new-template__description__title { font-size: 30px; color: #556068; } #elementor-new-template__description__title span { font-weight: bold; } #elementor-new-template__description__content { font-size: 16px; padding: 30px 0; } #elementor-new-template__take_a_tour { 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; font-size: 15px; } #elementor-new-template__take_a_tour i { color: #f2295b; font-size: 30px; } #elementor-new-template__take_a_tour a { color: #6d7882; padding-right: 10px; text-decoration: none; font-weight: 500; } #elementor-new-template__form { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; max-width: 440px; padding: 55px; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); } #elementor-new-template__form__title { font-size: 23px; color: #556068; } #elementor-new-template__form__template-type.elementor-form-field__select { max-width: initial; } #elementor-new-template__form .elementor-form-field__label { display: block; margin: 25px 0 7px; font-size: 14px; line-height: 1; } #elementor-new-template__form .elementor-form-field input, #elementor-new-template__form .elementor-form-field select { width: 100%; height: 50px; padding: 10px; font-size: 14px; -webkit-box-shadow: none; box-shadow: none; -webkit-border-radius: 3px; border-radius: 3px; background: none; color: #495157; border: 1px solid; outline: none; } #elementor-new-template__form .elementor-form-field input:not(:focus), #elementor-new-template__form .elementor-form-field select:not(:focus) { border-color: #d5dadf; } #elementor-new-template__form .elementor-form-field input:focus, #elementor-new-template__form .elementor-form-field select:focus { border-color: #a4afb7; } #elementor-new-template__form .elementor-form-field__select { appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; } #elementor-new-template__form .elementor-form-field__select__wrapper { position: relative; } #elementor-new-template__form .elementor-form-field__select__wrapper:after { font-family: eicons; content: '\e8ad'; position: absolute; top: 50%; left: 10px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-new-template__form__submit { width: 100%; height: 50px; margin-top: 25px; } @media (max-width: 1024px) { #elementor-new-template__description { max-width: 250px; padding-left: 30px; } } @media (max-width: 767px) { #elementor-new-template__description { display: none; } } #elementor-role-manager { max-width: 500px; margin-top: 50px; } #elementor-role-manager h3 { color: #6d7882; font-weight: normal; font-size: 22px; } #elementor-role-manager .elementor-settings-form-page { padding: 0; } #elementor-role-manager .elementor-role-row { background: #ffffff; color: #6d7882; margin-bottom: 2px; } #elementor-role-manager .elementor-role-row .elementor-role-label { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding: 15px 20px; font-weight: 500; cursor: pointer; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name { padding-left: 20px; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle { text-align: left; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator { color: #a4afb7; } #elementor-role-manager .elementor-role-row .elementor-role-controls { background-color: #f7f7f7; padding: 20px 20px 5px; } #elementor-role-manager .elementor-role-row .elementor-role-controls > div { margin-bottom: 15px; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc { font-weight: 500; font-style: italic; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link { text-align: left; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area { color: #c2cbd2; cursor: pointer; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again, #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item > i { color: #6d7882; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close { border: none; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again { text-transform: uppercase; font-weight: bold; font-size: 12px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } #elementor-beta-tester-modal .dialog-lightbox-widget-content { max-width: 500px; height: initial; } #elementor-beta-tester-modal .dialog-lightbox-message { padding: 40px; height: 300px; background-color: #fff; } #elementor-beta-tester-form__caption { font-weight: bold; font-size: 20px; color: #495157; } #elementor-beta-tester-form__description { font-size: 15px; color: #6d7882; margin-top: 10px; } #elementor-beta-tester-form__input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-top: 30px; } #elementor-beta-tester-form__input-wrapper .elementor-button { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } #elementor-beta-tester-form__email { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; border: #d5dadf 1px solid; border-left: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; margin: 0; padding: 10px; height: 50px; } #elementor-beta-tester-form__terms { margin-top: 40px; font-size: 11px; color: #a4afb7; } /*# sourceMappingURL=admin-rtl.css.map */assets/css/common-rtl.min.css000066600000026232152142641160012234 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-left:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}#elementor-finder__modal{background:none}#elementor-finder__modal .dialog-widget-content{width:650px;max-width:98%;top:18vh;left:-webkit-calc(50% - 325px);left:calc(50% - 325px)}#elementor-finder__modal .dialog-message{height:auto;min-height:0;padding:0;text-align:right}#elementor-finder__search{padding:14px 15px 14px 21px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-shadow:0 -3px 15px 6px rgba(0,0,0,.03);box-shadow:0 -3px 15px 6px rgba(0,0,0,.03)}#elementor-finder__search i{font-size:16px;color:#a4afb7;font-weight:700;margin-left:15px}#elementor-finder__search__input{border:none;background:none;outline:none;padding:0;margin:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;font-size:14px;color:#495157;-webkit-box-shadow:none;box-shadow:none}#elementor-finder__search__input::-webkit-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input:-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__results{max-height:50vh;overflow:auto}#elementor-finder__no-results{display:none;padding:20px;color:#a4afb7}.elementor-finder__results__category{position:relative}.elementor-finder__results__category__title{padding:5px 25px;color:#6d7882;background-color:#e6e9ec;font-size:9px;text-transform:uppercase}.elementor-finder__results__category--dynamic .elementor-finder__results__category__items{min-height:26px}.elementor-finder__results__category .eicon-loading{display:none;position:absolute;left:10px;top:30px;color:#71d7f7;font-size:14px}.elementor-finder__results__item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-finder__results__item a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active{background-color:#71d7f7;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active *{color:#fff}.elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions{display:none}.elementor-finder__results__item__link{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;height:35px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-finder__results__item__icon{width:60px;text-align:center;color:#6d7882;font-size:17px}.elementor-finder__results__item__title{color:#6d7882;font-size:13px}.elementor-finder__results__item__description{margin-right:5px;color:#a4afb7;font-style:italic}.elementor-finder__results__item__action,.elementor-finder__results__item__actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-finder__results__item__action{-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;height:100%;width:35px}.elementor-finder__results__item__action:hover{background-color:rgba(0,0,0,.07)}assets/css/editor-dark-mode.min.css000066600000057533152142641160013304 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ body{color:#e0e1e3}body .pcr-app{background-color:#4c4f56;-webkit-box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.5),0 0 1em 0 rgba(0,0,0,.05);box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.5),0 0 1em 0 rgba(0,0,0,.05)}body .pcr-app .pcr-swatches>button:after{-webkit-box-shadow:0 0 3px rgba(0,0,0,.3);box-shadow:0 0 3px rgba(0,0,0,.3)}body .pcr-app .pcr-clear{color:#e0e1e3;background-color:#64666a}body .pcr-app .pcr-interaction .pcr-result{color:#e0e1e3;border-color:#64666a}body .pcr-app .pcr-interaction .pcr-result:focus{border-color:#7d7e82}body .pcr-swatch.pcr-active:after{-webkit-box-shadow:0 0 0 1px #71d7f7,inset 0 0 0 1px #4c4f56;box-shadow:0 0 0 1px #71d7f7,inset 0 0 0 1px #4c4f56}body .pcr-swatch.pcr-active~.elementor-color-picker__add-swatch{background-color:#64666a}body .pcr-swatch.pcr-active~.elementor-color-picker__add-swatch i{color:#e0e1e3}#elementor-loading{background-color:#34383c}.elementor-loader,.elementor-safe-mode-toast{background-color:#4c4f56}.elementor-safe-mode-toast .elementor-toast-content,.elementor-safe-mode-toast header h2{color:#e0e1e3}.elementor-input-style,input,select,textarea{color:#e0e1e3;background-color:#34383c}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#64666a}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#7d7e82}.elementor-input-style[disabled],input[disabled],select[disabled],textarea[disabled]{background-color:#4c4f56}select{background-color:#34383c}.elementor-button.elementor-button-default{background-color:#64666a}.elementor-button.elementor-button-default:hover{background-color:#4c4f56}.elementor-button.elementor-button-success[disabled]{background-color:#64666a}.elementor-button.elementor-button-danger{background-color:#f84343}#elementor-mode-switcher{background-color:#34383c}#elementor-mode-switcher:hover{background-color:#71d7f7}.elementor-control-dynamic-switcher{background-color:#34383c;border-color:#64666a}.elementor-tags-list{background-color:#4c4f56;border-color:#64666a}.elementor-tags-list__group-title{color:#b4b5b7}.elementor-tags-list__item:hover{background-color:#404349}.elementor-tag-settings-popup{background-color:#34383c;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.8);box-shadow:1px 1px 10px rgba(0,0,0,.8)}.elementor-tag-settings-popup:before{border-bottom-color:#404349}.elementor-panel{background-color:#34383c}.elementor-panel a{color:#71d7f7}.elementor-panel #elementor-panel-header{background-color:#26292c}.elementor-panel .elementor-panel-navigation{background-color:#404349}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#34383c),to(#4c4f56));background-image:-webkit-linear-gradient(top,#34383c,#4c4f56);background-image:-o-linear-gradient(top,#34383c,#4c4f56);background-image:linear-gradient(180deg,#34383c,#4c4f56);border-bottom-color:#71d7f7}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-input{background-color:#4c4f56;color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:#404349;color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-input:focus+i{color:#e0e1e3}.elementor-panel .elementor-element{background-color:#404349}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#e0e1e3}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#71d7f7}.elementor-panel .elementor-element>.eicon-lock{color:#64666a}.elementor-panel .widget-inside{background-color:inherit}.elementor-panel #elementor-panel-footer{background-color:#26292c}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{background-color:#34383c;border-top:1px solid #4c4f56}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#404349}.elementor-panel .elementor-panel-footer-sub-menu-item.active,.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:#4c4f56}.elementor-panel #elementor-panel-footer-saver-options{border-color:#26292c}.elementor-panel .elementor-controls-popover{background-color:#4c4f56;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.5);box-shadow:0 2px 15px rgba(0,0,0,.5)}.elementor-panel .elementor-controls-popover:before{border-bottom-color:#4c4f56}.elementor-panel .elementor-controls-popover .elementor-control-responsive-switchers__holder,.elementor-panel .elementor-panel-alert,.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{background-color:#4c4f56}.elementor-panel #elementor-panel__editor__help__link{color:#b4b5b7}.elementor-panel #elementor-panel__editor__help__link:hover{color:#e0e1e3}.elementor-panel #elementor-panel-global-widget>*{background-color:#404349}.elementor-panel #elementor-global-widget-locked-unlink{border-top-color:#34383c}.elementor-panel .elementor-panel-scheme-color-system-items{background-color:#34383c;border-color:#64666a}.elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard){background-color:#404349}.elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard):hover{background-color:#4c4f56}.elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard) a{color:#e0e1e3}.elementor-panel .elementor-panel-menu-item-icon{color:#b4b5b7}.elementor-control{background-color:#404349}.elementor-control.elementor-control-separator-after:after,.elementor-control.elementor-control-separator-before:before{background-color:#34383c}.elementor-control.elementor-control-type-divider .elementor-control-content{background-color:#404349;border-color:#34383c}.elementor-control-responsive-switchers__holder{background-color:#404349}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{-webkit-box-shadow:0 0 3px rgba(0,0,0,.5);box-shadow:0 0 3px rgba(0,0,0,.5)}a.elementor-responsive-switcher{color:#e0e1e3}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{background-color:#34383c;border-color:#64666a}.elementor-control-type-popover_toggle .elementor-control-responsive-switchers__holder{background-color:#4c4f56}.elementor-control-media-upload-button{background-color:#34383c}.elementor-control-media__remove{background-color:#64666a;color:#b4b5b7}.elementor-control-media .elementor-control-input-wrapper{border-color:#64666a}.elementor-control-media .eicon-plus-circle{color:#e0e1e3}.elementor-control-media .elementor-control-media__tool{background-color:#7d7e82}.elementor-control-media-area,.pcr-app[data-theme=monolith] .pcr-color-palette,.pcr-button{background-image:-webkit-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c),-webkit-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c);background-image:-o-linear-gradient(45deg,#34383c 25%,transparent 25%,transparent 75%,#34383c 75%,#34383c),-o-linear-gradient(45deg,#34383c 25%,transparent 25%,transparent 75%,#34383c 75%,#34383c);background-image:linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c),linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c);background-color:#64666a}.elementor-control-type-icons .elementor-control-media__preview i{color:#b4b5b7}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#f84343}.elementor-control-type-gallery .elementor-control-gallery-add{background-color:#34383c}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#4c4f56}.elementor-control-type-gallery .elementor-control-gallery-status,.elementor-control-type-gallery .elementor-control-media__content{border-color:#64666a}.elementor-control-type-url .elementor-control-url-more{background-color:#34383c;border-color:#64666a}.elementor-control-type-url .elementor-control-url-option-input{border-color:#64666a}.elementor-control-type-url .elementor-control-url-option-input:checked{background-color:#64666a}.elementor-control-type-url .elementor-input:focus~div{border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-editor-container{border-color:#64666a}.elementor-control-type-wysiwyg .mce-ico,.elementor-control-type-wysiwyg .mce-menubtn button,.elementor-control-type-wysiwyg .wp-switch-editor{color:#e0e1e3}.elementor-control-type-wysiwyg .switch-html,.elementor-control-type-wysiwyg .wp-editor-tabs{border-color:#7d7e82}.elementor-control-type-wysiwyg #insert-media-button,.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#64666a}.elementor-control-type-wysiwyg #insert-media-button{color:#e0e1e3;border-color:#7d7e82}.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:active,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:focus,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:hover,.elementor-control-type-wysiwyg .qt-dfw.active,.elementor-control-type-wysiwyg .qt-dfw:focus,.elementor-control-type-wysiwyg .qt-dfw:hover{background-color:#404349;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.08),0 1px 0 rgba(0,0,0,.08);box-shadow:inset 0 1px 0 rgba(0,0,0,.08),0 1px 0 rgba(0,0,0,.08)}.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-listbox{background-color:#404349;border-color:#7d7e82;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-wysiwyg .quicktags-toolbar{border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-core-ui .button,.elementor-control-type-wysiwyg .wp-core-ui .button-secondary{background-color:#4c4f56;color:#e0e1e3;border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-core-ui .button-secondary:hover,.elementor-control-type-wysiwyg .wp-core-ui .button:hover{background-color:#404349;border-color:#7d7e82}.elementor-choices .elementor-choices-label,.elementor-choices .elementor-choices-label:last-child{background-color:#34383c;border-color:#64666a}.elementor-choices input:checked+.elementor-choices-label{background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-repeater .elementor-repeater-row-tools{background-color:#64666a;color:#e0e1e3}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#7d7e82}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#4c4f56}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable):hover{background-color:#52555d}.elementor-control-type-repeater .elementor-repeater-row-controls{border-color:#64666a}.elementor-control-type-tab{background-color:#34383c;border-color:#64666a}.elementor-control-type-tab:first-child{border-color:#64666a}.elementor-control-type-tab.elementor-tab-active{background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{background-color:#e0e1e3}.elementor-slider{background-color:#64666a}.elementor-slider .noUi-handle{background-color:#e0e1e3}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{border-color:#64666a}.elementor-control-type-dimensions li input:focus{border-color:#7d7e82}.elementor-control-type-dimensions li:first-child input{border-color:#64666a}.elementor-control-type-dimensions li:first-child input:focus{border-color:#7d7e82}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#34383c;color:#e0e1e3}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-switcher .elementor-switch-label{background-color:#34383c}.elementor-control-type-switcher .elementor-switch-label:before{text-shadow:0 1px rgba(0,0,0,.8)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background-color:#71d7f7}.elementor-control-type-switcher .elementor-switch-handle{background-color:#e0e1e3}.pickr{background-color:#34383c;border-color:#64666a}.elementor-color-picker__dropping-area{border:1px dashed #7d7e82;color:#b4b5b7}.elementor-color-picker__dropping-area.elementor-active{border-color:#b4b5b7}.elementor-color-picker__dropping-area.elementor-active i{color:#f84343}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#34383c}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#64666a}.elementor-control-type-structure .elementor-control-structure-reset{border-top-color:#34383c}.elementor-panel-heading{border-bottom-color:#34383c}.elementor-panel-heading-title,.elementor-panel-heading-toggle{color:#e0e1e3}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{background-color:#34383c;color:#e0e1e3;border-color:#64666a}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#7d7e82}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#e0e1e3}.select2-container--default .select2-selection--single{background-color:#34383c;border-color:#4c4f56}.select2-container--default .select2-selection--multiple{background-color:#34383c}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#4c4f56;border-color:#4c4f56}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#4c4f56;color:#e0e1e3}.select2-results__option[aria-selected=true]{color:#e0e1e3}.select2-dropdown{background-color:#34383c;border-color:#7d7e82}#elementor-element--promotion__dialog{background-color:#404349;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.5);box-shadow:0 2px 15px rgba(0,0,0,.5)}#elementor-element--promotion__dialog:after{border-right-color:#404349}#elementor-element--promotion__dialog .dialog-header{color:#e0e1e3;border-bottom-color:#64666a}#elementor-element--promotion__dialog .dialog-header .eicon-close,#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{color:#b4b5b7}body.rtl #elementor-element--promotion__dialog:after{border-left-color:#475158}.dialog-type-lightbox{background-color:rgba(0,0,0,.65)}.dialog-type-lightbox .dialog-header{color:#e0e1e3}.dialog-type-lightbox .dialog-widget-content{background-color:#34383c}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{color:#e0e1e3}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#f84343}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#4c4f56}.dialog-type-lightbox .dialog-button:first-child,.dialog-type-lightbox .dialog-buttons-wrapper{border-color:#4c4f56}.dialog-type-lightbox .elementor-publish__tab__title{color:#e0e1e3}.dialog-type-lightbox .elementor-popup__display-settings_controls_group,.dialog-type-lightbox .elementor-publish__tab.elementor-active{background-color:#404349}.dialog-type-lightbox .elementor-popup__display-settings_controls_group__icon{border-color:#34383c}.elementor-templates-modal .dialog-header{background-color:#26292c;color:#e0e1e3;-webkit-box-shadow:0 0 8px rgba(0,0,0,.3);box-shadow:0 0 8px rgba(0,0,0,.3)}.elementor-templates-modal__header__close--normal{border-color:#7d7e82}.elementor-templates-modal__sidebar{background-color:transparent}.elementor-templates-modal__content{-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.08);box-shadow:inset 0 0 13px rgba(0,0,0,.08)}.elementor-templates-modal .dialog-buttons-wrapper{background-color:#34383c}#elementor-template-library-header-menu{color:#e0e1e3}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#26292c),to(#34383c));background-image:-webkit-linear-gradient(top,#26292c,#34383c);background-image:-o-linear-gradient(top,#26292c,#34383c);background-image:linear-gradient(180deg,#26292c,#34383c);border-color:#71d7f7}#elementor-template-library-filter{border-color:#34383c}#elementor-template-library-filter-text{background-color:transparent}#elementor-template-library-filter-text:focus+i{color:#e0e1e3}#elementor-template-library-filter-my-favorites:hover,label.elementor-template-library-order-label:hover{color:#b4b5b7}#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#7d7e82}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label{color:#7d7e82}#elementor-template-library-header-preview-back{border-color:#4c4f56}.elementor-template-library-template-remote{background-color:#404349}.elementor-template-library-template-remote .elementor-template-library-template-name{color:#e0e1e3}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer{background-color:#404349}.elementor-template-library-template-local{background-color:#4c4f56}.elementor-template-library-template-local:hover{background-color:#64666a}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover),.elementor-template-library-template-local .elementor-template-library-template-controls>div a{color:#b4b5b7}.elementor-template-library-template-local .elementor-template-library-template-more{background-color:#4c4f56}.elementor-template-library-template-local .elementor-template-library-template-more:before{border-bottom-color:#4c4f56}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#e0e1e3}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#f84343}#elementor-template-library-save-template-name{background-color:#26292c}#elementor-template-library-import-form{background-color:transparent}#elementor-template-library-import-form:hover{background-color:rgba(0,0,0,.3)}#elementor-publish #elementor-theme-builder-conditions input,#elementor-publish #elementor-theme-builder-conditions select{background-color:#4c4f56;color:#e0e1e3}#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude],#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include]{background-color:#64666a}#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude] option,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude] select,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include] option,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include] select{background-color:#404349;color:#e0e1e3}#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-container--default .select2-selection--single,#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-dropdown{background-color:#4c4f56}#elementor-icons-manager__search input{background-color:#404349;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-icons-manager__search input:focus{background-color:#4c4f56}.elementor-icons-manager__tab__item{background-color:#404349}.elementor-icons-manager__tab-link,.elementor-icons-manager__tab__item__icon,.elementor-icons-manager__tab__item__name{color:#e0e1e3}.elementor-context-menu,.elementor-icons-manager__tab-link.elementor-active{background-color:#404349}.elementor-context-menu{border-color:#34383c}.elementor-context-menu .elementor-context-menu-list__group:not(:last-child){border-color:#34383c}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#4c4f56}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#f84343}#elementor-navigator,#elementor-navigator__footer,#elementor-navigator__header,#elementor-navigator__inner{background-color:#34383c}#elementor-navigator__footer,#elementor-navigator__header{border-color:#4c4f56}#elementor-navigator__header #elementor-navigator__close,#elementor-navigator__header #elementor-navigator__toggle-all{color:#b4b5b7}.elementor-navigator__element-section{background-color:transparent}.elementor-navigator__item{background-color:#404349;border-color:#34383c}.elementor-navigator__item:hover{background-color:#4c4f57}.elementor-navigator__element__indicator{color:#e0e1e3;background-color:#4c4f56}.elementor-navigator__element__indicator:hover{color:#b4b5b7}.elementor-navigator__element__indicator:not(:first-child){border-color:#34383c}.elementor-navigator__element-column{background-color:#474a51}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#4c4f57}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__elements .elementor-empty-view{border-color:#34383c}.elementor-navigator__elements .ui-sortable-helper{background-color:#34383c;border-color:#34383c}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#34383c}#elementor-panel-history:not(.elementor-empty),.elementor-panel .elementor-panel-box,.elementor-panel .elementor-panel-scheme-buttons{background-color:#404349}.elementor-history-item,.elementor-revision-item__wrapper{background-color:#4c4f56;border-color:#4c4f56}.elementor-history-item:hover,.elementor-revision-item__wrapper:hover{background-color:#64666a}#elementor-finder__search__input{color:#e0e1e3}.elementor-finder__results__category__title{background-color:#26292c;color:#e0e1e3}.elementor-finder__results__item__title{color:#e0e1e3}.elementor-finder__results__item.elementor-active{background-color:#404349}.elementor-hotkeys__list{background-color:#4c4f56}.elementor-hotkeys__item{border-color:#64666a}.elementor-hotkeys__item--shortcut span{background-color:#64666a}#wp-link,.media-modal{color:#6d7882}#wp-link .elementor-input-style,#wp-link input,#wp-link select,#wp-link textarea{color:#6d7882;background-color:transparent}#wp-link .elementor-input-style:not(:focus),#wp-link input:not(:focus),#wp-link select:not(:focus),#wp-link textarea:not(:focus){border-color:#d5dadf}#wp-link .elementor-input-style:focus,#wp-link input:focus,#wp-link select:focus,#wp-link textarea:focus{border-color:#a4afb7}.ui-autocomplete{color:#6d7882}.elementor-color-picker__swatch-tool{background-color:#e0e1e3}.elementor-color-picker__swatch-tool i{color:#64666a}.elementor-nerd-box-icon{-webkit-filter:contrast(.8);filter:contrast(.8)}assets/css/admin-rtl.min.css000066600000067521152142641160012042 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;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:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success: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{-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-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;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-warning: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-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger: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-danger: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-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.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.elementor-button-go-pro{background-color:#d30c5c}.elementor-button i{margin-left:10px}#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e813";font-family:eicons;font-size:18px;margin-top:1px}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{font-weight:700}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover{color:#f43883}#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}#adminmenu #menu-posts-elementor_library .wp-menu-image:before{content:"\e8ff";font-family:eicons;font-size:18px}body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#f22074}.elementor-plugins-gopro{color:#d30c5c;text-shadow:1px 1px 1px #eee;font-weight:700}.e-logo-wrapper{display:inline-block;padding:.75em;background-image:-webkit-linear-gradient(225deg,#ef295a,#434363);background-image:-o-linear-gradient(225deg,#ef295a,#434363);background-image:linear-gradient(-135deg,#ef295a,#434363);-webkit-border-radius:7.5%;border-radius:7.5%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}#elementor-switch-mode{margin:15px 0}#elementor-editor-button,#elementor-switch-mode-button{outline:none;cursor:pointer}#elementor-editor-button i,#elementor-switch-mode-button i{margin-left:3px;font-size:125%;font-style:normal}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 #postdivrich{display:none!important}body.elementor-editor-active .block-editor-block-list__layout,body.elementor-editor-active .editor-block-list__layout,body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor{-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto}body.elementor-editor-active #elementor-editor{margin-bottom:50px}body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor{display:none}body .block-editor #elementor-switch-mode{margin:0 15px}body .block-editor #elementor-switch-mode .button{margin:2px;height:33px;font-size:13px;line-height:1}body .block-editor #elementor-switch-mode .button i{padding-left:5px}.elementor-button{font-size:13px;text-decoration:none;padding:15px 40px}#elementor-editor{height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor .elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;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:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-editor .elementor-loader{-webkit-border-radius:7px;border-radius:7px;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}#elementor-editor .elementor-loader-boxes{height:100%;width:100%;position:relative}#elementor-editor .elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 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}#elementor-editor .elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}#elementor-go-to-edit-page-link{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;border:1px solid #ddd;background-color:#f7f7f7;text-decoration:none;position:relative;font-family:Sans-serif}#elementor-go-to-edit-page-link:hover{background-color:#fff}#elementor-go-to-edit-page-link:focus{-webkit-box-shadow:none;box-shadow:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button{display:none}#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.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 linear infinite;animation:rotation 1s linear infinite}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}.elementor-blank_state{padding:5em 0;margin:auto;max-width:520px;text-align:center;color:#6d7882;font-family:Roboto,sans-serif}.elementor-blank_state i{font-size:50px;color:#a4afb7}.elementor-blank_state h2{font-size:32px;font-weight:300;color:inherit;margin:40px 0 10px;line-height:1.2}.elementor-blank_state p{font-size:16px;font-weight:400;color:#a4afb7;margin-bottom:40px}.elementor-blank_state .elementor-button{display:inline-block}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e813";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}.elementor-settings-form-page:not(.elementor-active){display:none}._elementor_settings_update_time{display:none}#confirm_fa_migration_admin_modal .dialog-confirm-ok{color:#6d7882}body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"]{width:100%}.e-getting-started{max-width:900px;padding:2.5em 0;margin:auto;text-align:center}.e-getting-started__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.e-getting-started__header .e-logo-wrapper{font-size:10px;margin-left:10px}.e-getting-started__title{padding:0 15px;font-weight:600;text-transform:uppercase;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}.e-getting-started__skip{border-right:1px solid #eee;font-size:16px;color:inherit}.e-getting-started__skip i{padding:15px}.e-getting-started__content{padding:50px}.e-getting-started__content h2{font-size:2em;margin-top:0}.e-getting-started__content--narrow{max-width:500px;margin:auto}.e-getting-started__video{margin:40px 0 60px}.e-getting-started__video iframe{-webkit-box-shadow:10px 10px 20px rgba(0,0,0,.15);box-shadow:10px 10px 20px rgba(0,0,0,.15)}.e-getting-started__actions .button-primary{margin-left:20px}.notice.elementor-message{padding:20px;border-right-color:#d30c5c}.notice.elementor-message .elementor-message-inner{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}.notice.elementor-message .elementor-message-icon{font-size:20px}.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-message-action{text-align:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-right:auto}.notice.elementor-message .elementor-message-action .elementor-button{background-color:#d30c5c;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-message-action .elementor-button i{margin-left:5px}.notice.elementor-message .elementor-message-action .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-message-action .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)}.notice.elementor-message .elementor-message-action .elementor-link{padding-top:5px}.notice.elementor-message .elementor-message-actions{margin-top:10px}.notice.elementor-message .elementor-message-actions .button.button-primary{margin-left:5px}.notice.elementor-message-announcement{border-color:#d30c5c}.notice.elementor-message-announcement a{color:#d30c5c}@media (min-width:1200px){.elementor-message-action{padding-left:10px}}@media (max-width:600px){.notice.elementor-message{padding:20px}.notice.elementor-message .elementor-message-inner{display:block;text-align:center}.notice.elementor-message .elementor-message-inner .elementor-message-action,.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-action{text-align:center}.notice.elementor-message .elementor-message-inner .elementor-message-icon{width:auto}.notice.elementor-message .elementor-message-inner .elementor-message-content{padding:10px 0}}.elementor-admin-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:right}.elementor-admin-alert a{color:inherit}.elementor-admin-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-admin-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-admin-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-admin-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}#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-section .widefat{white-space:pre}#elementor-system-info .elementor-system-info-section .elementor-log-entries{white-space:pre-wrap}#elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child{width:300px}#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}#elementor-system-info .elementor-warning td:first-child{border-right:3px solid #fcb92c}#elementor-system-info a.box-title-tool{font-size:80%;margin-right:15px;color:#818a91}#elementor-system-info a.box-title-tool:hover{text-decoration:underline}#elementor-system-info #elementor-usage-recalc{font-size:12px;color:#fff;background-color:#a4afb7;padding:4px 18px 5px;-webkit-border-radius:3px;border-radius:3px}@-webkit-keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes elementor-rotation{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-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;overflow:hidden}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#d30c5c;-webkit-border-radius:3px;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:elementor-rotation 2s linear infinite;animation:elementor-rotation 2s linear infinite}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:left;width:auto}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .elementor-feedback-text{color:#b01b1b;padding:0}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .dialog-submit{display:none}#elementor-deactivate-feedback-dialog-header i{color:#d30c5c;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;line-height:1.6;display:none}#tab-fontawesome4_migration.elementor-active~p.submit,#tab-replace_url.elementor-active~p.submit{display:none}#elementor_replace_url>div,#elementor_rollback>div,#elementor_rollback_pro>div{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor_replace_url>div input,#elementor_replace_url>div select,#elementor_rollback>div input,#elementor_rollback>div select,#elementor_rollback_pro>div input,#elementor_rollback_pro>div select{margin-left:6px}#e-dashboard-overview .dashicons{vertical-align:middle;font-size:17px}#e-dashboard-overview .e-overview__header{display:table;width:100%;-webkit-box-shadow:0 5px 8px rgba(0,0,0,.05);box-shadow:0 5px 8px rgba(0,0,0,.05);margin:0 -12px 8px;padding:0 12px 12px}#e-dashboard-overview .e-overview__create,#e-dashboard-overview .e-overview__logo,#e-dashboard-overview .e-overview__versions{display:table-cell;vertical-align:middle}#e-dashboard-overview .e-overview__logo{width:30px}#e-dashboard-overview .e-overview__versions{padding:0 10px;font-size:.9em;line-height:1.5}#e-dashboard-overview .e-overview__version{display:block}#e-dashboard-overview .e-overview__create{text-align:left}#e-dashboard-overview .e-overview__post{margin-top:10px}#e-dashboard-overview .e-overview__post-link{display:inline-block}#e-dashboard-overview .e-overview__badge{background:#39b54a;color:#fff;font-size:.75em;padding:3px 6px;-webkit-border-radius:3px;border-radius:3px;text-transform:uppercase}#e-dashboard-overview .e-overview__post-description{margin:0 0 1.5em}#e-dashboard-overview .e-overview__recently-edited li{color:#72777c}#e-dashboard-overview .e-overview__feed{font-size:14px;font-weight:500}#e-dashboard-overview .e-overview__feed .e-overview__post-link{padding-bottom:5px}#e-dashboard-overview .e-overview__feed .e-overview__heading,#e-dashboard-overview .e-overview__recently-edited .e-overview__heading{font-weight:700;border-bottom:1px solid #eee;margin:0 -12px;padding:6px 12px}#e-dashboard-overview .e-overview__footer{margin:0 -12px -12px;padding:12px;border-top:1px solid #eee}#e-dashboard-overview .e-overview__footer ul{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;margin:0;padding:0}#e-dashboard-overview .e-overview__footer ul li{padding:0 10px;margin:0;border-right:1px solid #ddd}#e-dashboard-overview .e-overview__footer ul li:first-child{padding-right:0;border:none}#e-dashboard-overview .e-overview__go-pro a{color:#d30c5c;font-weight:500}.post-type-elementor_library #elementor-template-library-tabs-wrapper{padding-top:2em;margin-bottom:2em}.post-type-elementor_library th#taxonomy-elementor_library_category{width:110px}#elementor-new-template-modal .dialog-message{max-height:70vh}#elementor-new-template-dialog-content{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;height:100%;text-align:right;color:#6d7882}@media (max-width:1439px){#elementor-new-template-dialog-content{padding:0 50px}}@media (min-width:1440px){#elementor-new-template-dialog-content{padding:0 120px}}#elementor-new-template__description{width:35%;max-width:300px;padding-left:100px}#elementor-new-template__description__title{font-size:30px;color:#556068}#elementor-new-template__description__title span{font-weight:700}#elementor-new-template__description__content{font-size:16px;padding:30px 0}#elementor-new-template__take_a_tour{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;font-size:15px}#elementor-new-template__take_a_tour i{color:#f2295b;font-size:30px}#elementor-new-template__take_a_tour a{color:#6d7882;padding-right:10px;text-decoration:none;font-weight:500}#elementor-new-template__form{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:440px;padding:55px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 30px 0 rgba(0,0,0,.08);box-shadow:0 2px 30px 0 rgba(0,0,0,.08)}#elementor-new-template__form__title{font-size:23px;color:#556068}#elementor-new-template__form__template-type.elementor-form-field__select{max-width:none}#elementor-new-template__form .elementor-form-field__label{display:block;margin:25px 0 7px;font-size:14px;line-height:1}#elementor-new-template__form .elementor-form-field input,#elementor-new-template__form .elementor-form-field select{width:100%;height:50px;padding:10px;font-size:14px;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:3px;border-radius:3px;background:none;color:#495157;border:1px solid;outline:none}#elementor-new-template__form .elementor-form-field input:not(:focus),#elementor-new-template__form .elementor-form-field select:not(:focus){border-color:#d5dadf}#elementor-new-template__form .elementor-form-field input:focus,#elementor-new-template__form .elementor-form-field select:focus{border-color:#a4afb7}#elementor-new-template__form .elementor-form-field__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}#elementor-new-template__form .elementor-form-field__select__wrapper{position:relative}#elementor-new-template__form .elementor-form-field__select__wrapper:after{font-family:eicons;content:"\e8ad";position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-new-template__form__submit{width:100%;height:50px;margin-top:25px}@media (max-width:1024px){#elementor-new-template__description{max-width:250px;padding-left:30px}}@media (max-width:767px){#elementor-new-template__description{display:none}}#elementor-role-manager{max-width:500px;margin-top:50px}#elementor-role-manager h3{color:#6d7882;font-weight:400;font-size:22px}#elementor-role-manager .elementor-settings-form-page{padding:0}#elementor-role-manager .elementor-role-row{background:#fff;color:#6d7882;margin-bottom:2px}#elementor-role-manager .elementor-role-row .elementor-role-label{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:15px 20px;font-weight:500;cursor:pointer}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name{padding-left:20px}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle{text-align:left;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator{color:#a4afb7}#elementor-role-manager .elementor-role-row .elementor-role-controls{background-color:#f7f7f7;padding:20px 20px 5px}#elementor-role-manager .elementor-role-row .elementor-role-controls>div{margin-bottom:15px}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc{font-weight:500;font-style:italic}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link{text-align:left;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area{color:#c2cbd2;cursor:pointer}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item>i{color:#6d7882}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close{border:none}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again{text-transform:uppercase;font-weight:700;font-size:12px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-beta-tester-modal .dialog-lightbox-widget-content{max-width:500px;height:auto}#elementor-beta-tester-modal .dialog-lightbox-message{padding:40px;height:300px;background-color:#fff}#elementor-beta-tester-form__caption{font-weight:700;font-size:20px;color:#495157}#elementor-beta-tester-form__description{font-size:15px;color:#6d7882;margin-top:10px}#elementor-beta-tester-form__input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:30px}#elementor-beta-tester-form__input-wrapper .elementor-button{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#elementor-beta-tester-form__email{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border:1px solid #d5dadf;border-left:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin:0;padding:10px;height:50px}#elementor-beta-tester-form__terms{margin-top:40px;font-size:11px;color:#a4afb7}assets/css/frontend-rtl.css000066600000413001152142641160011773 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content { background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; -webkit-box-sizing: border-box; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; left: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-left: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: -webkit-calc(100vh - 32px); height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: -webkit-sticky; position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; padding: 5px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-right: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: right; padding-right: 15px; } .elementor-templates-modal__header__logo-area > * { 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-templates-modal__header__logo__icon-wrapper { margin-left: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__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-templates-modal__header__item { position: relative; 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; -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-right: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-right: 20px; margin-left: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; -webkit-border-radius: 2px; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-right: 10px; margin-right: 15px; border-right: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: -webkit-linear-gradient(225deg, #f2295b, #434363); background-image: -o-linear-gradient(225deg, #f2295b, #434363); background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; -webkit-border-radius: 0.2em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } .elementor { -webkit-hyphens: manual; -ms-hyphens: manual; hyphens: manual; } .elementor *, .elementor *:before, .elementor *:after { -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; -webkit-border-radius: 0; 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, .elementor .elementor-background-holder, .elementor .elementor-background { height: 100%; width: 100%; top: 0; left: 0; position: absolute; overflow: hidden; z-index: 0; direction: ltr; } .elementor .elementor-background-video-container { -webkit-transition: opacity 1s; -o-transition: opacity 1s; transition: opacity 1s; pointer-events: none; } .elementor .elementor-background-video-container.elementor-loading { opacity: 0; } .elementor .elementor-background-video-embed { max-width: none; } .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor .elementor-background-video { max-width: none; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -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 .elementor-background-slideshow { position: absolute; width: 100%; height: 100%; z-index: 0; top: 0; right: 0; } .elementor .elementor-background-slideshow__slide__image { width: 100%; height: 100%; background-position: center center; -webkit-background-size: cover; background-size: cover; } .elementor-widget-wrap > .elementor-element.elementor-absolute { position: absolute; } .elementor-widget-wrap > .elementor-element.elementor-fixed { position: fixed; } .elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial { max-width: 100%; } @media (max-width: 1024px) { .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial { max-width: 100%; } } @media (max-width: 767px) { .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial { max-width: 100%; } } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { z-index: 1; } .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: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-custom-embed-play i { font-size: 100px; color: #fff; opacity: 0.8; text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; } .elementor-custom-embed-play.elementor-playing i { font-family: eicons; -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; } .elementor-custom-embed-play.elementor-playing i:before { content: '\e8fb'; } .elementor-tag { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; } .elementor-ken-burns { -webkit-transition-property: -webkit-transform; transition-property: -webkit-transform; -o-transition-property: transform; transition-property: transform; transition-property: transform, -webkit-transform; -webkit-transition-duration: 10s; -o-transition-duration: 10s; transition-duration: 10s; -webkit-transition-timing-function: linear; -o-transition-timing-function: linear; transition-timing-function: linear; } .elementor-ken-burns--out { -webkit-transform: scale(1.3); -ms-transform: scale(1.3); transform: scale(1.3); } .elementor-ken-burns--active { -webkit-transition-duration: 20s; -o-transition-duration: 20s; transition-duration: 20s; } .elementor-ken-burns--active.elementor-ken-burns--out { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); } .elementor-ken-burns--active.elementor-ken-burns--in { -webkit-transform: scale(1.3); -ms-transform: scale(1.3); transform: scale(1.3); } @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: "\e813"; font-family: eicons; top: 3px; font-size: 18px; } #wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before { content: "\f348"; top: 2px; } .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-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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 { width: 100%; position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-widget-wrap { position: relative; width: 100%; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; } .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-widget-wrap > .elementor-element { width: 100%; } .elementor-widget { position: relative; } .elementor-widget:not(:last-child) { margin-bottom: 20px; } .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute { margin-bottom: 0; } .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 (min-width: 768px) and (max-width: 1024px) { .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) { -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) { -webkit-box-ordinal-group: 10; -webkit-order: 9; -ms-flex-order: 9; order: 9; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) { -webkit-box-ordinal-group: 9; -webkit-order: 8; -ms-flex-order: 8; order: 8; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) { -webkit-box-ordinal-group: 8; -webkit-order: 7; -ms-flex-order: 7; order: 7; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) { -webkit-box-ordinal-group: 7; -webkit-order: 6; -ms-flex-order: 6; order: 6; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) { -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) { -webkit-box-ordinal-group: 5; -webkit-order: 4; -ms-flex-order: 4; order: 4; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) { -webkit-box-ordinal-group: 4; -webkit-order: 3; -ms-flex-order: 3; order: 3; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) { -webkit-box-ordinal-group: 3; -webkit-order: 2; -ms-flex-order: 2; order: 2; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) { -webkit-box-ordinal-group: 2; -webkit-order: 1; -ms-flex-order: 1; order: 1; } } @media (max-width: 767px) { .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) { -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) { -webkit-box-ordinal-group: 10; -webkit-order: 9; -ms-flex-order: 9; order: 9; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) { -webkit-box-ordinal-group: 9; -webkit-order: 8; -ms-flex-order: 8; order: 8; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) { -webkit-box-ordinal-group: 8; -webkit-order: 7; -ms-flex-order: 7; order: 7; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) { -webkit-box-ordinal-group: 7; -webkit-order: 6; -ms-flex-order: 6; order: 6; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) { -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) { -webkit-box-ordinal-group: 5; -webkit-order: 4; -ms-flex-order: 4; order: 4; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) { -webkit-box-ordinal-group: 4; -webkit-order: 3; -ms-flex-order: 3; order: 3; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) { -webkit-box-ordinal-group: 3; -webkit-order: 2; -ms-flex-order: 2; order: 2; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) { -webkit-box-ordinal-group: 2; -webkit-order: 1; -ms-flex-order: 1; order: 1; } .elementor-column { width: 100%; } } ul.elementor-icon-list-items.elementor-inline-items { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item { word-break: break-word; } .elementor-grid .elementor-grid-item { word-break: break-word; min-width: 0; } .elementor-grid-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } @media (max-width: 1024px) { .elementor-grid-tablet-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-tablet-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-tablet-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-tablet-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-tablet-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-tablet-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-tablet-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-tablet-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-tablet-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-tablet-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-tablet-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-tablet-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-tablet-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (max-width: 767px) { .elementor-grid-mobile-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-mobile-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-mobile-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-mobile-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-mobile-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-mobile-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-mobile-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-mobile-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-mobile-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-mobile-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-mobile-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-mobile-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-mobile-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (min-width: 1025px) { #elementor-device-mode:after { content: 'desktop'; } } @media (min-width: 768px) and (max-width: 1024px) { #elementor-device-mode:after { content: 'tablet'; } } @media (max-width: 767px) { #elementor-device-mode:after { content: 'mobile'; } } .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 > input, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group .elementor-field-subgroup { -webkit-flex-basis: 100%; -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper { -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%; max-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, 0.1) inset; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; outline: 0; } .elementor-field-group .elementor-field-textual::-webkit-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::placeholder { color: inherit; font-family: inherit; opacity: 0.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 { appearance: none; -webkit-appearance: none; -moz-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: '\e92a'; font-family: 'eicons'; 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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before { content: ''; } .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-type-checkbox .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label { display: inline; } .elementor-field-label { cursor: pointer; } .elementor-mark-required .elementor-field-label:after { content: '*'; color: red; padding-right: 0.2em; } .elementor-field-textual { line-height: 1.4; font-size: 15px; min-height: 40px; padding: 5px 14px; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-field-textual.elementor-size-xs { font-size: 13px; min-height: 33px; padding: 4px 12px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-field-textual.elementor-size-md { font-size: 16px; min-height: 47px; padding: 6px 16px; -webkit-border-radius: 4px; border-radius: 4px; } .elementor-field-textual.elementor-size-lg { font-size: 18px; min-height: 59px; padding: 7px 20px; -webkit-border-radius: 5px; border-radius: 5px; } .elementor-field-textual.elementor-size-xl { font-size: 20px; min-height: 72px; padding: 8px 24px; -webkit-border-radius: 6px; border-radius: 6px; } .elementor-button-align-center .elementor-field-type-submit button, .elementor-button-align-start .elementor-field-type-submit button, .elementor-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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 button, .elementor-tablet-button-align-start .elementor-field-type-submit button, .elementor-tablet-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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 button, .elementor-mobile-button-align-start .elementor-field-type-submit button, .elementor-mobile-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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: 0.9em; } .elementor-message { margin: 10px 0; font-size: 1em; line-height: 1; } .elementor-message:before { content: "\e90e"; display: inline-block; font-family: eicons; font-weight: normal; font-style: normal; vertical-align: middle; margin-right: 5px; } .elementor-message.elementor-message-danger { color: #d9534f; } .elementor-message.elementor-message-danger:before { content: "\e87f"; } .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-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-element .elementor-widget-container { -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; } .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-tab-title { margin: 0; padding: 15px 20px; font-weight: bold; line-height: 1; cursor: pointer; outline: none; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { display: inline-block; width: 1.5em; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right { float: right; text-align: right; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left { float: left; text-align: left; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed { display: block; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened { display: block; } .elementor-accordion .elementor-tab-content { display: none; padding: 15px 20px; border-top: 1px solid #D4D4D4; } @media (max-width: 767px) { .elementor-accordion .elementor-tab-title { padding: 12px 15px; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { width: 1.2em; } .elementor-accordion .elementor-tab-content { padding: 7px 15px; } } .elementor-alert { padding: 15px; border-left: 5px solid transparent; position: relative; text-align: right; } .elementor-alert .elementor-alert-title { display: block; font-weight: bold; } .elementor-alert .elementor-alert-description { font-size: 13px; } .elementor-alert button.elementor-alert-dismiss { position: absolute; left: 10px; top: 10px; padding: 3px; font-size: 20px; line-height: 1; background: transparent; color: inherit; border: none; cursor: pointer; } .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-tab-title a { color: inherit; } .elementor-button { display: inline-block; line-height: 1; background-color: #818a91; font-size: 15px; padding: 12px 24px; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; fill: #fff; text-align: center; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-button:hover, .elementor-button:focus, .elementor-button:visited { color: #fff; } .elementor-button-content-wrapper { 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-button-icon { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-button-icon svg { width: 1em; } .elementor-button-text { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; display: inline-block; } .elementor-button.elementor-size-xs { font-size: 13px; padding: 10px 20px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-button.elementor-size-md { font-size: 16px; padding: 15px 30px; -webkit-border-radius: 4px; border-radius: 4px; } .elementor-button.elementor-size-lg { font-size: 18px; padding: 20px 40px; -webkit-border-radius: 5px; border-radius: 5px; } .elementor-button.elementor-size-xl { font-size: 20px; padding: 25px 50px; -webkit-border-radius: 6px; border-radius: 6px; } .elementor-button .elementor-align-icon-right { margin-left: 5px; -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-button .elementor-align-icon-left { margin-right: 5px; -webkit-box-ordinal-group: 16; -webkit-order: 15; -ms-flex-order: 15; order: 15; } .elementor-button span { text-decoration: inherit; } /* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */ .elementor-menu-cart__toggle .elementor-button-icon { -webkit-box-ordinal-group: 16; -webkit-order: 15; -ms-flex-order: 15; order: 15; } .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-counter .elementor-counter-number-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: 69px; font-weight: 600; color: #222222; line-height: 1; } .elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: pre-wrap; } .elementor-counter .elementor-counter-number-prefix { text-align: left; } .elementor-counter .elementor-counter-number-suffix { text-align: right; } .elementor-counter .elementor-counter-title { text-align: center; font-size: 19px; font-weight: 400; color: #666666; line-height: 2.5; } .elementor-widget-divider { --divider-border-style: none; --divider-border-width: 1px; --divider-border-color: $gray-darkest; --divider-icon-size: 20px; --divider-element-spacing: 10px; --divider-pattern-height: 24px; --divider-pattern-size: 20px; --divider-pattern-url: none; --divider-pattern-repeat: repeat-x; /* Backwards compatibility */ } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator { display: inline-block; } .elementor-widget-divider .elementor-divider { line-height: 0; font-size: 0; } .elementor-widget-divider .elementor-divider__text { font-size: 15px; line-height: 1; max-width: 95%; } .elementor-widget-divider .elementor-divider__element { margin: 0 var(--divider-element-spacing); -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-widget-divider .elementor-icon { font-size: var(--divider-icon-size); } .elementor-widget-divider .elementor-divider-separator { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0; direction: ltr; } .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator { -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after { display: block; content: ''; border-bottom: 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-flex-shrink: 100; -ms-flex-negative: 100; flex-shrink: 100; } .elementor-widget-divider--element-align-left .elementor-divider-separator:before { content: none; } .elementor-widget-divider--element-align-left .elementor-divider__element { margin-left: 0; } .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-flex-shrink: 100; -ms-flex-negative: 100; flex-shrink: 100; } .elementor-widget-divider--element-align-right .elementor-divider-separator:after { content: none; } .elementor-widget-divider--element-align-right .elementor-divider__element { margin-right: 0; } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator { border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--separator-type-pattern { --divider-border-style: none; } .elementor-widget-divider--separator-type-pattern .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after { width: 100%; min-height: var(--divider-pattern-height); background-image: var(--divider-pattern-url); -webkit-background-size: var(--divider-pattern-size) 100%; background-size: var(--divider-pattern-size) 100%; background-repeat: var(--divider-pattern-repeat); } .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator { background-image: none; } .elementor-widget-divider--no-spacing { --divider-pattern-size: auto; } .elementor-widget-divider--bg-round { --divider-pattern-repeat: round; } .rtl .elementor-widget-divider .elementor-divider__text { direction: rtl; } .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-widget-google_maps iframe { height: 300px; } .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-icon { display: inline-block; line-height: 1; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; color: #818a91; font-size: 50px; text-align: center; } .elementor-icon:hover { color: #818a91; } .elementor-icon i, .elementor-icon svg { width: 1em; height: 1em; position: relative; display: block; } .elementor-icon i:before, .elementor-icon svg:before { position: absolute; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .elementor-icon i.fad { width: initial; } .elementor-view-stacked .elementor-icon { padding: .5em; background-color: #818a91; color: #fff; fill: #fff; } .elementor-view-framed .elementor-icon { padding: .5em; color: #818a91; border: 3px solid #818a91; background-color: transparent; } .elementor-shape-circle .elementor-icon { -webkit-border-radius: 50%; border-radius: 50%; } @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 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; -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-content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-widget-icon-box .elementor-icon-box-description { margin: 0; } .elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container { overflow: hidden; } .elementor-widget .elementor-icon-list-items.elementor-inline-items { margin-right: -8px; margin-left: -8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item { margin-right: 8px; margin-left: 8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after { width: auto; left: auto; right: auto; position: relative; height: 100%; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); border-top: 0; border-bottom: 0; border-right: 0; border-left-width: 1px; border-style: solid; left: -8px; } .elementor-widget .elementor-icon-list-items { list-style-type: none; margin: 0; padding: 0; } .elementor-widget .elementor-icon-list-item { margin: 0; padding: 0; position: relative; } .elementor-widget .elementor-icon-list-item:after { position: absolute; bottom: 0; width: 100%; } .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; } .elementor-widget .elementor-icon-list-item a { width: 100%; } .elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text { -webkit-align-self: center; -ms-flex-item-align: center; align-self: center; padding-right: 5px; } .elementor-widget .elementor-icon-list-icon { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-widget .elementor-icon-list-icon i { width: 1.25em; } .elementor-widget .elementor-icon-list-icon svg { width: 1em; } .elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-align-center .elementor-inline-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: left; } .elementor-widget.elementor-align-left .elementor-inline-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: right; } .elementor-widget.elementor-align-right .elementor-icon-list-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after { left: 0; } @media (max-width: 1024px) { .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: left; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: right; } .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after { left: 0; } } @media (max-width: 767px) { .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: left; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: right; } .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after { left: 0; } } .elementor-widget-image { text-align: center; } .elementor-widget-image .elementor-image > a, .elementor-widget-image .elementor-image figure > a { display: inline-block; } .elementor-widget-image .elementor-image > a img[src$=".svg"], .elementor-widget-image .elementor-image figure > a img[src$=".svg"] { width: 48px; } .elementor-widget-image .elementor-image img { vertical-align: middle; display: inline-block; } .elementor-widget-image .elementor-image.elementor-image-shape-circle { -webkit-border-radius: 50%; border-radius: 50%; } .elementor-widget-image-box .elementor-image-box-content { 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; } .elementor-widget-image-carousel .swiper-container { position: static; } .elementor-widget-image-carousel .swiper-container .swiper-slide figure { line-height: inherit; } .elementor-widget-image-carousel .swiper-slide { text-align: center; } .elementor-image-gallery figure img { display: block; } .elementor-image-gallery figure figcaption { width: 100%; } .gallery-spacing-custom .elementor-image-gallery .gallery-icon { padding: 0; } body.elementor-page .elementor-widget-menu-anchor { margin-bottom: 0; } .elementor-widget-progress { text-align: right; } .elementor-progress-wrapper { position: relative; background-color: #eeeeee; color: #ffffff; height: 100%; -webkit-border-radius: 2px; 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; height: 30px; line-height: 30px; -webkit-border-radius: 2px; 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; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; 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-text { padding-right: 10px; } } .elementor-social-icons-wrapper { font-size: 0; } .elementor-social-icon { background-color: #818a91; font-size: 25px; text-align: center; padding: 0.5em; margin-left: 5px; cursor: pointer; } .elementor-social-icon i { color: white; } .elementor-social-icon:last-child { margin: 0; } .elementor-social-icon:hover { opacity: .9; color: white; } .elementor-social-icon-android { background-color: #A4C639; } .elementor-social-icon-apple { background-color: #999999; } .elementor-social-icon-behance { background-color: #1769ff; } .elementor-social-icon-bitbucket { background-color: #205081; } .elementor-social-icon-codepen { background-color: #000000; } .elementor-social-icon-delicious { background-color: #3399ff; } .elementor-social-icon-deviantart { background-color: #05cc47; } .elementor-social-icon-digg { background-color: #005be2; } .elementor-social-icon-dribbble { background-color: #ea4c89; } .elementor-social-icon-elementor { background-color: #D30C5C; } .elementor-social-icon-envelope { background-color: #ea4335; } .elementor-social-icon-facebook, .elementor-social-icon-facebook-f { background-color: #3b5998; } .elementor-social-icon-flickr { background-color: #0063dc; } .elementor-social-icon-foursquare { background-color: #2d5be3; } .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp { background-color: #006400; } .elementor-social-icon-github { background-color: #333333; } .elementor-social-icon-gitlab { background-color: #e24329; } .elementor-social-icon-globe { background-color: #818a91; } .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g { 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-link { background-color: #818a91; } .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in { background-color: #0077b5; } .elementor-social-icon-medium { background-color: #00ab6b; } .elementor-social-icon-meetup { background-color: #ec1c40; } .elementor-social-icon-mixcloud { background-color: #273a4b; } .elementor-social-icon-odnoklassniki { background-color: #F4731C; } .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-rss { background-color: #f26522; } .elementor-social-icon-shopping-cart { background-color: #4CAF50; } .elementor-social-icon-skype { background-color: #00AFF0; } .elementor-social-icon-slideshare { background-color: #0077b5; } .elementor-social-icon-snapchat { background-color: #fffc00; } .elementor-social-icon-soundcloud { background-color: #ff8800; } .elementor-social-icon-spotify { background-color: #2ebd59; } .elementor-social-icon-stack-overflow { background-color: #fe7a15; } .elementor-social-icon-steam { background-color: #00adee; } .elementor-social-icon-stumbleupon { background-color: #EB4924; } .elementor-social-icon-telegram { background-color: #2CA5E0; } .elementor-social-icon-thumb-tack { background-color: #1aa1d8; } .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: #1DA1F2; } .elementor-social-icon-viber { background-color: #665cac; } .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-social-icon-500px { background-color: #0099e5; } .elementor-shape-rounded .elementor-icon.elementor-social-icon { -webkit-border-radius: 10%; border-radius: 10%; } .elementor-shape-circle .elementor-icon.elementor-social-icon { -webkit-border-radius: 50%; border-radius: 50%; } .elementor-star-rating { color: #CCD6DF; font-family: eicons; display: inline-block; } .elementor-star-rating i { display: inline-block; position: relative; font-style: normal; cursor: default; } .elementor-star-rating i:before { content: '\e934'; display: block; font-size: inherit; font-family: inherit; position: absolute; overflow: hidden; color: #f0ad4e; top: 0; right: 0; } .elementor-star-rating .elementor-star-empty:before { content: none; } .elementor-star-rating .elementor-star-1:before { width: 10%; } .elementor-star-rating .elementor-star-2:before { width: 20%; } .elementor-star-rating .elementor-star-3:before { width: 30%; } .elementor-star-rating .elementor-star-4:before { width: 40%; } .elementor-star-rating .elementor-star-5:before { width: 50%; } .elementor-star-rating .elementor-star-6:before { width: 60%; } .elementor-star-rating .elementor-star-7:before { width: 70%; } .elementor-star-rating .elementor-star-8:before { width: 80%; } .elementor-star-rating .elementor-star-9:before { width: 90%; } .elementor-star-rating__wrapper { 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-star-rating__title { margin-left: 10px; } .elementor-star-rating--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating--align-justify .elementor-star-rating__title { margin-left: auto; } @media (max-width: 1024px) { .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating-tablet--align-justify .elementor-star-rating__title { margin-left: auto; } } @media (max-width: 767px) { .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating-mobile--align-justify .elementor-star-rating__title { margin-left: auto; } } .last-star { letter-spacing: 0; } .elementor--star-style-star_unicode .elementor-star-rating { font-family: 'Arial', 'Helvetica', sans-serif; } .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before { content: '\002605'; } .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.elementor-active { border-left-style: none; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after { height: 999em; width: 0; left: 0; border-left-style: solid; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active { border-bottom-style: none; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { bottom: 0; height: 0; width: 999em; border-bottom-style: solid; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before { right: 100%; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { left: 100%; } .elementor-widget-tabs .elementor-tab-title, .elementor-widget-tabs .elementor-tab-title:before, .elementor-widget-tabs .elementor-tab-title:after, .elementor-widget-tabs .elementor-tab-content, .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; outline: none; } .elementor-widget-tabs .elementor-tab-desktop-title { position: relative; padding: 20px 25px; font-weight: bold; line-height: 1; border: solid transparent; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active { border-color: #D4D4D4; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after { display: block; content: ''; position: absolute; } .elementor-widget-tabs .elementor-tab-mobile-title { padding: 10px 10px; cursor: pointer; } .elementor-widget-tabs .elementor-tab-content { padding: 20px; display: none; } @media (max-width: 767px) { .elementor-tabs .elementor-tab-title, .elementor-tabs .elementor-tab-content { 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-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; color: inherit; display: block; } .elementor-testimonial-wrapper .elementor-testimonial-job { font-size: 0.85em; color: inherit; display: block; } .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; -webkit-border-radius: 50%; border-radius: 50%; -o-object-fit: cover; object-fit: cover; max-width: none; } .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-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; } .elementor-toggle { text-align: right; } .elementor-toggle .elementor-tab-title { font-weight: bold; line-height: 1; margin: 0; padding: 15px; border-bottom: 1px solid #D4D4D4; cursor: pointer; outline: none; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon { display: inline-block; width: 1em; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right { float: right; text-align: right; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left { float: left; text-align: left; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed { display: block; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened { display: none; } .elementor-toggle .elementor-tab-title.elementor-active { border-bottom: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed { display: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened { display: block; } .elementor-toggle .elementor-tab-content { padding: 15px; border-bottom: 1px solid #D4D4D4; display: none; } @media (max-width: 767px) { .elementor-toggle .elementor-tab-title { padding: 12px; } .elementor-toggle .elementor-tab-content { padding: 12px 10px; } } .elementor-widget-video .elementor-widget-container { overflow: hidden; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } .elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-background-size: cover; 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-widget-video .elementor-video { -o-object-fit: cover; object-fit: cover; } .slick-slider { position: relative; display: block; -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 { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; } .slick-list:focus { outline: none; } .slick-list.dragging { cursor: pointer; } .slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } .slick-track { position: relative; left: 0; top: 0; display: block; } .slick-track:before, .slick-track:after { 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; } .elementor-slick-slider .slick-loading .slick-list:after { content: '\e8fb'; font-family: eicons; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; font-size: 25px; color: #a4afb7; } .elementor-slick-slider .slick-prev, .elementor-slick-slider .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 20px; padding: 0; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus, .elementor-slick-slider .slick-next:hover, .elementor-slick-slider .slick-next:focus { color: transparent; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before, .elementor-slick-slider .slick-next:hover:before, .elementor-slick-slider .slick-next:focus:before { opacity: 1; } .elementor-slick-slider .slick-prev.slick-disabled:before, .elementor-slick-slider .slick-next.slick-disabled:before { opacity: .25; } .elementor-slick-slider .slick-prev:before, .elementor-slick-slider .slick-next:before { font-family: eicons; font-size: 35px; line-height: 1; opacity: .75; color: white; -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: '\e89f'; } [dir="rtl"] .elementor-slick-slider .slick-prev:before { content: '\e89e'; } .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: '\e89e'; } [dir="rtl"] .elementor-slick-slider .slick-next:before { content: '\e89f'; } .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:hover, .elementor-slick-slider ul.slick-dots li button:focus { outline: none; } .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before { opacity: 1; } .elementor-slick-slider ul.slick-dots li button:before { font-family: eicons; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\e914'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .elementor-slick-slider ul.slick-dots li.slick-active button:before { opacity: .75; color: black; } .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-prev, .elementor-slick-slider .slick-slider .slick-next { z-index: 1; } .elementor-slick-slider .slick-slide img { margin: auto; } /** * Swiper 3.4.2 * Customized by Elementor team */ .swiper-container { margin-left: auto; margin-right: auto; position: relative; overflow: hidden; /* Fix of Webkit flickering */ z-index: 1; } .swiper-container .swiper-slide figure { line-height: 0; } .swiper-container .elementor-lightbox-content-source { display: none; } .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: translate3d(0px, 0, 0); transform: translate3d(0px, 0, 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; } /* Auto Height */ .swiper-container-autoheight { height: auto; } .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; } /* a11y */ .swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; } /* IE10 Windows Phone 8 Fixes */ .swiper-wp8-horizontal { -ms-touch-action: pan-y; touch-action: pan-y; } .swiper-wp8-vertical { -ms-touch-action: pan-x; touch-action: pan-x; } /* Arrows */ .swiper-button-prev, .swiper-button-next { position: absolute; top: 50%; width: 27px; height: 44px; margin-top: -22px; z-index: 10; cursor: pointer; -webkit-background-size: 27px 44px; background-size: 27px 44px; background: no-repeat center; } .swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled { opacity: 0.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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } .swiper-button-next, .swiper-container-rtl .swiper-button-prev { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } /* Pagination Styles */ .swiper-pagination { position: absolute; text-align: center; -webkit-transition: 300ms; -o-transition: 300ms; transition: 300ms; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); z-index: 10; } .swiper-pagination.swiper-pagination-hidden { opacity: 0; } /* Common Styles */ .swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 5px; left: 0; width: 100%; } /* Bullets */ .swiper-pagination-bullet { width: 6px; height: 6px; display: inline-block; -webkit-border-radius: 50%; border-radius: 50%; background: #000; opacity: 0.2; } .swiper-pagination-fraction { color: #000; } button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; -webkit-box-shadow: none; box-shadow: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; } .swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer; } .swiper-pagination-white .swiper-pagination-bullet { background: #fff; } .swiper-pagination-bullet-active { opacity: 1; } .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(0px, -50%, 0); transform: translate3d(0px, -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 6px; } /* Progressbar */ .swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; } .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #000; 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-progressbar .swiper-pagination-progressbar-fill { -webkit-transform-origin: right top; -ms-transform-origin: right top; transform-origin: right top; } .swiper-container-horizontal > .swiper-pagination-progressbar { width: 100%; height: 4px; left: 0; top: 0; } .swiper-container-vertical > .swiper-pagination-progressbar { width: 4px; height: 100%; left: 0; top: 0; } .swiper-pagination-progressbar.swiper-pagination-white { background: rgba(255, 255, 255, 0.5); } .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill { background: #fff; } .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill { background: #000; } /* 3D Container */ .swiper-container-3d { -webkit-perspective: 1200px; perspective: 1200px; } .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .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-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow { -webkit-transform-style: preserve-3d; transform-style: preserve-3d; } .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-slide-shadow-bottom { 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, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-right { background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-top { background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-bottom { background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } /* Coverflow */ .swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper { /* Windows 8 IE 10 fix */ -ms-perspective: 1200px; } /* Cube + Flip */ .swiper-container-cube, .swiper-container-flip { overflow: visible; } .swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide { pointer-events: none; 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-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; } /* Cube */ .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-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible; } .swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: #000; opacity: 0.6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; } /* Fade */ .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 { pointer-events: auto; } .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 > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas { max-width: 100%; max-height: 100%; -o-object-fit: contain; object-fit: contain; } /* Scrollbar */ .swiper-scrollbar { -webkit-border-radius: 10px; border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 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, 0.5); -webkit-border-radius: 10px; border-radius: 10px; left: 0; top: 0; } .swiper-scrollbar-cursor-drag { cursor: move; } .elementor-pagination-position-outside .swiper-container { padding-bottom: 30px; } .elementor-pagination-position-outside .elementor-swiper-button { top: -webkit-calc(50% - 30px / 2); top: calc(50% - 30px / 2); } .elementor-swiper { position: relative; } .elementor-main-swiper { position: static; } .elementor-arrows-position-outside .swiper-container { width: -webkit-calc(100% - 60px); width: calc(100% - 60px); } .elementor-arrows-position-outside .elementor-swiper-button-prev { left: 0; } .elementor-arrows-position-outside .elementor-swiper-button-next { right: 0; } .swiper-image-stretch .swiper-slide .swiper-slide-image { width: 100%; } .elementor-swiper-button { position: absolute; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; z-index: 1; cursor: pointer; font-size: 25px; color: rgba(238, 238, 238, 0.9); top: 50%; -webkit-transform: translate3d(0, -50%, 1px); transform: translate3d(0, -50%, 1px); } .elementor-swiper-button-prev { left: 10px; } .elementor-swiper-button-next { right: 10px; } .elementor-swiper-button.swiper-button-disabled { opacity: 0.3; } /* Preloader */ .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: swiper-preloader-spin 1s steps(12, end) infinite; animation: swiper-preloader-spin 1s steps(12, end) infinite; } .swiper-lazy-preloader:after { display: block; content: ""; width: 100%; height: 100%; -webkit-background-size: 100% 100%; background-size: 100%; background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; } .swiper-lazy-preloader-white:after { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); } @-webkit-keyframes swiper-preloader-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes swiper-preloader-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } .elementor-lightbox { --lightbox-ui-color: rgba(238, 238, 238, 0.9); --lightbox-ui-color-hover: #fff; --lightbox-text-color: var(--lightbox-ui-color); --lightbox-header-icons-size: 20px; --lightbox-navigation-icons-size: 25px; } .elementor-lightbox .dialog-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: .3s; animation-duration: .3s; } .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) { height: 100%; } .elementor-lightbox .dialog-message.dialog-lightbox-message { padding: 0; } .elementor-lightbox .dialog-lightbox-close-button { cursor: pointer; position: absolute; font-size: var(--lightbox-header-icons-size); left: 0.75em; margin-top: 13px; padding: .25em; z-index: 2; line-height: 1; } .elementor-lightbox .dialog-lightbox-close-button, .elementor-lightbox .elementor-swiper-button { color: var(--lightbox-ui-color); -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; opacity: 1; } .elementor-lightbox .dialog-lightbox-close-button:hover, .elementor-lightbox .elementor-swiper-button:hover { color: var(--lightbox-ui-color-hover); } .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: 70px; -webkit-box-sizing: border-box; box-sizing: border-box; height: 100%; margin: auto; } @media (max-width: 767px) { .elementor-lightbox .elementor-lightbox-item { padding: 70px 0; } } .elementor-lightbox .elementor-lightbox-image { max-height: 100%; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover { opacity: 1; -webkit-filter: none; filter: none; border: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container { -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 2px; border-radius: 2px; } .elementor-lightbox .elementor-video-container { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } @media (min-width: 1025px) { .elementor-lightbox .elementor-video-container { width: 75%; } } @media (max-width: 1024px) { .elementor-lightbox .elementor-video-container { width: 100%; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container { width: 70%; } } .elementor-lightbox .elementor-swiper-button:focus { outline: none; } .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { height: 100%; 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; width: 15%; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; font-size: var(--lightbox-navigation-icons-size); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; } .elementor-lightbox .elementor-swiper-button-next { right: 0; } @media (max-width: 767px) { .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { width: 20%; } .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i { padding: 10px; background-color: rgba(0, 0, 0, 0.5); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-lightbox .elementor-swiper-button-next { right: 0; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } } .elementor-slideshow__counter { color: currentColor; font-size: .75em; width: -webkit-max-content; width: -moz-max-content; width: max-content; } .elementor-slideshow__header, .elementor-slideshow__footer { position: absolute; left: 0; width: 100%; padding: 15px 20px; -webkit-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; } .elementor-slideshow__footer { color: var(--lightbox-text-color); } .elementor-slideshow__header { color: var(--lightbox-ui-color); display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: var(--lightbox-header-icons-size); padding-right: 1em; padding-left: 2.6em; top: 0; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; z-index: 10; } .elementor-slideshow__header > i { font-size: inherit; cursor: pointer; padding: .25em; margin: 0 .35em; } .elementor-slideshow__header > i:hover { color: var(--lightbox-ui-color-hover); } .elementor-slideshow__header > i:first-of-type { margin-right: auto; } .elementor-slideshow__header .elementor-icon-share { z-index: 5; } .elementor-slideshow__share-menu { background-color: rgba(0, 0, 0, 0); width: 0; height: 0; position: absolute; overflow: hidden; -webkit-transition: background-color 400ms; -o-transition: background-color 400ms; transition: background-color 400ms; } .elementor-slideshow__share-menu .elementor-slideshow__share-links a { color: #2C2C2C; } .elementor-slideshow__share-links { display: block; position: absolute; min-width: 200px; left: 67px; top: 60px; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; font-size: 16px; padding: 14px 20px; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transform-origin: 90% 10%; -ms-transform-origin: 90% 10%; transform-origin: 90% 10%; -webkit-transition: all 250ms 100ms; -o-transition: all 250ms 100ms; transition: all 250ms 100ms; -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); } .elementor-slideshow__share-links a { text-align: right; color: #55595c; font-size: 12px; line-height: 2.5; display: block; opacity: 0; -webkit-transition: opacity 500ms 100ms; -o-transition: opacity 500ms 100ms; transition: opacity 500ms 100ms; } .elementor-slideshow__share-links a:hover { color: #000; } .elementor-slideshow__share-links a i { margin-left: 10px; font-size: 15px; } .elementor-slideshow__share-links:before { content: ''; display: block; position: absolute; top: 0; left: 15px; border: 9px solid; border-color: transparent transparent #fff transparent; -webkit-transform: translateY(-100%) scaleX(0.7); -ms-transform: translateY(-100%) scaleX(0.7); transform: translateY(-100%) scaleX(0.7); } .elementor-slideshow__footer { bottom: 0; z-index: 5; position: fixed; } .elementor-slideshow__title, .elementor-slideshow__description { margin: 0; } .elementor-slideshow__title { font-size: 16px; font-weight: bold; } .elementor-slideshow__description { font-size: 14px; } .elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer { opacity: 0; pointer-events: none; } .elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next { opacity: 0; } .elementor-slideshow--fullscreen-mode .elementor-video-container { width: 100%; } .elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer { background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next { opacity: 0; pointer-events: none; } .elementor-slideshow--share-mode .elementor-slideshow__share-menu { top: 0; left: 0; width: 100vw; height: 100vh; opacity: 1; cursor: default; background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--share-mode .elementor-slideshow__share-links { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); } .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a { opacity: 1; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter { color: #1DA1F2; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook { color: #3b5998; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest { color: #bd081c; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold { color: #a4afb7; } .elementor-slideshow--share-mode .eicon-share-arrow { z-index: 2; } .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; } .animated.reverse { animation-direction: reverse; } @media (prefers-reduced-motion: reduce) { .animated { -webkit-animation: none; animation: none; } } .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 { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } .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: -webkit-calc(100% + 1.3px); 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); } #wp-admin-bar-elementor_edit_page .ab-submenu .ab-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: 200px; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-title { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; width: 100%; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-type { background: #55595c; font-size: 11px; line-height: 9px; margin-top: 6px; padding: 4px 8px; -webkit-border-radius: 3px; border-radius: 3px; } .page-template-elementor_canvas.elementor-page:before { display: none; } .elementor-post__thumbnail__link { -webkit-transition: none; -o-transition: none; transition: none; } #left-area ul.elementor-icon-list-items, .elementor .elementor-element ul.elementor-icon-list-items, .elementor-edit-area .elementor-element ul.elementor-icon-list-items { padding: 0; } #wpadminbar * { font-style: normal; } @media (max-width: 767px) { .elementor .elementor-hidden-phone { display: none; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor .elementor-hidden-tablet { display: none; } } @media (min-width: 1025px) { .elementor .elementor-hidden-desktop { display: none; } } /*# sourceMappingURL=frontend-rtl.css.map */assets/css/editor-rtl.min.css000066600000423242152142641160012234 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{width:135px}*,: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}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:after{content:"";position:absolute;top:0;left:0;height:100%;width:0;background-color:#71d7f7;-webkit-transition:width .5s;-o-transition:width .5s;transition:width .5s}body a{color:#71d7f7}body a:hover{color:#d30c5c}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-mode-switcher-preview .eicon:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-navigator--dock-hint:after{width:30px}#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:9999}#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-container{width:100%!important;outline:none;z-index:9999}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#6d7882}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;-webkit-border-radius:0;border-radius:0}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.select2-selection{outline:none}.select2-selection--single{height:27px}.select2-selection__rendered{line-height:27px}.select2-selection__arrow{height:27px;top:0}.select2-results__option[aria-selected=true]{color:#495157}.select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted){background-color:initial}.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-header{color:#6d7882}#elementor-flexbox-attention-dialog .dialog-cancel{color:#39b54a}#elementor-flexbox-attention-dialog .dialog-ok{color:#6d7882}.elementor-nerd-box{padding:30px;text-align:center}.elementor-nerd-box-icon{width:100px;margin-right:10px}.elementor-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700;line-height:1.4}.elementor-nerd-box-message{margin-top:5px;line-height:1.8;font-size:11px}.elementor-nerd-box .elementor-button.elementor-nerd-box-link{background-color:#d30c5c;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-nerd-box .elementor-button.elementor-nerd-box-link:hover{background-color:#f22074}.eicon-nerd:hover:before{content:"\e8b7"}.eicon-nerd:active:before{content:"\e8b6"}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;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:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:7px;border-radius:7px;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;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:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success: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{-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-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;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-warning: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-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger: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-danger: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-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.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.elementor-button-go-pro{background-color:#d30c5c}.elementor-button i{margin-left:10px}.elementor-input-style,input,select,textarea{-webkit-border-radius:3px;border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#6d7882;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,.elementor-input-style:focus+.elementor-control-dynamic-switcher,input:focus,input:focus+.elementor-control-dynamic-switcher,select:focus,select:focus+.elementor-control-dynamic-switcher,textarea:focus,textarea:focus+.elementor-control-dynamic-switcher{border-color:#a4afb7}.elementor-input-style::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a4afb7}.elementor-input-style:-ms-input-placeholder,input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#a4afb7}.elementor-input-style::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a4afb7}.elementor-input-style::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}input{min-width:0}.elementor-input-style,input,textarea{padding:5px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{height:auto;width:auto}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{outline:none;height:27px}.ps{overflow:hidden!important;overflow-anchor:none;-ms-touch-action:auto;touch-action:auto}.ps__rail-y{display:none;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;width:15px;right:0;left:auto!important;position:absolute}.ps--active-y>.ps__rail-y{display:block;background-color:transparent}.ps--focus>.ps__rail-y,.ps--scrolling-y>.ps__rail-y,.ps:hover>.ps__rail-y{opacity:.6}.ps .ps__rail-y.ps--clicking,.ps .ps__rail-y:focus,.ps .ps__rail-y:hover{opacity:.9}.ps__thumb-y{background-color:#aaa;-webkit-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear,width .2s ease-in-out;-o-transition:background-color .2s linear,width .2s ease-in-out;transition:background-color .2s linear,width .2s ease-in-out;width:6px;right:2px;position:absolute}.ps__rail-y.ps--clicking .ps__thumb-y,.ps__rail-y:focus>.ps__thumb-y,.ps__rail-y:hover>.ps__thumb-y{background-color:#999;width:6px}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:1031;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:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#39b54a transparent transparent #39b54a;border-style:solid;border-width:2px;-webkit-border-radius:50%;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:100000}.elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec;z-index:1;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-editor-active .elementor-panel{right:0}@media (max-width:1439px){.elementor-editor-preview .elementor-panel{right:-280px}}@media (min-width:1440px){.elementor-editor-preview .elementor-panel{right:-300px}}.elementor-editor-preview .elementor-panel>.ui-resizable-e,.elementor-editor-preview .elementor-panel>.ui-resizable-w{display:none}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel .ps-scrollbar-y-rail{z-index:2}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#d30c5c}.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-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-right:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel .elementor-panel-alert a{color:inherit}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.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;-webkit-border-radius:.25em;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-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-panel .elementor-controls-popover:before{content:"";position:absolute;top:-16px;left:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-panel .elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-panel .elementor-controls-popover div.elementor-control:before{content:none}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#d30c5c;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 .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar{font-size:18px}.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-category{position:relative}.elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title{padding-top:14px}.elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-category:not(.elementor-active):after{content:"";position:absolute;left:15px;right:15px;bottom:0;height:8px;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.03)),to(transparent));background:-webkit-linear-gradient(rgba(0,0,0,.03),transparent);background:-o-linear-gradient(rgba(0,0,0,.03),transparent);background:linear-gradient(rgba(0,0,0,.03),transparent);-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-panel .elementor-panel-category-title{margin:0 15px;padding:20px 0;position:relative;text-transform:uppercase;font-size:11px;cursor:pointer}.elementor-panel .elementor-panel-category-title:before{content:"";font-family:eicons;position:absolute;left:0;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.elementor-panel .elementor-panel-category-items{overflow:hidden;padding:0 5px;display:none}.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-buttons .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:11px;font-weight:400}.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}.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;display:grid;grid-template-columns:repeat(4,27px);-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.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: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;-webkit-border-radius: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{color:#39b54a}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-page-menu{padding:25px 15px}.elementor-panel .elementor-panel-menu-group-title{text-transform:uppercase;font-size:11px}.elementor-panel .elementor-panel-menu-items{margin:15px 0 25px;-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:40px;cursor:pointer;margin-bottom:1px;background-color:#fff}.elementor-panel .elementor-panel-menu-item:hover{background-color:hsla(0,0%,100%,.8)}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:50px;color:#a4afb7}.elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link{font-size:18px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-menu-item a{color:#6d7882}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard{background-color:#0085ba;color:#fff;text-transform:uppercase;font-size:12px}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover{background-color:#0073a1}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon,.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title{color:#fff}.elementor-panel .elementor-control.elementor-control-clear_page{background-color:transparent}.elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html{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:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.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.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #d30c5c}.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:eicons;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\e92c"}.elementor-panel .elementor-tab-control-style a:before{content:"\e921"}.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:"\e916"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\e885"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\e899"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\e922"}.elementor-panel #elementor-panel__editor__help{padding:50px 25px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel #elementor-panel__editor__help,.elementor-panel #elementor-panel__editor__help__link{-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-panel__editor__help__link{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;color:#6d7882;font-size:12px;font-weight:500;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel #elementor-panel__editor__help__link i{padding:0 5px;color:#a4afb7;font-size:18px;position:relative}.elementor-panel #elementor-panel__editor__help__link i:after{content:"";position:absolute;height:13px;width:13px;top:3px;bottom:0;right:8px;left:0;-webkit-border-radius:50%;border-radius:50%;z-index:-1}.elementor-panel #elementor-panel__editor__help__link:hover{color:#495157}.elementor-panel #elementor-panel__editor__help__link:hover i{color:#71d7f7}.elementor-panel #elementor-panel__editor__help__link:hover i:before{content:"\e941"}.elementor-panel #elementor-panel__editor__help__link:hover i:after{background:#fff}.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 .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update{border-left:1px solid #2d8739;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i{margin-left:5px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options{float:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i{margin:auto}.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:10000}.elementor-panel .elementor-panel-footer-sub-menu{-webkit-border-radius:5px;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.elementor-disabled .elementor-icon,.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title{color:#6d7882}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.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-responsive>i{display:block;height:100%;line-height:40px}.elementor-panel #elementor-panel-footer-saver-publish{width:80px}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i{margin-left:0}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label{display:none}.elementor-panel #elementor-panel-footer-saver-options{width:35px;border-right:1px solid #495157}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper{font-size:11px;font-style:italic;color:#a4afb7;padding:5px 0 15px}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon{display:none}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time{border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out;cursor:pointer}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover{border-bottom-color:inherit}.elementor-panel .elementor-disabled{cursor:default}.elementor-panel #elementor-panel-saver-button-preview a{color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish,.elementor-panel #elementor-panel-saver-button-save-options{font-size:11px;text-transform:uppercase;height:26px}.elementor-panel #elementor-panel-saver-button-publish.elementor-disabled,.elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled{background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish{width:100%;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel #elementor-panel-saver-button-save-options{width:25px}#elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}#elementor-panel-elements{overflow:hidden;padding:0 5px}#elementor-panel-state-loading{display:none}body.elementor-panel-loading #elementor-panel-state-loading{position:absolute;top:0;left:0;height:100%;width:100%;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;background-color:hsla(0,0%,100%,.5);z-index:1}#elementor-panel-state-loading .eicon-loading{font-size:25px;color:#71d7f7}#elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}#elementor-panel-elements-search-input{background-color:hsla(0,0%,100%,.7);font-size:11px;padding:10px 29px 10px 10px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s;-webkit-border-radius:3px;border-radius:3px;appearance:none;-webkit-appearance:none;-moz-appearance:none}#elementor-panel-elements-search-input+i{position:absolute;right:10px;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-panel-elements-search-input:focus{background-color:#fff;padding-left:15px}.elementor-panel .elementor-element{-webkit-border-radius:3px;border-radius:3px;background-color:#fff;cursor:move;position:relative}.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--promotion .elementor-element{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#556068;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.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:#d30c5c}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;display:table-cell;vertical-align:middle;height:40px}.elementor-panel .elementor-element>.eicon-lock{position:absolute;top:5px;left:5px;color:#e6e9ec}#elementor-element--promotion__dialog{position:absolute;width:300px;z-index:1;background-color:#fff;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px}#elementor-element--promotion__dialog:after{content:"";position:absolute;top:15px;left:100%;-webkit-transform:scaleY(.7);-ms-transform:scaleY(.7);transform:scaleY(.7);border:10px solid transparent;border-left-color:#fff}#elementor-element--promotion__dialog__title{font-size:14px}#elementor-element--promotion__dialog .dialog-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:20px;color:#495157;border-bottom:1px solid #e6e9ec;font-weight:500}#elementor-element--promotion__dialog .dialog-header i{color:#a4afb7}#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin-right:10px;font-size:14px}#elementor-element--promotion__dialog .dialog-header .eicon-close{cursor:pointer}#elementor-element--promotion__dialog .dialog-message{padding:20px}#elementor-element--promotion__dialog .dialog-buttons-wrapper{padding:0 20px 20px}#elementor-element--promotion__dialog .dialog-button{width:100%;padding:6.5px;font-size:12px}#elementor-element--promotion__dialog .dialog-button::-moz-focus-inner{border:0}#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-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.media-modal.wp-core-ui input,.media-modal.wp-core-ui select{width:auto}.media-modal.wp-core-ui fieldset{padding:0;border:0}.media-modal.wp-core-ui .wp-clearfix:after{content:"";display:table;clear:both}#elementor-panel-get-pro-elements .elementor-nerd-box-message{margin-top:10px}#elementor-panel-get-pro-elements .elementor-nerd-box-icon{margin-top:20px}.elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control .elementor-control-content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:12px;line-height:1;margin-left:5px}.elementor-control .elementor-control-spinner{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-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title{display:none}.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop{display:none}body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet{display:none}body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;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:5px;padding-left:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.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-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-right:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-start-end .eicon-h-align-left,.elementor-control-start-end .eicon-h-align-right{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-control-responsive-switchers{margin-left:5px;--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:-webkit-calc(-1*var(--selected-option)*2em);top:calc(-1*var(--selected-option)*2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{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;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 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}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:left}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-left:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices input{display:none}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:-webkit-calc(100% + 1px);width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.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-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-right:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{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-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;left:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:none}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:right}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.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-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area{display:none}.elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media-upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-right:1px}.elementor-control-media__tool{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;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{position:absolute;z-index:1;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;top:10px;left:10px;width:20px;height:20px;font-size:11px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1);-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:ltr}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-left:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.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-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-left:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(-4px);-ms-transform:translateY(calc(50% - 14px)) translateX(-4px);transform:translateY(calc(50% - 14px)) translateX(-4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-input-wrapper{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-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{margin-right:10px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;left:0;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(-8px);-ms-transform:translateY(calc(50% - 14px)) translateX(-8px);transform:translateY(calc(50% - 14px)) translateX(-8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:-webkit-calc(100% + 5px);top:calc(100% + 5px);left:-webkit-calc(50% - 4px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;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-control-type-switcher .elementor-switch-label:after,.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-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-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-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-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:27px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-left:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right-width:0}.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;left:0}.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-textarea textarea{display:block}.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{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-control-type-url .elementor-control-url-more{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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{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-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 0 0 5px;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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-control-type-url .elementor-control-url-option input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:10px}.elementor-control-type-url .elementor-control-url__custom-attributes label{display:block}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-self:baseline;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-text input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#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{background-color:#d30c5c;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 .eicon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item__wrapper{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;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-revision-item__wrapper.current{font-weight:700}.elementor-revision-item__wrapper .elementor-revision-item__tools-current{color:#71d7f7}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-current{display:none}.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner{display:none}.elementor-revision-item__gravatar{-webkit-border-radius:50%;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-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-restore-autosave-dialog.dialog-widget{background-color:rgba(0,0,0,.3)}#elementor-panel-revisions-loading{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-panel-revisions-loading .eicon-loading{font-size:50px;color:#a4afb7}.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;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .eicon:before{content:"\e924"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:default}.elementor-history-item-current .elementor-history-item__icon .eicon:before,.elementor-history-item-current:hover .elementor-history-item__icon .eicon:before{content:"\e90e"}.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-top:5px}#elementor-panel-history{padding:20px 20px 15px}#elementor-panel-history.elementor-empty .elementor-history-revisions-message{padding-top:20px}#elementor-panel-history:not(.elementor-empty){background-color:#fff;margin-top:10px}#elementor-panel-history-no-items,#elementor-panel-revisions-no-revisions{text-align:center}#elementor-panel-history-no-items .elementor-nerd-box-icon,#elementor-panel-revisions-no-revisions .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-header{background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:table-cell}body:not(.e-routes-has-history) #elementor-panel-header-kit-back{pointer-events:none;opacity:.4}body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon{cursor:inherit;color:inherit}.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{border-bottom-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled){background-color:#4ab7f4}.elementor-editor-kit #elementor-panel-footer-navigator,.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,.elementor-editor-kit #elementor-panel-header-add-button,.elementor-editor-kit #elementor-panel-header-menu-button{display:none}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(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;margin:0 auto;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{-webkit-border-radius:30px;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:100000}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:6px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.5);box-shadow:0 0 5px 0 rgba(0,0,0,.5)}.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-template-library-modal a.elementor-template-library-blank-footer-link{font-style:normal;text-decoration:underline;color:#39b54a}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#2d8e3a}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .select2-container{z-index:0}#elementor-template-library-header-menu{text-align:center;color:#6d7882;font-size:13px}.elementor-template-library-menu-item{display:inline-block;padding:17px 0;width:115px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #d30c5c}#elementor-template-library-header-actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor-template-library-header-actions>div{padding-left:16px}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px;font-size:11px}#elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert{color:#fff;background-color:#39b54a}#elementor-template-library-header-preview-insert-wrapper .elementor-go-pro{background-color:#d30c5c;color:#fff}#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-templates{padding:0 15px}#elementor-template-library-templates[data-template-source=local] #elementor-template-library-templates-container{-webkit-box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);margin-top:10px;margin-bottom:45px}#elementor-template-library-templates[data-template-source=local] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#6d7882}#elementor-template-library-templates[data-template-source=remote] #elementor-template-library-templates-container{margin:10px -15px 0}#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#495157}#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-order-toolbar-local{display:none}#elementor-template-library-templates .elementor-template-library-order-input,#elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner{display:none}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label{padding-left:8px}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label:after{font-family:eicons;content:"\e8ae";margin-right:3px}#elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse+.elementor-template-library-order-label:after{content:"\e8ad"}#elementor-template-library-templates-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}#elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert{text-transform:none;font-size:12px}#elementor-template-library-toolbar{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}#elementor-template-library-toolbar,.elementor-template-library-filter-toolbar{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-filter-toolbar-remote{font-size:11px}#elementor-template-library-order{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;border-left:1px solid #d5dadf}.elementor-template-library-order-label{text-transform:uppercase;padding-left:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}label.elementor-template-library-order-label{cursor:pointer}label.elementor-template-library-order-label:hover{color:#556068}#elementor-template-library-filter{border-left:1px solid #d5dadf}#elementor-template-library-filter .select2{text-align:right;margin-left:25px}#elementor-template-library-filter .select2-selection__rendered,#select2-elementor-template-library-filter-subtype-results .select2-results__option{text-transform:capitalize}#elementor-template-library-my-favorites{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right;padding-right:20px}#elementor-template-library-filter-my-favorites{display:none}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label{color:#495157}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label i:after{color:#d30c5c;content:"\e93f"}#elementor-template-library-filter-my-favorites-label{cursor:pointer;text-transform:uppercase}#elementor-template-library-filter-my-favorites-label:hover{color:#556068}#elementor-template-library-filter-my-favorites-label:hover i:after{color:#d30c5c}#elementor-template-library-filter-my-favorites-label i{padding-left:5px}#elementor-template-library-filter-my-favorites-label i:after{color:#a4afb7;content:"\e923"}#elementor-template-library-filter-text-wrapper{width:200px;position:relative}#elementor-template-library-filter-text-wrapper i{position:absolute;top:50%;left:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-template-library-filter-text{border:none;border-bottom:1px solid #d5dadf;-webkit-border-radius:0;border-radius:0;font-size:11px;padding:8px 15px 8px 0;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s}#elementor-template-library-filter-text::-webkit-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:focus{border-color:#c2cbd2}.elementor-template-library-template-remote{margin:15px;padding:8px;background-color:#fff;-webkit-box-shadow:0 1px 20px 0 rgba(0,0,0,.07);box-shadow:0 1px 20px 0 rgba(0,0,0,.07);-webkit-border-radius:3px;border-radius:3px}.elementor-template-library-template-remote:hover .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview{opacity:0}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action{display:none}.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:#d30c5c;color:#d5dadf;padding:2px 4px 0;font-size:9px;-webkit-border-radius:2px;border-radius:2px}.elementor-template-library-template-remote:not(.elementor-template-library-template-page){position:relative;width:-webkit-calc(33.333% - 30px);width:calc(33.333% - 30px);overflow:hidden}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) img{display:block;width:100%}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer{position:absolute;width:100%;bottom:0;right:0;padding:10px;background-color:#fff;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(:hover) .elementor-template-library-template-footer{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-template-library-template-remote .elementor-template-library-template-body{position:relative}@media (max-width:1025px){.elementor-template-library-template-remote .elementor-template-library-template-body{height:300px}}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;-webkit-background-size:cover;background-size:cover;background-position-x:50%;-webkit-box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07);box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07)}.elementor-template-library-template-remote .elementor-template-library-template-preview{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;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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-template-library-template-remote .elementor-template-library-template-insert{color:#39b54a}.elementor-template-library-template-remote .elementor-go-pro{color:#d30c5c}.elementor-template-library-template-remote .elementor-template-library-template-footer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px;font-size:11px;line-height:1}.elementor-template-library-template-remote .elementor-template-library-template-name{text-align:right;color:#6d7882;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:5px}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input{display:none}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked+.elementor-template-library-template-favorite-label i:before{content:"\e93f";color:#d30c5c}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label{cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i{color:#d30c5c}@media (max-width:1439px){.elementor-template-library-template-page{width:-webkit-calc(25% - 30px);width:calc(25% - 30px)}}@media (min-width:1440px){.elementor-template-library-template-page{width:-webkit-calc(20% - 30px);width:calc(20% - 30px)}}@media (max-width:1025px){.elementor-template-library-template-page{width:-webkit-calc(33.333% - 30px);width:calc(33.333% - 30px)}}.elementor-template-library-template-page .elementor-template-library-template-body{height:200px}#elementor-template-library-order-toolbar-local,.elementor-template-library-template-local{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;padding:0 25px;text-align:right}#elementor-template-library-order-toolbar-local{margin-top:30px}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label{line-height:1;font-size:10px;font-weight:500}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover){color:#a4afb7}.elementor-template-library-template-local{height:50px;width:100%;margin-top:1px;background-color:#fff;-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-insert{background:none;color:#a4afb7}.elementor-template-library-template-local:first-child{-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-template-library-template-local:last-child{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.elementor-template-library-template-local .elementor-template-library-template-name{font-weight:500}.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name{padding-left:20px}.elementor-template-library-template-local .elementor-template-library-template-meta{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-action,.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name,.elementor-template-library-template-local .elementor-template-library-template-preview{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-template-library-template-local .elementor-template-library-template-controls{position:relative;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-template-local .elementor-template-library-template-controls,.elementor-template-library-template-local .elementor-template-library-template-controls a{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls>div{cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-insert i{margin-left:3px}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-right:6px}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#556068}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#d72b3f}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 5%}.elementor-template-library-template-local .elementor-template-library-template-more{display:none;position:absolute;background-color:#fff;padding:3px 20px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:1px 3px 11px rgba(0,0,0,.3);box-shadow:1px 3px 11px rgba(0,0,0,.3);top:100%;left:0;-webkit-transform:translateX(-65%) translateY(-7px);-ms-transform:translateX(-65%) translateY(-7px);transform:translateX(-65%) translateY(-7px);z-index:1}.elementor-template-library-template-local .elementor-template-library-template-more:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:8px 4px;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-template-library-template-local .elementor-template-library-template-more>div{margin:10px 0;font-size:11px}.elementor-template-library-template-local .elementor-template-library-template-more-toggle{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-template-library-template-local .elementor-template-library-template-more-toggle i{font-size:16px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{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%)}@media (max-width:1439px){#elementor-template-library-preview iframe{width:1440px}}@media (min-width:1440px){#elementor-template-library-preview iframe{width:1710px}}.elementor-template-library-blank-icon{font-size:65px;margin-top:45px;color:#c2cbd2;line-height:1}.elementor-template-library-blank-icon img{width:70px}.elementor-template-library-blank-icon .elementor-template-library-no-results{width:200px}.elementor-template-library-blank-title{font-size:30px;margin-top:40px}@media (max-width:1439px){.elementor-template-library-blank-title{font-size:25px}}.elementor-template-library-blank-message{font-size:18px;color:#a4afb7;margin-top:15px;font-weight:300}@media (max-width:1439px){.elementor-template-library-blank-message{font-size:16px;margin-top:10px}}#elementor-template-library-save-template-form{margin-top:40px;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:55px;font-size:16px}#elementor-template-library-save-template-name{width:500px;background-color:#fff;font-weight:300;color:#a4afb7;padding-right:25px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border:none}#elementor-template-library-save-template-submit{width:150px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}#elementor-template-library-import-form{width:95%;background-color:hsla(0,0%,100%,.5);padding:60px;border:2px dashed #d5dadf;margin:35px auto;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}#elementor-template-library-import-form:hover{background-color:hsla(0,0%,100%,.9)}#elementor-template-library-import-form-or{margin-top:15px;font-size:18px}#elementor-template-library-import-form-label{margin-top:20px;padding:15px 35px;display:inline-block}#elementor-template-library-import-form-input{display:none}#elementor-template-library-import-form.elementor-drag-over{border:3px dashed #71d7f7}#elementor-template-library-import .elementor-template-library-blank-icon{margin-top:0}#elementor-template-library-import .elementor-template-library-blank-message{margin-top:20px}.e-route-library-connect #elementor-template-library-modal .dialog-message{max-height:95vh;padding:100px 0 0;min-height:550px}#elementor-template-library-connect-logo{font-size:20px}#elementor-template-library-connect__button{display:inline-block;position:relative;z-index:1;margin-top:25px;padding:12px 24px;font-size:14px}#elementor-template-library-connect__background-image-left-1{right:22.4%;bottom:-29%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate}#elementor-template-library-connect__background-image-left-2{right:46.25%;bottom:-15.5%;-webkit-animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate;animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate}#elementor-template-library-connect__background-image-right-1{left:37%;bottom:-41%;-webkit-animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate;animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate}#elementor-template-library-connect__background-image-right-2{left:48%;bottom:-12.5%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate}.elementor-template-library-connect__background-image{position:absolute}.elementor-template-library-blank-footer{position:absolute;bottom:70px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-style:italic}@media (max-height:700px){.elementor-template-library-blank-footer{display:none}}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-nerd-box-icon{margin-top:70px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty{width:100%;margin-top:40px}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}@media (max-width:1439px){.elementor-template-library-local-column-1{width:33%}.elementor-template-library-local-column-2{width:10%}.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:15%}.elementor-template-library-local-column-5{width:27%}}@media (min-width:1440px){.elementor-template-library-local-column-1{width:25%}.elementor-template-library-local-column-2,.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:17%}.elementor-template-library-local-column-5{width:24%}}@media (max-width:1024px){.elementor-template-library-local-column-3{display:none}.elementor-template-library-local-column-5{width:41%}}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:1}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;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-tags-list__group-title .eicon-info-circle{padding-left:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-left:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#d30c5c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{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;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;right:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}#elementor-toast{position:absolute;width:280px;padding:20px;-webkit-border-radius:5px;border-radius:5px;color:#d5dadf;background-color:rgba(0,0,0,.8);z-index:10000}#elementor-toast .dialog-message{font-size:13px}#elementor-toast .dialog-buttons-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;margin-top:15px}#elementor-toast .dialog-button{color:#fcb92c;margin:0 5px;text-transform:uppercase;cursor:pointer}#elementor-toast .dialog-button:last-child{margin-left:0}.elementor-context-menu{position:absolute;width:200px;background-color:#fff;border:1px solid #e6e9ec;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.09);box-shadow:0 2px 10px 0 rgba(0,0,0,.09);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:3}.elementor-context-menu-list__group{padding:5px 0}.elementor-context-menu-list__group:not(:last-child){border-bottom:1px solid #e6e9ec}.elementor-context-menu-list__item{padding:5px 10px 5px 20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer}.elementor-context-menu-list__item--disabled{cursor:default;color:#d5dadf}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#71d7f7}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover>*{color:#fff}.elementor-context-menu-list__item__icon{width:20px;color:#c2cbd2}.elementor-context-menu-list__item__title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-context-menu-list__item__shortcut{color:#d5dadf}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#d72b3f}.elementor-context-menu .eicon-pro-icon{color:#fcb92c}.elementor-right-click-introduction{position:absolute;width:250px;padding:30px 20px;background-color:#fff;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.07);box-shadow:0 2px 10px 0 rgba(0,0,0,.07);text-align:center;-webkit-border-radius:3px;border-radius:3px}.elementor-right-click-introduction:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:7px 5px;top:-14px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-right-click-introduction .dialog-header{color:#6d7882;font-size:16px}.elementor-right-click-introduction .dialog-message{font-size:13px;line-height:1.6;margin-top:10px;color:#a4afb7}.elementor-right-click-introduction .dialog-buttons-wrapper{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;margin-top:25px}.elementor-right-click-introduction .dialog-button{font-size:11px}.elementor-right-click-introduction .dialog-ok{padding:7px 27px;text-transform:capitalize}.elementor-right-click-introduction .dialog-learn-more{color:#39b54a;margin-left:15px;cursor:pointer}#elementor-hotkeys{text-align:right}#elementor-hotkeys__content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;overflow:hidden;margin-bottom:30px}@media (max-width:1024px){#elementor-hotkeys__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}@media (max-width:1024px){#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-left:25px}}@media (min-width:1440px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-left:50px}}#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}@media (max-width:1024px){#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-right:25px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-right:50px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-right:15px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-right:40px}}.elementor-hotkeys__col{width:50%}@media (max-width:1024px){.elementor-hotkeys__col{width:100%}}.elementor-hotkeys__header,.elementor-hotkeys__list{width:100%}.elementor-hotkeys__header{padding:10px 30px;font-weight:500}@media (max-width:479px){.elementor-hotkeys__header{padding-right:10px;padding-left:10px}}.elementor-hotkeys__list{background-color:#fff;height:-webkit-calc(100% - 42px);height:calc(100% - 42px);padding:10px 20px}@media (max-width:479px){.elementor-hotkeys__list{padding:0}}@media (max-width:1024px){.elementor-hotkeys__list{margin-bottom:30px;height:auto}}.elementor-hotkeys__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;padding:20px 10px;border-bottom:1px solid #eceeef}.elementor-hotkeys__item:last-child{margin-bottom:30px}@media (max-width:479px){.elementor-hotkeys__item:last-child{margin-bottom:0}}.elementor-hotkeys__item--label{font-size:13px;font-weight:400;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-hotkeys__item--shortcut{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;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-hotkeys__item--shortcut span{position:relative;background-color:#eceeef;padding:5px 12px;margin-right:27px;-webkit-border-radius:3px;border-radius:3px}@media (max-width:479px){.elementor-hotkeys__item--shortcut span{padding:4px 9px;margin-right:23px}}.elementor-hotkeys__item--shortcut span:after{content:"+";position:absolute;right:-18px;width:9px;text-align:center}@media (max-width:479px){.elementor-hotkeys__item--shortcut span:after{right:-16px}}.elementor-hotkeys__item--shortcut span:last-child{margin-right:0}.elementor-hotkeys__item--shortcut span:last-child:after{display:none}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}#elementor-navigator{position:fixed;top:100px;width:240px;height:339px;left:30px;background-color:#fff;-webkit-box-shadow:0 2px 20px 0 rgba(0,0,0,.1);box-shadow:0 2px 20px 0 rgba(0,0,0,.1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;z-index:2;display:none}body.elementor-navigator-docked #elementor-navigator{top:0;left:0;height:100%}body:not(.elementor-navigator-docked) #elementor-navigator{-webkit-border-radius:5px;border-radius:5px}#elementor-navigator__inner{height:100%;background-color:#e6e9ec}#elementor-navigator__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding:12px 10px;background-color:#fff;border-bottom:1px solid #e6e9ec;cursor:move}#elementor-navigator__close,#elementor-navigator__toggle-all{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s;cursor:pointer}#elementor-navigator__close:not(:hover),#elementor-navigator__toggle-all:not(:hover){color:#a4afb7}#elementor-navigator__toggle-all{font-size:13px}#elementor-navigator__close{font-size:11px}#elementor-navigator__elements{height:-webkit-calc(100% - 49px);height:calc(100% - 49px);overflow:auto;position:relative}.elementor-navigator-docked #elementor-navigator__elements{height:-webkit-calc(100% - 35px);height:calc(100% - 35px)}#elementor-navigator__elements .elementor-nerd-box{padding:25px}#elementor-navigator__footer{position:absolute;width:100%;left:0;bottom:0;text-align:center;background-color:#fff;border-top:1px solid #e6e9ec;color:#a4afb7}.elementor-navigator-docked #elementor-navigator__footer{display:none}.elementor-navigator__item{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:30px;font-size:11px;border-bottom:1px solid #e6e9ec;cursor:pointer;-webkit-transition:padding .5s linear;-o-transition:padding .5s linear;transition:padding .5s linear;overflow:hidden}.elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-navigator__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}.elementor-navigator__item+.elementor-navigator__elements{display:none}.elementor-navigator__elements .elementor-empty-view{padding:10px;border-bottom:1px solid #e6e9ec}.elementor-navigator__elements .elementor-empty-view__title{margin-right:23px;color:#c2cbd2;font-size:10px;font-style:italic}.elementor-navigator__elements .ui-sortable-helper{background-color:#fff;-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);-webkit-transform:rotate(4deg);-ms-transform:rotate(4deg);transform:rotate(4deg);border:1px solid #e6e9ec;pointer-events:none}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#f1f3f5}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view{border-top:2px solid #71d7f7}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view .elementor-empty-view__title{display:none}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view+.ui-sortable-placeholder{display:none}.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle{visibility:hidden}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle{display:none}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing>*{color:#fff}.elementor-navigator__element__list-toggle{margin-left:7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;color:#a4afb7}.elementor-navigator__element__element-type{margin-left:8px}.elementor-navigator__element__title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden}.elementor-navigator__element__title__text{white-space:nowrap;-webkit-user-select:text}.elementor-navigator__element__title__text[contenteditable=true]{outline:none;color:#6d7882;background-color:#fff;padding:2px 3px;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2)}.elementor-navigator__element__title__text:not([contenteditable=true]){white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-navigator__element__toggle{position:absolute;left:15px;height:100%;z-index:0;font-size:13px}.elementor-navigator__element__indicators{position:relative;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s;padding-right:5px;z-index:91}.elementor-navigator__element__indicators:not(:hover){-webkit-transform:translateX(-webkit-calc(-100% + 8px));-ms-transform:translateX(calc(-100% + 8px));transform:translateX(calc(-100% + 8px))}.elementor-navigator__element__indicator{height:100%;width:31px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;color:#6d7882;background-color:#fff;border-right:1px solid #e6e9ec}.elementor-navigator__element__indicator:first-child{border-right:3px solid #71d7f7}.elementor-editing .elementor-navigator__element__indicator:first-child{border-color:#41c9f4}.elementor-navigator__element__indicator:hover{color:#495157}.elementor-navigator__element--hidden .elementor-navigator__element__title,.elementor-navigator__element--hidden .elementor-navigator__element__toggle{opacity:.5}.elementor-navigator__element-column{background-color:#fafbfb}.elementor-navigator__element-column>.elementor-navigator__item .elementor-navigator__element__element-type{color:#a4afb7}.elementor-navigator__element-section{background-color:#fff}#elementor-notice-bar{position:absolute;width:100%;bottom: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;height:40px;color:#fff;background-color:#6d7882;padding:0 50px}#elementor-notice-bar__message{padding-right:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-notice-bar__message a{text-decoration:underline}#elementor-notice-bar__action{text-transform:uppercase}#elementor-notice-bar__close{margin:0 20px;cursor:pointer}#elementor-notice-bar i{font-size:16px;opacity:.9}#elementor-notice-bar a{color:#fff}#elementor-notice-bar a,#elementor-notice-bar i{-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-notice-bar a:hover,#elementor-notice-bar i:hover{color:#d4d4d4}body:not(.elementor-device-desktop) #elementor-notice-bar{display:none}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header{color:#495157}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a{color:#6d7882;text-decoration:underline;font-style:italic}#elementor-preview-debug-link-text{display:inline-block}#elementor-icons-manager-modal .dialog-message{padding:0;height:700px}#elementor-icons-manager-modal .dialog-buttons-wrapper,#elementor-icons-manager-modal .dialog-content,#elementor-icons-manager__wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:479px){#elementor-icons-manager__sidebar{display:none}}#elementor-icons-manager__tab-links{margin-top:30px}#elementor-icons-manager__upload{margin:20px 45px;padding-top:35px;border-top:1px solid #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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}@media (max-width:1439px){#elementor-icons-manager__upload{margin:20px 25px}}#elementor-icons-manager__upload__title{color:#a4afb7;font-size:11px;text-transform:uppercase}#elementor-icons-manager__main{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0}@media (max-width:1439px){#elementor-icons-manager__main{padding:30px 50px 0}}@media (max-width:479px){#elementor-icons-manager__main{width:100%}}#elementor-icons-manager__search{position:relative}#elementor-icons-manager__search input{padding:8px 15px;background-color:#fff;border:none}#elementor-icons-manager__search input::-webkit-input-placeholder{font-style:italic}#elementor-icons-manager__search input:-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::placeholder{font-style:italic}#elementor-icons-manager__search i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:15px}#elementor-icons-manager__tab__wrapper{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}#elementor-icons-manager__tab__title{color:#556068;font-size:16px;font-weight:500;text-align:right}@media (max-width:479px){#elementor-icons-manager__tab__title{display:none}}#elementor-icons-manager__tab__content{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:20px;margin:20px 0}@media (max-width:1439px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(3,1fr)}}#elementor-icons-manager__promotion{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-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-top:70px}#elementor-icons-manager__promotion__icon{font-size:60px;color:#c2cbd2}#elementor-icons-manager__promotion__text{width:300px;font-size:16px;padding-top:25px}#elementor-icons-manager__promotion__link{margin-top:20px}.elementor-icons-manager__tab-link{padding:15px 45px 15px 0;font-size:14px;color:#6d7882;text-align:right;cursor:pointer;position:relative}.elementor-icons-manager__tab-link i{font-size:20px;padding-left:15px;color:#a4afb7}@media (max-width:1439px){.elementor-icons-manager__tab-link{padding:15px 25px 15px 15px;font-size:11px}.elementor-icons-manager__tab-link i{font-size:15px}}@media (max-width:1024px){.elementor-icons-manager__tab-link i{display:none}}.elementor-icons-manager__tab-link.elementor-active{background-color:#fff;-webkit-box-shadow:0 6px 20px 0 rgba(0,0,0,.1);box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.elementor-icons-manager__tab-link.elementor-active:after{content:"";position:absolute;height:100%;width:5px;top:0;right:0;background-color:#71d7f7}.elementor-icons-manager__tab-link.elementor-active i{color:#71d7f7}.elementor-icons-manager__tab__item{position:relative;height:0;padding-bottom:100%;background-color:#fff;-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05);box-shadow:0 1px 12px rgba(0,0,0,.05);-webkit-border-radius:3px;border-radius:3px;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;overflow:hidden}.elementor-icons-manager__tab__item:hover{-webkit-box-shadow:0 1px 14px rgba(0,0,0,.16);box-shadow:0 1px 14px rgba(0,0,0,.16)}.elementor-icons-manager__tab__item.elementor-selected{-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7;box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7}.elementor-icons-manager__tab__item__content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);padding:1px}.elementor-icons-manager__tab__item__icon{font-size:25px;color:#6d7882}.elementor-icons-manager__tab__item__name{color:#c2cbd2;font-size:11px;padding:13px 20px 0;max-width:100%;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}#elementor-enable-fa5-dialog a{font-style:italic;text-decoration:underline}#elementor-enable-fa5-dialog .dialog-confirm-ok,#elementor-enable-svg-dialog .dialog-confirm-ok{color:#39b54a}.elementor-color-picker__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.elementor-color-picker__swatch-tool{position:relative;-webkit-box-shadow:0 1px 8px 0 rgba(0,0,0,.15);box-shadow:0 1px 8px 0 rgba(0,0,0,.15);background-color:#fff}.elementor-color-picker__swatch-tool i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#6d7882;font-size:13px}.elementor-color-picker__swatch-placeholder{border:1px dashed #c2cbd2}.elementor-color-picker__dropping-area{margin-top:10px;padding:15px;border:1px dashed #d5dadf;text-align:center;color:#6d7882;display:none}.elementor-color-picker__dropping-area.elementor-active{border-color:#a4afb7}.elementor-color-picker__dropping-area.elementor-active i{color:#b01b1b}.elementor-color-picker__dropping-area i{font-size:15px}.elementor-color-picker__dropping-area__drag-to-delete{margin-top:10px}.elementor-color-picker__dropping-area .elementor-color-picker__swatch-placeholder{display:none}.pcr-swatch.pcr-active~.elementor-color-picker__add-swatch{background-color:#d5dadf;pointer-events:none;-webkit-box-shadow:none;box-shadow:none}.pcr-swatch.pcr-active~.elementor-color-picker__add-swatch i{color:#fff}assets/css/common.css000066600000034412152142641160010652 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content { background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; -webkit-box-sizing: border-box; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; right: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-right: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: -webkit-calc(100vh - 32px); height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: -webkit-sticky; position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; padding: 5px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-left: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: left; padding-left: 15px; } .elementor-templates-modal__header__logo-area > * { 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-templates-modal__header__logo__icon-wrapper { margin-right: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__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-templates-modal__header__item { position: relative; 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; -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-left: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-left: 20px; margin-right: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; -webkit-border-radius: 2px; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-left: 10px; margin-left: 15px; border-left: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: -webkit-linear-gradient(225deg, #f2295b, #434363); background-image: -o-linear-gradient(225deg, #f2295b, #434363); background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; -webkit-border-radius: 0.2em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } #elementor-finder__modal { background: none; } #elementor-finder__modal .dialog-widget-content { width: 650px; max-width: 98%; top: 18vh; left: -webkit-calc( 50% - 650px / 2); left: calc( 50% - 650px / 2); } #elementor-finder__modal .dialog-message { height: initial; min-height: 0; padding: 0; text-align: left; } #elementor-finder__search { padding: 14px 15px 14px 21px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); } #elementor-finder__search i { font-size: 16px; color: #a4afb7; font-weight: bold; margin-right: 15px; } #elementor-finder__search__input { border: none; background: none; outline: none; padding: 0; margin: 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; font-size: 14px; color: #495157; -webkit-box-shadow: none; box-shadow: none; } #elementor-finder__search__input::-webkit-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input:-ms-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input::-ms-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input::placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__results { max-height: 50vh; overflow: auto; } #elementor-finder__no-results { display: none; padding: 20px; color: #a4afb7; } .elementor-finder__results__category { position: relative; } .elementor-finder__results__category__title { padding: 5px 25px; color: #6d7882; background-color: #e6e9ec; font-size: 9px; text-transform: uppercase; } .elementor-finder__results__category--dynamic .elementor-finder__results__category__items { min-height: 26px; } .elementor-finder__results__category .eicon-loading { display: none; position: absolute; right: 10px; top: 30px; color: #71d7f7; font-size: 14px; } .elementor-finder__results__item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-finder__results__item a { text-decoration: none; -webkit-box-shadow: none; box-shadow: none; outline: none; } .elementor-finder__results__item.elementor-active { background-color: #71d7f7; -webkit-box-shadow: none; box-shadow: none; outline: none; } .elementor-finder__results__item.elementor-active * { color: #fff; } .elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions { display: none; } .elementor-finder__results__item__link { 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; height: 35px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-finder__results__item__icon { width: 60px; text-align: center; color: #6d7882; font-size: 17px; } .elementor-finder__results__item__title { color: #6d7882; font-size: 13px; } .elementor-finder__results__item__description { margin-left: 5px; color: #a4afb7; font-style: italic; } .elementor-finder__results__item__actions { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-finder__results__item__action { 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; height: 100%; width: 35px; } .elementor-finder__results__item__action:hover { background-color: rgba(0, 0, 0, 0.07); } /*# sourceMappingURL=common.css.map */assets/css/editor-preview-rtl.css000066600000267210152142641160013132 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8"; .elementor-control-unit-1 { width: 27px; } .elementor-control-unit-2 { width: 54px; } .elementor-control-unit-3 { width: 81px; } .elementor-control-unit-4 { width: 108px; } .elementor-control-unit-5 { width: 135px; } .elementor-tags-list { display: none; position: absolute; width: 260px; max-height: 300px; overflow: auto; padding-bottom: 5px; background-color: #fff; border: 1px solid #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; z-index: 1; } .elementor-tags-list__group-title { color: #495157; font-weight: bold; font-size: 12px; padding: 10px 15px; 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-tags-list__group-title .eicon-info-circle { padding-left: 5px; color: #71d7f7; font-size: 14px; } .elementor-tags-list__item { font-size: 10px; padding: 6px 15px; cursor: pointer; } .elementor-tags-list__item:before { content: '>'; font-size: 8px; padding-left: 5px; } .elementor-tags-list__item:hover { background-color: #e6e9ec; } .elementor-tags-list__teaser { border-top: 2px solid #d5dadf; padding-top: 4px; margin-top: 4px; } .elementor-tags-list__teaser-title { color: #6d7882; } .elementor-tags-list__teaser-text { padding: 2px 15px 8px; line-height: 1.5; font-size: 12px; } .elementor-tags-list__teaser-link { color: #D30C5C; text-decoration: underline; font-style: italic; font-weight: bold; } .elementor-dynamic-cover { 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; width: 100%; height: 27px; -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-dynamic-cover__title { padding: 0 8px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove { color: #c2cbd2; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover { color: #a4afb7; } .elementor-control-type-wysiwyg .elementor-dynamic-cover { margin-top: 10px; } .elementor-tag-settings-popup { position: absolute; width: 260px; background-color: #e6e9ec; -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); z-index: 1; } .elementor-tag-settings-popup:before { content: ''; position: absolute; top: -20px; right: 5px; border: 10px solid transparent; border-bottom-color: #fff; } .elementor-tag-settings-popup .elementor-control-type-section:first-child { margin: 0; } .elementor-tag-controls-stack-empty { background-color: #fff; padding: 10px; font-size: 13px; text-align: center; } .elementor-control-dynamic-switcher { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; height: 27px; cursor: pointer; border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; background: #fff; } .elementor-control-dynamic-switcher-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-dynamic-switcher .eicon-database { font-size: 12px; } .elementor-control-dynamic-value .elementor-control-tag-area, .elementor-control-dynamic-value .elementor-control-dynamic-switcher { display: none; } .elementor-panel-box { margin-top: 10px; background-color: #fff; } .elementor-panel-box-content { padding: 20px 20px 10px; } .elementor-button { display: inline-block; } .elementor-panel-alert { background-color: #fcfcfc; padding: 15px; border-right: 3px solid transparent; position: relative; font-size: 12px; font-weight: 300; font-style: italic; line-height: 1.5; text-align: right; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); } .elementor-panel-alert a { color: inherit; } .elementor-panel-alert.elementor-panel-alert-info { border-color: #71d7f7; background-color: #f3fcff; } .elementor-panel-alert.elementor-panel-alert-success { border-color: #39b54a; } .elementor-panel-alert.elementor-panel-alert-warning { border-color: #fcb92c; } .elementor-panel-alert.elementor-panel-alert-danger { border-color: #d72b3f; } .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; -webkit-border-radius: .25em; border-radius: .25em; text-transform: capitalize; } .elementor-label.elementor-label-default { background-color: #a4afb7; } .elementor-label.elementor-label-info { background-color: #5bc0de; } .elementor-label.elementor-label-success { background-color: #5cb85c; } .elementor-label.elementor-label-warning { background-color: #f0ad4e; } .elementor-label.elementor-label-danger { background-color: #d9534f; } .elementor-descriptor, .elementor-control-field-description { font-size: 11px; font-style: italic; line-height: 1.4; color: #a4afb7; } .elementor-controls-popover { display: none; position: absolute; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; left: 0; right: 0; margin: -4px auto 5px; padding-top: 15px; width: 90%; z-index: 10000; background-color: #fff; } .elementor-controls-popover:before { content: ''; position: absolute; top: -16px; left: 22px; border: 8px solid transparent; border-bottom-color: #fff; } .elementor-controls-popover div.elementor-control { background-color: transparent; } .elementor-controls-popover div.elementor-control:before { content: none; } #elementor-controls .pojo-widget-button-collapse { display: none; } #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon { margin-top: 20px; } .elementor-control { background-color: #fff; position: relative; padding: 0 20px 15px; } .elementor-control a { font-weight: 500; text-decoration: none; border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; } .elementor-control a:hover { border-bottom-color: inherit; } .elementor-control .elementor-control-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } .elementor-control .elementor-control-title { font-size: 12px; line-height: 1; margin-left: 5px; } .elementor-control .elementor-control-spinner { 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-control.elementor-control-type-divider { padding: 0; background-color: transparent; } .elementor-control.elementor-control-type-divider .elementor-control-content { border-width: 0; border-color: #e6e9ec; border-style: solid; border-top-width: 1px; background-color: #ffffff; height: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp { margin-top: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before { content: ''; height: 1px; display: block; margin-bottom: 15px; background-color: transparent; } .elementor-control.elementor-control-separator-before { padding-top: 15px; } .elementor-control.elementor-control-separator-before:before { content: ''; position: absolute; height: 1px; width: 100%; top: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after:after { content: ''; position: absolute; height: 1px; width: 100%; bottom: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default { padding-top: 15px; } .elementor-control.elementor-control-deprecated { color: #b01b1b; } .elementor-control.elementor-control-deprecated .elementor-control-field-description { color: #b01b1b; } .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title { display: none; } .elementor-control.elementor-hidden-control { display: none; } .elementor-control.elementor-control-type-heading .elementor-control-title { font-weight: bold; margin: 0; } body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop { display: none; } body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet { display: none; } body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile { display: none; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper { position: relative; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select { appearance: none; -webkit-appearance: none; -moz-appearance: none; font-size: 12px; 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: 5px; padding-left: 20px; cursor: pointer; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after { font-family: eicons; content: '\e8ad'; font-size: 12px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 5px; pointer-events: none; } .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message { margin-top: 5px; } .elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before { content: '\e92a'; } .elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before { content: ""; } .elementor-panel-heading { display: table; table-layout: fixed; height: 40px; padding: 0 20px; width: 100%; border-bottom: 1px solid #e6e9ec; cursor: pointer; } .elementor-panel-heading > * { display: table-cell; vertical-align: middle; } .elementor-panel-heading-toggle { width: 20px; color: #495157; } .elementor-panel-heading-title { color: #495157; font-weight: bold; } .elementor-control-wp { line-height: 1.5; } .elementor-control-wp p { margin: 15px 0; } .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-label-block > .elementor-control-content > .elementor-control-field { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { width: 100%; margin-top: 10px; } .elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-right: auto; } .elementor-control-field-description { margin-top: 10px; } .elementor-group-control-attachment_alert .elementor-control-field-description { margin-top: 0; } .elementor-required { color: #b01b1b; } .elementor-units-choices { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; } .elementor-units-choices input { display: none; } .elementor-units-choices input:not(:checked) + label { color: #a4afb7; } .elementor-units-choices input:checked + label { text-decoration: underline; } .elementor-units-choices label { cursor: pointer; padding: 0 2px; text-transform: uppercase; font-size: 9px; } .elementor-control-start-end .eicon-h-align-left, .elementor-control-start-end .eicon-h-align-right { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } .elementor-control-responsive-switchers { margin-left: 5px; --selected-option: 0; --pointer-position: var(--selected-option); position: relative; width: 2em; height: 2em; } .elementor-control-responsive-switchers__holder { position: absolute; width: 100%; top: 0; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; border: 1px transparent solid; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open { z-index: 11000; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder { top: -webkit-calc(-1 * var(--selected-option) * 2em); top: calc(-1 * var(--selected-option) * 2em); -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-responsive-switcher { 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; z-index: 2; cursor: pointer; height: 0; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; font-size: 12px; } a.elementor-responsive-switcher { color: #a4afb7; } a.elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop { color: #71d7f7; } .elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet { color: #71d7f7; } .elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile { color: #71d7f7; } .elementor-update-preview { margin: 15px 15px 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; } .elementor-update-preview-button-wrapper { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; } .elementor-update-preview-button { padding: 8px 15px; text-transform: uppercase; } .elementor-control-direction-ltr input, .elementor-control-direction-ltr textarea { direction: ltr; } .elementor-control-direction-rtl input, .elementor-control-direction-rtl textarea { direction: rtl; } .elementor-control-type-button .elementor-control-input-wrapper { text-align: left; } .elementor-control-type-button .elementor-button { width: auto; height: 26px; } .elementor-control-type-choose.elementor-label-block .elementor-choices { width: 100%; } .elementor-choices { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 27px; line-height: 27px; text-align: center; border-spacing: 1px; -webkit-border-radius: 3px; border-radius: 3px; overflow: hidden; } .elementor-choices .elementor-choices-label { border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-right: 1px solid #d5dadf; border-left: none; font-size: 12px; -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; cursor: pointer; overflow: hidden; } .elementor-choices .elementor-choices-label:nth-child(2) { -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-choices .elementor-choices-label:last-child { border-left: 1px solid #d5dadf; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-choices input { display: none; } .elementor-choices input:checked + .elementor-choices-label { color: #fff; background-color: #a4afb7; border-color: #a4afb7; } .elementor-label-inline .elementor-choices { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .rtl .elementor-control-text_align .elementor-choices, .rtl .elementor-control-align .elementor-choices, .rtl .elementor-control-position .elementor-choices { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-color .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-control-type-color .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-color.elementor-control-dynamic .pickr { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-group-control-css-filter .elementor-slider { height: 6px; -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); } .elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; margin-bottom: 5px; } .elementor-group-control-blur .elementor-slider { background: url("../images/blur.png"); -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-group-control-contrast .elementor-slider { background: url("../images/contrast.png"); -webkit-background-size: 100% 100%; background-size: 100% 100%; } .elementor-group-control-hue .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet)); background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); } .elementor-group-control-saturate .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red)); background-image: -webkit-linear-gradient(left, gray, red); background-image: -o-linear-gradient(left, gray, red); background-image: linear-gradient(to right, gray, red); } .elementor-group-control-brightness .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(black), to(white)); background-image: -webkit-linear-gradient(left, black, white); background-image: -o-linear-gradient(left, black, white); background-image: linear-gradient(to right, black, white); } .elementor-control-type-dimensions .elementor-control-dimensions { overflow: hidden; } .elementor-control-type-dimensions li { float: left; width: 20%; } .elementor-control-type-dimensions li input, .elementor-control-type-dimensions li .elementor-link-dimensions { display: block; text-align: center; width: 100%; border-color: #d5dadf; height: 27px; } .elementor-control-type-dimensions li input { border-left: none; -webkit-border-radius: 0; border-radius: 0; padding: 4px 0; } .elementor-control-type-dimensions li input:focus { border-left: solid 1px; border-color: #a4afb7; margin-left: -1px; width: -webkit-calc(100% + 1px); width: calc(100% + 1px); } .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label { color: #a4afb7; } .elementor-control-type-dimensions li .elementor-link-dimensions { border: 1px solid #d5dadf; border-left: none; background-color: #fff; padding: 0; outline: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; cursor: pointer; } .elementor-control-type-dimensions li:first-child input { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-dimensions li:first-child input:focus { border-color: #a4afb7; margin-left: 0; width: 100%; } .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-control-type-dimensions .elementor-link-dimensions.unlinked { background-color: #fff; } .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) { background-color: #a4afb7; border-color: #a4afb7; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked { color: #fff; } .elementor-control-type-icons .elementor-control-media__preview > * { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-icons .elementor-control-media__preview i { font-size: 70px; color: #6d7882; } .elementor-control-type-icons .elementor-control-media__preview svg { height: 75%; } .elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload { font-size: 15px; } .elementor-control-type-gallery .elementor-control-media__content { border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-status { font-size: 12px; height: 27px; padding-right: 10px; border-bottom: 1px solid #d5dadf; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-gallery .elementor-control-gallery-status > * { 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-control-type-gallery .elementor-control-gallery-status-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-gallery .elementor-control-gallery-content { position: relative; overflow: hidden; } .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit { opacity: 0; } .elementor-control-type-gallery .elementor-control-gallery-thumbnails { display: grid; grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); grid-gap: 10px; cursor: pointer; padding: 10px; } .elementor-control-type-gallery .elementor-control-gallery-thumbnail { width: 48px; height: 48px; -webkit-background-size: cover; background-size: cover; background-position: 50% 50%; } .elementor-control-type-gallery .elementor-control-gallery-edit { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(109, 120, 130, 0.3); padding: 10px; font-size: 11px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; pointer-events: none; cursor: pointer; opacity: 1; } .elementor-control-type-gallery .elementor-control-gallery-edit span { position: absolute; top: 10px; left: 10px; width: 21px; height: 21px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-edit span i { font-size: 11px; padding: 5px; } .elementor-control-type-gallery .elementor-control-gallery-add { width: 48px; height: 48px; color: #fff; background-color: #d5dadf; font-size: 14px; -webkit-border-radius: 0; border-radius: 0; } .elementor-control-type-gallery .elementor-control-gallery-add:hover { background-color: #c2cbd2; } .elementor-control-type-gallery .elementor-control-gallery-add i { margin: 0; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit { display: none; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content { padding: 10px; } .elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add { display: none; } .elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-gallery .elementor-control-gallery-clear { cursor: pointer; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-control-type-gallery .elementor-control-gallery-clear:hover { color: #b01b1b; } .elementor-control-type-gallery .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-hidden { display: none !important; } .elementor-control-type-icon .select2-selection__rendered .eicon { margin-right: 3px; } .elementor-control-type-image_dimensions .elementor-control-field-description { margin: 0 0 15px; line-height: 1.4; } .elementor-control-type-image_dimensions .elementor-control-input-wrapper { overflow: hidden; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field { width: 65px; float: right; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description { color: #a4afb7; } .elementor-control-type-image_dimensions .elementor-image-dimensions-separator { width: 20px; text-align: center; float: right; padding-top: 4px; } .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-control-type-image_dimensions .elementor-image-dimensions-apply-button { float: left; height: 27px; width: 65px; } .elementor-control-media.elementor-media-empty .elementor-control-media-area { display: none; } .elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button { display: none; } .elementor-control-media .elementor-control-input-wrapper { border: 1px solid #d5dadf; } .elementor-control-media .eicon-plus-circle { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #fff; font-size: 20px; } .elementor-control-media-upload-button { background-color: #d5dadf; } .elementor-control-media__preview { height: 100%; -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-control-media-area { background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); -webkit-background-size: 16px 16px; background-size: 16px 16px; background-position: 0 0, 8px 8px; background-color: #f6f6f6; } .elementor-control-media-area:not(:hover) .elementor-control-media__remove { display: none; } .elementor-control-media-area .eicon-video-camera { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: rgba(255, 255, 255, 0.7); font-size: 21px; } .elementor-control-media .elementor-control-media__content { cursor: pointer; overflow: hidden; } .elementor-control-media .elementor-control-media__content:hover:after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, 0.2); pointer-events: none; } .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools { bottom: -30px; } .elementor-control-media__content { -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools { position: absolute; bottom: 0; left: 0; right: 0; height: 27px; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools > *:not(:first-child) { margin-right: 1px; } .elementor-control-media__tool { 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; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; color: #fff; background-color: rgba(109, 120, 130, 0.85); font-size: 11px; -webkit-transition: background .3s; -o-transition: background .3s; transition: background .3s; } .elementor-control-media__tool:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-media__remove { position: absolute; z-index: 1; 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; top: 10px; left: 10px; width: 20px; height: 20px; font-size: 11px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; } .elementor-control-media__remove:hover { background-color: white; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); } .elementor-control-media .elementor-control-dynamic-switcher { border: none; -webkit-border-radius: 0; border-radius: 0; background-color: rgba(109, 120, 130, 0.85); color: #fff; } .elementor-control-media .elementor-control-dynamic-switcher:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper { border: none; } .elementor-control-type-number.elementor-control-dynamic input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; border-left: none; } .elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order .elementor-control-oreder-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-order input { display: none; } .elementor-control-type-order input:checked + .elementor-control-order-label { -webkit-transform: scale(1, -1); -ms-transform: scale(1, -1); transform: scale(1, -1); } .elementor-control-type-order select { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label { border-color: #d5dadf; } .elementor-control-type-order select:focus ~ .elementor-control-order-label { border-color: #a4afb7; } .elementor-control-type-order .elementor-control-order-label { position: relative; padding: 0; width: 40px; border: 1px solid; font-size: 10px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; margin-left: -3px; background-color: #fff; cursor: pointer; } .elementor-control-type-order .elementor-control-order-label i { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-popover_toggle input { display: none; } .elementor-control-type-popover_toggle label { cursor: pointer; } .elementor-control-type-popover_toggle .elementor-control-input-wrapper { direction: ltr; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label { color: #71d7f7; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label { display: none; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label { color: #c2cbd2; margin-left: 5px; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label { height: 27px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #d5dadf; } .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) { padding-right: 10px; padding-left: 10px; padding-bottom: 10px; } .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove { display: none; } .elementor-control-type-repeater .elementor-repeater-fields { margin: 10px 0; } .elementor-control-type-repeater .elementor-repeater-row-controls { border: 1px solid #d5dadf; border-top-width: 0; padding-top: 15px; } .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) { display: none; } .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-control-type-repeater .elementor-repeater-row-tools:hover { background-color: #a4afb7; } .elementor-control-type-repeater .elementor-repeater-row-tools > div { display: table-cell; text-align: center; vertical-align: middle; cursor: pointer; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) { background-color: #fff; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover { opacity: .95; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title { text-align: right; padding: 0 10px; font-size: 12px; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg { margin-left: 5px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] { width: 1em; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool { width: 40px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable { cursor: move; width: 10px; color: #fff; } .elementor-control-type-repeater .elementor-button-wrapper { text-align: center; padding-top: 5px; } .elementor-control-type-section { margin-top: 10px; padding: 0; } .elementor-control-type-section.elementor-open { padding-bottom: 15px; } .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before { display: none; } .elementor-shadow-box .elementor-shadow-slider { margin-top: 10px; } .elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-slider.elementor-control-dynamic input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper { display: block; } .elementor-control-type-slider--multiple { padding-bottom: 40px; } .elementor-control-type-slider--multiple .elementor-slider { margin-top: 12px; width: 98%; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle { -webkit-border-radius: 0; border-radius: 0; width: 10px; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(-4px); -ms-transform: translateY(calc(50% - 14px)) translateX(-4px); transform: translateY(calc(50% - 14px)) translateX(-4px); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after { content: ''; position: absolute; top: 2px; height: 12px; width: 11px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after { left: 5px; -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after { right: 5px; -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-slider .elementor-control-input-wrapper { 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-control-type-slider .elementor-dynamic-cover { margin-top: 10px; } .elementor-slider { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 4px; background-color: #d5dadf; -webkit-border-radius: 5px; border-radius: 5px; position: relative; cursor: pointer; } .elementor-slider-input { margin-right: 10px; } .elementor-slider__extra { position: relative; } .elementor-slider__labels { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-slider__label { font-size: 9px; color: #c2cbd2; } .elementor-slider__scales { position: absolute; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: space-evenly; -webkit-justify-content: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; width: 100%; margin-top: 4px; } .elementor-slider__scale { width: 1px; height: 21px; background-color: #a4afb7; } .elementor-slider .noUi-handle { height: 16px; width: 16px; background-color: #fff; left: 0; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(-8px); -ms-transform: translateY(calc(50% - 14px)) translateX(-8px); transform: translateY(calc(50% - 14px)) translateX(-8px); position: absolute; -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 50%; border-radius: 50%; } .elementor-slider .noUi-connects { position: absolute; width: 100%; height: 4px; } .elementor-slider .noUi-connect { position: absolute; z-index: 0; top: 0; left: 0; height: 100%; width: 100%; will-change: transform; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; background-color: #a4afb7; } .elementor-slider .noUi-tooltip { position: absolute; top: -webkit-calc(100% + 5px); top: calc(100% + 5px); left: -webkit-calc(50% - 4px); left: calc(50% - 4px); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); font-size: 10px; } .elementor-control-type-structure .elementor-control-field { display: initial; } .elementor-control-type-structure .elementor-control-structure-preset { padding: 3px; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; cursor: pointer; height: 50px; } .elementor-control-type-structure .elementor-control-structure-preset svg { height: 100%; } .elementor-control-type-structure .elementor-control-structure-preset path { fill: #e6e9ec; } .elementor-control-type-structure .elementor-control-structure-reset { padding: 15px 20px 0; font-size: 11px; cursor: pointer; color: #a4afb7; border-top: 1px solid #e6e9ec; margin: 0 -20px; } .elementor-control-type-structure .elementor-control-structure-title { margin: 10px -20px 0; } .elementor-control-type-structure .elementor-control-structure-title:before { height: 10px; -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); } .elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input { display: none; } .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path { fill: #a4afb7; } .elementor-control-type-structure .elementor-control-structure-preset-wrapper { margin-bottom: 15px; } .elementor-control-type-structure .elementor-control-structure-preset-title { text-align: center; padding-top: 5px; font-style: italic; font-size: 11px; color: #a4afb7; } .elementor-control-type-switcher .elementor-control-input-wrapper { text-align: left; } .elementor-control-type-switcher .elementor-switch { position: relative; display: inline-block; vertical-align: top; height: 20px; background-color: white; -webkit-border-radius: 18px; border-radius: 18px; cursor: pointer; } .elementor-control-type-switcher .elementor-switch-input { display: none; } .elementor-control-type-switcher .elementor-switch-label { position: relative; display: block; height: inherit; font-size: 7px; text-transform: uppercase; background: #eceeef; -webkit-border-radius: inherit; border-radius: inherit; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); -webkit-transition: 0.15s ease-out; -o-transition: 0.15s ease-out; transition: 0.15s ease-out; -webkit-transition-property: opacity, background; -o-transition-property: opacity, background; transition-property: opacity, background; } .elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after { position: absolute; top: 0; width: 50%; text-align: center; line-height: 20px; -webkit-transition: inherit; -o-transition: inherit; transition: inherit; } .elementor-control-type-switcher .elementor-switch-label:before { content: attr(data-off); right: 3px; color: #a4afb7; text-shadow: 0 1px rgba(255, 255, 255, 0.5); } .elementor-control-type-switcher .elementor-switch-label:after { content: attr(data-on); left: 3px; color: white; text-shadow: 0 1px rgba(0, 0, 0, 0.2); opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label { background: #71d7f7; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before { opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after { opacity: 1; } .elementor-control-type-switcher .elementor-switch-handle { position: absolute; top: 1px; left: 1px; width: 18px; height: 18px; background: white; -webkit-border-radius: 10px; border-radius: 10px; -webkit-transition: left 0.15s ease-out; -o-transition: left 0.15s ease-out; transition: left 0.15s ease-out; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle { left: initial; right: 1px; -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); } .elementor-control-type-tabs { font-size: 0.8em; text-transform: uppercase; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-tab { text-align: center; width: 100%; padding: 0; line-height: 27px; border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-left: 1px solid #d5dadf; cursor: pointer; } .elementor-control-type-tab:first-child { border-right: 1px solid #d5dadf; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-control-type-tab:last-child { -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-control-type-tab.elementor-tab-active { background-color: #a4afb7; border-color: #a4afb7; color: #ffffff; } .elementor-tab-close { display: none !important; } .elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; border-right-width: 0; } .elementor-control-type-textarea .elementor-control-dynamic-switcher { -webkit-border-radius: 0px 3px; border-radius: 0px 3px; } .elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher { position: absolute; top: 0; left: 0; } .elementor-control-type-textarea .elementor-control-input-wrapper { position: relative; } .elementor-control-type-textarea textarea { display: block; } .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher { display: none; } .elementor-control-type-url.elementor-control-dynamic .elementor-input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-field { position: relative; } .elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-url .elementor-control-input-wrapper { 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-control-type-url .elementor-control-url-more { 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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; border: 1px solid #d5dadf; border-left: none; cursor: pointer; } .elementor-control-type-url .elementor-control-url-more i { font-size: 12px; } .elementor-control-type-url .elementor-control-url-more-options { display: none; padding-top: 10px; } .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description { margin-top: 10px; } .elementor-control-type-url .elementor-control-url-option { 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-control-type-url .elementor-control-url-option:not(:last-child) { padding-bottom: 10px; } .elementor-control-type-url .elementor-control-url-option input, .elementor-control-type-url .elementor-control-url-option label { cursor: pointer; } .elementor-control-type-url .elementor-control-url-option input { margin: 0; padding: 0; -webkit-border-radius: 2px; border-radius: 2px; margin-left: 5px; -webkit-appearance: none; -moz-appearance: none; outline: none; content: none; height: 15px; width: 15px; border: 1px solid #d5dadf; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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-control-type-url .elementor-control-url-option input:checked { background: #71d7f7; border: none; } .elementor-control-type-url .elementor-control-url-option input:checked:before { display: block; content: ""; width: 4px; height: 7px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } .elementor-control-type-url .elementor-control-url-option label { font-size: 12px; } .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more { display: none; } .elementor-control-type-url .elementor-control-url-external-show .elementor-input, .elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-url-autocomplete-spinner { display: none; position: absolute; top: 5px; right: 0px; width: 10px; height: 10px; font-size: 10px; color: #D4D4D4; } .elementor-control-type-url .elementor-control-url__custom-attributes { margin-top: 10px; } .elementor-control-type-url .elementor-control-url__custom-attributes label { display: block; } .elementor-control-type-url .elementor-control-url__custom-attributes input { width: 100%; margin-top: 10px; } .elementor-control-type-url .elementor-input { direction: ltr; } .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more { border-color: #d5dadf; } .elementor-control-type-url .elementor-input:focus ~ div { border-color: #a4afb7; } .elementor-control-type-url .elementor-control-dynamic-switcher { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-autocomplete-menu { position: absolute; background: #fff; color: #495157; border: 1px solid #a4afb7; margin: 0; list-style: none; padding: 4px 0; height: auto; width: 100%; min-width: 260px; max-width: 300px; max-height: 200px; overflow-y: auto; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; cursor: default; z-index: 1; } .elementor-autocomplete-menu .ui-menu-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-self: baseline; -ms-flex-item-align: baseline; align-self: baseline; padding: 5px 8px; font-size: 12px; width: 100%; line-height: 1.2; cursor: pointer; } .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus { background: #e6e9ec; } .elementor-autocomplete-menu .elementor-autocomplete-item-info { font-size: 10px; padding-top: 2px; } .elementor-control-type-wp_widget .widget-inside { display: block; } .elementor-control-type-wp_widget .quicktags-toolbar input { width: auto; } .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container { margin-top: 10px; } .elementor-control-type-wysiwyg * { -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-control-type-wysiwyg .wp-editor-container { border: 1px solid #e6e9ec; } .elementor-control-type-wysiwyg .wp-editor-tabs { border: 1px solid #d5dadf; border-bottom: none; -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-control-type-wysiwyg #insert-media-button { height: initial; line-height: 24px; font-size: 10px; background-color: #e6e9ec; min-height: initial; } .elementor-control-type-wysiwyg .ed_button { height: 22px; width: initial; } .elementor-control-type-wysiwyg .wp-media-buttons-icon { height: 14px; margin: 0; } .elementor-control-type-wysiwyg .wp-media-buttons-icon:before { font-size: 14px; } .elementor-control-type-wysiwyg .wp-switch-editor { position: static; border: none; margin: 0; color: #6d7882; font-size: 10px; padding: 3px 9px 4px; } .elementor-control-type-wysiwyg .switch-html { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-wysiwyg .html-active .switch-tmce { background-color: transparent; } .elementor-control-type-wysiwyg .html-active .switch-html { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-tmce { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-html { background-color: transparent; } .elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .mce-toolbar-grp > div { padding: 0 3px; } .elementor-control-type-wysiwyg .elementor-wp-editor { -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-control-type-wysiwyg .mce-ico { color: #6d7882; font-size: 16px; } .elementor-control-type-wysiwyg .mce-btn { margin-right: 0; margin-left: 0; } .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active { border-color: #d5dadf; } .elementor-control-type-wysiwyg .mce-path { padding: 5px 10px; } .elementor-control-type-wysiwyg .mce-path-item { font-size: 12px; color: #6d7882; } .elementor-control-type-wysiwyg .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-text .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-text input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .ui-resizable-n { top: -5px; } .ui-resizable-e { right: -5px; } .ui-resizable-s { bottom: -5px; } .ui-resizable-w { left: -5px; } .ui-resizable-ne { top: -5px; right: -5px; } .ui-resizable-nw { top: -5px; left: -5px; } .ui-resizable-se { bottom: -5px; right: -5px; } .ui-resizable-sw { bottom: -5px; left: -5px; } .ui-resizable-n, .ui-resizable-s { left: 0; height: 10px; width: 100%; cursor: ns-resize; } .ui-resizable-e, .ui-resizable-w { top: 0; height: 100%; width: 10px; cursor: ew-resize; } .ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw { height: 15px; width: 15px; } .ui-resizable-nw, .ui-resizable-se { cursor: nwse-resize; } .ui-resizable-ne, .ui-resizable-sw { cursor: nesw-resize; } .ui-resizable-handle { position: absolute; } .ui-resizable-resizing { pointer-events: none; } @-webkit-keyframes placeholder-section { 0% { height: 0; opacity: 0; } 100% { height: 40px; opacity: .9; } } @keyframes placeholder-section { 0% { height: 0; opacity: 0; } 100% { height: 40px; opacity: .9; } } @-webkit-keyframes placeholder-widget { 0% { height: 0; opacity: 0; } 100% { height: 10px; opacity: .9; } } @keyframes placeholder-widget { 0% { height: 0; opacity: 0; } 100% { height: 10px; opacity: .9; } } @-webkit-keyframes section-outline { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes section-outline { 0% { opacity: 0; } 100% { opacity: 1; } } body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content { overflow: visible; } body.elementor-editor-active .elementor.elementor-edit-mode .article { 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-edit-area .animated { -webkit-animation-fill-mode: none !important; animation-fill-mode: none !important; } .elementor-edit-area ul.elementor-editor-element-settings { word-break: normal; padding: 0; } .elementor-edit-area .gallery { opacity: 1; } .pen { position: relative; outline: none; } .pen:not([data-elementor-inline-editing-toolbar="advanced"]) { white-space: pre-wrap; } .pen-menu { -webkit-box-shadow: 1px 2px 3px -2px #222; box-shadow: 1px 2px 3px -2px #222; background-color: #6d7882; position: fixed; overflow: hidden; -webkit-border-radius: 3px; border-radius: 3px; z-index: 9999; } .pen-menu:after { top: 100%; content: ''; position: absolute; border: 6px solid transparent; border-top-color: #6d7882; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .pen-menu-below:after { top: 0; -webkit-transform: translateX(-50%) translateY(-100%) rotate(180deg); -ms-transform: translateX(-50%) translateY(-100%) rotate(180deg); transform: translateX(-50%) translateY(-100%) rotate(180deg); } .pen-icon { position: relative; 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; height: 35px; padding: 0 10px; font-size: 21px; color: #d5dadf; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .pen-icon:hover { background: #556068; } .pen-icon[data-group], .pen-icon[data-action="closeGroup"] { display: none; } .pen-icon[data-action="close"]:before { content: ''; position: absolute; right: 0; height: 60%; width: 1px; background-color: #556068; } .pen-icon.active { background-color: #556068; -webkit-box-shadow: inset 2px 2px 4px #556068; box-shadow: inset 2px 2px 4px #556068; } .pen-group-icon:after { font-family: eicons; font-size: 12px; content: '\e92a'; padding-left: 4px; color: #71d7f7; } .pen-input-wrapper { -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .pen-input-wrapper .pen-url-input { font-size: 12px; line-height: 1.5; padding: 0; padding-right: 10px; padding-left: 10px; width: 250px; direction: ltr; } .pen-input-wrapper .pen-url-input, .pen-input-wrapper .pen-url-input:focus { background-color: transparent; border: none; outline: none; -webkit-box-shadow: none; box-shadow: none; color: #fff; } .pen-input-wrapper .pen-url-input::-webkit-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input:-ms-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input::-ms-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input::placeholder { color: #d5dadf; } .pen-input-label { margin: 0; margin-left: -1px; } .pen-placeholder:before { content: attr(data-pen-placeholder); position: absolute; font-weight: normal; color: #757575; opacity: 0.6; } .pen-external-url-checkbox { display: none; } .pen-external-url-checkbox:checked + i { color: #fff; } .elementor-inline-editing i:not([class]) { font-style: italic; } .elementor-inline-editing b { font-weight: bold; } .elementor-inline-editing u { text-decoration: underline; } html.elementor-html { margin-top: 0 !important; } .elementor-edit-area { position: relative; } .elementor.loading { opacity: 0.5; } .elementor-edit-area-active .elementor-top-section > .elementor-container > .elementor-row { min-height: 40px; } .elementor-edit-area-active .elementor-inner-section:first-child { margin-top: 15px; } .elementor-edit-area-active .elementor-inner-section > .elementor-container > .elementor-row { min-height: 40px; } .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap { min-height: 30px; } @media (min-width: 768px) { .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap { margin: 10px; } } .elementor-edit-area-active .elementor-column { min-width: 25px; } .elementor-edit-area-active .elementor-widget.elementor-loading { opacity: .3; } .elementor-edit-area-active .elementor-widget.elementor-element-editable, .elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover { -webkit-box-shadow: 0 0 0 1px #71d7f7; box-shadow: 0 0 0 1px #71d7f7; } .elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings { display: none; } .elementor-edit-area-active .elementor-widget.ui-draggable-dragging { pointer-events: none; } .elementor-edit-area-active .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; } .elementor-edit-area-active .handle { display: none; } .elementor-edit-area-active .elementor-inline-editing { min-height: 15px; } .elementor-edit-area-active .elementor-edit-hidden { display: none; } .elementor-section-wrap:empty { min-height: 25px; } .elementor-element > .elementor-element-overlay { position: absolute; top: 0; left: 0; letter-spacing: 0; z-index: 9998; pointer-events: none; } .elementor-element-empty .elementor-sortable-placeholder { display: none; } .elementor-element.elementor-widget-empty { background-color: rgba(213, 218, 223, 0.8); } .elementor-element.elementor-widget-empty .elementor-widget-empty-icon { color: #c2cbd2; font-size: 22px; display: block; text-align: center; padding: 10px 0; } .elementor-element:not(:hover):not(.elementor-element-editable) > .elementor-element-overlay .elementor-editor-element-settings { display: none; } .elementor-element--toggle-edit-tools > .elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active) ~ * { width: 0; font-size: 0; } .elementor-element[data-side="top"]:before, .elementor-element[data-side="bottom"] + .elementor-element: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: placeholder-widget 500ms; animation: placeholder-widget 500ms; display: block; } .elementor-element[data-side="bottom"]:last-child: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: placeholder-widget 500ms; animation: placeholder-widget 500ms; display: block; } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { cursor: -webkit-grab; cursor: grab; } .elementor-element.elementor-absolute:active, .elementor-element.elementor-fixed:active { cursor: -webkit-grabbing; cursor: grabbing; } .elementor-element.elementor-absolute .eicon-edit:before, .elementor-element.elementor-fixed .eicon-edit:before { content: '\e902'; } .elementor-section > .elementor-element-overlay { right: 0; bottom: 0; } .elementor-section > .elementor-element-overlay:after { position: absolute; left: 2px; right: 2px; top: 2px; bottom: 2px; outline: 2px solid #71d7f7; -webkit-animation: section-outline .75s; animation: section-outline .75s; } .elementor-section:hover > .elementor-element-overlay:after, .elementor-section.elementor-element-editable > .elementor-element-overlay:after { content: ''; } .elementor-section-filled .elementor-sortable-placeholder.elementor-column { display: none; } .elementor-section-filled .elementor-row.elementor-draggable-over { border: 1px solid #d72b3f; } .elementor-column > .elementor-element-overlay { right: 0; bottom: 0; } .elementor-column > .elementor-element-overlay:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; outline: 1px dashed #6d7882; } .elementor-column:hover > .elementor-element-overlay, .elementor-column.elementor-element-editable > .elementor-element-overlay { border: 1px solid #ffffff; } .elementor-column:hover > .elementor-element-overlay:after, .elementor-column.elementor-element-editable > .elementor-element-overlay:after { content: ''; } .elementor-column.elementor-dragging-on-child > .elementor-element-overlay { border: 1px solid #71d7f7; } .elementor-column.elementor-dragging-on-child > .elementor-element-overlay:after { display: none; } .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w { cursor: col-resize; width: 7px; position: absolute; left: -5px; top: 0; height: 100%; } .elementor-column:last-of-type > .ui-resizable-e, .elementor-column:last-of-type > .ui-resizable-w { display: none !important; } @media (max-width: 1024px) { .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w { display: none !important; } } .elementor-editor-element-settings { position: absolute; 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: normal; font-style: normal; line-height: 1; z-index: 1; pointer-events: all; } .elementor-editor-element-setting.elementor-editor-element-save { display: none; } @media (min-width: 1025px) { .elementor-editor-element-edit { cursor: move; } } .elementor-editor-section-settings { height: 24px; top: 1px; right: 50%; -webkit-transform: translateX(50%) translateY(-100%); -ms-transform: translateX(50%) translateY(-100%); transform: translateX(50%) translateY(-100%); background-color: #71d7f7; -webkit-border-radius: 5px 5px 0 0; border-radius: 5px 5px 0 0; -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); } .elementor-editor-section-settings i.eicon-handle { font-size: 16px; } .elementor-editor-section-settings .elementor-editor-element-setting:hover { background-color: #10bcf2; } .elementor-editor-section-settings .elementor-editor-element-setting:first-child { -webkit-border-radius: 0 5px 0 0; border-radius: 0 5px 0 0; } .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before { content: ''; position: absolute; border: solid transparent; top: 2px; border-left-color: #71d7f7; border-width: 22px 0 0 12px; left: -webkit-calc(100% - 1px); left: calc(100% - 1px); } .elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before { border-left-color: #10bcf2; } .elementor-editor-section-settings .elementor-editor-element-setting:last-child { -webkit-border-radius: 5px 0 0 0; border-radius: 5px 0 0 0; } .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after { content: ''; position: absolute; border: solid transparent; top: 2px; border-right-color: #71d7f7; border-width: 22px 12px 0 0; right: -webkit-calc(100% - 1px); right: calc(100% - 1px); } .elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after { border-right-color: #10bcf2; } .elementor-section--handles-inside .elementor-editor-section-settings { -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-border-radius: 0 0 5px 5px; border-radius: 0 0 5px 5px; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child { -webkit-border-radius: 0 0 5px 0; border-radius: 0 0 5px 0; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before { top: 0; border-width: 0 0 22px 12px; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child { -webkit-border-radius: 0 0 0 5px; border-radius: 0 0 0 5px; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after { top: 0; border-width: 0 12px 22px 0; } .elementor-editor-column-settings { top: -1px; right: -1px; -webkit-border-radius: 0 0 0 3px; border-radius: 0 0 0 3px; overflow: hidden; } .elementor-editor-column-settings .elementor-editor-element-setting { background-color: #495157; } .elementor-editor-column-settings .elementor-editor-element-setting:not(:hover) { 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(to bottom, #6d7882, #556068); } .elementor-editor-widget-settings { z-index: 2; top: -1px; left: -1px; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; -webkit-border-radius: 0 0 3px 0; border-radius: 0 0 3px 0; overflow: hidden; } .elementor-editor-widget-settings .elementor-editor-element-setting { background-color: #10bcf2; } .elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover) { 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(to top, #41c9f4, #71d7f7); } .elementor-empty-view { position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1; } .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-first-add .elementor-icon { font-size: 19px; color: #a4afb7; cursor: pointer; } .elementor-sortable-helper { position: absolute; -webkit-border-radius: 3px; border-radius: 3px; background-color: #fff; text-align: center; color: #556068; -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); cursor: move; } .elementor-sortable-helper .icon { font-size: 28px; padding-top: 15px; line-height: 1; } .elementor-sortable-helper .elementor-element-title-wrapper { display: table; width: 100%; } .elementor-sortable-helper .title { font-size: 11px; font-family: Arial, Helvetica, sans-serif; font-weight: normal; font-style: normal; display: table-cell; vertical-align: middle; height: 40px; } .elementor-editor-content-only .elementor-first-add { display: none; } .elementor-editor-content-only .elementor-section > .elementor-element-overlay { display: none; } .elementor-editor-content-only .elementor-section > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-section:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-section.elementor-element-editable > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-column > .elementor-element-overlay { display: none; } .elementor-editor-content-only .elementor-column > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-column:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-column.elementor-element-editable > .elementor-element-overlay:after { display: none; } @media (min-width: 1025px) { .elementor-editor-content-only .elementor-editor-element-edit { cursor: pointer; } } .elementor-sortable-placeholder:not(.elementor-column-placeholder) { background-color: #71d7f7; -webkit-animation-duration: 250ms; animation-duration: 250ms; opacity: .9; width: 100%; -webkit-align-self: stretch; -ms-flex-item-align: stretch; align-self: stretch; } .elementor-section-placeholder { height: 40px; -webkit-animation-name: placeholder-section; animation-name: placeholder-section; } .elementor-column-placeholder { position: relative; } .elementor-column-placeholder:before, .elementor-column-placeholder:after { 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: placeholder-widget; animation-name: placeholder-widget; } .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: placeholder-widget 500ms; animation: placeholder-widget 500ms; 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-first-add.elementor-html5dnd-current-element .elementor-icon { display: none; } .elementor-draggable-over[data-dragged-element="section"][data-dragged-is-inner="true"] .elementor-inner-column .elementor-sortable-placeholder { display: none; } .elementor-add-section { all: initial; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; max-width: 1160px; position: relative; } .elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner { border: 2px dashed #d5dadf; background-color: rgba(255, 255, 255, 0.5); } .elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner { border: 3px dashed #71d7f7; } .elementor-add-section[data-view="choose-action"] .elementor-select-preset { display: none; } .elementor-add-section[data-view="select-preset"] .elementor-add-new-section { display: none; } .elementor-add-section-inner { text-align: center; margin: 20px; padding: 40px 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-add-new-section { display: inline-block; } .elementor-add-new-section .elementor-add-section-area-button { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; height: 40px; width: 40px; color: #fff; font-size: 16px; -webkit-border-radius: 50%; border-radius: 50%; -webkit-transition: all .3s; -o-transition: all .3s; transition: all .3s; cursor: pointer; } .elementor-add-new-section .elementor-add-section-area-button:hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-add-new-section .elementor-add-section-area-button:active { -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); } .elementor-add-new-section .elementor-add-section-button { background-color: #D30C5C; } .elementor-add-new-section .elementor-add-template-button { background-color: #6d7882; margin-right: 5px; } .elementor-add-section-drag-title { font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; font-style: italic; line-height: 1; color: #556068; margin-top: 15px; } .elementor-add-section-close { position: absolute; right: 40px; top: 40px; 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; max-width: 33.333%; } .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; width: 100%; -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } #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"] { -webkit-border-radius: 3px 0 0 3px; 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"] { -webkit-border-radius: 0 3px 3px 0; 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-element-overlay, .elementor-editor-preview .elementor-empty, .elementor-editor-preview .elementor-add-section, .elementor-editor-preview .elementor-add-section-inline, .elementor-editor-preview .elementor-empty-view, .elementor-editor-preview .elementor-widget-empty { display: none; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone { display: inherit; background: -webkit-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); background: -o-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); background: repeating-linear-gradient(125deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); border: 1px solid rgba(0, 0, 0, 0.02); } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section > .elementor-element-overlay, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section > .elementor-element-overlay, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone.elementor-section > .elementor-element-overlay { background-color: #d5dadf; mix-blend-mode: color; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone.elementor-section:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.6); z-index: 9997; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-container, [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-column-wrap, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-container, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-column-wrap, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone > .elementor-widget-container, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone > .elementor-column-wrap { -webkit-filter: opacity(0.4) saturate(0); filter: opacity(0.4) saturate(0); } /*# sourceMappingURL=editor-preview-rtl.css.map */assets/css/frontend-msie.css000066600000022165152142641160012136 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-msie ul.products, .elementor-msie .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-msie ul.products li.product, .elementor-msie ul.products .elementor-grid-item, .elementor-msie .elementor-grid li.product, .elementor-msie .elementor-grid .elementor-grid-item { word-break: break-word; } .elementor-msie .elementor-grid-1 .elementor-grid-item { width: 100%; } .elementor-msie .elementor-grid-2 .elementor-grid-item { width: 50%; } .elementor-msie .elementor-grid-3 .elementor-grid-item { width: 33.3333333333%; } .elementor-msie .elementor-grid-4 .elementor-grid-item { width: 25%; } .elementor-msie .elementor-grid-5 .elementor-grid-item { width: 20%; } .elementor-msie .elementor-grid-6 .elementor-grid-item { width: 16.6666666667%; } .elementor-msie .elementor-grid-7 .elementor-grid-item { width: 14.2857142857%; } .elementor-msie .elementor-grid-8 .elementor-grid-item { width: 12.5%; } .elementor-msie .elementor-grid-9 .elementor-grid-item { width: 11.1111111111%; } .elementor-msie .elementor-grid-10 .elementor-grid-item { width: 10%; } .elementor-msie .elementor-grid-11 .elementor-grid-item { width: 9.0909090909%; } .elementor-msie .elementor-grid-12 .elementor-grid-item { width: 8.3333333333%; } @media (max-width: 1024px) { .elementor-msie .elementor-grid-tablet-1 .elementor-grid-item { width: 100%; } .elementor-msie .elementor-grid-tablet-2 .elementor-grid-item { width: 50%; } .elementor-msie .elementor-grid-tablet-3 .elementor-grid-item { width: 33.3333333333%; } .elementor-msie .elementor-grid-tablet-4 .elementor-grid-item { width: 25%; } .elementor-msie .elementor-grid-tablet-5 .elementor-grid-item { width: 20%; } .elementor-msie .elementor-grid-tablet-6 .elementor-grid-item { width: 16.6666666667%; } .elementor-msie .elementor-grid-tablet-7 .elementor-grid-item { width: 14.2857142857%; } .elementor-msie .elementor-grid-tablet-8 .elementor-grid-item { width: 12.5%; } .elementor-msie .elementor-grid-tablet-9 .elementor-grid-item { width: 11.1111111111%; } .elementor-msie .elementor-grid-tablet-10 .elementor-grid-item { width: 10%; } .elementor-msie .elementor-grid-tablet-11 .elementor-grid-item { width: 9.0909090909%; } .elementor-msie .elementor-grid-tablet-12 .elementor-grid-item { width: 8.3333333333%; } } @media (max-width: 767px) { .elementor-msie .elementor-grid-mobile-1 .elementor-grid-item { width: 100%; } .elementor-msie .elementor-grid-mobile-2 .elementor-grid-item { width: 50%; } .elementor-msie .elementor-grid-mobile-3 .elementor-grid-item { width: 33.3333333333%; } .elementor-msie .elementor-grid-mobile-4 .elementor-grid-item { width: 25%; } .elementor-msie .elementor-grid-mobile-5 .elementor-grid-item { width: 20%; } .elementor-msie .elementor-grid-mobile-6 .elementor-grid-item { width: 16.6666666667%; } .elementor-msie .elementor-grid-mobile-7 .elementor-grid-item { width: 14.2857142857%; } .elementor-msie .elementor-grid-mobile-8 .elementor-grid-item { width: 12.5%; } .elementor-msie .elementor-grid-mobile-9 .elementor-grid-item { width: 11.1111111111%; } .elementor-msie .elementor-grid-mobile-10 .elementor-grid-item { width: 10%; } .elementor-msie .elementor-grid-mobile-11 .elementor-grid-item { width: 9.0909090909%; } .elementor-msie .elementor-grid-mobile-12 .elementor-grid-item { width: 8.3333333333%; } } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-1 ul.products li.product { width: 100%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-2 ul.products li.product { width: 50%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-3 ul.products li.product { width: 33.3333333333%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-4 ul.products li.product { width: 25%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-5 ul.products li.product { width: 20%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-6 ul.products li.product { width: 16.6666666667%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-7 ul.products li.product { width: 14.2857142857%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-8 ul.products li.product { width: 12.5%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-9 ul.products li.product { width: 11.1111111111%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-10 ul.products li.product { width: 10%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-11 ul.products li.product { width: 9.0909090909%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-12 ul.products li.product { width: 8.3333333333%; } @media (max-width: 1024px) { .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-1 ul.products li.product { width: 100%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-2 ul.products li.product { width: 50%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-3 ul.products li.product { width: 33.3333333333%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-4 ul.products li.product { width: 25%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-5 ul.products li.product { width: 20%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-6 ul.products li.product { width: 16.6666666667%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-7 ul.products li.product { width: 14.2857142857%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-8 ul.products li.product { width: 12.5%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-9 ul.products li.product { width: 11.1111111111%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-10 ul.products li.product { width: 10%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-11 ul.products li.product { width: 9.0909090909%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-12 ul.products li.product { width: 8.3333333333%; } } @media (max-width: 767px) { .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-1 ul.products li.product { width: 100%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-2 ul.products li.product { width: 50%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-3 ul.products li.product { width: 33.3333333333%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-4 ul.products li.product { width: 25%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-5 ul.products li.product { width: 20%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-6 ul.products li.product { width: 16.6666666667%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-7 ul.products li.product { width: 14.2857142857%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-8 ul.products li.product { width: 12.5%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-9 ul.products li.product { width: 11.1111111111%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-10 ul.products li.product { width: 10%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-11 ul.products li.product { width: 9.0909090909%; } .elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-12 ul.products li.product { width: 8.3333333333%; } } .elementor-msie .elementor-element.elementor-wc-products ul.products, .elementor-msie .elementor-posts { margin-right: -10px; margin-left: -10px; } .elementor-msie .elementor-element.elementor-wc-products ul.products li.product, .elementor-msie .elementor-element.elementor-wc-products ul.products .elementor-post, .elementor-msie .elementor-posts li.product, .elementor-msie .elementor-posts .elementor-post { padding-right: 10px; padding-left: 10px; margin-bottom: 20px; } /*# sourceMappingURL=frontend-msie.css.map */assets/css/templates/frontend.min.css000066600000331746152142641160013773 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-right:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}.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;-webkit-border-radius:0;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,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-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:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.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:ELEMENTOR_SCREEN_SM_MAX){.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:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}.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:ELEMENTOR_SCREEN_MD_MIN){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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:ELEMENTOR_SCREEN_MD_MAX){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap{position:relative;width:100%;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-content:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.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:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.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 (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid .elementor-grid-item{word-break:break-word;min-width:0}.elementor-grid-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-grid-tablet-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-grid-mobile-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){#elementor-device-mode:after{content:"mobile"}}.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%;max-width: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%;max-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::-ms-input-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{appearance:none;-webkit-appearance:none;-moz-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:"\e92a";font-family:eicons;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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.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-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.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;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit button,.elementor-button-align-end .elementor-field-type-submit button,.elementor-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:ELEMENTOR_SCREEN_MD_MAX){.elementor-tablet-button-align-center .elementor-field-type-submit button,.elementor-tablet-button-align-end .elementor-field-type-submit button,.elementor-tablet-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:ELEMENTOR_SCREEN_SM_MAX){.elementor-mobile-button-align-center .elementor-field-type-submit button,.elementor-mobile-button-align-end .elementor-field-type-submit button,.elementor-mobile-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:"\e90e";display:inline-block;font-family:eicons;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:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0}.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-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-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.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-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.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:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.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:ELEMENTOR_SCREEN_SM_MAX){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-tab-title a{color:inherit}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{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-button-icon{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em}.elementor-button-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.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-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,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:right}.elementor-counter .elementor-counter-number-suffix{text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-border-color:$gray-darkest;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator{display:inline-block}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before{width:100%;min-height:var(--divider-pattern-height);background-image:var(--divider-pattern-url);-webkit-background-size:var(--divider-pattern-size) 100%;background-size:var(--divider-pattern-size) 100%;background-repeat:var(--divider-pattern-repeat)}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator{background-image:none}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.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:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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-widget-google_maps iframe{height:300px}.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-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}@media (min-width:ELEMENTOR_SCREEN_MD_MIN){.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{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-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:ELEMENTOR_SCREEN_SM_MAX){.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-content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;right:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget .elementor-icon-list-item a{width:100%}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget .elementor-icon-list-icon{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget .elementor-icon-list-icon i{width:1.25em}.elementor-widget .elementor-icon-list-icon svg{width:1em}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{right:0}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{right:0}}.elementor-widget-image{text-align:center}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:inline-block}.elementor-widget-image .elementor-image>a img[src$=".svg"],.elementor-widget-image .elementor-image figure>a img[src$=".svg"]{width:48px}.elementor-widget-image .elementor-image img{vertical-align:middle;display:inline-block}.elementor-widget-image .elementor-image.elementor-image-shape-circle{-webkit-border-radius:50%;border-radius:50%}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;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;height:30px;line-height:30px;-webkit-border-radius:2px;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;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;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:ELEMENTOR_SCREEN_SM_MAX){.elementor-progress-text{padding-left:10px}}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{background-color:#818a91;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-android{background-color:#a4c639}.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-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{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-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.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-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.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-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.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:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.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-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;left:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{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-star-rating__title{margin-right:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-right:auto}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-right:auto}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-right:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.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.elementor-active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-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 #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;outline:none}.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.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-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:ELEMENTOR_SCREEN_SM_MAX){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid 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:ELEMENTOR_SCREEN_MD_MIN){.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 solid solid none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-tabs .elementor-tab-mobile-title{display:none}}.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;color:inherit;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;color:inherit;display:block}.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;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.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-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}.elementor-toggle{text-align:left}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;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-widget-video .elementor-video{-o-object-fit:cover;object-fit:cover}.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}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.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:eicons;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:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.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:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.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:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";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 .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.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;-webkit-background-size:27px 44px;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:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.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 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;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-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{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;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{-webkit-border-radius:10px;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);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:-webkit-calc(50% - 15px);top:calc(50% - 15px)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:-webkit-calc(100% - 60px);width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.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:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 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 swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-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:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.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:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;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;width:15%;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header>i:first-of-type{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:67px;top:60px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;font-size:16px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{margin-right:10px;font-size:15px}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:0;right:15px;border:9px solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.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}.animated.reverse{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.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{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.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:-webkit-calc(100% + 1.3px);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)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){.elementor .elementor-hidden-desktop{display:none}}assets/css/templates/frontend-rtl.min.css000066600000331760152142641160014566 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-left:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}.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;-webkit-border-radius:0;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,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.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 .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-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:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.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:ELEMENTOR_SCREEN_SM_MAX){.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:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}.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:ELEMENTOR_SCREEN_MD_MIN){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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:ELEMENTOR_SCREEN_MD_MAX){.elementor-row{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-column-wrap{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap{position:relative;width:100%;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-content:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.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:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.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 (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid .elementor-grid-item{word-break:break-word;min-width:0}.elementor-grid-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-grid-tablet-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-grid-mobile-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){#elementor-device-mode:after{content:"mobile"}}.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%;max-width: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%;max-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::-ms-input-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{appearance:none;-webkit-appearance:none;-moz-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:"\e92a";font-family:eicons;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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.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-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.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;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit button,.elementor-button-align-end .elementor-field-type-submit button,.elementor-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:ELEMENTOR_SCREEN_MD_MAX){.elementor-tablet-button-align-center .elementor-field-type-submit button,.elementor-tablet-button-align-end .elementor-field-type-submit button,.elementor-tablet-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:ELEMENTOR_SCREEN_SM_MAX){.elementor-mobile-button-align-center .elementor-field-type-submit button,.elementor-mobile-button-align-end .elementor-field-type-submit button,.elementor-mobile-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:"\e90e";display:inline-block;font-family:eicons;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:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0}.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-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-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.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-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.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:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.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:ELEMENTOR_SCREEN_SM_MAX){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-tab-title a{color:inherit}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{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-button-icon{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em}.elementor-button-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.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-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,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:left}.elementor-counter .elementor-counter-number-suffix{text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-border-color:$gray-darkest;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator{display:inline-block}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before{width:100%;min-height:var(--divider-pattern-height);background-image:var(--divider-pattern-url);-webkit-background-size:var(--divider-pattern-size) 100%;background-size:var(--divider-pattern-size) 100%;background-repeat:var(--divider-pattern-repeat)}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator{background-image:none}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.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:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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-widget-google_maps iframe{height:300px}.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-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}@media (min-width:ELEMENTOR_SCREEN_MD_MIN){.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{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-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:ELEMENTOR_SCREEN_SM_MAX){.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-content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;left:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget .elementor-icon-list-item a{width:100%}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget .elementor-icon-list-icon{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget .elementor-icon-list-icon i{width:1.25em}.elementor-widget .elementor-icon-list-icon svg{width:1em}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{left:0}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{left:0}}.elementor-widget-image{text-align:center}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:inline-block}.elementor-widget-image .elementor-image>a img[src$=".svg"],.elementor-widget-image .elementor-image figure>a img[src$=".svg"]{width:48px}.elementor-widget-image .elementor-image img{vertical-align:middle;display:inline-block}.elementor-widget-image .elementor-image.elementor-image-shape-circle{-webkit-border-radius:50%;border-radius:50%}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:ELEMENTOR_SCREEN_MD_MIN){.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:ELEMENTOR_SCREEN_SM_MAX){.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}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;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;height:30px;line-height:30px;-webkit-border-radius:2px;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;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;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:ELEMENTOR_SCREEN_SM_MAX){.elementor-progress-text{padding-right:10px}}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{background-color:#818a91;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-android{background-color:#a4c639}.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-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{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-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.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-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.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-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.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:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.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-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;right:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{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-star-rating__title{margin-left:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-left:auto}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-left:auto}}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-left:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.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.elementor-active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-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 #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;outline:none}.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.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-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:ELEMENTOR_SCREEN_SM_MAX){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid 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:ELEMENTOR_SCREEN_MD_MIN){.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 none solid solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-tabs .elementor-tab-mobile-title{display:none}}.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;color:inherit;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;color:inherit;display:block}.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;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.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-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}.elementor-toggle{text-align:right}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;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-widget-video .elementor-video{-o-object-fit:cover;object-fit:cover}.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}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.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:eicons;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:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.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:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.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:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";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 .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.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;-webkit-background-size:27px 44px;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:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.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 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;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-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{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;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{-webkit-border-radius:10px;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);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:-webkit-calc(50% - 15px);top:calc(50% - 15px)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:-webkit-calc(100% - 60px);width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.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:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 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 swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-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:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.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:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;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;width:15%;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header>i:first-of-type{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:67px;top:60px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;font-size:16px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{margin-left:10px;font-size:15px}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:0;left:15px;border:9px solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.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}.animated.reverse{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.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{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.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:-webkit-calc(100% + 1.3px);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)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}@media (max-width:ELEMENTOR_SCREEN_SM_MAX){.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MD_MIN) and (max-width:ELEMENTOR_SCREEN_MD_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_LG_MIN){.elementor .elementor-hidden-desktop{display:none}}assets/css/templates/frontend-rtl.css000066600000330362152142641160014001 0ustar00.dialog-widget-content { background-color: #fff; position: absolute; border-radius: 3px; box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; left: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-left: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; justify-content: flex-end; padding: 5px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-right: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__header { display: flex; align-items: center; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: right; padding-right: 15px; } .elementor-templates-modal__header__logo-area > * { display: flex; align-items: center; } .elementor-templates-modal__header__logo__icon-wrapper { margin-left: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__header__items-area { display: flex; flex-direction: row-reverse; } .elementor-templates-modal__header__item { position: relative; display: flex; align-items: center; justify-content: center; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-right: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-right: 20px; margin-left: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-right: 10px; margin-right: 15px; border-right: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { flex-grow: 1; box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } .elementor { hyphens: manual; } .elementor *, .elementor *:before, .elementor *:after { box-sizing: border-box; } .elementor a { 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; 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, .elementor .elementor-background-holder, .elementor .elementor-background { height: 100%; width: 100%; top: 0; left: 0; position: absolute; overflow: hidden; z-index: 0; direction: ltr; } .elementor .elementor-background-video-container { transition: opacity 1s; pointer-events: none; } .elementor .elementor-background-video-container.elementor-loading { opacity: 0; } .elementor .elementor-background-video-embed { max-width: none; } .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .elementor .elementor-background-video { max-width: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .elementor .elementor-html5-video { object-fit: cover; } .elementor .elementor-background-overlay { height: 100%; width: 100%; top: 0; left: 0; position: absolute; } .elementor .elementor-background-slideshow { position: absolute; width: 100%; height: 100%; z-index: 0; top: 0; right: 0; } .elementor .elementor-background-slideshow__slide__image { width: 100%; height: 100%; background-position: center center; background-size: cover; } .elementor-widget-wrap > .elementor-element.elementor-absolute { position: absolute; } .elementor-widget-wrap > .elementor-element.elementor-fixed { position: fixed; } .elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial { max-width: 100%; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial { max-width: 100%; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial { max-width: 100%; } } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { z-index: 1; } .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%; transform: translate(-50%, -50%); } .elementor-custom-embed-play i { font-size: 100px; color: #fff; opacity: 0.8; text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); transition: all .5s; } .elementor-custom-embed-play.elementor-playing i { font-family: eicons; animation: fa-spin 2s infinite linear; } .elementor-custom-embed-play.elementor-playing i:before { content: '\e8fb'; } .elementor-tag { display: inline-flex; } .elementor-ken-burns { transition-property: transform; transition-duration: 10s; transition-timing-function: linear; } .elementor-ken-burns--out { transform: scale(1.3); } .elementor-ken-burns--active { transition-duration: 20s; } .elementor-ken-burns--active.elementor-ken-burns--out { transform: scale(1); } .elementor-ken-burns--active.elementor-ken-burns--in { transform: scale(1.3); } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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: "\e813"; font-family: eicons; top: 3px; font-size: 18px; } #wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before { content: "\f348"; top: 2px; } .elementor-section { position: relative; } .elementor-section .elementor-container { 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 { align-items: flex-start; } .elementor-section.elementor-section-items-middle > .elementor-container { align-items: center; } .elementor-section.elementor-section-items-bottom > .elementor-container { align-items: flex-end; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-section.elementor-section-height-full { height: 100vh; } .elementor-section.elementor-section-height-full > .elementor-container { height: 100%; } } .elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: flex-start; } .elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: center; } .elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: flex-end; } .elementor-row { width: 100%; display: flex; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-row { flex-wrap: wrap; } } .elementor-column-wrap { width: 100%; position: relative; display: flex; } .elementor-widget-wrap { position: relative; width: 100%; flex-wrap: wrap; align-content: flex-start; } .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap { display: flex; } .elementor-widget-wrap > .elementor-element { width: 100%; } .elementor-widget { position: relative; } .elementor-widget:not(:last-child) { margin-bottom: 20px; } .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute { margin-bottom: 0; } .elementor-column { position: relative; min-height: 1px; 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: ELEMENTOR_SCREEN_MD_MIN) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .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 (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) { order: 10; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) { order: 9; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) { order: 8; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) { order: 7; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) { order: 6; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) { order: 5; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) { order: 4; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) { order: 3; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) { order: 2; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) { order: 1; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) { order: 10; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) { order: 9; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) { order: 8; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) { order: 7; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) { order: 6; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) { order: 5; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) { order: 4; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) { order: 3; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) { order: 2; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) { order: 1; } .elementor-column { width: 100%; } } ul.elementor-icon-list-items.elementor-inline-items { display: flex; flex-wrap: wrap; } ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item { word-break: break-word; } .elementor-grid .elementor-grid-item { word-break: break-word; min-width: 0; } .elementor-grid-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-grid-tablet-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-tablet-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-tablet-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-tablet-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-tablet-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-tablet-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-tablet-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-tablet-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-tablet-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-tablet-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-tablet-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-tablet-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-tablet-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-grid-mobile-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-mobile-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-mobile-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-mobile-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-mobile-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-mobile-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-mobile-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-mobile-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-mobile-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-mobile-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-mobile-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-mobile-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-mobile-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { #elementor-device-mode:after { content: 'desktop'; } } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { #elementor-device-mode:after { content: 'tablet'; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { #elementor-device-mode:after { content: 'mobile'; } } .elementor-form-fields-wrapper { display: flex; flex-wrap: wrap; } .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group .elementor-field-subgroup { flex-basis: 100%; max-width: 100%; } .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper { flex-grow: 1; } .elementor-field-group { flex-wrap: wrap; align-items: center; } .elementor-field-group.elementor-field-type-submit { align-items: flex-end; } .elementor-field-group .elementor-field-textual { width: 100%; max-width: 100%; border: 1px solid #818a91; background-color: transparent; color: #373a3c; vertical-align: middle; flex-grow: 1; } .elementor-field-group .elementor-field-textual:focus { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; outline: 0; } .elementor-field-group .elementor-field-textual::-webkit-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::-moz-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-moz-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-select-wrapper { display: flex; position: relative; width: 100%; } .elementor-field-group .elementor-select-wrapper select { appearance: none; -webkit-appearance: none; -moz-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; flex-basis: 100%; padding-left: 20px; } .elementor-field-group .elementor-select-wrapper:before { content: '\e92a'; font-family: 'eicons'; font-size: 15px; position: absolute; top: 50%; transform: translateY(-50%); left: 10px; pointer-events: none; } .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before { content: ''; } .elementor-field-subgroup { display: flex; 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 { flex-basis: 100%; } .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label { display: inline; } .elementor-field-label { cursor: pointer; } .elementor-mark-required .elementor-field-label:after { content: '*'; color: red; padding-right: 0.2em; } .elementor-field-textual { line-height: 1.4; font-size: 15px; min-height: 40px; padding: 5px 14px; border-radius: 3px; } .elementor-field-textual.elementor-size-xs { font-size: 13px; min-height: 33px; padding: 4px 12px; border-radius: 2px; } .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 button, .elementor-button-align-start .elementor-field-type-submit button, .elementor-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-button-align-start .elementor-field-type-submit { justify-content: flex-end; } .elementor-button-align-end .elementor-field-type-submit { justify-content: flex-start; } @media screen and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-tablet-button-align-center .elementor-field-type-submit button, .elementor-tablet-button-align-start .elementor-field-type-submit button, .elementor-tablet-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-tablet-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-tablet-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-tablet-button-align-start .elementor-field-type-submit { justify-content: flex-end; } .elementor-tablet-button-align-end .elementor-field-type-submit { justify-content: flex-start; } } @media screen and (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-mobile-button-align-center .elementor-field-type-submit button, .elementor-mobile-button-align-start .elementor-field-type-submit button, .elementor-mobile-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-mobile-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-mobile-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-mobile-button-align-start .elementor-field-type-submit { justify-content: flex-end; } .elementor-mobile-button-align-end .elementor-field-type-submit { justify-content: flex-start; } } .elementor-error .elementor-field { border-color: #d9534f; } .elementor-error .help-inline { color: #d9534f; font-size: 0.9em; } .elementor-message { margin: 10px 0; font-size: 1em; line-height: 1; } .elementor-message:before { content: "\e90e"; display: inline-block; font-family: eicons; font-weight: normal; font-style: normal; vertical-align: middle; margin-right: 5px; } .elementor-message.elementor-message-danger { color: #d9534f; } .elementor-message.elementor-message-danger:before { content: "\e87f"; } .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: flex; justify-content: center; } .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-element .elementor-widget-container { transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; } .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-tab-title { margin: 0; padding: 15px 20px; font-weight: bold; line-height: 1; cursor: pointer; outline: none; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { display: inline-block; width: 1.5em; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right { float: right; text-align: right; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left { float: left; text-align: left; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed { display: block; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened { display: block; } .elementor-accordion .elementor-tab-content { display: none; padding: 15px 20px; border-top: 1px solid #D4D4D4; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-accordion .elementor-tab-title { padding: 12px 15px; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { width: 1.2em; } .elementor-accordion .elementor-tab-content { padding: 7px 15px; } } .elementor-alert { padding: 15px; border-left: 5px solid transparent; position: relative; text-align: right; } .elementor-alert .elementor-alert-title { display: block; font-weight: bold; } .elementor-alert .elementor-alert-description { font-size: 13px; } .elementor-alert button.elementor-alert-dismiss { position: absolute; left: 10px; top: 10px; padding: 3px; font-size: 20px; line-height: 1; background: transparent; color: inherit; border: none; cursor: pointer; } .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: ELEMENTOR_SCREEN_SM_MAX) { .elementor-alert { padding: 10px; } .elementor-alert button.elementor-alert-dismiss { right: 7px; top: 7px; } } .elementor-tab-title a { color: inherit; } .elementor-button { display: inline-block; line-height: 1; background-color: #818a91; font-size: 15px; padding: 12px 24px; border-radius: 3px; color: #fff; fill: #fff; text-align: center; transition: all 0.3s; } .elementor-button:hover, .elementor-button:focus, .elementor-button:visited { color: #fff; } .elementor-button-content-wrapper { display: flex; justify-content: center; } .elementor-button-icon { flex-grow: 0; order: 5; } .elementor-button-icon svg { width: 1em; } .elementor-button-text { flex-grow: 1; order: 10; display: inline-block; } .elementor-button.elementor-size-xs { font-size: 13px; padding: 10px 20px; border-radius: 2px; } .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 { margin-left: 5px; order: 5; } .elementor-button .elementor-align-icon-left { margin-right: 5px; order: 15; } .elementor-button span { text-decoration: inherit; } /* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */ .elementor-menu-cart__toggle .elementor-button-icon { order: 15; } .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-counter .elementor-counter-number-wrapper { display: flex; font-size: 69px; font-weight: 600; color: #222222; line-height: 1; } .elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix { flex-grow: 1; white-space: pre-wrap; } .elementor-counter .elementor-counter-number-prefix { text-align: left; } .elementor-counter .elementor-counter-number-suffix { text-align: right; } .elementor-counter .elementor-counter-title { text-align: center; font-size: 19px; font-weight: 400; color: #666666; line-height: 2.5; } .elementor-widget-divider { --divider-border-style: none; --divider-border-width: 1px; --divider-border-color: $gray-darkest; --divider-icon-size: 20px; --divider-element-spacing: 10px; --divider-pattern-height: 24px; --divider-pattern-size: 20px; --divider-pattern-url: none; --divider-pattern-repeat: repeat-x; /* Backwards compatibility */ } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator { display: inline-block; } .elementor-widget-divider .elementor-divider { line-height: 0; font-size: 0; } .elementor-widget-divider .elementor-divider__text { font-size: 15px; line-height: 1; max-width: 95%; } .elementor-widget-divider .elementor-divider__element { margin: 0 var(--divider-element-spacing); flex-shrink: 0; } .elementor-widget-divider .elementor-icon { font-size: var(--divider-icon-size); } .elementor-widget-divider .elementor-divider-separator { display: flex; margin: 0; direction: ltr; } .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator { align-items: center; } .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after { display: block; content: ''; border-bottom: 0; flex-grow: 1; border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type { flex-grow: 0; flex-shrink: 100; } .elementor-widget-divider--element-align-left .elementor-divider-separator:before { content: none; } .elementor-widget-divider--element-align-left .elementor-divider__element { margin-left: 0; } .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type { flex-grow: 0; flex-shrink: 100; } .elementor-widget-divider--element-align-right .elementor-divider-separator:after { content: none; } .elementor-widget-divider--element-align-right .elementor-divider__element { margin-right: 0; } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator { border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--separator-type-pattern { --divider-border-style: none; } .elementor-widget-divider--separator-type-pattern .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after { width: 100%; min-height: var(--divider-pattern-height); background-image: var(--divider-pattern-url); background-size: var(--divider-pattern-size) 100%; background-repeat: var(--divider-pattern-repeat); } .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator { background-image: none; } .elementor-widget-divider--no-spacing { --divider-pattern-size: auto; } .elementor-widget-divider--bg-round { --divider-pattern-repeat: round; } .rtl .elementor-widget-divider .elementor-divider__text { direction: rtl; } .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: ELEMENTOR_SCREEN_MD_MIN) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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-widget-google_maps iframe { height: 300px; } .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-icon { display: inline-block; line-height: 1; transition: all 0.3s; color: #818a91; font-size: 50px; text-align: center; } .elementor-icon:hover { color: #818a91; } .elementor-icon i, .elementor-icon svg { width: 1em; height: 1em; position: relative; display: block; } .elementor-icon i:before, .elementor-icon svg:before { position: absolute; left: 50%; transform: translateX(-50%); } .elementor-icon i.fad { width: initial; } .elementor-view-stacked .elementor-icon { padding: .5em; background-color: #818a91; color: #fff; fill: #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%; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { display: flex; } .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon { display: inline-flex; flex: 0 0 auto; } .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { text-align: left; flex-direction: row; } .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper { text-align: right; 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 { align-items: flex-start; } .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper { align-items: center; } .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper { align-items: flex-end; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .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-content { flex-grow: 1; } .elementor-widget-icon-box .elementor-icon-box-description { margin: 0; } .elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container { overflow: hidden; } .elementor-widget .elementor-icon-list-items.elementor-inline-items { margin-right: -8px; margin-left: -8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item { margin-right: 8px; margin-left: 8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after { width: auto; left: auto; right: auto; position: relative; height: 100%; top: 50%; transform: translateY(-50%); border-top: 0; border-bottom: 0; border-right: 0; border-left-width: 1px; border-style: solid; left: -8px; } .elementor-widget .elementor-icon-list-items { list-style-type: none; margin: 0; padding: 0; } .elementor-widget .elementor-icon-list-item { margin: 0; padding: 0; position: relative; } .elementor-widget .elementor-icon-list-item:after { position: absolute; bottom: 0; width: 100%; } .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a { display: flex; align-items: flex-start; } .elementor-widget .elementor-icon-list-item a { width: 100%; } .elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text { align-self: center; padding-right: 5px; } .elementor-widget .elementor-icon-list-icon { flex-shrink: 0; } .elementor-widget .elementor-icon-list-icon i { width: 1.25em; } .elementor-widget .elementor-icon-list-icon svg { width: 1em; } .elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-align-center .elementor-inline-items { justify-content: center; } .elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a { justify-content: flex-end; text-align: left; } .elementor-widget.elementor-align-left .elementor-inline-items { justify-content: flex-end; } .elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a { justify-content: flex-start; text-align: right; } .elementor-widget.elementor-align-right .elementor-icon-list-items { justify-content: flex-start; } .elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after { left: 0; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items { justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items { justify-content: flex-end; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a { justify-content: flex-end; text-align: left; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items { justify-content: flex-start; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a { justify-content: flex-start; text-align: right; } .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after { left: 0; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items { justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items { justify-content: flex-end; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a { justify-content: flex-end; text-align: left; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items { justify-content: flex-start; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a { justify-content: flex-start; text-align: right; } .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after { right: 0; } .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after { left: 0; } } .elementor-widget-image { text-align: center; } .elementor-widget-image .elementor-image > a, .elementor-widget-image .elementor-image figure > a { display: inline-block; } .elementor-widget-image .elementor-image > a img[src$=".svg"], .elementor-widget-image .elementor-image figure > a img[src$=".svg"] { width: 48px; } .elementor-widget-image .elementor-image img { vertical-align: middle; display: inline-block; } .elementor-widget-image .elementor-image.elementor-image-shape-circle { border-radius: 50%; } .elementor-widget-image-box .elementor-image-box-content { width: 100%; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper { display: flex; } .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper { text-align: left; flex-direction: row; } .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper { text-align: right; 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 { align-items: flex-start; } .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper { align-items: center; } .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper { align-items: flex-end; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .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; } .elementor-widget-image-carousel .swiper-container { position: static; } .elementor-widget-image-carousel .swiper-container .swiper-slide figure { line-height: inherit; } .elementor-widget-image-carousel .swiper-slide { text-align: center; } .elementor-image-gallery figure img { display: block; } .elementor-image-gallery figure figcaption { width: 100%; } .gallery-spacing-custom .elementor-image-gallery .gallery-icon { padding: 0; } body.elementor-page .elementor-widget-menu-anchor { margin-bottom: 0; } .elementor-widget-progress { text-align: right; } .elementor-progress-wrapper { position: relative; background-color: #eeeeee; color: #ffffff; height: 100%; border-radius: 2px; } .elementor-progress-bar { display: flex; background-color: #818a91; width: 0; font-size: 11px; height: 30px; line-height: 30px; border-radius: 2px; transition: width 1s ease-in-out; } .elementor-progress-text { flex-grow: 1; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; 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: ELEMENTOR_SCREEN_SM_MAX) { .elementor-progress-text { padding-right: 10px; } } .elementor-social-icons-wrapper { font-size: 0; } .elementor-social-icon { background-color: #818a91; font-size: 25px; text-align: center; padding: 0.5em; margin-left: 5px; cursor: pointer; } .elementor-social-icon i { color: white; } .elementor-social-icon:last-child { margin: 0; } .elementor-social-icon:hover { opacity: .9; color: white; } .elementor-social-icon-android { background-color: #A4C639; } .elementor-social-icon-apple { background-color: #999999; } .elementor-social-icon-behance { background-color: #1769ff; } .elementor-social-icon-bitbucket { background-color: #205081; } .elementor-social-icon-codepen { background-color: #000000; } .elementor-social-icon-delicious { background-color: #3399ff; } .elementor-social-icon-deviantart { background-color: #05cc47; } .elementor-social-icon-digg { background-color: #005be2; } .elementor-social-icon-dribbble { background-color: #ea4c89; } .elementor-social-icon-elementor { background-color: #D30C5C; } .elementor-social-icon-envelope { background-color: #ea4335; } .elementor-social-icon-facebook, .elementor-social-icon-facebook-f { background-color: #3b5998; } .elementor-social-icon-flickr { background-color: #0063dc; } .elementor-social-icon-foursquare { background-color: #2d5be3; } .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp { background-color: #006400; } .elementor-social-icon-github { background-color: #333333; } .elementor-social-icon-gitlab { background-color: #e24329; } .elementor-social-icon-globe { background-color: #818a91; } .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g { 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-link { background-color: #818a91; } .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in { background-color: #0077b5; } .elementor-social-icon-medium { background-color: #00ab6b; } .elementor-social-icon-meetup { background-color: #ec1c40; } .elementor-social-icon-mixcloud { background-color: #273a4b; } .elementor-social-icon-odnoklassniki { background-color: #F4731C; } .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-rss { background-color: #f26522; } .elementor-social-icon-shopping-cart { background-color: #4CAF50; } .elementor-social-icon-skype { background-color: #00AFF0; } .elementor-social-icon-slideshare { background-color: #0077b5; } .elementor-social-icon-snapchat { background-color: #fffc00; } .elementor-social-icon-soundcloud { background-color: #ff8800; } .elementor-social-icon-spotify { background-color: #2ebd59; } .elementor-social-icon-stack-overflow { background-color: #fe7a15; } .elementor-social-icon-steam { background-color: #00adee; } .elementor-social-icon-stumbleupon { background-color: #EB4924; } .elementor-social-icon-telegram { background-color: #2CA5E0; } .elementor-social-icon-thumb-tack { background-color: #1aa1d8; } .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: #1DA1F2; } .elementor-social-icon-viber { background-color: #665cac; } .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-social-icon-500px { background-color: #0099e5; } .elementor-shape-rounded .elementor-icon.elementor-social-icon { border-radius: 10%; } .elementor-shape-circle .elementor-icon.elementor-social-icon { border-radius: 50%; } .elementor-star-rating { color: #CCD6DF; font-family: eicons; display: inline-block; } .elementor-star-rating i { display: inline-block; position: relative; font-style: normal; cursor: default; } .elementor-star-rating i:before { content: '\e934'; display: block; font-size: inherit; font-family: inherit; position: absolute; overflow: hidden; color: #f0ad4e; top: 0; right: 0; } .elementor-star-rating .elementor-star-empty:before { content: none; } .elementor-star-rating .elementor-star-1:before { width: 10%; } .elementor-star-rating .elementor-star-2:before { width: 20%; } .elementor-star-rating .elementor-star-3:before { width: 30%; } .elementor-star-rating .elementor-star-4:before { width: 40%; } .elementor-star-rating .elementor-star-5:before { width: 50%; } .elementor-star-rating .elementor-star-6:before { width: 60%; } .elementor-star-rating .elementor-star-7:before { width: 70%; } .elementor-star-rating .elementor-star-8:before { width: 80%; } .elementor-star-rating .elementor-star-9:before { width: 90%; } .elementor-star-rating__wrapper { display: flex; align-items: center; } .elementor-star-rating__title { margin-left: 10px; } .elementor-star-rating--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-start; } .elementor-star-rating--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-end; } .elementor-star-rating--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating--align-justify .elementor-star-rating__title { margin-left: auto; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-start; } .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-end; } .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating-tablet--align-justify .elementor-star-rating__title { margin-left: auto; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-start; } .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-end; } .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating-mobile--align-justify .elementor-star-rating__title { margin-left: auto; } } .last-star { letter-spacing: 0; } .elementor--star-style-star_unicode .elementor-star-rating { font-family: 'Arial', 'Helvetica', sans-serif; } .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before { content: '\002605'; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper { width: 25%; flex-shrink: 0; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active { border-left-style: none; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after { height: 999em; width: 0; left: 0; border-left-style: solid; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before { top: 0; transform: translateY(-100%); } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-active { border-bottom-style: none; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { bottom: 0; height: 0; width: 999em; border-bottom-style: solid; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before { right: 100%; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { left: 100%; } .elementor-widget-tabs .elementor-tab-title, .elementor-widget-tabs .elementor-tab-title:before, .elementor-widget-tabs .elementor-tab-title:after, .elementor-widget-tabs .elementor-tab-content, .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; outline: none; } .elementor-widget-tabs .elementor-tab-desktop-title { position: relative; padding: 20px 25px; font-weight: bold; line-height: 1; border: solid transparent; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active { border-color: #D4D4D4; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after { display: block; content: ''; position: absolute; } .elementor-widget-tabs .elementor-tab-mobile-title { padding: 10px 10px; cursor: pointer; } .elementor-widget-tabs .elementor-tab-content { padding: 20px; display: none; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-tabs .elementor-tab-title, .elementor-tabs .elementor-tab-content { 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: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs { display: flex; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper { 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-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; color: inherit; display: block; } .elementor-testimonial-wrapper .elementor-testimonial-job { font-size: 0.85em; color: inherit; display: block; } .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%; object-fit: cover; max-width: none; } .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-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; } .elementor-toggle { text-align: right; } .elementor-toggle .elementor-tab-title { font-weight: bold; line-height: 1; margin: 0; padding: 15px; border-bottom: 1px solid #D4D4D4; cursor: pointer; outline: none; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon { display: inline-block; width: 1em; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right { float: right; text-align: right; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left { float: left; text-align: left; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed { display: block; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened { display: none; } .elementor-toggle .elementor-tab-title.elementor-active { border-bottom: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed { display: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened { display: block; } .elementor-toggle .elementor-tab-content { padding: 15px; border-bottom: 1px solid #D4D4D4; display: none; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-toggle .elementor-tab-title { padding: 12px; } .elementor-toggle .elementor-tab-content { padding: 12px 10px; } } .elementor-widget-video .elementor-widget-container { overflow: hidden; transform: translate3d(0, 0, 0); } .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-widget-video .elementor-video { object-fit: cover; } .slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; user-select: none; touch-action: pan-y; -webkit-tap-highlight-color: transparent; } .slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; } .slick-list:focus { outline: none; } .slick-list.dragging { cursor: pointer; } .slick-slider .slick-track, .slick-slider .slick-list { transform: translate3d(0, 0, 0); } .slick-track { position: relative; left: 0; top: 0; display: block; } .slick-track:before, .slick-track:after { 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; } .elementor-slick-slider .slick-loading .slick-list:after { content: '\e8fb'; font-family: eicons; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: fa-spin 2s infinite linear; font-size: 25px; color: #a4afb7; } .elementor-slick-slider .slick-prev, .elementor-slick-slider .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 20px; padding: 0; transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus, .elementor-slick-slider .slick-next:hover, .elementor-slick-slider .slick-next:focus { color: transparent; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before, .elementor-slick-slider .slick-next:hover:before, .elementor-slick-slider .slick-next:focus:before { opacity: 1; } .elementor-slick-slider .slick-prev.slick-disabled:before, .elementor-slick-slider .slick-next.slick-disabled:before { opacity: .25; } .elementor-slick-slider .slick-prev:before, .elementor-slick-slider .slick-next:before { font-family: eicons; font-size: 35px; line-height: 1; opacity: .75; color: white; -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: '\e89f'; } [dir="rtl"] .elementor-slick-slider .slick-prev:before { content: '\e89e'; } .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: '\e89e'; } [dir="rtl"] .elementor-slick-slider .slick-next:before { content: '\e89f'; } .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:hover, .elementor-slick-slider ul.slick-dots li button:focus { outline: none; } .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before { opacity: 1; } .elementor-slick-slider ul.slick-dots li button:before { font-family: eicons; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\e914'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .elementor-slick-slider ul.slick-dots li.slick-active button:before { opacity: .75; color: black; } .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-prev, .elementor-slick-slider .slick-slider .slick-next { z-index: 1; } .elementor-slick-slider .slick-slide img { margin: auto; } /** * Swiper 3.4.2 * Customized by Elementor team */ .swiper-container { margin-left: auto; margin-right: auto; position: relative; overflow: hidden; /* Fix of Webkit flickering */ z-index: 1; } .swiper-container .swiper-slide figure { line-height: 0; } .swiper-container .elementor-lightbox-content-source { display: none; } .swiper-container-no-flexbox .swiper-slide { float: left; } .swiper-container-vertical > .swiper-wrapper { flex-direction: column; } .swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; } .swiper-container-android .swiper-slide, .swiper-wrapper { transform: translate3d(0px, 0, 0); } .swiper-container-multirow > .swiper-wrapper { flex-wrap: wrap; } .swiper-container-free-mode > .swiper-wrapper { transition-timing-function: ease-out; margin: 0 auto; } .swiper-slide { flex-shrink: 0; width: 100%; height: 100%; position: relative; } /* Auto Height */ .swiper-container-autoheight { height: auto; } .swiper-container-autoheight .swiper-slide { height: auto; } .swiper-container-autoheight .swiper-wrapper { align-items: flex-start; transition-property: transform, height; } /* a11y */ .swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; } /* IE10 Windows Phone 8 Fixes */ .swiper-wp8-horizontal { touch-action: pan-y; } .swiper-wp8-vertical { touch-action: pan-x; } /* Arrows */ .swiper-button-prev, .swiper-button-next { position: absolute; top: 50%; width: 27px; height: 44px; margin-top: -22px; z-index: 10; cursor: pointer; background-size: 27px 44px; background: no-repeat center; } .swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled { opacity: 0.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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } .swiper-button-next, .swiper-container-rtl .swiper-button-prev { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } /* Pagination Styles */ .swiper-pagination { position: absolute; text-align: center; transition: 300ms; transform: translate3d(0, 0, 0); z-index: 10; } .swiper-pagination.swiper-pagination-hidden { opacity: 0; } /* Common Styles */ .swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 5px; left: 0; width: 100%; } /* Bullets */ .swiper-pagination-bullet { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: #000; opacity: 0.2; } .swiper-pagination-fraction { color: #000; } button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; box-shadow: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; } .swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer; } .swiper-pagination-white .swiper-pagination-bullet { background: #fff; } .swiper-pagination-bullet-active { opacity: 1; } .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%; transform: translate3d(0px, -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 6px; } /* Progressbar */ .swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; } .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #000; position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform: scale(0); transform-origin: left top; } .swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { transform-origin: right top; } .swiper-container-horizontal > .swiper-pagination-progressbar { width: 100%; height: 4px; left: 0; top: 0; } .swiper-container-vertical > .swiper-pagination-progressbar { width: 4px; height: 100%; left: 0; top: 0; } .swiper-pagination-progressbar.swiper-pagination-white { background: rgba(255, 255, 255, 0.5); } .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill { background: #fff; } .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill { background: #000; } /* 3D Container */ .swiper-container-3d { perspective: 1200px; } .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .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-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow { transform-style: preserve-3d; } .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-slide-shadow-bottom { 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: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-right { background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-top { background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-bottom { background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } /* Coverflow */ .swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper { /* Windows 8 IE 10 fix */ -ms-perspective: 1200px; } /* Cube + Flip */ .swiper-container-cube, .swiper-container-flip { overflow: visible; } .swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide { pointer-events: none; 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-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right { z-index: 0; backface-visibility: hidden; } /* Cube */ .swiper-container-cube .swiper-slide { visibility: hidden; transform-origin: 0 0; width: 100%; height: 100%; } .swiper-container-cube.swiper-container-rtl .swiper-slide { transform-origin: 100% 0; } .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible; } .swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: #000; opacity: 0.6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; } /* Fade */ .swiper-container-fade.swiper-container-free-mode .swiper-slide { transition-timing-function: ease-out; } .swiper-container-fade .swiper-slide { pointer-events: none; transition-property: opacity; } .swiper-container-fade .swiper-slide .swiper-slide { pointer-events: none; } .swiper-container-fade .swiper-slide-active { pointer-events: auto; } .swiper-container-fade .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-zoom-container { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; text-align: center; } .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas { max-width: 100%; max-height: 100%; object-fit: contain; } /* Scrollbar */ .swiper-scrollbar { border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 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, 0.5); border-radius: 10px; left: 0; top: 0; } .swiper-scrollbar-cursor-drag { cursor: move; } .elementor-pagination-position-outside .swiper-container { padding-bottom: 30px; } .elementor-pagination-position-outside .elementor-swiper-button { top: calc(50% - 30px / 2); } .elementor-swiper { position: relative; } .elementor-main-swiper { position: static; } .elementor-arrows-position-outside .swiper-container { width: calc(100% - 60px); } .elementor-arrows-position-outside .elementor-swiper-button-prev { left: 0; } .elementor-arrows-position-outside .elementor-swiper-button-next { right: 0; } .swiper-image-stretch .swiper-slide .swiper-slide-image { width: 100%; } .elementor-swiper-button { position: absolute; display: inline-flex; z-index: 1; cursor: pointer; font-size: 25px; color: rgba(238, 238, 238, 0.9); top: 50%; transform: translate3d(0, -50%, 1px); } .elementor-swiper-button-prev { left: 10px; } .elementor-swiper-button-next { right: 10px; } .elementor-swiper-button.swiper-button-disabled { opacity: 0.3; } /* Preloader */ .swiper-lazy-preloader { width: 42px; height: 42px; position: absolute; left: 50%; top: 50%; margin-left: -21px; margin-top: -21px; z-index: 10; transform-origin: 50%; animation: swiper-preloader-spin 1s steps(12, end) 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%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; } .swiper-lazy-preloader-white:after { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); } @keyframes swiper-preloader-spin { 100% { transform: rotate(360deg); } } .elementor-lightbox { --lightbox-ui-color: rgba(238, 238, 238, 0.9); --lightbox-ui-color-hover: #fff; --lightbox-text-color: var(--lightbox-ui-color); --lightbox-header-icons-size: 20px; --lightbox-navigation-icons-size: 25px; } .elementor-lightbox .dialog-header { display: none; } .elementor-lightbox .dialog-widget-content { background: none; box-shadow: none; width: 100%; height: 100%; } .elementor-lightbox .dialog-message { animation-duration: .3s; } .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) { height: 100%; } .elementor-lightbox .dialog-message.dialog-lightbox-message { padding: 0; } .elementor-lightbox .dialog-lightbox-close-button { cursor: pointer; position: absolute; font-size: var(--lightbox-header-icons-size); left: 0.75em; margin-top: 13px; padding: .25em; z-index: 2; line-height: 1; } .elementor-lightbox .dialog-lightbox-close-button, .elementor-lightbox .elementor-swiper-button { color: var(--lightbox-ui-color); transition: all 0.3s; opacity: 1; } .elementor-lightbox .dialog-lightbox-close-button:hover, .elementor-lightbox .elementor-swiper-button:hover { color: var(--lightbox-ui-color-hover); } .elementor-lightbox .swiper-container { height: 100%; } .elementor-lightbox .elementor-lightbox-item { display: flex; align-items: center; justify-content: center; position: relative; padding: 70px; box-sizing: border-box; height: 100%; margin: auto; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-lightbox .elementor-lightbox-item { padding: 70px 0; } } .elementor-lightbox .elementor-lightbox-image { max-height: 100%; user-select: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover { opacity: 1; filter: none; border: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container { box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); border-radius: 2px; } .elementor-lightbox .elementor-video-container { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { .elementor-lightbox .elementor-video-container { width: 75%; } } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-lightbox .elementor-video-container { width: 100%; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container { width: 70%; } } .elementor-lightbox .elementor-swiper-button:focus { outline: none; } .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { height: 100%; display: flex; align-items: center; width: 15%; justify-content: center; font-size: var(--lightbox-navigation-icons-size); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; } .elementor-lightbox .elementor-swiper-button-next { right: 0; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { width: 20%; } .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i { padding: 10px; background-color: rgba(0, 0, 0, 0.5); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; justify-content: flex-start; } .elementor-lightbox .elementor-swiper-button-next { right: 0; justify-content: flex-end; } } .elementor-slideshow__counter { color: currentColor; font-size: .75em; width: max-content; } .elementor-slideshow__header, .elementor-slideshow__footer { position: absolute; left: 0; width: 100%; padding: 15px 20px; transition: 0.3s; } .elementor-slideshow__footer { color: var(--lightbox-text-color); } .elementor-slideshow__header { color: var(--lightbox-ui-color); display: flex; font-size: var(--lightbox-header-icons-size); padding-right: 1em; padding-left: 2.6em; top: 0; align-items: center; z-index: 10; } .elementor-slideshow__header > i { font-size: inherit; cursor: pointer; padding: .25em; margin: 0 .35em; } .elementor-slideshow__header > i:hover { color: var(--lightbox-ui-color-hover); } .elementor-slideshow__header > i:first-of-type { margin-right: auto; } .elementor-slideshow__header .elementor-icon-share { z-index: 5; } .elementor-slideshow__share-menu { background-color: rgba(0, 0, 0, 0); width: 0; height: 0; position: absolute; overflow: hidden; transition: background-color 400ms; } .elementor-slideshow__share-menu .elementor-slideshow__share-links a { color: #2C2C2C; } .elementor-slideshow__share-links { display: block; position: absolute; min-width: 200px; left: 67px; top: 60px; background-color: #fff; border-radius: 3px; font-size: 16px; padding: 14px 20px; transform: scale(0); opacity: 0; transform-origin: 90% 10%; transition: all 250ms 100ms; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); } .elementor-slideshow__share-links a { text-align: right; color: #55595c; font-size: 12px; line-height: 2.5; display: block; opacity: 0; transition: opacity 500ms 100ms; } .elementor-slideshow__share-links a:hover { color: #000; } .elementor-slideshow__share-links a i { margin-left: 10px; font-size: 15px; } .elementor-slideshow__share-links:before { content: ''; display: block; position: absolute; top: 0; left: 15px; border: 9px solid; border-color: transparent transparent #fff transparent; transform: translateY(-100%) scaleX(0.7); } .elementor-slideshow__footer { bottom: 0; z-index: 5; position: fixed; } .elementor-slideshow__title, .elementor-slideshow__description { margin: 0; } .elementor-slideshow__title { font-size: 16px; font-weight: bold; } .elementor-slideshow__description { font-size: 14px; } .elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer { opacity: 0; pointer-events: none; } .elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next { opacity: 0; } .elementor-slideshow--fullscreen-mode .elementor-video-container { width: 100%; } .elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer { background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next { opacity: 0; pointer-events: none; } .elementor-slideshow--share-mode .elementor-slideshow__share-menu { top: 0; left: 0; width: 100vw; height: 100vh; opacity: 1; cursor: default; background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--share-mode .elementor-slideshow__share-links { transform: scale(1); } .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a { opacity: 1; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter { color: #1DA1F2; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook { color: #3b5998; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest { color: #bd081c; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold { color: #a4afb7; } .elementor-slideshow--share-mode .eicon-share-arrow { z-index: 2; } .animated { animation-duration: 1.25s; } .animated.animated-slow { animation-duration: 2s; } .animated.animated-fast { animation-duration: .75s; } .animated.infinite { animation-iteration-count: infinite; } .animated.reverse { animation-direction: reverse; } @media (prefers-reduced-motion: reduce) { .animated { animation: none; } } .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 { transform: rotate(180deg); } .elementor-shape[data-negative="true"].elementor-shape-top { transform: rotate(180deg); } .elementor-shape svg { display: block; width: calc(100% + 1.3px); position: relative; left: 50%; transform: translateX(-50%); } .elementor-shape .elementor-shape-fill { fill: #fff; transform-origin: center; transform: rotateY(0deg); } #wp-admin-bar-elementor_edit_page .ab-submenu .ab-item { display: flex; width: 200px; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-title { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; width: 100%; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-type { background: #55595c; font-size: 11px; line-height: 9px; margin-top: 6px; padding: 4px 8px; border-radius: 3px; } .page-template-elementor_canvas.elementor-page:before { display: none; } .elementor-post__thumbnail__link { transition: none; } #left-area ul.elementor-icon-list-items, .elementor .elementor-element ul.elementor-icon-list-items, .elementor-edit-area .elementor-element ul.elementor-icon-list-items { padding: 0; } #wpadminbar * { font-style: normal; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor .elementor-hidden-phone { display: none; } } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor .elementor-hidden-tablet { display: none; } } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { .elementor .elementor-hidden-desktop { display: none; } } assets/css/templates/frontend.css000066600000330361152142641160013201 0ustar00.dialog-widget-content { background-color: #fff; position: absolute; border-radius: 3px; box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; right: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-right: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; justify-content: flex-end; padding: 5px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-left: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__header { display: flex; align-items: center; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: left; padding-left: 15px; } .elementor-templates-modal__header__logo-area > * { display: flex; align-items: center; } .elementor-templates-modal__header__logo__icon-wrapper { margin-right: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__header__items-area { display: flex; flex-direction: row-reverse; } .elementor-templates-modal__header__item { position: relative; display: flex; align-items: center; justify-content: center; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-left: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-left: 20px; margin-right: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-left: 10px; margin-left: 15px; border-left: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { flex-grow: 1; box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } .elementor { hyphens: manual; } .elementor *, .elementor *:before, .elementor *:after { box-sizing: border-box; } .elementor a { 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; 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, .elementor .elementor-background-holder, .elementor .elementor-background { height: 100%; width: 100%; top: 0; left: 0; position: absolute; overflow: hidden; z-index: 0; direction: ltr; } .elementor .elementor-background-video-container { transition: opacity 1s; pointer-events: none; } .elementor .elementor-background-video-container.elementor-loading { opacity: 0; } .elementor .elementor-background-video-embed { max-width: none; } .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .elementor .elementor-background-video { max-width: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .elementor .elementor-html5-video { object-fit: cover; } .elementor .elementor-background-overlay { height: 100%; width: 100%; top: 0; left: 0; position: absolute; } .elementor .elementor-background-slideshow { position: absolute; width: 100%; height: 100%; z-index: 0; top: 0; left: 0; } .elementor .elementor-background-slideshow__slide__image { width: 100%; height: 100%; background-position: center center; background-size: cover; } .elementor-widget-wrap > .elementor-element.elementor-absolute { position: absolute; } .elementor-widget-wrap > .elementor-element.elementor-fixed { position: fixed; } .elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial { max-width: 100%; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial { max-width: 100%; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial { max-width: 100%; } } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { z-index: 1; } .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%; transform: translate(-50%, -50%); } .elementor-custom-embed-play i { font-size: 100px; color: #fff; opacity: 0.8; text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); transition: all .5s; } .elementor-custom-embed-play.elementor-playing i { font-family: eicons; animation: fa-spin 2s infinite linear; } .elementor-custom-embed-play.elementor-playing i:before { content: '\e8fb'; } .elementor-tag { display: inline-flex; } .elementor-ken-burns { transition-property: transform; transition-duration: 10s; transition-timing-function: linear; } .elementor-ken-burns--out { transform: scale(1.3); } .elementor-ken-burns--active { transition-duration: 20s; } .elementor-ken-burns--active.elementor-ken-burns--out { transform: scale(1); } .elementor-ken-burns--active.elementor-ken-burns--in { transform: scale(1.3); } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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: "\e813"; font-family: eicons; top: 3px; font-size: 18px; } #wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before { content: "\f348"; top: 2px; } .elementor-section { position: relative; } .elementor-section .elementor-container { 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 { align-items: flex-start; } .elementor-section.elementor-section-items-middle > .elementor-container { align-items: center; } .elementor-section.elementor-section-items-bottom > .elementor-container { align-items: flex-end; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-section.elementor-section-height-full { height: 100vh; } .elementor-section.elementor-section-height-full > .elementor-container { height: 100%; } } .elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: flex-start; } .elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: center; } .elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap { align-items: flex-end; } .elementor-row { width: 100%; display: flex; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-row { flex-wrap: wrap; } } .elementor-column-wrap { width: 100%; position: relative; display: flex; } .elementor-widget-wrap { position: relative; width: 100%; flex-wrap: wrap; align-content: flex-start; } .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap { display: flex; } .elementor-widget-wrap > .elementor-element { width: 100%; } .elementor-widget { position: relative; } .elementor-widget:not(:last-child) { margin-bottom: 20px; } .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute { margin-bottom: 0; } .elementor-column { position: relative; min-height: 1px; 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: ELEMENTOR_SCREEN_MD_MIN) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .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 (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) { order: 10; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) { order: 9; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) { order: 8; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) { order: 7; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) { order: 6; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) { order: 5; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) { order: 4; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) { order: 3; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) { order: 2; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) { order: 1; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) { order: 10; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) { order: 9; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) { order: 8; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) { order: 7; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) { order: 6; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) { order: 5; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) { order: 4; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) { order: 3; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) { order: 2; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) { order: 1; } .elementor-column { width: 100%; } } ul.elementor-icon-list-items.elementor-inline-items { display: flex; flex-wrap: wrap; } ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item { word-break: break-word; } .elementor-grid .elementor-grid-item { word-break: break-word; min-width: 0; } .elementor-grid-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-grid-tablet-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-tablet-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-tablet-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-tablet-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-tablet-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-tablet-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-tablet-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-tablet-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-tablet-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-tablet-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-tablet-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-tablet-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-tablet-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-grid-mobile-0 .elementor-grid { display: flex; overflow: hidden; flex-wrap: wrap; } .elementor-grid-mobile-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-mobile-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-mobile-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-mobile-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-mobile-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-mobile-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-mobile-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-mobile-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-mobile-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-mobile-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-mobile-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-mobile-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { #elementor-device-mode:after { content: 'desktop'; } } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { #elementor-device-mode:after { content: 'tablet'; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { #elementor-device-mode:after { content: 'mobile'; } } .elementor-form-fields-wrapper { display: flex; flex-wrap: wrap; } .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group .elementor-field-subgroup { flex-basis: 100%; max-width: 100%; } .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper { flex-grow: 1; } .elementor-field-group { flex-wrap: wrap; align-items: center; } .elementor-field-group.elementor-field-type-submit { align-items: flex-end; } .elementor-field-group .elementor-field-textual { width: 100%; max-width: 100%; border: 1px solid #818a91; background-color: transparent; color: #373a3c; vertical-align: middle; flex-grow: 1; } .elementor-field-group .elementor-field-textual:focus { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; outline: 0; } .elementor-field-group .elementor-field-textual::-webkit-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::-moz-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-moz-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-select-wrapper { display: flex; position: relative; width: 100%; } .elementor-field-group .elementor-select-wrapper select { appearance: none; -webkit-appearance: none; -moz-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; flex-basis: 100%; padding-right: 20px; } .elementor-field-group .elementor-select-wrapper:before { content: '\e92a'; font-family: 'eicons'; font-size: 15px; position: absolute; top: 50%; transform: translateY(-50%); right: 10px; pointer-events: none; } .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before { content: ''; } .elementor-field-subgroup { display: flex; 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 { flex-basis: 100%; } .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label { display: inline; } .elementor-field-label { cursor: pointer; } .elementor-mark-required .elementor-field-label:after { content: '*'; color: red; padding-left: 0.2em; } .elementor-field-textual { line-height: 1.4; font-size: 15px; min-height: 40px; padding: 5px 14px; border-radius: 3px; } .elementor-field-textual.elementor-size-xs { font-size: 13px; min-height: 33px; padding: 4px 12px; border-radius: 2px; } .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 button, .elementor-button-align-start .elementor-field-type-submit button, .elementor-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-button-align-start .elementor-field-type-submit { justify-content: flex-start; } .elementor-button-align-end .elementor-field-type-submit { justify-content: flex-end; } @media screen and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-tablet-button-align-center .elementor-field-type-submit button, .elementor-tablet-button-align-start .elementor-field-type-submit button, .elementor-tablet-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-tablet-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-tablet-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-tablet-button-align-start .elementor-field-type-submit { justify-content: flex-start; } .elementor-tablet-button-align-end .elementor-field-type-submit { justify-content: flex-end; } } @media screen and (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-mobile-button-align-center .elementor-field-type-submit button, .elementor-mobile-button-align-start .elementor-field-type-submit button, .elementor-mobile-button-align-end .elementor-field-type-submit button { flex-basis: initial; } .elementor-mobile-button-align-center .elementor-field-type-submit { justify-content: center; } .elementor-mobile-button-align-stretch .elementor-field-type-submit button { flex-basis: 100%; } .elementor-mobile-button-align-start .elementor-field-type-submit { justify-content: flex-start; } .elementor-mobile-button-align-end .elementor-field-type-submit { justify-content: flex-end; } } .elementor-error .elementor-field { border-color: #d9534f; } .elementor-error .help-inline { color: #d9534f; font-size: 0.9em; } .elementor-message { margin: 10px 0; font-size: 1em; line-height: 1; } .elementor-message:before { content: "\e90e"; display: inline-block; font-family: eicons; font-weight: normal; font-style: normal; vertical-align: middle; margin-right: 5px; } .elementor-message.elementor-message-danger { color: #d9534f; } .elementor-message.elementor-message-danger:before { content: "\e87f"; } .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: flex; justify-content: center; } .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-element .elementor-widget-container { transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; } .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-tab-title { margin: 0; padding: 15px 20px; font-weight: bold; line-height: 1; cursor: pointer; outline: none; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { display: inline-block; width: 1.5em; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right { float: right; text-align: right; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left { float: left; text-align: left; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed { display: block; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened { display: block; } .elementor-accordion .elementor-tab-content { display: none; padding: 15px 20px; border-top: 1px solid #D4D4D4; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-accordion .elementor-tab-title { padding: 12px 15px; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { width: 1.2em; } .elementor-accordion .elementor-tab-content { padding: 7px 15px; } } .elementor-alert { padding: 15px; border-left: 5px solid transparent; position: relative; text-align: left; } .elementor-alert .elementor-alert-title { display: block; font-weight: bold; } .elementor-alert .elementor-alert-description { font-size: 13px; } .elementor-alert button.elementor-alert-dismiss { position: absolute; right: 10px; top: 10px; padding: 3px; font-size: 20px; line-height: 1; background: transparent; color: inherit; border: none; cursor: pointer; } .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: ELEMENTOR_SCREEN_SM_MAX) { .elementor-alert { padding: 10px; } .elementor-alert button.elementor-alert-dismiss { right: 7px; top: 7px; } } .elementor-tab-title a { color: inherit; } .elementor-button { display: inline-block; line-height: 1; background-color: #818a91; font-size: 15px; padding: 12px 24px; border-radius: 3px; color: #fff; fill: #fff; text-align: center; transition: all 0.3s; } .elementor-button:hover, .elementor-button:focus, .elementor-button:visited { color: #fff; } .elementor-button-content-wrapper { display: flex; justify-content: center; } .elementor-button-icon { flex-grow: 0; order: 5; } .elementor-button-icon svg { width: 1em; } .elementor-button-text { flex-grow: 1; order: 10; display: inline-block; } .elementor-button.elementor-size-xs { font-size: 13px; padding: 10px 20px; border-radius: 2px; } .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 { margin-left: 5px; order: 15; } .elementor-button .elementor-align-icon-left { margin-right: 5px; order: 5; } .elementor-button span { text-decoration: inherit; } /* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */ .elementor-menu-cart__toggle .elementor-button-icon { order: 15; } .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-counter .elementor-counter-number-wrapper { display: flex; font-size: 69px; font-weight: 600; color: #222222; line-height: 1; } .elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix { flex-grow: 1; white-space: pre-wrap; } .elementor-counter .elementor-counter-number-prefix { text-align: right; } .elementor-counter .elementor-counter-number-suffix { text-align: left; } .elementor-counter .elementor-counter-title { text-align: center; font-size: 19px; font-weight: 400; color: #666666; line-height: 2.5; } .elementor-widget-divider { --divider-border-style: none; --divider-border-width: 1px; --divider-border-color: $gray-darkest; --divider-icon-size: 20px; --divider-element-spacing: 10px; --divider-pattern-height: 24px; --divider-pattern-size: 20px; --divider-pattern-url: none; --divider-pattern-repeat: repeat-x; /* Backwards compatibility */ } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator { display: inline-block; } .elementor-widget-divider .elementor-divider { line-height: 0; font-size: 0; } .elementor-widget-divider .elementor-divider__text { font-size: 15px; line-height: 1; max-width: 95%; } .elementor-widget-divider .elementor-divider__element { margin: 0 var(--divider-element-spacing); flex-shrink: 0; } .elementor-widget-divider .elementor-icon { font-size: var(--divider-icon-size); } .elementor-widget-divider .elementor-divider-separator { display: flex; margin: 0; direction: ltr; } .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator { align-items: center; } .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after { display: block; content: ''; border-bottom: 0; flex-grow: 1; border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type { flex-grow: 0; flex-shrink: 100; } .elementor-widget-divider--element-align-left .elementor-divider-separator:before { content: none; } .elementor-widget-divider--element-align-left .elementor-divider__element { margin-left: 0; } .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type { flex-grow: 0; flex-shrink: 100; } .elementor-widget-divider--element-align-right .elementor-divider-separator:after { content: none; } .elementor-widget-divider--element-align-right .elementor-divider__element { margin-right: 0; } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator { border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--separator-type-pattern { --divider-border-style: none; } .elementor-widget-divider--separator-type-pattern .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after { width: 100%; min-height: var(--divider-pattern-height); background-image: var(--divider-pattern-url); background-size: var(--divider-pattern-size) 100%; background-repeat: var(--divider-pattern-repeat); } .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator { background-image: none; } .elementor-widget-divider--no-spacing { --divider-pattern-size: auto; } .elementor-widget-divider--bg-round { --divider-pattern-repeat: round; } .rtl .elementor-widget-divider .elementor-divider__text { direction: rtl; } .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: ELEMENTOR_SCREEN_MD_MIN) { .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: ELEMENTOR_SCREEN_SM_MAX) { .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-widget-google_maps iframe { height: 300px; } .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-icon { display: inline-block; line-height: 1; transition: all 0.3s; color: #818a91; font-size: 50px; text-align: center; } .elementor-icon:hover { color: #818a91; } .elementor-icon i, .elementor-icon svg { width: 1em; height: 1em; position: relative; display: block; } .elementor-icon i:before, .elementor-icon svg:before { position: absolute; left: 50%; transform: translateX(-50%); } .elementor-icon i.fad { width: initial; } .elementor-view-stacked .elementor-icon { padding: .5em; background-color: #818a91; color: #fff; fill: #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%; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { display: flex; } .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon { display: inline-flex; flex: 0 0 auto; } .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper { text-align: right; flex-direction: row-reverse; } .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper { text-align: left; 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 { align-items: flex-start; } .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper { align-items: center; } .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper { align-items: flex-end; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .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-content { flex-grow: 1; } .elementor-widget-icon-box .elementor-icon-box-description { margin: 0; } .elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container { overflow: hidden; } .elementor-widget .elementor-icon-list-items.elementor-inline-items { margin-right: -8px; margin-left: -8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item { margin-right: 8px; margin-left: 8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after { width: auto; left: auto; right: auto; position: relative; height: 100%; top: 50%; transform: translateY(-50%); border-top: 0; border-bottom: 0; border-right: 0; border-left-width: 1px; border-style: solid; right: -8px; } .elementor-widget .elementor-icon-list-items { list-style-type: none; margin: 0; padding: 0; } .elementor-widget .elementor-icon-list-item { margin: 0; padding: 0; position: relative; } .elementor-widget .elementor-icon-list-item:after { position: absolute; bottom: 0; width: 100%; } .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a { display: flex; align-items: flex-start; } .elementor-widget .elementor-icon-list-item a { width: 100%; } .elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text { align-self: center; padding-left: 5px; } .elementor-widget .elementor-icon-list-icon { flex-shrink: 0; } .elementor-widget .elementor-icon-list-icon i { width: 1.25em; } .elementor-widget .elementor-icon-list-icon svg { width: 1em; } .elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-align-center .elementor-inline-items { justify-content: center; } .elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a { justify-content: flex-start; text-align: left; } .elementor-widget.elementor-align-left .elementor-inline-items { justify-content: flex-start; } .elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a { justify-content: flex-end; text-align: right; } .elementor-widget.elementor-align-right .elementor-icon-list-items { justify-content: flex-end; } .elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after { right: 0; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items { justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items { justify-content: flex-start; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a { justify-content: flex-start; text-align: left; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items { justify-content: flex-end; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a { justify-content: flex-end; text-align: right; } .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after { right: 0; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items { justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a { justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items { justify-content: flex-start; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a { justify-content: flex-start; text-align: left; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items { justify-content: flex-end; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a { justify-content: flex-end; text-align: right; } .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after { right: 0; } } .elementor-widget-image { text-align: center; } .elementor-widget-image .elementor-image > a, .elementor-widget-image .elementor-image figure > a { display: inline-block; } .elementor-widget-image .elementor-image > a img[src$=".svg"], .elementor-widget-image .elementor-image figure > a img[src$=".svg"] { width: 48px; } .elementor-widget-image .elementor-image img { vertical-align: middle; display: inline-block; } .elementor-widget-image .elementor-image.elementor-image-shape-circle { border-radius: 50%; } .elementor-widget-image-box .elementor-image-box-content { width: 100%; } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper { display: flex; } .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper { text-align: right; flex-direction: row-reverse; } .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper { text-align: left; 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 { align-items: flex-start; } .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper { align-items: center; } .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper { align-items: flex-end; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .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; } .elementor-widget-image-carousel .swiper-container { position: static; } .elementor-widget-image-carousel .swiper-container .swiper-slide figure { line-height: inherit; } .elementor-widget-image-carousel .swiper-slide { text-align: center; } .elementor-image-gallery figure img { display: block; } .elementor-image-gallery figure figcaption { width: 100%; } .gallery-spacing-custom .elementor-image-gallery .gallery-icon { padding: 0; } body.elementor-page .elementor-widget-menu-anchor { margin-bottom: 0; } .elementor-widget-progress { text-align: left; } .elementor-progress-wrapper { position: relative; background-color: #eeeeee; color: #ffffff; height: 100%; border-radius: 2px; } .elementor-progress-bar { display: flex; background-color: #818a91; width: 0; font-size: 11px; height: 30px; line-height: 30px; border-radius: 2px; transition: width 1s ease-in-out; } .elementor-progress-text { flex-grow: 1; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; 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: ELEMENTOR_SCREEN_SM_MAX) { .elementor-progress-text { padding-left: 10px; } } .elementor-social-icons-wrapper { font-size: 0; } .elementor-social-icon { background-color: #818a91; font-size: 25px; text-align: center; padding: 0.5em; margin-right: 5px; cursor: pointer; } .elementor-social-icon i { color: white; } .elementor-social-icon:last-child { margin: 0; } .elementor-social-icon:hover { opacity: .9; color: white; } .elementor-social-icon-android { background-color: #A4C639; } .elementor-social-icon-apple { background-color: #999999; } .elementor-social-icon-behance { background-color: #1769ff; } .elementor-social-icon-bitbucket { background-color: #205081; } .elementor-social-icon-codepen { background-color: #000000; } .elementor-social-icon-delicious { background-color: #3399ff; } .elementor-social-icon-deviantart { background-color: #05cc47; } .elementor-social-icon-digg { background-color: #005be2; } .elementor-social-icon-dribbble { background-color: #ea4c89; } .elementor-social-icon-elementor { background-color: #D30C5C; } .elementor-social-icon-envelope { background-color: #ea4335; } .elementor-social-icon-facebook, .elementor-social-icon-facebook-f { background-color: #3b5998; } .elementor-social-icon-flickr { background-color: #0063dc; } .elementor-social-icon-foursquare { background-color: #2d5be3; } .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp { background-color: #006400; } .elementor-social-icon-github { background-color: #333333; } .elementor-social-icon-gitlab { background-color: #e24329; } .elementor-social-icon-globe { background-color: #818a91; } .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g { 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-link { background-color: #818a91; } .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in { background-color: #0077b5; } .elementor-social-icon-medium { background-color: #00ab6b; } .elementor-social-icon-meetup { background-color: #ec1c40; } .elementor-social-icon-mixcloud { background-color: #273a4b; } .elementor-social-icon-odnoklassniki { background-color: #F4731C; } .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-rss { background-color: #f26522; } .elementor-social-icon-shopping-cart { background-color: #4CAF50; } .elementor-social-icon-skype { background-color: #00AFF0; } .elementor-social-icon-slideshare { background-color: #0077b5; } .elementor-social-icon-snapchat { background-color: #fffc00; } .elementor-social-icon-soundcloud { background-color: #ff8800; } .elementor-social-icon-spotify { background-color: #2ebd59; } .elementor-social-icon-stack-overflow { background-color: #fe7a15; } .elementor-social-icon-steam { background-color: #00adee; } .elementor-social-icon-stumbleupon { background-color: #EB4924; } .elementor-social-icon-telegram { background-color: #2CA5E0; } .elementor-social-icon-thumb-tack { background-color: #1aa1d8; } .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: #1DA1F2; } .elementor-social-icon-viber { background-color: #665cac; } .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-social-icon-500px { background-color: #0099e5; } .elementor-shape-rounded .elementor-icon.elementor-social-icon { border-radius: 10%; } .elementor-shape-circle .elementor-icon.elementor-social-icon { border-radius: 50%; } .elementor-star-rating { color: #CCD6DF; font-family: eicons; display: inline-block; } .elementor-star-rating i { display: inline-block; position: relative; font-style: normal; cursor: default; } .elementor-star-rating i:before { content: '\e934'; display: block; font-size: inherit; font-family: inherit; position: absolute; overflow: hidden; color: #f0ad4e; top: 0; left: 0; } .elementor-star-rating .elementor-star-empty:before { content: none; } .elementor-star-rating .elementor-star-1:before { width: 10%; } .elementor-star-rating .elementor-star-2:before { width: 20%; } .elementor-star-rating .elementor-star-3:before { width: 30%; } .elementor-star-rating .elementor-star-4:before { width: 40%; } .elementor-star-rating .elementor-star-5:before { width: 50%; } .elementor-star-rating .elementor-star-6:before { width: 60%; } .elementor-star-rating .elementor-star-7:before { width: 70%; } .elementor-star-rating .elementor-star-8:before { width: 80%; } .elementor-star-rating .elementor-star-9:before { width: 90%; } .elementor-star-rating__wrapper { display: flex; align-items: center; } .elementor-star-rating__title { margin-right: 10px; } .elementor-star-rating--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-end; } .elementor-star-rating--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-start; } .elementor-star-rating--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating--align-justify .elementor-star-rating__title { margin-right: auto; } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-end; } .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-start; } .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating-tablet--align-justify .elementor-star-rating__title { margin-right: auto; } } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper { text-align: right; justify-content: flex-end; } .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper { text-align: left; justify-content: flex-start; } .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper { text-align: center; justify-content: center; } .elementor-star-rating-mobile--align-justify .elementor-star-rating__title { margin-right: auto; } } .last-star { letter-spacing: 0; } .elementor--star-style-star_unicode .elementor-star-rating { font-family: 'Arial', 'Helvetica', sans-serif; } .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before { content: '\002605'; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper { width: 25%; flex-shrink: 0; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active { border-right-style: none; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after { height: 999em; width: 0; right: 0; border-right-style: solid; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before { top: 0; transform: translateY(-100%); } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-active { border-bottom-style: none; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { bottom: 0; height: 0; width: 999em; border-bottom-style: solid; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before { right: 100%; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { left: 100%; } .elementor-widget-tabs .elementor-tab-title, .elementor-widget-tabs .elementor-tab-title:before, .elementor-widget-tabs .elementor-tab-title:after, .elementor-widget-tabs .elementor-tab-content, .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; outline: none; } .elementor-widget-tabs .elementor-tab-desktop-title { position: relative; padding: 20px 25px; font-weight: bold; line-height: 1; border: solid transparent; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active { border-color: #D4D4D4; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after { display: block; content: ''; position: absolute; } .elementor-widget-tabs .elementor-tab-mobile-title { padding: 10px 10px; cursor: pointer; } .elementor-widget-tabs .elementor-tab-content { padding: 20px; display: none; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-tabs .elementor-tab-title, .elementor-tabs .elementor-tab-content { 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: ELEMENTOR_SCREEN_MD_MIN) { .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs { display: flex; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper { 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-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; color: inherit; display: block; } .elementor-testimonial-wrapper .elementor-testimonial-job { font-size: 0.85em; color: inherit; display: block; } .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%; object-fit: cover; max-width: none; } .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-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; } .elementor-toggle { text-align: left; } .elementor-toggle .elementor-tab-title { font-weight: bold; line-height: 1; margin: 0; padding: 15px; border-bottom: 1px solid #D4D4D4; cursor: pointer; outline: none; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon { display: inline-block; width: 1em; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right { float: right; text-align: right; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left { float: left; text-align: left; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed { display: block; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened { display: none; } .elementor-toggle .elementor-tab-title.elementor-active { border-bottom: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed { display: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened { display: block; } .elementor-toggle .elementor-tab-content { padding: 15px; border-bottom: 1px solid #D4D4D4; display: none; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-toggle .elementor-tab-title { padding: 12px; } .elementor-toggle .elementor-tab-content { padding: 12px 10px; } } .elementor-widget-video .elementor-widget-container { overflow: hidden; transform: translate3d(0, 0, 0); } .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-widget-video .elementor-video { object-fit: cover; } .slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; user-select: none; touch-action: pan-y; -webkit-tap-highlight-color: transparent; } .slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; } .slick-list:focus { outline: none; } .slick-list.dragging { cursor: pointer; } .slick-slider .slick-track, .slick-slider .slick-list { transform: translate3d(0, 0, 0); } .slick-track { position: relative; left: 0; top: 0; display: block; } .slick-track:before, .slick-track:after { 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; } .elementor-slick-slider .slick-loading .slick-list:after { content: '\e8fb'; font-family: eicons; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); animation: fa-spin 2s infinite linear; font-size: 25px; color: #a4afb7; } .elementor-slick-slider .slick-prev, .elementor-slick-slider .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 20px; padding: 0; transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus, .elementor-slick-slider .slick-next:hover, .elementor-slick-slider .slick-next:focus { color: transparent; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before, .elementor-slick-slider .slick-next:hover:before, .elementor-slick-slider .slick-next:focus:before { opacity: 1; } .elementor-slick-slider .slick-prev.slick-disabled:before, .elementor-slick-slider .slick-next.slick-disabled:before { opacity: .25; } .elementor-slick-slider .slick-prev:before, .elementor-slick-slider .slick-next:before { font-family: eicons; font-size: 35px; line-height: 1; opacity: .75; color: white; -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: '\e89f'; } [dir="rtl"] .elementor-slick-slider .slick-prev:before { content: '\e89e'; } .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: '\e89e'; } [dir="rtl"] .elementor-slick-slider .slick-next:before { content: '\e89f'; } .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:hover, .elementor-slick-slider ul.slick-dots li button:focus { outline: none; } .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before { opacity: 1; } .elementor-slick-slider ul.slick-dots li button:before { font-family: eicons; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\e914'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .elementor-slick-slider ul.slick-dots li.slick-active button:before { opacity: .75; color: black; } .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-prev, .elementor-slick-slider .slick-slider .slick-next { z-index: 1; } .elementor-slick-slider .slick-slide img { margin: auto; } /** * Swiper 3.4.2 * Customized by Elementor team */ .swiper-container { margin-left: auto; margin-right: auto; position: relative; overflow: hidden; /* Fix of Webkit flickering */ z-index: 1; } .swiper-container .swiper-slide figure { line-height: 0; } .swiper-container .elementor-lightbox-content-source { display: none; } .swiper-container-no-flexbox .swiper-slide { float: left; } .swiper-container-vertical > .swiper-wrapper { flex-direction: column; } .swiper-wrapper { position: relative; width: 100%; height: 100%; z-index: 1; display: flex; transition-property: transform; box-sizing: content-box; } .swiper-container-android .swiper-slide, .swiper-wrapper { transform: translate3d(0px, 0, 0); } .swiper-container-multirow > .swiper-wrapper { flex-wrap: wrap; } .swiper-container-free-mode > .swiper-wrapper { transition-timing-function: ease-out; margin: 0 auto; } .swiper-slide { flex-shrink: 0; width: 100%; height: 100%; position: relative; } /* Auto Height */ .swiper-container-autoheight { height: auto; } .swiper-container-autoheight .swiper-slide { height: auto; } .swiper-container-autoheight .swiper-wrapper { align-items: flex-start; transition-property: transform, height; } /* a11y */ .swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; } /* IE10 Windows Phone 8 Fixes */ .swiper-wp8-horizontal { touch-action: pan-y; } .swiper-wp8-vertical { touch-action: pan-x; } /* Arrows */ .swiper-button-prev, .swiper-button-next { position: absolute; top: 50%; width: 27px; height: 44px; margin-top: -22px; z-index: 10; cursor: pointer; background-size: 27px 44px; background: no-repeat center; } .swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled { opacity: 0.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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } .swiper-button-next, .swiper-container-rtl .swiper-button-prev { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } /* Pagination Styles */ .swiper-pagination { position: absolute; text-align: center; transition: 300ms; transform: translate3d(0, 0, 0); z-index: 10; } .swiper-pagination.swiper-pagination-hidden { opacity: 0; } /* Common Styles */ .swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 5px; left: 0; width: 100%; } /* Bullets */ .swiper-pagination-bullet { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: #000; opacity: 0.2; } .swiper-pagination-fraction { color: #000; } button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; box-shadow: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; } .swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer; } .swiper-pagination-white .swiper-pagination-bullet { background: #fff; } .swiper-pagination-bullet-active { opacity: 1; } .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%; transform: translate3d(0px, -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 6px; } /* Progressbar */ .swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; } .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #000; position: absolute; left: 0; top: 0; width: 100%; height: 100%; transform: scale(0); transform-origin: left top; } .swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { transform-origin: right top; } .swiper-container-horizontal > .swiper-pagination-progressbar { width: 100%; height: 4px; left: 0; top: 0; } .swiper-container-vertical > .swiper-pagination-progressbar { width: 4px; height: 100%; left: 0; top: 0; } .swiper-pagination-progressbar.swiper-pagination-white { background: rgba(255, 255, 255, 0.5); } .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill { background: #fff; } .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill { background: #000; } /* 3D Container */ .swiper-container-3d { perspective: 1200px; } .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .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-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow { transform-style: preserve-3d; } .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-slide-shadow-bottom { 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: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-right { background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-top { background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-bottom { background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } /* Coverflow */ .swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper { /* Windows 8 IE 10 fix */ -ms-perspective: 1200px; } /* Cube + Flip */ .swiper-container-cube, .swiper-container-flip { overflow: visible; } .swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide { pointer-events: none; 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-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right { z-index: 0; backface-visibility: hidden; } /* Cube */ .swiper-container-cube .swiper-slide { visibility: hidden; transform-origin: 0 0; width: 100%; height: 100%; } .swiper-container-cube.swiper-container-rtl .swiper-slide { transform-origin: 100% 0; } .swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible; } .swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: #000; opacity: 0.6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; } /* Fade */ .swiper-container-fade.swiper-container-free-mode .swiper-slide { transition-timing-function: ease-out; } .swiper-container-fade .swiper-slide { pointer-events: none; transition-property: opacity; } .swiper-container-fade .swiper-slide .swiper-slide { pointer-events: none; } .swiper-container-fade .swiper-slide-active { pointer-events: auto; } .swiper-container-fade .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-zoom-container { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; text-align: center; } .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas { max-width: 100%; max-height: 100%; object-fit: contain; } /* Scrollbar */ .swiper-scrollbar { border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 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, 0.5); border-radius: 10px; left: 0; top: 0; } .swiper-scrollbar-cursor-drag { cursor: move; } .elementor-pagination-position-outside .swiper-container { padding-bottom: 30px; } .elementor-pagination-position-outside .elementor-swiper-button { top: calc(50% - 30px / 2); } .elementor-swiper { position: relative; } .elementor-main-swiper { position: static; } .elementor-arrows-position-outside .swiper-container { width: calc(100% - 60px); } .elementor-arrows-position-outside .elementor-swiper-button-prev { left: 0; } .elementor-arrows-position-outside .elementor-swiper-button-next { right: 0; } .swiper-image-stretch .swiper-slide .swiper-slide-image { width: 100%; } .elementor-swiper-button { position: absolute; display: inline-flex; z-index: 1; cursor: pointer; font-size: 25px; color: rgba(238, 238, 238, 0.9); top: 50%; transform: translate3d(0, -50%, 1px); } .elementor-swiper-button-prev { left: 10px; } .elementor-swiper-button-next { right: 10px; } .elementor-swiper-button.swiper-button-disabled { opacity: 0.3; } /* Preloader */ .swiper-lazy-preloader { width: 42px; height: 42px; position: absolute; left: 50%; top: 50%; margin-left: -21px; margin-top: -21px; z-index: 10; transform-origin: 50%; animation: swiper-preloader-spin 1s steps(12, end) 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%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; } .swiper-lazy-preloader-white:after { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); } @keyframes swiper-preloader-spin { 100% { transform: rotate(360deg); } } .elementor-lightbox { --lightbox-ui-color: rgba(238, 238, 238, 0.9); --lightbox-ui-color-hover: #fff; --lightbox-text-color: var(--lightbox-ui-color); --lightbox-header-icons-size: 20px; --lightbox-navigation-icons-size: 25px; } .elementor-lightbox .dialog-header { display: none; } .elementor-lightbox .dialog-widget-content { background: none; box-shadow: none; width: 100%; height: 100%; } .elementor-lightbox .dialog-message { animation-duration: .3s; } .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) { height: 100%; } .elementor-lightbox .dialog-message.dialog-lightbox-message { padding: 0; } .elementor-lightbox .dialog-lightbox-close-button { cursor: pointer; position: absolute; font-size: var(--lightbox-header-icons-size); right: 0.75em; margin-top: 13px; padding: .25em; z-index: 2; line-height: 1; } .elementor-lightbox .dialog-lightbox-close-button, .elementor-lightbox .elementor-swiper-button { color: var(--lightbox-ui-color); transition: all 0.3s; opacity: 1; } .elementor-lightbox .dialog-lightbox-close-button:hover, .elementor-lightbox .elementor-swiper-button:hover { color: var(--lightbox-ui-color-hover); } .elementor-lightbox .swiper-container { height: 100%; } .elementor-lightbox .elementor-lightbox-item { display: flex; align-items: center; justify-content: center; position: relative; padding: 70px; box-sizing: border-box; height: 100%; margin: auto; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-lightbox .elementor-lightbox-item { padding: 70px 0; } } .elementor-lightbox .elementor-lightbox-image { max-height: 100%; user-select: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover { opacity: 1; filter: none; border: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container { box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); border-radius: 2px; } .elementor-lightbox .elementor-video-container { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { .elementor-lightbox .elementor-video-container { width: 75%; } } @media (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor-lightbox .elementor-video-container { width: 100%; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container { width: 70%; } } .elementor-lightbox .elementor-swiper-button:focus { outline: none; } .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { height: 100%; display: flex; align-items: center; width: 15%; justify-content: center; font-size: var(--lightbox-navigation-icons-size); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; } .elementor-lightbox .elementor-swiper-button-next { right: 0; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { width: 20%; } .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i { padding: 10px; background-color: rgba(0, 0, 0, 0.5); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; justify-content: flex-start; } .elementor-lightbox .elementor-swiper-button-next { right: 0; justify-content: flex-end; } } .elementor-slideshow__counter { color: currentColor; font-size: .75em; width: max-content; } .elementor-slideshow__header, .elementor-slideshow__footer { position: absolute; left: 0; width: 100%; padding: 15px 20px; transition: 0.3s; } .elementor-slideshow__footer { color: var(--lightbox-text-color); } .elementor-slideshow__header { color: var(--lightbox-ui-color); display: flex; font-size: var(--lightbox-header-icons-size); padding-left: 1em; padding-right: 2.6em; top: 0; align-items: center; z-index: 10; } .elementor-slideshow__header > i { font-size: inherit; cursor: pointer; padding: .25em; margin: 0 .35em; } .elementor-slideshow__header > i:hover { color: var(--lightbox-ui-color-hover); } .elementor-slideshow__header > i:first-of-type { margin-left: auto; } .elementor-slideshow__header .elementor-icon-share { z-index: 5; } .elementor-slideshow__share-menu { background-color: rgba(0, 0, 0, 0); width: 0; height: 0; position: absolute; overflow: hidden; transition: background-color 400ms; } .elementor-slideshow__share-menu .elementor-slideshow__share-links a { color: #2C2C2C; } .elementor-slideshow__share-links { display: block; position: absolute; min-width: 200px; right: 67px; top: 60px; background-color: #fff; border-radius: 3px; font-size: 16px; padding: 14px 20px; transform: scale(0); opacity: 0; transform-origin: 90% 10%; transition: all 250ms 100ms; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); } .elementor-slideshow__share-links a { text-align: left; color: #55595c; font-size: 12px; line-height: 2.5; display: block; opacity: 0; transition: opacity 500ms 100ms; } .elementor-slideshow__share-links a:hover { color: #000; } .elementor-slideshow__share-links a i { margin-right: 10px; font-size: 15px; } .elementor-slideshow__share-links:before { content: ''; display: block; position: absolute; top: 0; right: 15px; border: 9px solid; border-color: transparent transparent #fff transparent; transform: translateY(-100%) scaleX(0.7); } .elementor-slideshow__footer { bottom: 0; z-index: 5; position: fixed; } .elementor-slideshow__title, .elementor-slideshow__description { margin: 0; } .elementor-slideshow__title { font-size: 16px; font-weight: bold; } .elementor-slideshow__description { font-size: 14px; } .elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer { opacity: 0; pointer-events: none; } .elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next { opacity: 0; } .elementor-slideshow--fullscreen-mode .elementor-video-container { width: 100%; } .elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer { background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next { opacity: 0; pointer-events: none; } .elementor-slideshow--share-mode .elementor-slideshow__share-menu { top: 0; left: 0; width: 100vw; height: 100vh; opacity: 1; cursor: default; background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--share-mode .elementor-slideshow__share-links { transform: scale(1); } .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a { opacity: 1; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter { color: #1DA1F2; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook { color: #3b5998; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest { color: #bd081c; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold { color: #a4afb7; } .elementor-slideshow--share-mode .eicon-share-arrow { z-index: 2; } .animated { animation-duration: 1.25s; } .animated.animated-slow { animation-duration: 2s; } .animated.animated-fast { animation-duration: .75s; } .animated.infinite { animation-iteration-count: infinite; } .animated.reverse { animation-direction: reverse; } @media (prefers-reduced-motion: reduce) { .animated { animation: none; } } .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 { transform: rotate(180deg); } .elementor-shape[data-negative="true"].elementor-shape-top { transform: rotate(180deg); } .elementor-shape svg { display: block; width: calc(100% + 1.3px); position: relative; left: 50%; transform: translateX(-50%); } .elementor-shape .elementor-shape-fill { fill: #fff; transform-origin: center; transform: rotateY(0deg); } #wp-admin-bar-elementor_edit_page .ab-submenu .ab-item { display: flex; width: 200px; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-title { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; width: 100%; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-type { background: #55595c; font-size: 11px; line-height: 9px; margin-top: 6px; padding: 4px 8px; border-radius: 3px; } .page-template-elementor_canvas.elementor-page:before { display: none; } .elementor-post__thumbnail__link { transition: none; } #left-area ul.elementor-icon-list-items, .elementor .elementor-element ul.elementor-icon-list-items, .elementor-edit-area .elementor-element ul.elementor-icon-list-items { padding: 0; } #wpadminbar * { font-style: normal; } @media (max-width: ELEMENTOR_SCREEN_SM_MAX) { .elementor .elementor-hidden-phone { display: none; } } @media (min-width: ELEMENTOR_SCREEN_MD_MIN) and (max-width: ELEMENTOR_SCREEN_MD_MAX) { .elementor .elementor-hidden-tablet { display: none; } } @media (min-width: ELEMENTOR_SCREEN_LG_MIN) { .elementor .elementor-hidden-desktop { display: none; } } assets/css/editor-dark-mode.css000066600000066645152142641160012526 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ body { color: #E0E1E3; } body .pcr-app { background-color: #4C4F56; -webkit-box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.5), 0 0 1em 0 rgba(0, 0, 0, 0.05); box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.5), 0 0 1em 0 rgba(0, 0, 0, 0.05); } body .pcr-app .pcr-swatches > button:after { -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); } body .pcr-app .pcr-clear { color: #E0E1E3; background-color: #64666A; } body .pcr-app .pcr-interaction .pcr-result { color: #E0E1E3; border-color: #64666A; } body .pcr-app .pcr-interaction .pcr-result:focus { border-color: #7D7E82; } body .pcr-swatch.pcr-active:after { -webkit-box-shadow: 0 0 0 1px #71d7f7, inset 0 0 0 1px #4C4F56; box-shadow: 0 0 0 1px #71d7f7, inset 0 0 0 1px #4C4F56; } body .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch { background-color: #64666A; } body .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch i { color: #E0E1E3; } #elementor-loading { background-color: #34383C; } .elementor-loader { background-color: #4C4F56; } .elementor-safe-mode-toast { background-color: #4C4F56; } .elementor-safe-mode-toast header h2, .elementor-safe-mode-toast .elementor-toast-content { color: #E0E1E3; } input, select, textarea, .elementor-input-style { color: #E0E1E3; background-color: #34383C; } input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) { border-color: #64666A; } input:focus, select:focus, textarea:focus, .elementor-input-style:focus { border-color: #7D7E82; } input[disabled], select[disabled], textarea[disabled], .elementor-input-style[disabled] { background-color: #4C4F56; } select { background-color: #34383C; } .elementor-button.elementor-button-default { background-color: #64666A; } .elementor-button.elementor-button-default:hover { background-color: #4C4F56; } .elementor-button.elementor-button-success[disabled] { background-color: #64666A; } .elementor-button.elementor-button-danger { background-color: #F84343; } #elementor-mode-switcher { background-color: #34383C; } #elementor-mode-switcher:hover { background-color: #71D7F7; } .elementor-control-dynamic-switcher { background-color: #34383C; border-color: #64666A; } .elementor-tags-list { background-color: #4C4F56; border-color: #64666A; } .elementor-tags-list__group-title { color: #B4B5B7; } .elementor-tags-list__item:hover { background-color: #404349; } .elementor-tag-settings-popup { background-color: #34383C; -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.8); box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.8); } .elementor-tag-settings-popup:before { border-bottom-color: #404349; } .elementor-panel { background-color: #34383C; } .elementor-panel a { color: #71D7F7; } .elementor-panel #elementor-panel-header { background-color: #26292C; } .elementor-panel .elementor-panel-navigation { background-color: #404349; } .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#34383C), to(#4C4F56)); background-image: -webkit-linear-gradient(top, #34383C, #4C4F56); background-image: -o-linear-gradient(top, #34383C, #4C4F56); background-image: linear-gradient(to bottom, #34383C, #4C4F56); border-bottom-color: #71D7F7; } .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a { color: #E0E1E3; } .elementor-panel #elementor-panel-elements-search-input { background-color: #4C4F56; color: #E0E1E3; } .elementor-panel #elementor-panel-elements-search-input:focus { background-color: #404349; color: #E0E1E3; } .elementor-panel #elementor-panel-elements-search-input:focus + i { color: #E0E1E3; } .elementor-panel .elementor-element { background-color: #404349; } .elementor-panel .elementor-element .title, .elementor-panel .elementor-element .icon { color: #E0E1E3; } .elementor-panel .elementor-element:hover .title, .elementor-panel .elementor-element:hover .icon { color: #71D7F7; } .elementor-panel .elementor-element > .eicon-lock { color: #64666A; } .elementor-panel .widget-inside { background-color: inherit; } .elementor-panel #elementor-panel-footer { background-color: #26292C; } .elementor-panel .elementor-panel-footer-sub-menu-wrapper { background-color: #34383C; border-top: 1px solid #4C4F56; } .elementor-panel .elementor-panel-footer-sub-menu-item { background-color: #404349; } .elementor-panel .elementor-panel-footer-sub-menu-item:hover, .elementor-panel .elementor-panel-footer-sub-menu-item.active { background-color: #4C4F56; } .elementor-panel #elementor-panel-footer-saver-options { border-color: #26292C; } .elementor-panel .elementor-controls-popover { background-color: #4C4F56; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); } .elementor-panel .elementor-controls-popover:before { border-bottom-color: #4C4F56; } .elementor-panel .elementor-controls-popover .elementor-control-responsive-switchers__holder { background-color: #4C4F56; } .elementor-panel .elementor-panel-alert { background-color: #4C4F56; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-info { background-color: #4C4F56; } .elementor-panel #elementor-panel__editor__help__link { color: #B4B5B7; } .elementor-panel #elementor-panel__editor__help__link:hover { color: #E0E1E3; } .elementor-panel #elementor-panel-global-widget > * { background-color: #404349; } .elementor-panel #elementor-global-widget-locked-unlink { border-top-color: #34383C; } .elementor-panel .elementor-panel-scheme-color-system-items { background-color: #34383C; border-color: #64666A; } .elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard) { background-color: #404349; } .elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard):hover { background-color: #4C4F56; } .elementor-panel .elementor-panel-menu-item:not(.elementor-panel-menu-item-exit-to-dashboard) a { color: #E0E1E3; } .elementor-panel .elementor-panel-menu-item-icon { color: #B4B5B7; } .elementor-control { background-color: #404349; } .elementor-control.elementor-control-separator-before:before, .elementor-control.elementor-control-separator-after:after { background-color: #34383C; } .elementor-control.elementor-control-type-divider .elementor-control-content { background-color: #404349; border-color: #34383C; } .elementor-control-responsive-switchers__holder { background-color: #404349; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder { -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.5); box-shadow: 0 0 3px rgba(0, 0, 0, 0.5); } a.elementor-responsive-switcher { color: #E0E1E3; } a.elementor-responsive-switcher:hover { color: #71D7F7; } .elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop { color: #71D7F7; } .elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet { color: #71D7F7; } .elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile { color: #71D7F7; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label { background-color: #34383C; border-color: #64666A; } .elementor-control-type-popover_toggle .elementor-control-responsive-switchers__holder { background-color: #4C4F56; } .elementor-control-media-upload-button { background-color: #34383C; } .elementor-control-media__remove { background-color: #64666A; color: #B4B5B7; } .elementor-control-media .elementor-control-input-wrapper { border-color: #64666A; } .elementor-control-media .eicon-plus-circle { color: #E0E1E3; } .elementor-control-media .elementor-control-media__tool { background-color: #7D7E82; } .elementor-control-media-area, .pcr-app[data-theme=monolith] .pcr-color-palette, .pcr-button { background-image: -webkit-linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C), -webkit-linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C); background-image: -o-linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C), -o-linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C); background-image: linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C), linear-gradient(45deg, #34383C 25%, transparent 25%, transparent 75%, #34383C 75%, #34383C); background-color: #64666A; } .elementor-control-type-icons .elementor-control-media__preview i { color: #B4B5B7; } .elementor-control-type-gallery .elementor-control-gallery-clear:hover { color: #F84343; } .elementor-control-type-gallery .elementor-control-gallery-add { background-color: #34383C; } .elementor-control-type-gallery .elementor-control-gallery-add:hover { background-color: #4C4F56; } .elementor-control-type-gallery .elementor-control-gallery-status, .elementor-control-type-gallery .elementor-control-media__content { border-color: #64666A; } .elementor-control-type-url .elementor-control-url-more { background-color: #34383C; border-color: #64666A; } .elementor-control-type-url .elementor-control-url-option-input { border-color: #64666A; } .elementor-control-type-url .elementor-control-url-option-input:checked { background-color: #64666A; } .elementor-control-type-url .elementor-input:focus ~ div { border-color: #7D7E82; } .elementor-control-type-wysiwyg .wp-editor-container { border-color: #64666A; } .elementor-control-type-wysiwyg .mce-menubtn button, .elementor-control-type-wysiwyg .mce-ico, .elementor-control-type-wysiwyg .wp-switch-editor { color: #E0E1E3; } .elementor-control-type-wysiwyg .wp-editor-tabs { border-color: #7D7E82; } .elementor-control-type-wysiwyg .switch-html { border-color: #7D7E82; } .elementor-control-type-wysiwyg #insert-media-button, .elementor-control-type-wysiwyg .html-active .switch-html, .elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar, .elementor-control-type-wysiwyg .tmce-active .switch-tmce { background-color: #64666A; } .elementor-control-type-wysiwyg #insert-media-button { color: #E0E1E3; border-color: #7D7E82; } .elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-active, .elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:active, .elementor-control-type-wysiwyg .qt-dfw.active, .elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:hover, .elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:focus, .elementor-control-type-wysiwyg .qt-dfw:hover, .elementor-control-type-wysiwyg .qt-dfw:focus { background-color: #404349; -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 0 rgba(0, 0, 0, 0.08); box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 0 rgba(0, 0, 0, 0.08); } .elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-listbox { background-color: #404349; border-color: #7D7E82; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-wysiwyg .quicktags-toolbar { border-color: #7D7E82; } .elementor-control-type-wysiwyg .wp-core-ui .button, .elementor-control-type-wysiwyg .wp-core-ui .button-secondary { background-color: #4C4F56; color: #E0E1E3; border-color: #7D7E82; } .elementor-control-type-wysiwyg .wp-core-ui .button:hover, .elementor-control-type-wysiwyg .wp-core-ui .button-secondary:hover { background-color: #404349; border-color: #7D7E82; } .elementor-choices .elementor-choices-label, .elementor-choices .elementor-choices-label:last-child { background-color: #34383C; border-color: #64666A; } .elementor-choices input:checked + .elementor-choices-label { background-color: #7D7E82; border-color: #7D7E82; } .elementor-control-type-repeater .elementor-repeater-row-tools { background-color: #64666A; color: #E0E1E3; } .elementor-control-type-repeater .elementor-repeater-row-tools:hover { background-color: #7D7E82; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) { background-color: #4C4F56; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable):hover { background-color: #52555d; } .elementor-control-type-repeater .elementor-repeater-row-controls { border-color: #64666A; } .elementor-control-type-tab { background-color: #34383C; border-color: #64666A; } .elementor-control-type-tab:first-child { border-color: #64666A; } .elementor-control-type-tab.elementor-tab-active { background-color: #7D7E82; border-color: #7D7E82; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after { background-color: #E0E1E3; } .elementor-slider { background-color: #64666A; } .elementor-slider .noUi-handle { background-color: #E0E1E3; } .elementor-control-type-dimensions li input, .elementor-control-type-dimensions li .elementor-link-dimensions { border-color: #64666A; } .elementor-control-type-dimensions li input:focus { border-color: #7D7E82; } .elementor-control-type-dimensions li:first-child input { border-color: #64666A; } .elementor-control-type-dimensions li:first-child input:focus { border-color: #7D7E82; } .elementor-control-type-dimensions .elementor-link-dimensions.unlinked { background-color: #34383C; color: #E0E1E3; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) { background-color: #7D7E82; border-color: #7D7E82; } .elementor-control-type-switcher .elementor-switch-label { background-color: #34383C; } .elementor-control-type-switcher .elementor-switch-label:before { text-shadow: 0 1px rgba(0, 0, 0, 0.8); } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label { background-color: #71D7F7; } .elementor-control-type-switcher .elementor-switch-handle { background-color: #E0E1E3; } .pickr { background-color: #34383C; border-color: #64666A; } .elementor-color-picker__dropping-area { border: 1px dashed #7D7E82; color: #B4B5B7; } .elementor-color-picker__dropping-area.elementor-active { border-color: #B4B5B7; } .elementor-color-picker__dropping-area.elementor-active i { color: #F84343; } .elementor-control-type-structure .elementor-control-structure-preset path { fill: #34383C; } .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path { fill: #64666A; } .elementor-control-type-structure .elementor-control-structure-reset { border-top-color: #34383C; } .elementor-panel-heading { border-bottom-color: #34383C; } .elementor-panel-heading-toggle, .elementor-panel-heading-title { color: #E0E1E3; } .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single, .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple { background-color: #34383C; color: #E0E1E3; border-color: #64666A; } .select2-container.select2-container--open .select2-selection--single, .select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single, .select2-container.select2-container--focus .select2-selection--multiple { border-color: #7D7E82; } .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered { color: #E0E1E3; } .select2-container--default .select2-selection--single { background-color: #34383C; border-color: #4C4F56; } .select2-container--default .select2-selection--multiple { background-color: #34383C; } .select2-container--default .select2-selection--multiple .select2-selection__choice { background-color: #4C4F56; border-color: #4C4F56; } .select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: #4C4F56; color: #E0E1E3; } .select2-results__option[aria-selected=true] { color: #E0E1E3; } .select2-dropdown { background-color: #34383C; border-color: #7D7E82; } #elementor-element--promotion__dialog { background-color: #404349; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); } #elementor-element--promotion__dialog:after { border-right-color: #404349; } #elementor-element--promotion__dialog .dialog-header { color: #E0E1E3; border-bottom-color: #64666A; } #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon { color: #B4B5B7; } #elementor-element--promotion__dialog .dialog-header .eicon-close { color: #B4B5B7; } body.rtl #elementor-element--promotion__dialog:after { border-left-color: #475158; } .dialog-type-lightbox { background-color: rgba(0, 0, 0, 0.65); } .dialog-type-lightbox .dialog-header { color: #E0E1E3; } .dialog-type-lightbox .dialog-widget-content { background-color: #34383C; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { color: #E0E1E3; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #F84343; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #4C4F56; } .dialog-type-lightbox .dialog-buttons-wrapper, .dialog-type-lightbox .dialog-button:first-child { border-color: #4C4F56; } .dialog-type-lightbox .elementor-publish__tab__title { color: #E0E1E3; } .dialog-type-lightbox .elementor-publish__tab.elementor-active { background-color: #404349; } .dialog-type-lightbox .elementor-popup__display-settings_controls_group { background-color: #404349; } .dialog-type-lightbox .elementor-popup__display-settings_controls_group__icon { border-color: #34383C; } .elementor-templates-modal .dialog-header { background-color: #26292C; color: #E0E1E3; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); } .elementor-templates-modal__header__close--normal { border-color: #7D7E82; } .elementor-templates-modal__sidebar { background-color: transparent; } .elementor-templates-modal__content { -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.08); box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.08); } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #34383C; } #elementor-template-library-header-menu { color: #E0E1E3; } .elementor-template-library-menu-item.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#26292C), to(#34383C)); background-image: -webkit-linear-gradient(top, #26292C, #34383C); background-image: -o-linear-gradient(top, #26292C, #34383C); background-image: linear-gradient(to bottom, #26292C, #34383C); border-color: #71D7F7; } #elementor-template-library-filter { border-color: #34383C; } #elementor-template-library-filter-text { background-color: transparent; } #elementor-template-library-filter-text:focus + i { color: #E0E1E3; } label.elementor-template-library-order-label:hover, #elementor-template-library-filter-my-favorites:hover { color: #B4B5B7; } #elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label { color: #7D7E82; } #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label { color: #7D7E82; } #elementor-template-library-header-preview-back { border-color: #4C4F56; } .elementor-template-library-template-remote { background-color: #404349; } .elementor-template-library-template-remote .elementor-template-library-template-name { color: #E0E1E3; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer { background-color: #404349; } .elementor-template-library-template-local { background-color: #4C4F56; } .elementor-template-library-template-local:hover { background-color: #64666A; } .elementor-template-library-template-local .elementor-template-library-template-controls > div:not(:hover), .elementor-template-library-template-local .elementor-template-library-template-controls > div a { color: #B4B5B7; } .elementor-template-library-template-local .elementor-template-library-template-more { background-color: #4C4F56; } .elementor-template-library-template-local .elementor-template-library-template-more:before { border-bottom-color: #4C4F56; } .elementor-template-library-template-local .elementor-template-library-template-more:hover, .elementor-template-library-template-local .elementor-template-library-template-more a:hover { color: #E0E1E3; } .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover { color: #F84343; } #elementor-template-library-save-template-name { background-color: #26292C; } #elementor-template-library-import-form { background-color: transparent; } #elementor-template-library-import-form:hover { background-color: rgba(0, 0, 0, 0.3); } #elementor-publish #elementor-theme-builder-conditions select, #elementor-publish #elementor-theme-builder-conditions input { background-color: #4C4F56; color: #E0E1E3; } #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"], #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] { background-color: #64666A; } #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"] select, #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"] option, #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] select, #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] option { background-color: #404349; color: #E0E1E3; } #elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-dropdown, #elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-container--default .select2-selection--single { background-color: #4C4F56; } #elementor-icons-manager__search input { background-color: #404349; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } #elementor-icons-manager__search input:focus { background-color: #4C4F56; } .elementor-icons-manager__tab__item { background-color: #404349; } .elementor-icons-manager__tab__item__icon, .elementor-icons-manager__tab__item__name { color: #E0E1E3; } .elementor-icons-manager__tab-link { color: #E0E1E3; } .elementor-icons-manager__tab-link.elementor-active { background-color: #404349; } .elementor-context-menu { background-color: #404349; border-color: #34383C; } .elementor-context-menu .elementor-context-menu-list__group:not(:last-child) { border-color: #34383C; } .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover { background-color: #4C4F56; } .elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover { background-color: #F84343; } #elementor-navigator { background-color: #34383C; } #elementor-navigator__header, #elementor-navigator__inner, #elementor-navigator__footer { background-color: #34383C; } #elementor-navigator__header, #elementor-navigator__footer { border-color: #4C4F56; } #elementor-navigator__header #elementor-navigator__close, #elementor-navigator__header #elementor-navigator__toggle-all { color: #B4B5B7; } .elementor-navigator__element-section { background-color: transparent; } .elementor-navigator__item { background-color: #404349; border-color: #34383C; } .elementor-navigator__item:hover { background-color: #4c4f57; } .elementor-navigator__element__indicator { color: #E0E1E3; background-color: #4C4F56; } .elementor-navigator__element__indicator:hover { color: #B4B5B7; } .elementor-navigator__element__indicator:not(:first-child) { border-color: #34383C; } .elementor-navigator__element-column { background-color: #474a51; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing { background-color: #4c4f57; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing .elementor-navigator__element__toggle { color: #71D7F7; } .elementor-navigator__elements .elementor-empty-view { border-color: #34383C; } .elementor-navigator__elements .ui-sortable-helper { background-color: #34383C; border-color: #34383C; } .elementor-navigator__elements .ui-sortable-placeholder { background-color: #34383C; } #elementor-panel-history:not(.elementor-empty), .elementor-panel .elementor-panel-box, .elementor-panel .elementor-panel-scheme-buttons { background-color: #404349; } .elementor-revision-item__wrapper, .elementor-history-item { background-color: #4C4F56; border-color: #4C4F56; } .elementor-revision-item__wrapper:hover, .elementor-history-item:hover { background-color: #64666A; } #elementor-finder__search__input { color: #E0E1E3; } .elementor-finder__results__category__title { background-color: #26292C; color: #E0E1E3; } .elementor-finder__results__item__title { color: #E0E1E3; } .elementor-finder__results__item.elementor-active { background-color: #404349; } .elementor-hotkeys__list { background-color: #4C4F56; } .elementor-hotkeys__item { border-color: #64666A; } .elementor-hotkeys__item--shortcut span { background-color: #64666A; } .media-modal { color: #6d7882; } #wp-link { color: #6d7882; } #wp-link input, #wp-link select, #wp-link textarea, #wp-link .elementor-input-style { color: #6d7882; background-color: transparent; } #wp-link input:not(:focus), #wp-link select:not(:focus), #wp-link textarea:not(:focus), #wp-link .elementor-input-style:not(:focus) { border-color: #d5dadf; } #wp-link input:focus, #wp-link select:focus, #wp-link textarea:focus, #wp-link .elementor-input-style:focus { border-color: #a4afb7; } .ui-autocomplete { color: #6d7882; } .elementor-color-picker__swatch-tool { background-color: #E0E1E3; } .elementor-color-picker__swatch-tool i { color: #64666A; } .elementor-nerd-box-icon { -webkit-filter: contrast(0.8); filter: contrast(0.8); } /*# sourceMappingURL=editor-dark-mode.css.map */assets/css/editor.min.css000066600000422462152142641160011440 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{width:135px}*,: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}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:after{content:"";position:absolute;top:0;right:0;height:100%;width:0;background-color:#71d7f7;-webkit-transition:width .5s;-o-transition:width .5s;transition:width .5s}body a{color:#71d7f7}body a:hover{color:#d30c5c}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-mode-switcher-preview .eicon:before{content:""}body.elementor-editor-preview #elementor-preview{left:0}body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-navigator--dock-hint:after{width:30px}#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:9999}#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-container{width:100%!important;outline:none;z-index:9999}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#6d7882}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{line-height:1.5;font-size:.9em;border:none;-webkit-border-radius:0;border-radius:0}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.select2-selection{outline:none}.select2-selection--single{height:27px}.select2-selection__rendered{line-height:27px}.select2-selection__arrow{height:27px;top:0}.select2-results__option[aria-selected=true]{color:#495157}.select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted){background-color:initial}.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-header{color:#6d7882}#elementor-flexbox-attention-dialog .dialog-cancel{color:#39b54a}#elementor-flexbox-attention-dialog .dialog-ok{color:#6d7882}.elementor-nerd-box{padding:30px;text-align:center}.elementor-nerd-box-icon{width:100px;margin-right:10px}.elementor-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700;line-height:1.4}.elementor-nerd-box-message{margin-top:5px;line-height:1.8;font-size:11px}.elementor-nerd-box .elementor-button.elementor-nerd-box-link{background-color:#d30c5c;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-nerd-box .elementor-button.elementor-nerd-box-link:hover{background-color:#f22074}.eicon-nerd:hover:before{content:"\e8b7"}.eicon-nerd:active:before{content:"\e8b6"}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;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:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:7px;border-radius:7px;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;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:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success: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{-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-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;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-warning: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-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger: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-danger: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-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.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.elementor-button-go-pro{background-color:#d30c5c}.elementor-button i{margin-right:10px}.elementor-input-style,input,select,textarea{-webkit-border-radius:3px;border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#6d7882;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,.elementor-input-style:focus+.elementor-control-dynamic-switcher,input:focus,input:focus+.elementor-control-dynamic-switcher,select:focus,select:focus+.elementor-control-dynamic-switcher,textarea:focus,textarea:focus+.elementor-control-dynamic-switcher{border-color:#a4afb7}.elementor-input-style::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a4afb7}.elementor-input-style:-ms-input-placeholder,input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#a4afb7}.elementor-input-style::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a4afb7}.elementor-input-style::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}input{min-width:0}.elementor-input-style,input,textarea{padding:5px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{height:auto;width:auto}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{outline:none;height:27px}.ps{overflow:hidden!important;overflow-anchor:none;-ms-touch-action:auto;touch-action:auto}.ps__rail-y{display:none;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;width:15px;right:0;left:auto!important;position:absolute}.ps--active-y>.ps__rail-y{display:block;background-color:transparent}.ps--focus>.ps__rail-y,.ps--scrolling-y>.ps__rail-y,.ps:hover>.ps__rail-y{opacity:.6}.ps .ps__rail-y.ps--clicking,.ps .ps__rail-y:focus,.ps .ps__rail-y:hover{opacity:.9}.ps__thumb-y{background-color:#aaa;-webkit-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear,width .2s ease-in-out;-o-transition:background-color .2s linear,width .2s ease-in-out;transition:background-color .2s linear,width .2s ease-in-out;width:6px;right:2px;position:absolute}.ps__rail-y.ps--clicking .ps__thumb-y,.ps__rail-y:focus>.ps__thumb-y,.ps__rail-y:hover>.ps__thumb-y{background-color:#999;width:6px}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:1031;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:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#39b54a transparent transparent #39b54a;border-style:solid;border-width:2px;-webkit-border-radius:50%;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:100000}.elementor-panel{position:fixed;height:100%;top:0;bottom:0;overflow:visible;background-color:#e6e9ec;z-index:1;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px}.elementor-editor-active .elementor-panel{left:0}@media (max-width:1439px){.elementor-editor-preview .elementor-panel{left:-280px}}@media (min-width:1440px){.elementor-editor-preview .elementor-panel{left:-300px}}.elementor-editor-preview .elementor-panel>.ui-resizable-e,.elementor-editor-preview .elementor-panel>.ui-resizable-w{display:none}@media (max-width:1439px){.elementor-panel{width:280px}}@media (min-width:1440px){.elementor-panel{width:300px}}.elementor-panel .ps-scrollbar-y-rail{z-index:2}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#d30c5c}.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-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-left:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel .elementor-panel-alert a{color:inherit}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.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;-webkit-border-radius:.25em;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-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-panel .elementor-controls-popover:before{content:"";position:absolute;top:-16px;right:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-panel .elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-panel .elementor-controls-popover div.elementor-control:before{content:none}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#d30c5c;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 .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar{font-size:18px}.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-category{position:relative}.elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title{padding-top:14px}.elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-panel .elementor-panel-category:not(.elementor-active):after{content:"";position:absolute;left:15px;right:15px;bottom:0;height:8px;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.03)),to(transparent));background:-webkit-linear-gradient(rgba(0,0,0,.03),transparent);background:-o-linear-gradient(rgba(0,0,0,.03),transparent);background:linear-gradient(rgba(0,0,0,.03),transparent);-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-panel .elementor-panel-category-title{margin:0 15px;padding:20px 0;position:relative;text-transform:uppercase;font-size:11px;cursor:pointer}.elementor-panel .elementor-panel-category-title:before{content:"";font-family:eicons;position:absolute;right:0;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.elementor-panel .elementor-panel-category-items{overflow:hidden;padding:0 5px;display:none}.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-buttons .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:11px;font-weight:400}.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}.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;display:grid;grid-template-columns:repeat(4,27px);-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.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: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;-webkit-border-radius: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{color:#39b54a}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-page-menu{padding:25px 15px}.elementor-panel .elementor-panel-menu-group-title{text-transform:uppercase;font-size:11px}.elementor-panel .elementor-panel-menu-items{margin:15px 0 25px;-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:40px;cursor:pointer;margin-bottom:1px;background-color:#fff}.elementor-panel .elementor-panel-menu-item:hover{background-color:hsla(0,0%,100%,.8)}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:50px;color:#a4afb7}.elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link{font-size:18px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-menu-item a{color:#6d7882}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard{background-color:#0085ba;color:#fff;text-transform:uppercase;font-size:12px}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover{background-color:#0073a1}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon,.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title{color:#fff}.elementor-panel .elementor-control.elementor-control-clear_page{background-color:transparent}.elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html{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:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.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.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #d30c5c}.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:eicons;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\e92c"}.elementor-panel .elementor-tab-control-style a:before{content:"\e921"}.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:"\e916"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\e885"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\e899"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\e922"}.elementor-panel #elementor-panel__editor__help{padding:50px 25px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-panel #elementor-panel__editor__help,.elementor-panel #elementor-panel__editor__help__link{-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-panel__editor__help__link{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;color:#6d7882;font-size:12px;font-weight:500;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel #elementor-panel__editor__help__link i{padding:0 5px;color:#a4afb7;font-size:18px;position:relative}.elementor-panel #elementor-panel__editor__help__link i:after{content:"";position:absolute;height:13px;width:13px;top:3px;bottom:0;left:8px;right:0;-webkit-border-radius:50%;border-radius:50%;z-index:-1}.elementor-panel #elementor-panel__editor__help__link:hover{color:#495157}.elementor-panel #elementor-panel__editor__help__link:hover i{color:#71d7f7}.elementor-panel #elementor-panel__editor__help__link:hover i:before{content:"\e941"}.elementor-panel #elementor-panel__editor__help__link:hover i:after{background:#fff}.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 .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update{border-right:1px solid #2d8739;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i{margin-right:5px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options{float:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i{margin:auto}.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:10000}.elementor-panel .elementor-panel-footer-sub-menu{-webkit-border-radius:5px;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.elementor-disabled .elementor-icon,.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title{color:#6d7882}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.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-responsive>i{display:block;height:100%;line-height:40px}.elementor-panel #elementor-panel-footer-saver-publish{width:80px}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i{margin-right:0}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label{display:none}.elementor-panel #elementor-panel-footer-saver-options{width:35px;border-left:1px solid #495157}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper{font-size:11px;font-style:italic;color:#a4afb7;padding:5px 0 15px}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon{display:none}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time{border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out;cursor:pointer}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover{border-bottom-color:inherit}.elementor-panel .elementor-disabled{cursor:default}.elementor-panel #elementor-panel-saver-button-preview a{color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish,.elementor-panel #elementor-panel-saver-button-save-options{font-size:11px;text-transform:uppercase;height:26px}.elementor-panel #elementor-panel-saver-button-publish.elementor-disabled,.elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled{background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish{width:100%;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel #elementor-panel-saver-button-save-options{width:25px}#elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}#elementor-panel-elements{overflow:hidden;padding:0 5px}#elementor-panel-state-loading{display:none}body.elementor-panel-loading #elementor-panel-state-loading{position:absolute;top:0;left:0;height:100%;width:100%;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;background-color:hsla(0,0%,100%,.5);z-index:1}#elementor-panel-state-loading .eicon-loading{font-size:25px;color:#71d7f7}#elementor-panel-elements-search-wrapper{position:relative;margin:10px 10px 5px}#elementor-panel-elements-search-input{background-color:hsla(0,0%,100%,.7);font-size:11px;padding:10px 10px 10px 29px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s;-webkit-border-radius:3px;border-radius:3px;appearance:none;-webkit-appearance:none;-moz-appearance:none}#elementor-panel-elements-search-input+i{position:absolute;left:10px;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-panel-elements-search-input:focus{background-color:#fff;padding-right:15px}.elementor-panel .elementor-element{-webkit-border-radius:3px;border-radius:3px;background-color:#fff;cursor:move;position:relative}.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--promotion .elementor-element{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#556068;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.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:#d30c5c}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;display:table-cell;vertical-align:middle;height:40px}.elementor-panel .elementor-element>.eicon-lock{position:absolute;top:5px;right:5px;color:#e6e9ec}#elementor-element--promotion__dialog{position:absolute;width:300px;z-index:1;background-color:#fff;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px}#elementor-element--promotion__dialog:after{content:"";position:absolute;top:15px;right:100%;-webkit-transform:scaleY(.7);-ms-transform:scaleY(.7);transform:scaleY(.7);border:10px solid transparent;border-right-color:#fff}#elementor-element--promotion__dialog__title{font-size:14px}#elementor-element--promotion__dialog .dialog-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:20px;color:#495157;border-bottom:1px solid #e6e9ec;font-weight:500}#elementor-element--promotion__dialog .dialog-header i{color:#a4afb7}#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin-left:10px;font-size:14px}#elementor-element--promotion__dialog .dialog-header .eicon-close{cursor:pointer}#elementor-element--promotion__dialog .dialog-message{padding:20px}#elementor-element--promotion__dialog .dialog-buttons-wrapper{padding:0 20px 20px}#elementor-element--promotion__dialog .dialog-button{width:100%;padding:6.5px;font-size:12px}#elementor-element--promotion__dialog .dialog-button::-moz-focus-inner{border:0}#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-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.media-modal.wp-core-ui input,.media-modal.wp-core-ui select{width:auto}.media-modal.wp-core-ui fieldset{padding:0;border:0}.media-modal.wp-core-ui .wp-clearfix:after{content:"";display:table;clear:both}#elementor-panel-get-pro-elements .elementor-nerd-box-message{margin-top:10px}#elementor-panel-get-pro-elements .elementor-nerd-box-icon{margin-top:20px}.elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control .elementor-control-content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:12px;line-height:1;margin-right:5px}.elementor-control .elementor-control-spinner{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-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title{display:none}.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop{display:none}body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet{display:none}body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;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:5px;padding-right:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.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-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-left:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-responsive-switchers{margin-right:5px;--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:-webkit-calc(-1*var(--selected-option)*2em);top:calc(-1*var(--selected-option)*2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{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;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 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}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:right}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-right:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices input{display:none}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-right:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-right:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:-webkit-calc(100% + 1px);width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.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-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-left:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{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-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;right:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:none}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:left}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.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-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area{display:none}.elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media-upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-left:1px}.elementor-control-media__tool{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;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{position:absolute;z-index:1;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;top:10px;right:10px;width:20px;height:20px;font-size:11px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1);-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:rtl}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-right:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.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-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-right:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(4px);-ms-transform:translateY(calc(50% - 14px)) translateX(4px);transform:translateY(calc(50% - 14px)) translateX(4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-input-wrapper{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-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{margin-left:10px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;right:0;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(8px);-ms-transform:translateY(calc(50% - 14px)) translateX(8px);transform:translateY(calc(50% - 14px)) translateX(8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:-webkit-calc(100% + 5px);top:calc(100% + 5px);left:-webkit-calc(50% - 4px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;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-control-type-switcher .elementor-switch-label:after,.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-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-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-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-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:27px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-right:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left-width:0}.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;right:0}.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-textarea textarea{display:block}.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-control-type-url .elementor-control-url-more{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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{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-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 5px 0 0;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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-control-type-url .elementor-control-url-option input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:10px}.elementor-control-type-url .elementor-control-url__custom-attributes label{display:block}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-self:baseline;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-text input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#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{background-color:#d30c5c;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 .eicon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-mode-switcher-preview-input{display:none}.elementor-revision-item__wrapper{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;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-revision-item__wrapper.current{font-weight:700}.elementor-revision-item__wrapper .elementor-revision-item__tools-current{color:#71d7f7}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-current{display:none}.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner{display:none}.elementor-revision-item__gravatar{-webkit-border-radius:50%;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-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-restore-autosave-dialog.dialog-widget{background-color:rgba(0,0,0,.3)}#elementor-panel-revisions-loading{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-panel-revisions-loading .eicon-loading{font-size:50px;color:#a4afb7}.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;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .eicon:before{content:"\e924"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:default}.elementor-history-item-current .elementor-history-item__icon .eicon:before,.elementor-history-item-current:hover .elementor-history-item__icon .eicon:before{content:"\e90e"}.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-top:5px}#elementor-panel-history{padding:20px 20px 15px}#elementor-panel-history.elementor-empty .elementor-history-revisions-message{padding-top:20px}#elementor-panel-history:not(.elementor-empty){background-color:#fff;margin-top:10px}#elementor-panel-history-no-items,#elementor-panel-revisions-no-revisions{text-align:center}#elementor-panel-history-no-items .elementor-nerd-box-icon,#elementor-panel-revisions-no-revisions .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-header{background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:table-cell}body:not(.e-routes-has-history) #elementor-panel-header-kit-back{pointer-events:none;opacity:.4}body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon{cursor:inherit;color:inherit}.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{border-bottom-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled){background-color:#4ab7f4}.elementor-editor-kit #elementor-panel-footer-navigator,.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,.elementor-editor-kit #elementor-panel-header-add-button,.elementor-editor-kit #elementor-panel-header-menu-button{display:none}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(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;margin:0 auto;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{-webkit-border-radius:30px;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:100000}.tipsy-inner{background-color:#000;color:#fff;max-width:200px;padding:6px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.5);box-shadow:0 0 5px 0 rgba(0,0,0,.5)}.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-template-library-modal a.elementor-template-library-blank-footer-link{font-style:normal;text-decoration:underline;color:#39b54a}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#2d8e3a}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .select2-container{z-index:0}#elementor-template-library-header-menu{text-align:center;color:#6d7882;font-size:13px}.elementor-template-library-menu-item{display:inline-block;padding:17px 0;width:115px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #d30c5c}#elementor-template-library-header-actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor-template-library-header-actions>div{padding-right:16px}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px;font-size:11px}#elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert{color:#fff;background-color:#39b54a}#elementor-template-library-header-preview-insert-wrapper .elementor-go-pro{background-color:#d30c5c;color:#fff}#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-templates{padding:0 15px}#elementor-template-library-templates[data-template-source=local] #elementor-template-library-templates-container{-webkit-box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);margin-top:10px;margin-bottom:45px}#elementor-template-library-templates[data-template-source=local] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#6d7882}#elementor-template-library-templates[data-template-source=remote] #elementor-template-library-templates-container{margin:10px -15px 0}#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#495157}#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-order-toolbar-local{display:none}#elementor-template-library-templates .elementor-template-library-order-input,#elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner{display:none}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label{padding-right:8px}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label:after{font-family:eicons;content:"\e8ae";margin-left:3px}#elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse+.elementor-template-library-order-label:after{content:"\e8ad"}#elementor-template-library-templates-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}#elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert{text-transform:none;font-size:12px}#elementor-template-library-toolbar{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}#elementor-template-library-toolbar,.elementor-template-library-filter-toolbar{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-filter-toolbar-remote{font-size:11px}#elementor-template-library-order{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;border-right:1px solid #d5dadf}.elementor-template-library-order-label{text-transform:uppercase;padding-right:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}label.elementor-template-library-order-label{cursor:pointer}label.elementor-template-library-order-label:hover{color:#556068}#elementor-template-library-filter{border-right:1px solid #d5dadf}#elementor-template-library-filter .select2{text-align:left;margin-right:25px}#elementor-template-library-filter .select2-selection__rendered,#select2-elementor-template-library-filter-subtype-results .select2-results__option{text-transform:capitalize}#elementor-template-library-my-favorites{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left;padding-left:20px}#elementor-template-library-filter-my-favorites{display:none}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label{color:#495157}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label i:after{color:#d30c5c;content:"\e93f"}#elementor-template-library-filter-my-favorites-label{cursor:pointer;text-transform:uppercase}#elementor-template-library-filter-my-favorites-label:hover{color:#556068}#elementor-template-library-filter-my-favorites-label:hover i:after{color:#d30c5c}#elementor-template-library-filter-my-favorites-label i{padding-right:5px}#elementor-template-library-filter-my-favorites-label i:after{color:#a4afb7;content:"\e923"}#elementor-template-library-filter-text-wrapper{width:200px;position:relative}#elementor-template-library-filter-text-wrapper i{position:absolute;top:50%;right:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-template-library-filter-text{border:none;border-bottom:1px solid #d5dadf;-webkit-border-radius:0;border-radius:0;font-size:11px;padding:8px 15px 8px 0;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s}#elementor-template-library-filter-text::-webkit-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:focus{border-color:#c2cbd2}.elementor-template-library-template-remote{margin:15px;padding:8px;background-color:#fff;-webkit-box-shadow:0 1px 20px 0 rgba(0,0,0,.07);box-shadow:0 1px 20px 0 rgba(0,0,0,.07);-webkit-border-radius:3px;border-radius:3px}.elementor-template-library-template-remote:hover .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview{opacity:0}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action{display:none}.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:#d30c5c;color:#d5dadf;padding:2px 4px 0;font-size:9px;-webkit-border-radius:2px;border-radius:2px}.elementor-template-library-template-remote:not(.elementor-template-library-template-page){position:relative;width:-webkit-calc(33.333% - 30px);width:calc(33.333% - 30px);overflow:hidden}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) img{display:block;width:100%}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer{position:absolute;width:100%;bottom:0;left:0;padding:10px;background-color:#fff;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(:hover) .elementor-template-library-template-footer{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-template-library-template-remote .elementor-template-library-template-body{position:relative}@media (max-width:1025px){.elementor-template-library-template-remote .elementor-template-library-template-body{height:300px}}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;-webkit-background-size:cover;background-size:cover;background-position-x:50%;-webkit-box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07);box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07)}.elementor-template-library-template-remote .elementor-template-library-template-preview{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;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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-template-library-template-remote .elementor-template-library-template-insert{color:#39b54a}.elementor-template-library-template-remote .elementor-go-pro{color:#d30c5c}.elementor-template-library-template-remote .elementor-template-library-template-footer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px;font-size:11px;line-height:1}.elementor-template-library-template-remote .elementor-template-library-template-name{text-align:left;color:#6d7882;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:5px}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input{display:none}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked+.elementor-template-library-template-favorite-label i:before{content:"\e93f";color:#d30c5c}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label{cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i{color:#d30c5c}@media (max-width:1439px){.elementor-template-library-template-page{width:-webkit-calc(25% - 30px);width:calc(25% - 30px)}}@media (min-width:1440px){.elementor-template-library-template-page{width:-webkit-calc(20% - 30px);width:calc(20% - 30px)}}@media (max-width:1025px){.elementor-template-library-template-page{width:-webkit-calc(33.333% - 30px);width:calc(33.333% - 30px)}}.elementor-template-library-template-page .elementor-template-library-template-body{height:200px}#elementor-template-library-order-toolbar-local,.elementor-template-library-template-local{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;padding:0 25px;text-align:left}#elementor-template-library-order-toolbar-local{margin-top:30px}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label{line-height:1;font-size:10px;font-weight:500}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover){color:#a4afb7}.elementor-template-library-template-local{height:50px;width:100%;margin-top:1px;background-color:#fff;-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-insert{background:none;color:#a4afb7}.elementor-template-library-template-local:first-child{-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-template-library-template-local:last-child{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.elementor-template-library-template-local .elementor-template-library-template-name{font-weight:500}.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name{padding-right:20px}.elementor-template-library-template-local .elementor-template-library-template-meta{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-action,.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name,.elementor-template-library-template-local .elementor-template-library-template-preview{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-template-library-template-local .elementor-template-library-template-controls{position:relative;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-template-local .elementor-template-library-template-controls,.elementor-template-library-template-local .elementor-template-library-template-controls a{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls>div{cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-insert i{margin-right:3px}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-left:6px}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#556068}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#d72b3f}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 5%}.elementor-template-library-template-local .elementor-template-library-template-more{display:none;position:absolute;background-color:#fff;padding:3px 20px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:1px 3px 11px rgba(0,0,0,.3);box-shadow:1px 3px 11px rgba(0,0,0,.3);top:100%;right:0;-webkit-transform:translateX(65%) translateY(-7px);-ms-transform:translateX(65%) translateY(-7px);transform:translateX(65%) translateY(-7px);z-index:1}.elementor-template-library-template-local .elementor-template-library-template-more:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:8px 4px;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-template-library-template-local .elementor-template-library-template-more>div{margin:10px 0;font-size:11px}.elementor-template-library-template-local .elementor-template-library-template-more-toggle{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-template-library-template-local .elementor-template-library-template-more-toggle i{font-size:16px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{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%)}@media (max-width:1439px){#elementor-template-library-preview iframe{width:1440px}}@media (min-width:1440px){#elementor-template-library-preview iframe{width:1710px}}.elementor-template-library-blank-icon{font-size:65px;margin-top:45px;color:#c2cbd2;line-height:1}.elementor-template-library-blank-icon img{width:70px}.elementor-template-library-blank-icon .elementor-template-library-no-results{width:200px}.elementor-template-library-blank-title{font-size:30px;margin-top:40px}@media (max-width:1439px){.elementor-template-library-blank-title{font-size:25px}}.elementor-template-library-blank-message{font-size:18px;color:#a4afb7;margin-top:15px;font-weight:300}@media (max-width:1439px){.elementor-template-library-blank-message{font-size:16px;margin-top:10px}}#elementor-template-library-save-template-form{margin-top:40px;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:55px;font-size:16px}#elementor-template-library-save-template-name{width:500px;background-color:#fff;font-weight:300;color:#a4afb7;padding-left:25px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border:none}#elementor-template-library-save-template-submit{width:150px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}#elementor-template-library-import-form{width:95%;background-color:hsla(0,0%,100%,.5);padding:60px;border:2px dashed #d5dadf;margin:35px auto;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}#elementor-template-library-import-form:hover{background-color:hsla(0,0%,100%,.9)}#elementor-template-library-import-form-or{margin-top:15px;font-size:18px}#elementor-template-library-import-form-label{margin-top:20px;padding:15px 35px;display:inline-block}#elementor-template-library-import-form-input{display:none}#elementor-template-library-import-form.elementor-drag-over{border:3px dashed #71d7f7}#elementor-template-library-import .elementor-template-library-blank-icon{margin-top:0}#elementor-template-library-import .elementor-template-library-blank-message{margin-top:20px}.e-route-library-connect #elementor-template-library-modal .dialog-message{max-height:95vh;padding:100px 0 0;min-height:550px}#elementor-template-library-connect-logo{font-size:20px}#elementor-template-library-connect__button{display:inline-block;position:relative;z-index:1;margin-top:25px;padding:12px 24px;font-size:14px}#elementor-template-library-connect__background-image-left-1{right:22.4%;bottom:-29%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate}#elementor-template-library-connect__background-image-left-2{right:46.25%;bottom:-15.5%;-webkit-animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate;animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate}#elementor-template-library-connect__background-image-right-1{left:37%;bottom:-41%;-webkit-animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate;animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate}#elementor-template-library-connect__background-image-right-2{left:48%;bottom:-12.5%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate}.elementor-template-library-connect__background-image{position:absolute}.elementor-template-library-blank-footer{position:absolute;bottom:70px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-style:italic}@media (max-height:700px){.elementor-template-library-blank-footer{display:none}}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-nerd-box-icon{margin-top:70px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin:20px 0}#elementor-template-library-templates-empty{width:100%;margin-top:40px}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}@media (max-width:1439px){.elementor-template-library-local-column-1{width:33%}.elementor-template-library-local-column-2{width:10%}.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:15%}.elementor-template-library-local-column-5{width:27%}}@media (min-width:1440px){.elementor-template-library-local-column-1{width:25%}.elementor-template-library-local-column-2,.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:17%}.elementor-template-library-local-column-5{width:24%}}@media (max-width:1024px){.elementor-template-library-local-column-3{display:none}.elementor-template-library-local-column-5{width:41%}}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:1}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;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-tags-list__group-title .eicon-info-circle{padding-right:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-right:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#d30c5c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{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;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;left:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}#elementor-toast{position:absolute;width:280px;padding:20px;-webkit-border-radius:5px;border-radius:5px;color:#d5dadf;background-color:rgba(0,0,0,.8);z-index:10000}#elementor-toast .dialog-message{font-size:13px}#elementor-toast .dialog-buttons-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;margin-top:15px}#elementor-toast .dialog-button{color:#fcb92c;margin:0 5px;text-transform:uppercase;cursor:pointer}#elementor-toast .dialog-button:last-child{margin-right:0}.elementor-context-menu{position:absolute;width:200px;background-color:#fff;border:1px solid #e6e9ec;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.09);box-shadow:0 2px 10px 0 rgba(0,0,0,.09);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:3}.elementor-context-menu-list__group{padding:5px 0}.elementor-context-menu-list__group:not(:last-child){border-bottom:1px solid #e6e9ec}.elementor-context-menu-list__item{padding:5px 20px 5px 10px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer}.elementor-context-menu-list__item--disabled{cursor:default;color:#d5dadf}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#71d7f7}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover>*{color:#fff}.elementor-context-menu-list__item__icon{width:20px;color:#c2cbd2}.elementor-context-menu-list__item__title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-context-menu-list__item__shortcut{color:#d5dadf}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#d72b3f}.elementor-context-menu .eicon-pro-icon{color:#fcb92c}.elementor-right-click-introduction{position:absolute;width:250px;padding:30px 20px;background-color:#fff;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.07);box-shadow:0 2px 10px 0 rgba(0,0,0,.07);text-align:center;-webkit-border-radius:3px;border-radius:3px}.elementor-right-click-introduction:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:7px 5px;top:-14px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-right-click-introduction .dialog-header{color:#6d7882;font-size:16px}.elementor-right-click-introduction .dialog-message{font-size:13px;line-height:1.6;margin-top:10px;color:#a4afb7}.elementor-right-click-introduction .dialog-buttons-wrapper{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;margin-top:25px}.elementor-right-click-introduction .dialog-button{font-size:11px}.elementor-right-click-introduction .dialog-ok{padding:7px 27px;text-transform:capitalize}.elementor-right-click-introduction .dialog-learn-more{color:#39b54a;margin-right:15px;cursor:pointer}#elementor-hotkeys{text-align:left}#elementor-hotkeys__content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;overflow:hidden;margin-bottom:30px}@media (max-width:1024px){#elementor-hotkeys__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}@media (max-width:1024px){#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-right:25px}}@media (min-width:1440px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-right:50px}}#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}@media (max-width:1024px){#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-left:25px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-left:50px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-left:15px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-left:40px}}.elementor-hotkeys__col{width:50%}@media (max-width:1024px){.elementor-hotkeys__col{width:100%}}.elementor-hotkeys__header,.elementor-hotkeys__list{width:100%}.elementor-hotkeys__header{padding:10px 30px;font-weight:500}@media (max-width:479px){.elementor-hotkeys__header{padding-right:10px;padding-left:10px}}.elementor-hotkeys__list{background-color:#fff;height:-webkit-calc(100% - 42px);height:calc(100% - 42px);padding:10px 20px}@media (max-width:479px){.elementor-hotkeys__list{padding:0}}@media (max-width:1024px){.elementor-hotkeys__list{margin-bottom:30px;height:auto}}.elementor-hotkeys__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;padding:20px 10px;border-bottom:1px solid #eceeef}.elementor-hotkeys__item:last-child{margin-bottom:30px}@media (max-width:479px){.elementor-hotkeys__item:last-child{margin-bottom:0}}.elementor-hotkeys__item--label{font-size:13px;font-weight:400;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-hotkeys__item--shortcut{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-hotkeys__item--shortcut span{position:relative;background-color:#eceeef;padding:5px 12px;margin-right:27px;-webkit-border-radius:3px;border-radius:3px}@media (max-width:479px){.elementor-hotkeys__item--shortcut span{padding:4px 9px;margin-right:23px}}.elementor-hotkeys__item--shortcut span:after{content:"+";position:absolute;right:-18px;width:9px;text-align:center}@media (max-width:479px){.elementor-hotkeys__item--shortcut span:after{right:-16px}}.elementor-hotkeys__item--shortcut span:last-child{margin-right:0}.elementor-hotkeys__item--shortcut span:last-child:after{display:none}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}#elementor-navigator{position:fixed;top:100px;width:240px;height:339px;right:30px;background-color:#fff;-webkit-box-shadow:0 2px 20px 0 rgba(0,0,0,.1);box-shadow:0 2px 20px 0 rgba(0,0,0,.1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;z-index:2;display:none}body.elementor-navigator-docked #elementor-navigator{top:0;right:0;height:100%}body:not(.elementor-navigator-docked) #elementor-navigator{-webkit-border-radius:5px;border-radius:5px}#elementor-navigator__inner{height:100%;background-color:#e6e9ec}#elementor-navigator__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding:12px 10px;background-color:#fff;border-bottom:1px solid #e6e9ec;cursor:move}#elementor-navigator__close,#elementor-navigator__toggle-all{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s;cursor:pointer}#elementor-navigator__close:not(:hover),#elementor-navigator__toggle-all:not(:hover){color:#a4afb7}#elementor-navigator__toggle-all{font-size:13px}#elementor-navigator__close{font-size:11px}#elementor-navigator__elements{height:-webkit-calc(100% - 49px);height:calc(100% - 49px);overflow:auto;position:relative}.elementor-navigator-docked #elementor-navigator__elements{height:-webkit-calc(100% - 35px);height:calc(100% - 35px)}#elementor-navigator__elements .elementor-nerd-box{padding:25px}#elementor-navigator__footer{position:absolute;width:100%;left:0;bottom:0;text-align:center;background-color:#fff;border-top:1px solid #e6e9ec;color:#a4afb7}.elementor-navigator-docked #elementor-navigator__footer{display:none}.elementor-navigator__item{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:30px;font-size:11px;border-bottom:1px solid #e6e9ec;cursor:pointer;-webkit-transition:padding .5s linear;-o-transition:padding .5s linear;transition:padding .5s linear;overflow:hidden}.elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-navigator__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}.elementor-navigator__item+.elementor-navigator__elements{display:none}.elementor-navigator__elements .elementor-empty-view{padding:10px;border-bottom:1px solid #e6e9ec}.elementor-navigator__elements .elementor-empty-view__title{margin-left:23px;color:#c2cbd2;font-size:10px;font-style:italic}.elementor-navigator__elements .ui-sortable-helper{background-color:#fff;-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);-webkit-transform:rotate(4deg);-ms-transform:rotate(4deg);transform:rotate(4deg);border:1px solid #e6e9ec;pointer-events:none}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#f1f3f5}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view{border-top:2px solid #71d7f7}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view .elementor-empty-view__title{display:none}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view+.ui-sortable-placeholder{display:none}.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle{visibility:hidden}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle{display:none}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing>*{color:#fff}.elementor-navigator__element__list-toggle{margin-right:7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;color:#a4afb7}.elementor-navigator__element__element-type{margin-right:8px}.elementor-navigator__element__title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden}.elementor-navigator__element__title__text{white-space:nowrap;-webkit-user-select:text}.elementor-navigator__element__title__text[contenteditable=true]{outline:none;color:#6d7882;background-color:#fff;padding:2px 3px;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2)}.elementor-navigator__element__title__text:not([contenteditable=true]){white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-navigator__element__toggle{position:absolute;right:15px;height:100%;z-index:0;font-size:13px}.elementor-navigator__element__indicators{position:relative;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s;padding-left:5px;z-index:91}.elementor-navigator__element__indicators:not(:hover){-webkit-transform:translateX(-webkit-calc(100% - 8px));-ms-transform:translateX(calc(100% - 8px));transform:translateX(calc(100% - 8px))}.elementor-navigator__element__indicator{height:100%;width:31px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;color:#6d7882;background-color:#fff;border-left:1px solid #e6e9ec}.elementor-navigator__element__indicator:first-child{border-left:3px solid #71d7f7}.elementor-editing .elementor-navigator__element__indicator:first-child{border-color:#41c9f4}.elementor-navigator__element__indicator:hover{color:#495157}.elementor-navigator__element--hidden .elementor-navigator__element__title,.elementor-navigator__element--hidden .elementor-navigator__element__toggle{opacity:.5}.elementor-navigator__element-column{background-color:#fafbfb}.elementor-navigator__element-column>.elementor-navigator__item .elementor-navigator__element__element-type{color:#a4afb7}.elementor-navigator__element-section{background-color:#fff}#elementor-notice-bar{position:absolute;width:100%;bottom: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;height:40px;color:#fff;background-color:#6d7882;padding:0 50px}#elementor-notice-bar__message{padding-left:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-notice-bar__message a{text-decoration:underline}#elementor-notice-bar__action{text-transform:uppercase}#elementor-notice-bar__close{margin:0 20px;cursor:pointer}#elementor-notice-bar i{font-size:16px;opacity:.9}#elementor-notice-bar a{color:#fff}#elementor-notice-bar a,#elementor-notice-bar i{-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-notice-bar a:hover,#elementor-notice-bar i:hover{color:#d4d4d4}body:not(.elementor-device-desktop) #elementor-notice-bar{display:none}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header{color:#495157}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a{color:#6d7882;text-decoration:underline;font-style:italic}#elementor-preview-debug-link-text{display:inline-block}#elementor-icons-manager-modal .dialog-message{padding:0;height:700px}#elementor-icons-manager-modal .dialog-buttons-wrapper,#elementor-icons-manager-modal .dialog-content,#elementor-icons-manager__wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media (max-width:479px){#elementor-icons-manager__sidebar{display:none}}#elementor-icons-manager__tab-links{margin-top:30px}#elementor-icons-manager__upload{margin:20px 45px;padding-top:35px;border-top:1px solid #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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}@media (max-width:1439px){#elementor-icons-manager__upload{margin:20px 25px}}#elementor-icons-manager__upload__title{color:#a4afb7;font-size:11px;text-transform:uppercase}#elementor-icons-manager__main{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0}@media (max-width:1439px){#elementor-icons-manager__main{padding:30px 50px 0}}@media (max-width:479px){#elementor-icons-manager__main{width:100%}}#elementor-icons-manager__search{position:relative}#elementor-icons-manager__search input{padding:8px 15px;background-color:#fff;border:none}#elementor-icons-manager__search input::-webkit-input-placeholder{font-style:italic}#elementor-icons-manager__search input:-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::placeholder{font-style:italic}#elementor-icons-manager__search i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:15px}#elementor-icons-manager__tab__wrapper{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}#elementor-icons-manager__tab__title{color:#556068;font-size:16px;font-weight:500;text-align:left}@media (max-width:479px){#elementor-icons-manager__tab__title{display:none}}#elementor-icons-manager__tab__content{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:20px;margin:20px 0}@media (max-width:1439px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(3,1fr)}}#elementor-icons-manager__promotion{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-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-top:70px}#elementor-icons-manager__promotion__icon{font-size:60px;color:#c2cbd2}#elementor-icons-manager__promotion__text{width:300px;font-size:16px;padding-top:25px}#elementor-icons-manager__promotion__link{margin-top:20px}.elementor-icons-manager__tab-link{padding:15px 0 15px 45px;font-size:14px;color:#6d7882;text-align:left;cursor:pointer;position:relative}.elementor-icons-manager__tab-link i{font-size:20px;padding-right:15px;color:#a4afb7}@media (max-width:1439px){.elementor-icons-manager__tab-link{padding:15px 15px 15px 25px;font-size:11px}.elementor-icons-manager__tab-link i{font-size:15px}}@media (max-width:1024px){.elementor-icons-manager__tab-link i{display:none}}.elementor-icons-manager__tab-link.elementor-active{background-color:#fff;-webkit-box-shadow:0 6px 20px 0 rgba(0,0,0,.1);box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.elementor-icons-manager__tab-link.elementor-active:after{content:"";position:absolute;height:100%;width:5px;top:0;left:0;background-color:#71d7f7}.elementor-icons-manager__tab-link.elementor-active i{color:#71d7f7}.elementor-icons-manager__tab__item{position:relative;height:0;padding-bottom:100%;background-color:#fff;-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05);box-shadow:0 1px 12px rgba(0,0,0,.05);-webkit-border-radius:3px;border-radius:3px;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;overflow:hidden}.elementor-icons-manager__tab__item:hover{-webkit-box-shadow:0 1px 14px rgba(0,0,0,.16);box-shadow:0 1px 14px rgba(0,0,0,.16)}.elementor-icons-manager__tab__item.elementor-selected{-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7;box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7}.elementor-icons-manager__tab__item__content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);padding:1px}.elementor-icons-manager__tab__item__icon{font-size:25px;color:#6d7882}.elementor-icons-manager__tab__item__name{color:#c2cbd2;font-size:11px;padding:13px 20px 0;max-width:100%;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}#elementor-enable-fa5-dialog a{font-style:italic;text-decoration:underline}#elementor-enable-fa5-dialog .dialog-confirm-ok,#elementor-enable-svg-dialog .dialog-confirm-ok{color:#39b54a}.elementor-color-picker__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}.elementor-color-picker__swatch-tool{position:relative;-webkit-box-shadow:0 1px 8px 0 rgba(0,0,0,.15);box-shadow:0 1px 8px 0 rgba(0,0,0,.15);background-color:#fff}.elementor-color-picker__swatch-tool i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#6d7882;font-size:13px}.elementor-color-picker__swatch-placeholder{border:1px dashed #c2cbd2}.elementor-color-picker__dropping-area{margin-top:10px;padding:15px;border:1px dashed #d5dadf;text-align:center;color:#6d7882;display:none}.elementor-color-picker__dropping-area.elementor-active{border-color:#a4afb7}.elementor-color-picker__dropping-area.elementor-active i{color:#b01b1b}.elementor-color-picker__dropping-area i{font-size:15px}.elementor-color-picker__dropping-area__drag-to-delete{margin-top:10px}.elementor-color-picker__dropping-area .elementor-color-picker__swatch-placeholder{display:none}.pcr-swatch.pcr-active~.elementor-color-picker__add-swatch{background-color:#d5dadf;pointer-events:none;-webkit-box-shadow:none;box-shadow:none}.pcr-swatch.pcr-active~.elementor-color-picker__add-swatch i{color:#fff}assets/css/frontend.css000066600000412774152142641160011214 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content { background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; -webkit-box-sizing: border-box; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; right: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-right: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: -webkit-calc(100vh - 32px); height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: -webkit-sticky; position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; padding: 5px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-left: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: left; padding-left: 15px; } .elementor-templates-modal__header__logo-area > * { 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-templates-modal__header__logo__icon-wrapper { margin-right: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__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-templates-modal__header__item { position: relative; 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; -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-left: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-left: 20px; margin-right: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; -webkit-border-radius: 2px; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-left: 10px; margin-left: 15px; border-left: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: -webkit-linear-gradient(225deg, #f2295b, #434363); background-image: -o-linear-gradient(225deg, #f2295b, #434363); background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; -webkit-border-radius: 0.2em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } .elementor { -webkit-hyphens: manual; -ms-hyphens: manual; hyphens: manual; } .elementor *, .elementor *:before, .elementor *:after { -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; -webkit-border-radius: 0; 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, .elementor .elementor-background-holder, .elementor .elementor-background { height: 100%; width: 100%; top: 0; left: 0; position: absolute; overflow: hidden; z-index: 0; direction: ltr; } .elementor .elementor-background-video-container { -webkit-transition: opacity 1s; -o-transition: opacity 1s; transition: opacity 1s; pointer-events: none; } .elementor .elementor-background-video-container.elementor-loading { opacity: 0; } .elementor .elementor-background-video-embed { max-width: none; } .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor .elementor-background-video { max-width: none; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -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 .elementor-background-slideshow { position: absolute; width: 100%; height: 100%; z-index: 0; top: 0; left: 0; } .elementor .elementor-background-slideshow__slide__image { width: 100%; height: 100%; background-position: center center; -webkit-background-size: cover; background-size: cover; } .elementor-widget-wrap > .elementor-element.elementor-absolute { position: absolute; } .elementor-widget-wrap > .elementor-element.elementor-fixed { position: fixed; } .elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial { max-width: 100%; } @media (max-width: 1024px) { .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial { max-width: 100%; } } @media (max-width: 767px) { .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial { max-width: 100%; } } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { z-index: 1; } .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: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-custom-embed-play i { font-size: 100px; color: #fff; opacity: 0.8; text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; } .elementor-custom-embed-play.elementor-playing i { font-family: eicons; -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; } .elementor-custom-embed-play.elementor-playing i:before { content: '\e8fb'; } .elementor-tag { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; } .elementor-ken-burns { -webkit-transition-property: -webkit-transform; transition-property: -webkit-transform; -o-transition-property: transform; transition-property: transform; transition-property: transform, -webkit-transform; -webkit-transition-duration: 10s; -o-transition-duration: 10s; transition-duration: 10s; -webkit-transition-timing-function: linear; -o-transition-timing-function: linear; transition-timing-function: linear; } .elementor-ken-burns--out { -webkit-transform: scale(1.3); -ms-transform: scale(1.3); transform: scale(1.3); } .elementor-ken-burns--active { -webkit-transition-duration: 20s; -o-transition-duration: 20s; transition-duration: 20s; } .elementor-ken-burns--active.elementor-ken-burns--out { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); } .elementor-ken-burns--active.elementor-ken-burns--in { -webkit-transform: scale(1.3); -ms-transform: scale(1.3); transform: scale(1.3); } @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: "\e813"; font-family: eicons; top: 3px; font-size: 18px; } #wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before { content: "\f348"; top: 2px; } .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-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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 { width: 100%; position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-widget-wrap { position: relative; width: 100%; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; } .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-widget-wrap > .elementor-element { width: 100%; } .elementor-widget { position: relative; } .elementor-widget:not(:last-child) { margin-bottom: 20px; } .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute { margin-bottom: 0; } .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 (min-width: 768px) and (max-width: 1024px) { .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) { -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) { -webkit-box-ordinal-group: 10; -webkit-order: 9; -ms-flex-order: 9; order: 9; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) { -webkit-box-ordinal-group: 9; -webkit-order: 8; -ms-flex-order: 8; order: 8; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) { -webkit-box-ordinal-group: 8; -webkit-order: 7; -ms-flex-order: 7; order: 7; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) { -webkit-box-ordinal-group: 7; -webkit-order: 6; -ms-flex-order: 6; order: 6; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) { -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) { -webkit-box-ordinal-group: 5; -webkit-order: 4; -ms-flex-order: 4; order: 4; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) { -webkit-box-ordinal-group: 4; -webkit-order: 3; -ms-flex-order: 3; order: 3; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) { -webkit-box-ordinal-group: 3; -webkit-order: 2; -ms-flex-order: 2; order: 2; } .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) { -webkit-box-ordinal-group: 2; -webkit-order: 1; -ms-flex-order: 1; order: 1; } } @media (max-width: 767px) { .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) { -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) { -webkit-box-ordinal-group: 10; -webkit-order: 9; -ms-flex-order: 9; order: 9; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) { -webkit-box-ordinal-group: 9; -webkit-order: 8; -ms-flex-order: 8; order: 8; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) { -webkit-box-ordinal-group: 8; -webkit-order: 7; -ms-flex-order: 7; order: 7; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) { -webkit-box-ordinal-group: 7; -webkit-order: 6; -ms-flex-order: 6; order: 6; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) { -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) { -webkit-box-ordinal-group: 5; -webkit-order: 4; -ms-flex-order: 4; order: 4; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) { -webkit-box-ordinal-group: 4; -webkit-order: 3; -ms-flex-order: 3; order: 3; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) { -webkit-box-ordinal-group: 3; -webkit-order: 2; -ms-flex-order: 2; order: 2; } .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) { -webkit-box-ordinal-group: 2; -webkit-order: 1; -ms-flex-order: 1; order: 1; } .elementor-column { width: 100%; } } ul.elementor-icon-list-items.elementor-inline-items { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item { word-break: break-word; } .elementor-grid .elementor-grid-item { word-break: break-word; min-width: 0; } .elementor-grid-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } @media (max-width: 1024px) { .elementor-grid-tablet-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-tablet-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-tablet-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-tablet-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-tablet-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-tablet-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-tablet-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-tablet-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-tablet-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-tablet-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-tablet-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-tablet-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-tablet-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (max-width: 767px) { .elementor-grid-mobile-0 .elementor-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-grid-mobile-1 .elementor-grid { grid-template-columns: repeat(1, 1fr); display: grid; } .elementor-grid-mobile-2 .elementor-grid { grid-template-columns: repeat(2, 1fr); display: grid; } .elementor-grid-mobile-3 .elementor-grid { grid-template-columns: repeat(3, 1fr); display: grid; } .elementor-grid-mobile-4 .elementor-grid { grid-template-columns: repeat(4, 1fr); display: grid; } .elementor-grid-mobile-5 .elementor-grid { grid-template-columns: repeat(5, 1fr); display: grid; } .elementor-grid-mobile-6 .elementor-grid { grid-template-columns: repeat(6, 1fr); display: grid; } .elementor-grid-mobile-7 .elementor-grid { grid-template-columns: repeat(7, 1fr); display: grid; } .elementor-grid-mobile-8 .elementor-grid { grid-template-columns: repeat(8, 1fr); display: grid; } .elementor-grid-mobile-9 .elementor-grid { grid-template-columns: repeat(9, 1fr); display: grid; } .elementor-grid-mobile-10 .elementor-grid { grid-template-columns: repeat(10, 1fr); display: grid; } .elementor-grid-mobile-11 .elementor-grid { grid-template-columns: repeat(11, 1fr); display: grid; } .elementor-grid-mobile-12 .elementor-grid { grid-template-columns: repeat(12, 1fr); display: grid; } } @media (min-width: 1025px) { #elementor-device-mode:after { content: 'desktop'; } } @media (min-width: 768px) and (max-width: 1024px) { #elementor-device-mode:after { content: 'tablet'; } } @media (max-width: 767px) { #elementor-device-mode:after { content: 'mobile'; } } .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 > input, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above > .elementor-field-group .elementor-field-subgroup { -webkit-flex-basis: 100%; -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper { -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%; max-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, 0.1) inset; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; outline: 0; } .elementor-field-group .elementor-field-textual::-webkit-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual:-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::-ms-input-placeholder { color: inherit; font-family: inherit; opacity: 0.6; } .elementor-field-group .elementor-field-textual::placeholder { color: inherit; font-family: inherit; opacity: 0.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 { appearance: none; -webkit-appearance: none; -moz-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: '\e92a'; font-family: 'eicons'; 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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before { content: ''; } .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-type-checkbox .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input, .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label { display: inline; } .elementor-field-label { cursor: pointer; } .elementor-mark-required .elementor-field-label:after { content: '*'; color: red; padding-left: 0.2em; } .elementor-field-textual { line-height: 1.4; font-size: 15px; min-height: 40px; padding: 5px 14px; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-field-textual.elementor-size-xs { font-size: 13px; min-height: 33px; padding: 4px 12px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-field-textual.elementor-size-md { font-size: 16px; min-height: 47px; padding: 6px 16px; -webkit-border-radius: 4px; border-radius: 4px; } .elementor-field-textual.elementor-size-lg { font-size: 18px; min-height: 59px; padding: 7px 20px; -webkit-border-radius: 5px; border-radius: 5px; } .elementor-field-textual.elementor-size-xl { font-size: 20px; min-height: 72px; padding: 8px 24px; -webkit-border-radius: 6px; border-radius: 6px; } .elementor-button-align-center .elementor-field-type-submit button, .elementor-button-align-start .elementor-field-type-submit button, .elementor-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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 button, .elementor-tablet-button-align-start .elementor-field-type-submit button, .elementor-tablet-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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 button, .elementor-mobile-button-align-start .elementor-field-type-submit button, .elementor-mobile-button-align-end .elementor-field-type-submit button { -webkit-flex-basis: initial; -ms-flex-preferred-size: initial; flex-basis: initial; } .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: 0.9em; } .elementor-message { margin: 10px 0; font-size: 1em; line-height: 1; } .elementor-message:before { content: "\e90e"; display: inline-block; font-family: eicons; font-weight: normal; font-style: normal; vertical-align: middle; margin-right: 5px; } .elementor-message.elementor-message-danger { color: #d9534f; } .elementor-message.elementor-message-danger:before { content: "\e87f"; } .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-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-element .elementor-widget-container { -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; } .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-tab-title { margin: 0; padding: 15px 20px; font-weight: bold; line-height: 1; cursor: pointer; outline: none; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { display: inline-block; width: 1.5em; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right { float: right; text-align: right; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left { float: left; text-align: left; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed { display: block; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed { display: none; } .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened { display: block; } .elementor-accordion .elementor-tab-content { display: none; padding: 15px 20px; border-top: 1px solid #D4D4D4; } @media (max-width: 767px) { .elementor-accordion .elementor-tab-title { padding: 12px 15px; } .elementor-accordion .elementor-tab-title .elementor-accordion-icon { width: 1.2em; } .elementor-accordion .elementor-tab-content { padding: 7px 15px; } } .elementor-alert { padding: 15px; border-left: 5px solid transparent; position: relative; text-align: left; } .elementor-alert .elementor-alert-title { display: block; font-weight: bold; } .elementor-alert .elementor-alert-description { font-size: 13px; } .elementor-alert button.elementor-alert-dismiss { position: absolute; right: 10px; top: 10px; padding: 3px; font-size: 20px; line-height: 1; background: transparent; color: inherit; border: none; cursor: pointer; } .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-tab-title a { color: inherit; } .elementor-button { display: inline-block; line-height: 1; background-color: #818a91; font-size: 15px; padding: 12px 24px; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; fill: #fff; text-align: center; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-button:hover, .elementor-button:focus, .elementor-button:visited { color: #fff; } .elementor-button-content-wrapper { 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-button-icon { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-button-icon svg { width: 1em; } .elementor-button-text { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-ordinal-group: 11; -webkit-order: 10; -ms-flex-order: 10; order: 10; display: inline-block; } .elementor-button.elementor-size-xs { font-size: 13px; padding: 10px 20px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-button.elementor-size-md { font-size: 16px; padding: 15px 30px; -webkit-border-radius: 4px; border-radius: 4px; } .elementor-button.elementor-size-lg { font-size: 18px; padding: 20px 40px; -webkit-border-radius: 5px; border-radius: 5px; } .elementor-button.elementor-size-xl { font-size: 20px; padding: 25px 50px; -webkit-border-radius: 6px; border-radius: 6px; } .elementor-button .elementor-align-icon-right { margin-left: 5px; -webkit-box-ordinal-group: 16; -webkit-order: 15; -ms-flex-order: 15; order: 15; } .elementor-button .elementor-align-icon-left { margin-right: 5px; -webkit-box-ordinal-group: 6; -webkit-order: 5; -ms-flex-order: 5; order: 5; } .elementor-button span { text-decoration: inherit; } /* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */ .elementor-menu-cart__toggle .elementor-button-icon { -webkit-box-ordinal-group: 16; -webkit-order: 15; -ms-flex-order: 15; order: 15; } .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-counter .elementor-counter-number-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: 69px; font-weight: 600; color: #222222; line-height: 1; } .elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: pre-wrap; } .elementor-counter .elementor-counter-number-prefix { text-align: right; } .elementor-counter .elementor-counter-number-suffix { text-align: left; } .elementor-counter .elementor-counter-title { text-align: center; font-size: 19px; font-weight: 400; color: #666666; line-height: 2.5; } .elementor-widget-divider { --divider-border-style: none; --divider-border-width: 1px; --divider-border-color: $gray-darkest; --divider-icon-size: 20px; --divider-element-spacing: 10px; --divider-pattern-height: 24px; --divider-pattern-size: 20px; --divider-pattern-url: none; --divider-pattern-repeat: repeat-x; /* Backwards compatibility */ } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator { display: inline-block; } .elementor-widget-divider .elementor-divider { line-height: 0; font-size: 0; } .elementor-widget-divider .elementor-divider__text { font-size: 15px; line-height: 1; max-width: 95%; } .elementor-widget-divider .elementor-divider__element { margin: 0 var(--divider-element-spacing); -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-widget-divider .elementor-icon { font-size: var(--divider-icon-size); } .elementor-widget-divider .elementor-divider-separator { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0; direction: ltr; } .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator { -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after { display: block; content: ''; border-bottom: 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-flex-shrink: 100; -ms-flex-negative: 100; flex-shrink: 100; } .elementor-widget-divider--element-align-left .elementor-divider-separator:before { content: none; } .elementor-widget-divider--element-align-left .elementor-divider__element { margin-left: 0; } .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; -webkit-flex-shrink: 100; -ms-flex-negative: 100; flex-shrink: 100; } .elementor-widget-divider--element-align-right .elementor-divider-separator:after { content: none; } .elementor-widget-divider--element-align-right .elementor-divider__element { margin-right: 0; } .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator { border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-border-color); } .elementor-widget-divider--separator-type-pattern { --divider-border-style: none; } .elementor-widget-divider--separator-type-pattern .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before, .elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after { width: 100%; min-height: var(--divider-pattern-height); background-image: var(--divider-pattern-url); -webkit-background-size: var(--divider-pattern-size) 100%; background-size: var(--divider-pattern-size) 100%; background-repeat: var(--divider-pattern-repeat); } .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator { background-image: none; } .elementor-widget-divider--no-spacing { --divider-pattern-size: auto; } .elementor-widget-divider--bg-round { --divider-pattern-repeat: round; } .rtl .elementor-widget-divider .elementor-divider__text { direction: rtl; } .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-widget-google_maps iframe { height: 300px; } .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-icon { display: inline-block; line-height: 1; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; color: #818a91; font-size: 50px; text-align: center; } .elementor-icon:hover { color: #818a91; } .elementor-icon i, .elementor-icon svg { width: 1em; height: 1em; position: relative; display: block; } .elementor-icon i:before, .elementor-icon svg:before { position: absolute; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .elementor-icon i.fad { width: initial; } .elementor-view-stacked .elementor-icon { padding: .5em; background-color: #818a91; color: #fff; fill: #fff; } .elementor-view-framed .elementor-icon { padding: .5em; color: #818a91; border: 3px solid #818a91; background-color: transparent; } .elementor-shape-circle .elementor-icon { -webkit-border-radius: 50%; border-radius: 50%; } @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 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; -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-content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-widget-icon-box .elementor-icon-box-description { margin: 0; } .elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container { overflow: hidden; } .elementor-widget .elementor-icon-list-items.elementor-inline-items { margin-right: -8px; margin-left: -8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item { margin-right: 8px; margin-left: 8px; } .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after { width: auto; left: auto; right: auto; position: relative; height: 100%; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); border-top: 0; border-bottom: 0; border-right: 0; border-left-width: 1px; border-style: solid; right: -8px; } .elementor-widget .elementor-icon-list-items { list-style-type: none; margin: 0; padding: 0; } .elementor-widget .elementor-icon-list-item { margin: 0; padding: 0; position: relative; } .elementor-widget .elementor-icon-list-item:after { position: absolute; bottom: 0; width: 100%; } .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; } .elementor-widget .elementor-icon-list-item a { width: 100%; } .elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text { -webkit-align-self: center; -ms-flex-item-align: center; align-self: center; padding-left: 5px; } .elementor-widget .elementor-icon-list-icon { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-widget .elementor-icon-list-icon i { width: 1.25em; } .elementor-widget .elementor-icon-list-icon svg { width: 1em; } .elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-align-center .elementor-inline-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: left; } .elementor-widget.elementor-align-left .elementor-inline-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: right; } .elementor-widget.elementor-align-right .elementor-icon-list-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after { right: 0; } @media (max-width: 1024px) { .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: left; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: right; } .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after { right: 0; } } @media (max-width: 767px) { .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after { margin: auto; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; text-align: left; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; text-align: right; } .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after { left: 0; } .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after { right: 0; } } .elementor-widget-image { text-align: center; } .elementor-widget-image .elementor-image > a, .elementor-widget-image .elementor-image figure > a { display: inline-block; } .elementor-widget-image .elementor-image > a img[src$=".svg"], .elementor-widget-image .elementor-image figure > a img[src$=".svg"] { width: 48px; } .elementor-widget-image .elementor-image img { vertical-align: middle; display: inline-block; } .elementor-widget-image .elementor-image.elementor-image-shape-circle { -webkit-border-radius: 50%; border-radius: 50%; } .elementor-widget-image-box .elementor-image-box-content { 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; } .elementor-widget-image-carousel .swiper-container { position: static; } .elementor-widget-image-carousel .swiper-container .swiper-slide figure { line-height: inherit; } .elementor-widget-image-carousel .swiper-slide { text-align: center; } .elementor-image-gallery figure img { display: block; } .elementor-image-gallery figure figcaption { width: 100%; } .gallery-spacing-custom .elementor-image-gallery .gallery-icon { padding: 0; } body.elementor-page .elementor-widget-menu-anchor { margin-bottom: 0; } .elementor-widget-progress { text-align: left; } .elementor-progress-wrapper { position: relative; background-color: #eeeeee; color: #ffffff; height: 100%; -webkit-border-radius: 2px; 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; height: 30px; line-height: 30px; -webkit-border-radius: 2px; 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; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; 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-text { padding-left: 10px; } } .elementor-social-icons-wrapper { font-size: 0; } .elementor-social-icon { background-color: #818a91; font-size: 25px; text-align: center; padding: 0.5em; margin-right: 5px; cursor: pointer; } .elementor-social-icon i { color: white; } .elementor-social-icon:last-child { margin: 0; } .elementor-social-icon:hover { opacity: .9; color: white; } .elementor-social-icon-android { background-color: #A4C639; } .elementor-social-icon-apple { background-color: #999999; } .elementor-social-icon-behance { background-color: #1769ff; } .elementor-social-icon-bitbucket { background-color: #205081; } .elementor-social-icon-codepen { background-color: #000000; } .elementor-social-icon-delicious { background-color: #3399ff; } .elementor-social-icon-deviantart { background-color: #05cc47; } .elementor-social-icon-digg { background-color: #005be2; } .elementor-social-icon-dribbble { background-color: #ea4c89; } .elementor-social-icon-elementor { background-color: #D30C5C; } .elementor-social-icon-envelope { background-color: #ea4335; } .elementor-social-icon-facebook, .elementor-social-icon-facebook-f { background-color: #3b5998; } .elementor-social-icon-flickr { background-color: #0063dc; } .elementor-social-icon-foursquare { background-color: #2d5be3; } .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp { background-color: #006400; } .elementor-social-icon-github { background-color: #333333; } .elementor-social-icon-gitlab { background-color: #e24329; } .elementor-social-icon-globe { background-color: #818a91; } .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g { 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-link { background-color: #818a91; } .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in { background-color: #0077b5; } .elementor-social-icon-medium { background-color: #00ab6b; } .elementor-social-icon-meetup { background-color: #ec1c40; } .elementor-social-icon-mixcloud { background-color: #273a4b; } .elementor-social-icon-odnoklassniki { background-color: #F4731C; } .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-rss { background-color: #f26522; } .elementor-social-icon-shopping-cart { background-color: #4CAF50; } .elementor-social-icon-skype { background-color: #00AFF0; } .elementor-social-icon-slideshare { background-color: #0077b5; } .elementor-social-icon-snapchat { background-color: #fffc00; } .elementor-social-icon-soundcloud { background-color: #ff8800; } .elementor-social-icon-spotify { background-color: #2ebd59; } .elementor-social-icon-stack-overflow { background-color: #fe7a15; } .elementor-social-icon-steam { background-color: #00adee; } .elementor-social-icon-stumbleupon { background-color: #EB4924; } .elementor-social-icon-telegram { background-color: #2CA5E0; } .elementor-social-icon-thumb-tack { background-color: #1aa1d8; } .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: #1DA1F2; } .elementor-social-icon-viber { background-color: #665cac; } .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-social-icon-500px { background-color: #0099e5; } .elementor-shape-rounded .elementor-icon.elementor-social-icon { -webkit-border-radius: 10%; border-radius: 10%; } .elementor-shape-circle .elementor-icon.elementor-social-icon { -webkit-border-radius: 50%; border-radius: 50%; } .elementor-star-rating { color: #CCD6DF; font-family: eicons; display: inline-block; } .elementor-star-rating i { display: inline-block; position: relative; font-style: normal; cursor: default; } .elementor-star-rating i:before { content: '\e934'; display: block; font-size: inherit; font-family: inherit; position: absolute; overflow: hidden; color: #f0ad4e; top: 0; left: 0; } .elementor-star-rating .elementor-star-empty:before { content: none; } .elementor-star-rating .elementor-star-1:before { width: 10%; } .elementor-star-rating .elementor-star-2:before { width: 20%; } .elementor-star-rating .elementor-star-3:before { width: 30%; } .elementor-star-rating .elementor-star-4:before { width: 40%; } .elementor-star-rating .elementor-star-5:before { width: 50%; } .elementor-star-rating .elementor-star-6:before { width: 60%; } .elementor-star-rating .elementor-star-7:before { width: 70%; } .elementor-star-rating .elementor-star-8:before { width: 80%; } .elementor-star-rating .elementor-star-9:before { width: 90%; } .elementor-star-rating__wrapper { 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-star-rating__title { margin-right: 10px; } .elementor-star-rating--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating--align-justify .elementor-star-rating__title { margin-right: auto; } @media (max-width: 1024px) { .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating-tablet--align-justify .elementor-star-rating__title { margin-right: auto; } } @media (max-width: 767px) { .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper { text-align: right; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper { text-align: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-star-rating-mobile--align-justify .elementor-star-rating__title { margin-right: auto; } } .last-star { letter-spacing: 0; } .elementor--star-style-star_unicode .elementor-star-rating { font-family: 'Arial', 'Helvetica', sans-serif; } .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before { content: '\002605'; } .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.elementor-active { border-right-style: none; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after { height: 999em; width: 0; right: 0; border-right-style: solid; } .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active { border-bottom-style: none; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { bottom: 0; height: 0; width: 999em; border-bottom-style: solid; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before { right: 100%; } .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after { left: 100%; } .elementor-widget-tabs .elementor-tab-title, .elementor-widget-tabs .elementor-tab-title:before, .elementor-widget-tabs .elementor-tab-title:after, .elementor-widget-tabs .elementor-tab-content, .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; outline: none; } .elementor-widget-tabs .elementor-tab-desktop-title { position: relative; padding: 20px 25px; font-weight: bold; line-height: 1; border: solid transparent; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active { border-color: #D4D4D4; } .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after { display: block; content: ''; position: absolute; } .elementor-widget-tabs .elementor-tab-mobile-title { padding: 10px 10px; cursor: pointer; } .elementor-widget-tabs .elementor-tab-content { padding: 20px; display: none; } @media (max-width: 767px) { .elementor-tabs .elementor-tab-title, .elementor-tabs .elementor-tab-content { 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-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; color: inherit; display: block; } .elementor-testimonial-wrapper .elementor-testimonial-job { font-size: 0.85em; color: inherit; display: block; } .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; -webkit-border-radius: 50%; border-radius: 50%; -o-object-fit: cover; object-fit: cover; max-width: none; } .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-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; } .elementor-toggle { text-align: left; } .elementor-toggle .elementor-tab-title { font-weight: bold; line-height: 1; margin: 0; padding: 15px; border-bottom: 1px solid #D4D4D4; cursor: pointer; outline: none; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon { display: inline-block; width: 1em; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right { float: right; text-align: right; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left { float: left; text-align: left; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed { display: block; } .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened { display: none; } .elementor-toggle .elementor-tab-title.elementor-active { border-bottom: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed { display: none; } .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened { display: block; } .elementor-toggle .elementor-tab-content { padding: 15px; border-bottom: 1px solid #D4D4D4; display: none; } @media (max-width: 767px) { .elementor-toggle .elementor-tab-title { padding: 12px; } .elementor-toggle .elementor-tab-content { padding: 12px 10px; } } .elementor-widget-video .elementor-widget-container { overflow: hidden; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } .elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-background-size: cover; 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-widget-video .elementor-video { -o-object-fit: cover; object-fit: cover; } .slick-slider { position: relative; display: block; -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 { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; } .slick-list:focus { outline: none; } .slick-list.dragging { cursor: pointer; } .slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } .slick-track { position: relative; left: 0; top: 0; display: block; } .slick-track:before, .slick-track:after { 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; } .elementor-slick-slider .slick-loading .slick-list:after { content: '\e8fb'; font-family: eicons; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; font-size: 25px; color: #a4afb7; } .elementor-slick-slider .slick-prev, .elementor-slick-slider .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 20px; padding: 0; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus, .elementor-slick-slider .slick-next:hover, .elementor-slick-slider .slick-next:focus { color: transparent; outline: none; background: transparent; } .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before, .elementor-slick-slider .slick-next:hover:before, .elementor-slick-slider .slick-next:focus:before { opacity: 1; } .elementor-slick-slider .slick-prev.slick-disabled:before, .elementor-slick-slider .slick-next.slick-disabled:before { opacity: .25; } .elementor-slick-slider .slick-prev:before, .elementor-slick-slider .slick-next:before { font-family: eicons; font-size: 35px; line-height: 1; opacity: .75; color: white; -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: '\e89f'; } [dir="rtl"] .elementor-slick-slider .slick-prev:before { content: '\e89e'; } .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: '\e89e'; } [dir="rtl"] .elementor-slick-slider .slick-next:before { content: '\e89f'; } .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:hover, .elementor-slick-slider ul.slick-dots li button:focus { outline: none; } .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before { opacity: 1; } .elementor-slick-slider ul.slick-dots li button:before { font-family: eicons; font-size: 6px; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\e914'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .elementor-slick-slider ul.slick-dots li.slick-active button:before { opacity: .75; color: black; } .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-prev, .elementor-slick-slider .slick-slider .slick-next { z-index: 1; } .elementor-slick-slider .slick-slide img { margin: auto; } /** * Swiper 3.4.2 * Customized by Elementor team */ .swiper-container { margin-left: auto; margin-right: auto; position: relative; overflow: hidden; /* Fix of Webkit flickering */ z-index: 1; } .swiper-container .swiper-slide figure { line-height: 0; } .swiper-container .elementor-lightbox-content-source { display: none; } .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: translate3d(0px, 0, 0); transform: translate3d(0px, 0, 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; } /* Auto Height */ .swiper-container-autoheight { height: auto; } .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; } /* a11y */ .swiper-container .swiper-notification { position: absolute; left: 0; top: 0; pointer-events: none; opacity: 0; z-index: -1000; } /* IE10 Windows Phone 8 Fixes */ .swiper-wp8-horizontal { -ms-touch-action: pan-y; touch-action: pan-y; } .swiper-wp8-vertical { -ms-touch-action: pan-x; touch-action: pan-x; } /* Arrows */ .swiper-button-prev, .swiper-button-next { position: absolute; top: 50%; width: 27px; height: 44px; margin-top: -22px; z-index: 10; cursor: pointer; -webkit-background-size: 27px 44px; background-size: 27px 44px; background: no-repeat center; } .swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled { opacity: 0.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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } .swiper-button-next, .swiper-container-rtl .swiper-button-prev { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%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%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); } /* Pagination Styles */ .swiper-pagination { position: absolute; text-align: center; -webkit-transition: 300ms; -o-transition: 300ms; transition: 300ms; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); z-index: 10; } .swiper-pagination.swiper-pagination-hidden { opacity: 0; } /* Common Styles */ .swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets { bottom: 5px; left: 0; width: 100%; } /* Bullets */ .swiper-pagination-bullet { width: 6px; height: 6px; display: inline-block; -webkit-border-radius: 50%; border-radius: 50%; background: #000; opacity: 0.2; } .swiper-pagination-fraction { color: #000; } button.swiper-pagination-bullet { border: none; margin: 0; padding: 0; -webkit-box-shadow: none; box-shadow: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; } .swiper-pagination-clickable .swiper-pagination-bullet { cursor: pointer; } .swiper-pagination-white .swiper-pagination-bullet { background: #fff; } .swiper-pagination-bullet-active { opacity: 1; } .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(0px, -50%, 0); transform: translate3d(0px, -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 6px; } /* Progressbar */ .swiper-pagination-progressbar { background: rgba(0, 0, 0, 0.25); position: absolute; } .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #000; 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-progressbar .swiper-pagination-progressbar-fill { -webkit-transform-origin: right top; -ms-transform-origin: right top; transform-origin: right top; } .swiper-container-horizontal > .swiper-pagination-progressbar { width: 100%; height: 4px; left: 0; top: 0; } .swiper-container-vertical > .swiper-pagination-progressbar { width: 4px; height: 100%; left: 0; top: 0; } .swiper-pagination-progressbar.swiper-pagination-white { background: rgba(255, 255, 255, 0.5); } .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill { background: #fff; } .swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill { background: #000; } /* 3D Container */ .swiper-container-3d { -webkit-perspective: 1200px; perspective: 1200px; } .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .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-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow { -webkit-transform-style: preserve-3d; transform-style: preserve-3d; } .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-slide-shadow-bottom { 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, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-right { background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-top { background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } .swiper-container-3d .swiper-slide-shadow-bottom { background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0))); background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } /* Coverflow */ .swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper { /* Windows 8 IE 10 fix */ -ms-perspective: 1200px; } /* Cube + Flip */ .swiper-container-cube, .swiper-container-flip { overflow: visible; } .swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide { pointer-events: none; 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-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active { pointer-events: auto; } .swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right { z-index: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden; } /* Cube */ .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-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible; } .swiper-container-cube .swiper-cube-shadow { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: #000; opacity: 0.6; -webkit-filter: blur(50px); filter: blur(50px); z-index: 0; } /* Fade */ .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 { pointer-events: auto; } .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 > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas { max-width: 100%; max-height: 100%; -o-object-fit: contain; object-fit: contain; } /* Scrollbar */ .swiper-scrollbar { -webkit-border-radius: 10px; border-radius: 10px; position: relative; -ms-touch-action: none; background: rgba(0, 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, 0.5); -webkit-border-radius: 10px; border-radius: 10px; left: 0; top: 0; } .swiper-scrollbar-cursor-drag { cursor: move; } .elementor-pagination-position-outside .swiper-container { padding-bottom: 30px; } .elementor-pagination-position-outside .elementor-swiper-button { top: -webkit-calc(50% - 30px / 2); top: calc(50% - 30px / 2); } .elementor-swiper { position: relative; } .elementor-main-swiper { position: static; } .elementor-arrows-position-outside .swiper-container { width: -webkit-calc(100% - 60px); width: calc(100% - 60px); } .elementor-arrows-position-outside .elementor-swiper-button-prev { left: 0; } .elementor-arrows-position-outside .elementor-swiper-button-next { right: 0; } .swiper-image-stretch .swiper-slide .swiper-slide-image { width: 100%; } .elementor-swiper-button { position: absolute; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; z-index: 1; cursor: pointer; font-size: 25px; color: rgba(238, 238, 238, 0.9); top: 50%; -webkit-transform: translate3d(0, -50%, 1px); transform: translate3d(0, -50%, 1px); } .elementor-swiper-button-prev { left: 10px; } .elementor-swiper-button-next { right: 10px; } .elementor-swiper-button.swiper-button-disabled { opacity: 0.3; } /* Preloader */ .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: swiper-preloader-spin 1s steps(12, end) infinite; animation: swiper-preloader-spin 1s steps(12, end) infinite; } .swiper-lazy-preloader:after { display: block; content: ""; width: 100%; height: 100%; -webkit-background-size: 100% 100%; background-size: 100%; background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; } .swiper-lazy-preloader-white:after { background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); } @-webkit-keyframes swiper-preloader-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes swiper-preloader-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } .elementor-lightbox { --lightbox-ui-color: rgba(238, 238, 238, 0.9); --lightbox-ui-color-hover: #fff; --lightbox-text-color: var(--lightbox-ui-color); --lightbox-header-icons-size: 20px; --lightbox-navigation-icons-size: 25px; } .elementor-lightbox .dialog-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: .3s; animation-duration: .3s; } .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) { height: 100%; } .elementor-lightbox .dialog-message.dialog-lightbox-message { padding: 0; } .elementor-lightbox .dialog-lightbox-close-button { cursor: pointer; position: absolute; font-size: var(--lightbox-header-icons-size); right: 0.75em; margin-top: 13px; padding: .25em; z-index: 2; line-height: 1; } .elementor-lightbox .dialog-lightbox-close-button, .elementor-lightbox .elementor-swiper-button { color: var(--lightbox-ui-color); -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; opacity: 1; } .elementor-lightbox .dialog-lightbox-close-button:hover, .elementor-lightbox .elementor-swiper-button:hover { color: var(--lightbox-ui-color-hover); } .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: 70px; -webkit-box-sizing: border-box; box-sizing: border-box; height: 100%; margin: auto; } @media (max-width: 767px) { .elementor-lightbox .elementor-lightbox-item { padding: 70px 0; } } .elementor-lightbox .elementor-lightbox-image { max-height: 100%; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover { opacity: 1; -webkit-filter: none; filter: none; border: none; } .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container { -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 2px; border-radius: 2px; } .elementor-lightbox .elementor-video-container { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } @media (min-width: 1025px) { .elementor-lightbox .elementor-video-container { width: 75%; } } @media (max-width: 1024px) { .elementor-lightbox .elementor-video-container { width: 100%; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container { width: 70%; } } .elementor-lightbox .elementor-swiper-button:focus { outline: none; } .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { height: 100%; 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; width: 15%; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; font-size: var(--lightbox-navigation-icons-size); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; } .elementor-lightbox .elementor-swiper-button-next { right: 0; } @media (max-width: 767px) { .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next { width: 20%; } .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i { padding: 10px; background-color: rgba(0, 0, 0, 0.5); } .elementor-lightbox .elementor-swiper-button-prev { left: 0; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; } .elementor-lightbox .elementor-swiper-button-next { right: 0; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } } .elementor-slideshow__counter { color: currentColor; font-size: .75em; width: -webkit-max-content; width: -moz-max-content; width: max-content; } .elementor-slideshow__header, .elementor-slideshow__footer { position: absolute; left: 0; width: 100%; padding: 15px 20px; -webkit-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; } .elementor-slideshow__footer { color: var(--lightbox-text-color); } .elementor-slideshow__header { color: var(--lightbox-ui-color); display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: var(--lightbox-header-icons-size); padding-left: 1em; padding-right: 2.6em; top: 0; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; z-index: 10; } .elementor-slideshow__header > i { font-size: inherit; cursor: pointer; padding: .25em; margin: 0 .35em; } .elementor-slideshow__header > i:hover { color: var(--lightbox-ui-color-hover); } .elementor-slideshow__header > i:first-of-type { margin-left: auto; } .elementor-slideshow__header .elementor-icon-share { z-index: 5; } .elementor-slideshow__share-menu { background-color: rgba(0, 0, 0, 0); width: 0; height: 0; position: absolute; overflow: hidden; -webkit-transition: background-color 400ms; -o-transition: background-color 400ms; transition: background-color 400ms; } .elementor-slideshow__share-menu .elementor-slideshow__share-links a { color: #2C2C2C; } .elementor-slideshow__share-links { display: block; position: absolute; min-width: 200px; right: 67px; top: 60px; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; font-size: 16px; padding: 14px 20px; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transform-origin: 90% 10%; -ms-transform-origin: 90% 10%; transform-origin: 90% 10%; -webkit-transition: all 250ms 100ms; -o-transition: all 250ms 100ms; transition: all 250ms 100ms; -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); } .elementor-slideshow__share-links a { text-align: left; color: #55595c; font-size: 12px; line-height: 2.5; display: block; opacity: 0; -webkit-transition: opacity 500ms 100ms; -o-transition: opacity 500ms 100ms; transition: opacity 500ms 100ms; } .elementor-slideshow__share-links a:hover { color: #000; } .elementor-slideshow__share-links a i { margin-right: 10px; font-size: 15px; } .elementor-slideshow__share-links:before { content: ''; display: block; position: absolute; top: 0; right: 15px; border: 9px solid; border-color: transparent transparent #fff transparent; -webkit-transform: translateY(-100%) scaleX(0.7); -ms-transform: translateY(-100%) scaleX(0.7); transform: translateY(-100%) scaleX(0.7); } .elementor-slideshow__footer { bottom: 0; z-index: 5; position: fixed; } .elementor-slideshow__title, .elementor-slideshow__description { margin: 0; } .elementor-slideshow__title { font-size: 16px; font-weight: bold; } .elementor-slideshow__description { font-size: 14px; } .elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer { opacity: 0; pointer-events: none; } .elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next { opacity: 0; } .elementor-slideshow--fullscreen-mode .elementor-video-container { width: 100%; } .elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer { background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next { opacity: 0; pointer-events: none; } .elementor-slideshow--share-mode .elementor-slideshow__share-menu { top: 0; left: 0; width: 100vw; height: 100vh; opacity: 1; cursor: default; background-color: rgba(0, 0, 0, 0.5); } .elementor-slideshow--share-mode .elementor-slideshow__share-links { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); } .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a { opacity: 1; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter { color: #1DA1F2; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook { color: #3b5998; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest { color: #bd081c; } .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold { color: #a4afb7; } .elementor-slideshow--share-mode .eicon-share-arrow { z-index: 2; } .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; } .animated.reverse { animation-direction: reverse; } @media (prefers-reduced-motion: reduce) { .animated { -webkit-animation: none; animation: none; } } .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 { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } .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: -webkit-calc(100% + 1.3px); 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); } #wp-admin-bar-elementor_edit_page .ab-submenu .ab-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: 200px; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-title { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; width: 100%; } #wp-admin-bar-elementor_edit_page .elementor-edit-link-type { background: #55595c; font-size: 11px; line-height: 9px; margin-top: 6px; padding: 4px 8px; -webkit-border-radius: 3px; border-radius: 3px; } .page-template-elementor_canvas.elementor-page:before { display: none; } .elementor-post__thumbnail__link { -webkit-transition: none; -o-transition: none; transition: none; } #left-area ul.elementor-icon-list-items, .elementor .elementor-element ul.elementor-icon-list-items, .elementor-edit-area .elementor-element ul.elementor-icon-list-items { padding: 0; } #wpadminbar * { font-style: normal; } @media (max-width: 767px) { .elementor .elementor-hidden-phone { display: none; } } @media (min-width: 768px) and (max-width: 1024px) { .elementor .elementor-hidden-tablet { display: none; } } @media (min-width: 1025px) { .elementor .elementor-hidden-desktop { display: none; } } /*# sourceMappingURL=frontend.css.map */assets/css/frontend-rtl.min.css000066600000330374152142641160012570 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-left:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}.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;-webkit-border-radius:0;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,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.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 .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-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:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@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:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}.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-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap{position:relative;width:100%;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-content:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.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 (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid .elementor-grid-item{word-break:break-word;min-width:0}.elementor-grid-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}.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%;max-width: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%;max-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::-ms-input-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{appearance:none;-webkit-appearance:none;-moz-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:"\e92a";font-family:eicons;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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.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-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.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;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit button,.elementor-button-align-end .elementor-field-type-submit button,.elementor-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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 button,.elementor-tablet-button-align-end .elementor-field-type-submit button,.elementor-tablet-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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 button,.elementor-mobile-button-align-end .elementor-field-type-submit button,.elementor-mobile-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:"\e90e";display:inline-block;font-family:eicons;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:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0}.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-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-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.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-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.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:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.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-tab-title a{color:inherit}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{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-button-icon{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em}.elementor-button-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.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-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,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:left}.elementor-counter .elementor-counter-number-suffix{text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-border-color:$gray-darkest;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator{display:inline-block}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before{width:100%;min-height:var(--divider-pattern-height);background-image:var(--divider-pattern-url);-webkit-background-size:var(--divider-pattern-size) 100%;background-size:var(--divider-pattern-size) 100%;background-repeat:var(--divider-pattern-repeat)}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator{background-image:none}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.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-widget-google_maps iframe{height:300px}.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-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}@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{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-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-content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;left:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget .elementor-icon-list-item a{width:100%}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget .elementor-icon-list-icon{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget .elementor-icon-list-icon i{width:1.25em}.elementor-widget .elementor-icon-list-icon svg{width:1em}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{left:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{left:0}}.elementor-widget-image{text-align:center}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:inline-block}.elementor-widget-image .elementor-image>a img[src$=".svg"],.elementor-widget-image .elementor-image figure>a img[src$=".svg"]{width:48px}.elementor-widget-image .elementor-image img{vertical-align:middle;display:inline-block}.elementor-widget-image .elementor-image.elementor-image-shape-circle{-webkit-border-radius:50%;border-radius:50%}.elementor-widget-image-box .elementor-image-box-content{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}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;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;height:30px;line-height:30px;-webkit-border-radius:2px;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;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;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-text{padding-right:10px}}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{background-color:#818a91;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-android{background-color:#a4c639}.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-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{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-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.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-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.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-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.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:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.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-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;right:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{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-star-rating__title{margin-left:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-left:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-left:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-left:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.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.elementor-active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-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 #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;outline:none}.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.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-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 solid 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 none solid solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-tabs .elementor-tab-mobile-title{display:none}}.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;color:inherit;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;color:inherit;display:block}.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;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.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-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}.elementor-toggle{text-align:right}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;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-widget-video .elementor-video{-o-object-fit:cover;object-fit:cover}.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}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.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:eicons;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:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.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:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.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:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";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 .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.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;-webkit-background-size:27px 44px;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:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.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 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;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-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{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;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{-webkit-border-radius:10px;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);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:-webkit-calc(50% - 15px);top:calc(50% - 15px)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:-webkit-calc(100% - 60px);width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.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:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 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 swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-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:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.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:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;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;width:15%;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header>i:first-of-type{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:67px;top:60px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;font-size:16px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{margin-left:10px;font-size:15px}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:0;left:15px;border:9px solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.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}.animated.reverse{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.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{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.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:-webkit-calc(100% + 1.3px);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)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}@media (max-width:767px){.elementor .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:1025px){.elementor .elementor-hidden-desktop{display:none}}assets/css/editor-preview.css000066600000266432152142641160012340 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8"; .elementor-control-unit-1 { width: 27px; } .elementor-control-unit-2 { width: 54px; } .elementor-control-unit-3 { width: 81px; } .elementor-control-unit-4 { width: 108px; } .elementor-control-unit-5 { width: 135px; } .elementor-tags-list { display: none; position: absolute; width: 260px; max-height: 300px; overflow: auto; padding-bottom: 5px; background-color: #fff; border: 1px solid #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; z-index: 1; } .elementor-tags-list__group-title { color: #495157; font-weight: bold; font-size: 12px; padding: 10px 15px; 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-tags-list__group-title .eicon-info-circle { padding-right: 5px; color: #71d7f7; font-size: 14px; } .elementor-tags-list__item { font-size: 10px; padding: 6px 15px; cursor: pointer; } .elementor-tags-list__item:before { content: '>'; font-size: 8px; padding-right: 5px; } .elementor-tags-list__item:hover { background-color: #e6e9ec; } .elementor-tags-list__teaser { border-top: 2px solid #d5dadf; padding-top: 4px; margin-top: 4px; } .elementor-tags-list__teaser-title { color: #6d7882; } .elementor-tags-list__teaser-text { padding: 2px 15px 8px; line-height: 1.5; font-size: 12px; } .elementor-tags-list__teaser-link { color: #D30C5C; text-decoration: underline; font-style: italic; font-weight: bold; } .elementor-dynamic-cover { 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; width: 100%; height: 27px; -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-dynamic-cover__title { padding: 0 8px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove { color: #c2cbd2; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover { color: #a4afb7; } .elementor-control-type-wysiwyg .elementor-dynamic-cover { margin-top: 10px; } .elementor-tag-settings-popup { position: absolute; width: 260px; background-color: #e6e9ec; -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); z-index: 1; } .elementor-tag-settings-popup:before { content: ''; position: absolute; top: -20px; left: 5px; border: 10px solid transparent; border-bottom-color: #fff; } .elementor-tag-settings-popup .elementor-control-type-section:first-child { margin: 0; } .elementor-tag-controls-stack-empty { background-color: #fff; padding: 10px; font-size: 13px; text-align: center; } .elementor-control-dynamic-switcher { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; height: 27px; cursor: pointer; border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; background: #fff; } .elementor-control-dynamic-switcher-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-dynamic-switcher .eicon-database { font-size: 12px; } .elementor-control-dynamic-value .elementor-control-tag-area, .elementor-control-dynamic-value .elementor-control-dynamic-switcher { display: none; } .elementor-panel-box { margin-top: 10px; background-color: #fff; } .elementor-panel-box-content { padding: 20px 20px 10px; } .elementor-button { display: inline-block; } .elementor-panel-alert { background-color: #fcfcfc; padding: 15px; border-left: 3px solid transparent; position: relative; font-size: 12px; font-weight: 300; font-style: italic; line-height: 1.5; text-align: left; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); } .elementor-panel-alert a { color: inherit; } .elementor-panel-alert.elementor-panel-alert-info { border-color: #71d7f7; background-color: #f3fcff; } .elementor-panel-alert.elementor-panel-alert-success { border-color: #39b54a; } .elementor-panel-alert.elementor-panel-alert-warning { border-color: #fcb92c; } .elementor-panel-alert.elementor-panel-alert-danger { border-color: #d72b3f; } .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; -webkit-border-radius: .25em; border-radius: .25em; text-transform: capitalize; } .elementor-label.elementor-label-default { background-color: #a4afb7; } .elementor-label.elementor-label-info { background-color: #5bc0de; } .elementor-label.elementor-label-success { background-color: #5cb85c; } .elementor-label.elementor-label-warning { background-color: #f0ad4e; } .elementor-label.elementor-label-danger { background-color: #d9534f; } .elementor-descriptor, .elementor-control-field-description { font-size: 11px; font-style: italic; line-height: 1.4; color: #a4afb7; } .elementor-controls-popover { display: none; position: absolute; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; left: 0; right: 0; margin: -4px auto 5px; padding-top: 15px; width: 90%; z-index: 10000; background-color: #fff; } .elementor-controls-popover:before { content: ''; position: absolute; top: -16px; right: 22px; border: 8px solid transparent; border-bottom-color: #fff; } .elementor-controls-popover div.elementor-control { background-color: transparent; } .elementor-controls-popover div.elementor-control:before { content: none; } #elementor-controls .pojo-widget-button-collapse { display: none; } #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon { margin-top: 20px; } .elementor-control { background-color: #fff; position: relative; padding: 0 20px 15px; } .elementor-control a { font-weight: 500; text-decoration: none; border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; } .elementor-control a:hover { border-bottom-color: inherit; } .elementor-control .elementor-control-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } .elementor-control .elementor-control-title { font-size: 12px; line-height: 1; margin-right: 5px; } .elementor-control .elementor-control-spinner { 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-control.elementor-control-type-divider { padding: 0; background-color: transparent; } .elementor-control.elementor-control-type-divider .elementor-control-content { border-width: 0; border-color: #e6e9ec; border-style: solid; border-top-width: 1px; background-color: #ffffff; height: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp { margin-top: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before { content: ''; height: 1px; display: block; margin-bottom: 15px; background-color: transparent; } .elementor-control.elementor-control-separator-before { padding-top: 15px; } .elementor-control.elementor-control-separator-before:before { content: ''; position: absolute; height: 1px; width: 100%; top: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after:after { content: ''; position: absolute; height: 1px; width: 100%; bottom: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default { padding-top: 15px; } .elementor-control.elementor-control-deprecated { color: #b01b1b; } .elementor-control.elementor-control-deprecated .elementor-control-field-description { color: #b01b1b; } .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title { display: none; } .elementor-control.elementor-hidden-control { display: none; } .elementor-control.elementor-control-type-heading .elementor-control-title { font-weight: bold; margin: 0; } body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop { display: none; } body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet { display: none; } body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile { display: none; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper { position: relative; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select { appearance: none; -webkit-appearance: none; -moz-appearance: none; font-size: 12px; 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: 5px; padding-right: 20px; cursor: pointer; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after { font-family: eicons; content: '\e8ad'; font-size: 12px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 5px; pointer-events: none; } .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message { margin-top: 5px; } .elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before { content: '\e92a'; } .elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before { content: ""; } .elementor-panel-heading { display: table; table-layout: fixed; height: 40px; padding: 0 20px; width: 100%; border-bottom: 1px solid #e6e9ec; cursor: pointer; } .elementor-panel-heading > * { display: table-cell; vertical-align: middle; } .elementor-panel-heading-toggle { width: 20px; color: #495157; } .elementor-panel-heading-title { color: #495157; font-weight: bold; } .elementor-control-wp { line-height: 1.5; } .elementor-control-wp p { margin: 15px 0; } .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-label-block > .elementor-control-content > .elementor-control-field { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { width: 100%; margin-top: 10px; } .elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-left: auto; } .elementor-control-field-description { margin-top: 10px; } .elementor-group-control-attachment_alert .elementor-control-field-description { margin-top: 0; } .elementor-required { color: #b01b1b; } .elementor-units-choices { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; } .elementor-units-choices input { display: none; } .elementor-units-choices input:not(:checked) + label { color: #a4afb7; } .elementor-units-choices input:checked + label { text-decoration: underline; } .elementor-units-choices label { cursor: pointer; padding: 0 2px; text-transform: uppercase; font-size: 9px; } .elementor-control-responsive-switchers { margin-right: 5px; --selected-option: 0; --pointer-position: var(--selected-option); position: relative; width: 2em; height: 2em; } .elementor-control-responsive-switchers__holder { position: absolute; width: 100%; top: 0; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; border: 1px transparent solid; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open { z-index: 11000; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder { top: -webkit-calc(-1 * var(--selected-option) * 2em); top: calc(-1 * var(--selected-option) * 2em); -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-responsive-switcher { 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; z-index: 2; cursor: pointer; height: 0; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; font-size: 12px; } a.elementor-responsive-switcher { color: #a4afb7; } a.elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop { color: #71d7f7; } .elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet { color: #71d7f7; } .elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile { color: #71d7f7; } .elementor-update-preview { margin: 15px 15px 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; } .elementor-update-preview-button-wrapper { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; } .elementor-update-preview-button { padding: 8px 15px; text-transform: uppercase; } .elementor-control-direction-ltr input, .elementor-control-direction-ltr textarea { direction: ltr; } .elementor-control-direction-rtl input, .elementor-control-direction-rtl textarea { direction: rtl; } .elementor-control-type-button .elementor-control-input-wrapper { text-align: right; } .elementor-control-type-button .elementor-button { width: auto; height: 26px; } .elementor-control-type-choose.elementor-label-block .elementor-choices { width: 100%; } .elementor-choices { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 27px; line-height: 27px; text-align: center; border-spacing: 1px; -webkit-border-radius: 3px; border-radius: 3px; overflow: hidden; } .elementor-choices .elementor-choices-label { border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-left: 1px solid #d5dadf; border-right: none; font-size: 12px; -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; cursor: pointer; overflow: hidden; } .elementor-choices .elementor-choices-label:nth-child(2) { -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-choices .elementor-choices-label:last-child { border-right: 1px solid #d5dadf; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-choices input { display: none; } .elementor-choices input:checked + .elementor-choices-label { color: #fff; background-color: #a4afb7; border-color: #a4afb7; } .elementor-label-inline .elementor-choices { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .rtl .elementor-control-text_align .elementor-choices, .rtl .elementor-control-align .elementor-choices, .rtl .elementor-control-position .elementor-choices { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) { border-right: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child { border-right: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-color .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-control-type-color .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color.elementor-control-dynamic .pickr { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-group-control-css-filter .elementor-slider { height: 6px; -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); } .elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; margin-bottom: 5px; } .elementor-group-control-blur .elementor-slider { background: url("../images/blur.png"); -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-group-control-contrast .elementor-slider { background: url("../images/contrast.png"); -webkit-background-size: 100% 100%; background-size: 100% 100%; } .elementor-group-control-hue .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet)); background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); } .elementor-group-control-saturate .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red)); background-image: -webkit-linear-gradient(left, gray, red); background-image: -o-linear-gradient(left, gray, red); background-image: linear-gradient(to right, gray, red); } .elementor-group-control-brightness .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(black), to(white)); background-image: -webkit-linear-gradient(left, black, white); background-image: -o-linear-gradient(left, black, white); background-image: linear-gradient(to right, black, white); } .elementor-control-type-dimensions .elementor-control-dimensions { overflow: hidden; } .elementor-control-type-dimensions li { float: left; width: 20%; } .elementor-control-type-dimensions li input, .elementor-control-type-dimensions li .elementor-link-dimensions { display: block; text-align: center; width: 100%; border-color: #d5dadf; height: 27px; } .elementor-control-type-dimensions li input { border-left: none; -webkit-border-radius: 0; border-radius: 0; padding: 4px 0; } .elementor-control-type-dimensions li input:focus { border-left: solid 1px; border-color: #a4afb7; margin-left: -1px; width: -webkit-calc(100% + 1px); width: calc(100% + 1px); } .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label { color: #a4afb7; } .elementor-control-type-dimensions li .elementor-link-dimensions { border: 1px solid #d5dadf; border-left: none; background-color: #fff; padding: 0; outline: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; cursor: pointer; } .elementor-control-type-dimensions li:first-child input { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-dimensions li:first-child input:focus { border-color: #a4afb7; margin-left: 0; width: 100%; } .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-control-type-dimensions .elementor-link-dimensions.unlinked { background-color: #fff; } .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) { background-color: #a4afb7; border-color: #a4afb7; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked { color: #fff; } .elementor-control-type-icons .elementor-control-media__preview > * { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-icons .elementor-control-media__preview i { font-size: 70px; color: #6d7882; } .elementor-control-type-icons .elementor-control-media__preview svg { height: 75%; } .elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload { font-size: 15px; } .elementor-control-type-gallery .elementor-control-media__content { border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-status { font-size: 12px; height: 27px; padding-left: 10px; border-bottom: 1px solid #d5dadf; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-gallery .elementor-control-gallery-status > * { 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-control-type-gallery .elementor-control-gallery-status-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-gallery .elementor-control-gallery-content { position: relative; overflow: hidden; } .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit { opacity: 0; } .elementor-control-type-gallery .elementor-control-gallery-thumbnails { display: grid; grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); grid-gap: 10px; cursor: pointer; padding: 10px; } .elementor-control-type-gallery .elementor-control-gallery-thumbnail { width: 48px; height: 48px; -webkit-background-size: cover; background-size: cover; background-position: 50% 50%; } .elementor-control-type-gallery .elementor-control-gallery-edit { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(109, 120, 130, 0.3); padding: 10px; font-size: 11px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; pointer-events: none; cursor: pointer; opacity: 1; } .elementor-control-type-gallery .elementor-control-gallery-edit span { position: absolute; top: 10px; right: 10px; width: 21px; height: 21px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-edit span i { font-size: 11px; padding: 5px; } .elementor-control-type-gallery .elementor-control-gallery-add { width: 48px; height: 48px; color: #fff; background-color: #d5dadf; font-size: 14px; -webkit-border-radius: 0; border-radius: 0; } .elementor-control-type-gallery .elementor-control-gallery-add:hover { background-color: #c2cbd2; } .elementor-control-type-gallery .elementor-control-gallery-add i { margin: 0; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit { display: none; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content { padding: 10px; } .elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add { display: none; } .elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-gallery .elementor-control-gallery-clear { cursor: pointer; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-control-type-gallery .elementor-control-gallery-clear:hover { color: #b01b1b; } .elementor-control-type-gallery .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-hidden { display: none !important; } .elementor-control-type-icon .select2-selection__rendered .eicon { margin-right: 3px; } .elementor-control-type-image_dimensions .elementor-control-field-description { margin: 0 0 15px; line-height: 1.4; } .elementor-control-type-image_dimensions .elementor-control-input-wrapper { overflow: hidden; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field { width: 65px; float: left; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description { color: #a4afb7; } .elementor-control-type-image_dimensions .elementor-image-dimensions-separator { width: 20px; text-align: center; float: left; padding-top: 4px; } .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-control-type-image_dimensions .elementor-image-dimensions-apply-button { float: right; height: 27px; width: 65px; } .elementor-control-media.elementor-media-empty .elementor-control-media-area { display: none; } .elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button { display: none; } .elementor-control-media .elementor-control-input-wrapper { border: 1px solid #d5dadf; } .elementor-control-media .eicon-plus-circle { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #fff; font-size: 20px; } .elementor-control-media-upload-button { background-color: #d5dadf; } .elementor-control-media__preview { height: 100%; -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-control-media-area { background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); -webkit-background-size: 16px 16px; background-size: 16px 16px; background-position: 0 0, 8px 8px; background-color: #f6f6f6; } .elementor-control-media-area:not(:hover) .elementor-control-media__remove { display: none; } .elementor-control-media-area .eicon-video-camera { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: rgba(255, 255, 255, 0.7); font-size: 21px; } .elementor-control-media .elementor-control-media__content { cursor: pointer; overflow: hidden; } .elementor-control-media .elementor-control-media__content:hover:after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, 0.2); pointer-events: none; } .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools { bottom: -30px; } .elementor-control-media__content { -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools { position: absolute; bottom: 0; left: 0; right: 0; height: 27px; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools > *:not(:first-child) { margin-left: 1px; } .elementor-control-media__tool { 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; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; color: #fff; background-color: rgba(109, 120, 130, 0.85); font-size: 11px; -webkit-transition: background .3s; -o-transition: background .3s; transition: background .3s; } .elementor-control-media__tool:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-media__remove { position: absolute; z-index: 1; 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; top: 10px; right: 10px; width: 20px; height: 20px; font-size: 11px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; } .elementor-control-media__remove:hover { background-color: white; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); } .elementor-control-media .elementor-control-dynamic-switcher { border: none; -webkit-border-radius: 0; border-radius: 0; background-color: rgba(109, 120, 130, 0.85); color: #fff; } .elementor-control-media .elementor-control-dynamic-switcher:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper { border: none; } .elementor-control-type-number.elementor-control-dynamic input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; border-right: none; } .elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-order .elementor-control-oreder-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-order input { display: none; } .elementor-control-type-order input:checked + .elementor-control-order-label { -webkit-transform: scale(1, -1); -ms-transform: scale(1, -1); transform: scale(1, -1); } .elementor-control-type-order select { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label { border-color: #d5dadf; } .elementor-control-type-order select:focus ~ .elementor-control-order-label { border-color: #a4afb7; } .elementor-control-type-order .elementor-control-order-label { position: relative; padding: 0; width: 40px; border: 1px solid; font-size: 10px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; margin-left: -3px; background-color: #fff; cursor: pointer; } .elementor-control-type-order .elementor-control-order-label i { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-popover_toggle input { display: none; } .elementor-control-type-popover_toggle label { cursor: pointer; } .elementor-control-type-popover_toggle .elementor-control-input-wrapper { direction: rtl; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label { color: #71d7f7; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label { display: none; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label { color: #c2cbd2; margin-right: 5px; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label { height: 27px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #d5dadf; } .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) { padding-right: 10px; padding-left: 10px; padding-bottom: 10px; } .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove { display: none; } .elementor-control-type-repeater .elementor-repeater-fields { margin: 10px 0; } .elementor-control-type-repeater .elementor-repeater-row-controls { border: 1px solid #d5dadf; border-top-width: 0; padding-top: 15px; } .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) { display: none; } .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-control-type-repeater .elementor-repeater-row-tools:hover { background-color: #a4afb7; } .elementor-control-type-repeater .elementor-repeater-row-tools > div { display: table-cell; text-align: center; vertical-align: middle; cursor: pointer; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) { background-color: #fff; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover { opacity: .95; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title { text-align: left; padding: 0 10px; font-size: 12px; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg { margin-right: 5px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] { width: 1em; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool { width: 40px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable { cursor: move; width: 10px; color: #fff; } .elementor-control-type-repeater .elementor-button-wrapper { text-align: center; padding-top: 5px; } .elementor-control-type-section { margin-top: 10px; padding: 0; } .elementor-control-type-section.elementor-open { padding-bottom: 15px; } .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before { display: none; } .elementor-shadow-box .elementor-shadow-slider { margin-top: 10px; } .elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-slider.elementor-control-dynamic input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper { display: block; } .elementor-control-type-slider--multiple { padding-bottom: 40px; } .elementor-control-type-slider--multiple .elementor-slider { margin-top: 12px; width: 98%; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle { -webkit-border-radius: 0; border-radius: 0; width: 10px; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(4px); -ms-transform: translateY(calc(50% - 14px)) translateX(4px); transform: translateY(calc(50% - 14px)) translateX(4px); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after { content: ''; position: absolute; top: 2px; height: 12px; width: 11px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after { left: 5px; -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after { right: 5px; -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-slider .elementor-control-input-wrapper { 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-control-type-slider .elementor-dynamic-cover { margin-top: 10px; } .elementor-slider { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 4px; background-color: #d5dadf; -webkit-border-radius: 5px; border-radius: 5px; position: relative; cursor: pointer; } .elementor-slider-input { margin-left: 10px; } .elementor-slider__extra { position: relative; } .elementor-slider__labels { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-slider__label { font-size: 9px; color: #c2cbd2; } .elementor-slider__scales { position: absolute; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: space-evenly; -webkit-justify-content: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; width: 100%; margin-top: 4px; } .elementor-slider__scale { width: 1px; height: 21px; background-color: #a4afb7; } .elementor-slider .noUi-handle { height: 16px; width: 16px; background-color: #fff; right: 0; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(8px); -ms-transform: translateY(calc(50% - 14px)) translateX(8px); transform: translateY(calc(50% - 14px)) translateX(8px); position: absolute; -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 50%; border-radius: 50%; } .elementor-slider .noUi-connects { position: absolute; width: 100%; height: 4px; } .elementor-slider .noUi-connect { position: absolute; z-index: 0; top: 0; left: 0; height: 100%; width: 100%; will-change: transform; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; background-color: #a4afb7; } .elementor-slider .noUi-tooltip { position: absolute; top: -webkit-calc(100% + 5px); top: calc(100% + 5px); left: -webkit-calc(50% - 4px); left: calc(50% - 4px); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); font-size: 10px; } .elementor-control-type-structure .elementor-control-field { display: initial; } .elementor-control-type-structure .elementor-control-structure-preset { padding: 3px; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; cursor: pointer; height: 50px; } .elementor-control-type-structure .elementor-control-structure-preset svg { height: 100%; } .elementor-control-type-structure .elementor-control-structure-preset path { fill: #e6e9ec; } .elementor-control-type-structure .elementor-control-structure-reset { padding: 15px 20px 0; font-size: 11px; cursor: pointer; color: #a4afb7; border-top: 1px solid #e6e9ec; margin: 0 -20px; } .elementor-control-type-structure .elementor-control-structure-title { margin: 10px -20px 0; } .elementor-control-type-structure .elementor-control-structure-title:before { height: 10px; -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); } .elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input { display: none; } .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path { fill: #a4afb7; } .elementor-control-type-structure .elementor-control-structure-preset-wrapper { margin-bottom: 15px; } .elementor-control-type-structure .elementor-control-structure-preset-title { text-align: center; padding-top: 5px; font-style: italic; font-size: 11px; color: #a4afb7; } .elementor-control-type-switcher .elementor-control-input-wrapper { text-align: right; } .elementor-control-type-switcher .elementor-switch { position: relative; display: inline-block; vertical-align: top; height: 20px; background-color: white; -webkit-border-radius: 18px; border-radius: 18px; cursor: pointer; } .elementor-control-type-switcher .elementor-switch-input { display: none; } .elementor-control-type-switcher .elementor-switch-label { position: relative; display: block; height: inherit; font-size: 7px; text-transform: uppercase; background: #eceeef; -webkit-border-radius: inherit; border-radius: inherit; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); -webkit-transition: 0.15s ease-out; -o-transition: 0.15s ease-out; transition: 0.15s ease-out; -webkit-transition-property: opacity, background; -o-transition-property: opacity, background; transition-property: opacity, background; } .elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after { position: absolute; top: 0; width: 50%; text-align: center; line-height: 20px; -webkit-transition: inherit; -o-transition: inherit; transition: inherit; } .elementor-control-type-switcher .elementor-switch-label:before { content: attr(data-off); right: 3px; color: #a4afb7; text-shadow: 0 1px rgba(255, 255, 255, 0.5); } .elementor-control-type-switcher .elementor-switch-label:after { content: attr(data-on); left: 3px; color: white; text-shadow: 0 1px rgba(0, 0, 0, 0.2); opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label { background: #71d7f7; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before { opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after { opacity: 1; } .elementor-control-type-switcher .elementor-switch-handle { position: absolute; top: 1px; left: 1px; width: 18px; height: 18px; background: white; -webkit-border-radius: 10px; border-radius: 10px; -webkit-transition: left 0.15s ease-out; -o-transition: left 0.15s ease-out; transition: left 0.15s ease-out; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle { left: initial; right: 1px; -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); } .elementor-control-type-tabs { font-size: 0.8em; text-transform: uppercase; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-tab { text-align: center; width: 100%; padding: 0; line-height: 27px; border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-right: 1px solid #d5dadf; cursor: pointer; } .elementor-control-type-tab:first-child { border-left: 1px solid #d5dadf; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-control-type-tab:last-child { -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-control-type-tab.elementor-tab-active { background-color: #a4afb7; border-color: #a4afb7; color: #ffffff; } .elementor-tab-close { display: none !important; } .elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; border-left-width: 0; } .elementor-control-type-textarea .elementor-control-dynamic-switcher { -webkit-border-radius: 0px 3px; border-radius: 0px 3px; } .elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher { position: absolute; top: 0; right: 0; } .elementor-control-type-textarea .elementor-control-input-wrapper { position: relative; } .elementor-control-type-textarea textarea { display: block; } .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher { display: none; } .elementor-control-type-url.elementor-control-dynamic .elementor-input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-field { position: relative; } .elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-url .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; } .elementor-control-type-url .elementor-control-url-more { 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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; border: 1px solid #d5dadf; border-left: none; cursor: pointer; } .elementor-control-type-url .elementor-control-url-more i { font-size: 12px; } .elementor-control-type-url .elementor-control-url-more-options { display: none; padding-top: 10px; } .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description { margin-top: 10px; } .elementor-control-type-url .elementor-control-url-option { 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-control-type-url .elementor-control-url-option:not(:last-child) { padding-bottom: 10px; } .elementor-control-type-url .elementor-control-url-option input, .elementor-control-type-url .elementor-control-url-option label { cursor: pointer; } .elementor-control-type-url .elementor-control-url-option input { margin: 0; padding: 0; -webkit-border-radius: 2px; border-radius: 2px; margin-right: 5px; -webkit-appearance: none; -moz-appearance: none; outline: none; content: none; height: 15px; width: 15px; border: 1px solid #d5dadf; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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-control-type-url .elementor-control-url-option input:checked { background: #71d7f7; border: none; } .elementor-control-type-url .elementor-control-url-option input:checked:before { display: block; content: ""; width: 4px; height: 7px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } .elementor-control-type-url .elementor-control-url-option label { font-size: 12px; } .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more { display: none; } .elementor-control-type-url .elementor-control-url-external-show .elementor-input, .elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-url-autocomplete-spinner { display: none; position: absolute; top: 5px; right: 0px; width: 10px; height: 10px; font-size: 10px; color: #D4D4D4; } .elementor-control-type-url .elementor-control-url__custom-attributes { margin-top: 10px; } .elementor-control-type-url .elementor-control-url__custom-attributes label { display: block; } .elementor-control-type-url .elementor-control-url__custom-attributes input { width: 100%; margin-top: 10px; } .elementor-control-type-url .elementor-input { direction: ltr; } .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more { border-color: #d5dadf; } .elementor-control-type-url .elementor-input:focus ~ div { border-color: #a4afb7; } .elementor-control-type-url .elementor-control-dynamic-switcher { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-autocomplete-menu { position: absolute; background: #fff; color: #495157; border: 1px solid #a4afb7; margin: 0; list-style: none; padding: 4px 0; height: auto; width: 100%; min-width: 260px; max-width: 300px; max-height: 200px; overflow-y: auto; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; cursor: default; z-index: 1; } .elementor-autocomplete-menu .ui-menu-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-self: baseline; -ms-flex-item-align: baseline; align-self: baseline; padding: 5px 8px; font-size: 12px; width: 100%; line-height: 1.2; cursor: pointer; } .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus { background: #e6e9ec; } .elementor-autocomplete-menu .elementor-autocomplete-item-info { font-size: 10px; padding-top: 2px; } .elementor-control-type-wp_widget .widget-inside { display: block; } .elementor-control-type-wp_widget .quicktags-toolbar input { width: auto; } .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container { margin-top: 10px; } .elementor-control-type-wysiwyg * { -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-control-type-wysiwyg .wp-editor-container { border: 1px solid #e6e9ec; } .elementor-control-type-wysiwyg .wp-editor-tabs { border: 1px solid #d5dadf; border-bottom: none; -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-control-type-wysiwyg #insert-media-button { height: initial; line-height: 24px; font-size: 10px; background-color: #e6e9ec; min-height: initial; } .elementor-control-type-wysiwyg .ed_button { height: 22px; width: initial; } .elementor-control-type-wysiwyg .wp-media-buttons-icon { height: 14px; margin: 0; } .elementor-control-type-wysiwyg .wp-media-buttons-icon:before { font-size: 14px; } .elementor-control-type-wysiwyg .wp-switch-editor { position: static; border: none; margin: 0; color: #6d7882; font-size: 10px; padding: 3px 9px 4px; } .elementor-control-type-wysiwyg .switch-html { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-wysiwyg .html-active .switch-tmce { background-color: transparent; } .elementor-control-type-wysiwyg .html-active .switch-html { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-tmce { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-html { background-color: transparent; } .elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .mce-toolbar-grp > div { padding: 0 3px; } .elementor-control-type-wysiwyg .elementor-wp-editor { -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-control-type-wysiwyg .mce-ico { color: #6d7882; font-size: 16px; } .elementor-control-type-wysiwyg .mce-btn { margin-right: 0; margin-left: 0; } .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active { border-color: #d5dadf; } .elementor-control-type-wysiwyg .mce-path { padding: 5px 10px; } .elementor-control-type-wysiwyg .mce-path-item { font-size: 12px; color: #6d7882; } .elementor-control-type-wysiwyg .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-text .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-text input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .ui-resizable-n { top: -5px; } .ui-resizable-e { right: -5px; } .ui-resizable-s { bottom: -5px; } .ui-resizable-w { left: -5px; } .ui-resizable-ne { top: -5px; right: -5px; } .ui-resizable-nw { top: -5px; left: -5px; } .ui-resizable-se { bottom: -5px; right: -5px; } .ui-resizable-sw { bottom: -5px; left: -5px; } .ui-resizable-n, .ui-resizable-s { left: 0; height: 10px; width: 100%; cursor: ns-resize; } .ui-resizable-e, .ui-resizable-w { top: 0; height: 100%; width: 10px; cursor: ew-resize; } .ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw { height: 15px; width: 15px; } .ui-resizable-nw, .ui-resizable-se { cursor: nwse-resize; } .ui-resizable-ne, .ui-resizable-sw { cursor: nesw-resize; } .ui-resizable-handle { position: absolute; } .ui-resizable-resizing { pointer-events: none; } @-webkit-keyframes placeholder-section { 0% { height: 0; opacity: 0; } 100% { height: 40px; opacity: .9; } } @keyframes placeholder-section { 0% { height: 0; opacity: 0; } 100% { height: 40px; opacity: .9; } } @-webkit-keyframes placeholder-widget { 0% { height: 0; opacity: 0; } 100% { height: 10px; opacity: .9; } } @keyframes placeholder-widget { 0% { height: 0; opacity: 0; } 100% { height: 10px; opacity: .9; } } @-webkit-keyframes section-outline { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes section-outline { 0% { opacity: 0; } 100% { opacity: 1; } } body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content { overflow: visible; } body.elementor-editor-active .elementor.elementor-edit-mode .article { 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-edit-area .animated { -webkit-animation-fill-mode: none !important; animation-fill-mode: none !important; } .elementor-edit-area ul.elementor-editor-element-settings { word-break: normal; padding: 0; } .elementor-edit-area .gallery { opacity: 1; } .pen { position: relative; outline: none; } .pen:not([data-elementor-inline-editing-toolbar="advanced"]) { white-space: pre-wrap; } .pen-menu { -webkit-box-shadow: 1px 2px 3px -2px #222; box-shadow: 1px 2px 3px -2px #222; background-color: #6d7882; position: fixed; overflow: hidden; -webkit-border-radius: 3px; border-radius: 3px; z-index: 9999; } .pen-menu:after { top: 100%; content: ''; position: absolute; border: 6px solid transparent; border-top-color: #6d7882; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .pen-menu-below:after { top: 0; -webkit-transform: translateX(-50%) translateY(-100%) rotate(180deg); -ms-transform: translateX(-50%) translateY(-100%) rotate(180deg); transform: translateX(-50%) translateY(-100%) rotate(180deg); } .pen-icon { position: relative; 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; height: 35px; padding: 0 10px; font-size: 21px; color: #d5dadf; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .pen-icon:hover { background: #556068; } .pen-icon[data-group], .pen-icon[data-action="closeGroup"] { display: none; } .pen-icon[data-action="close"]:before { content: ''; position: absolute; left: 0; height: 60%; width: 1px; background-color: #556068; } .pen-icon.active { background-color: #556068; -webkit-box-shadow: inset 2px 2px 4px #556068; box-shadow: inset 2px 2px 4px #556068; } .pen-group-icon:after { font-family: eicons; font-size: 12px; content: '\e92a'; padding-left: 4px; color: #71d7f7; } .pen-input-wrapper { -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .pen-input-wrapper .pen-url-input { font-size: 12px; line-height: 1.5; padding: 0; padding-left: 10px; padding-right: 10px; width: 250px; direction: ltr; } .pen-input-wrapper .pen-url-input, .pen-input-wrapper .pen-url-input:focus { background-color: transparent; border: none; outline: none; -webkit-box-shadow: none; box-shadow: none; color: #fff; } .pen-input-wrapper .pen-url-input::-webkit-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input:-ms-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input::-ms-input-placeholder { color: #d5dadf; } .pen-input-wrapper .pen-url-input::placeholder { color: #d5dadf; } .pen-input-label { margin: 0; margin-right: -1px; } .pen-placeholder:before { content: attr(data-pen-placeholder); position: absolute; font-weight: normal; color: #757575; opacity: 0.6; } .pen-external-url-checkbox { display: none; } .pen-external-url-checkbox:checked + i { color: #fff; } .elementor-inline-editing i:not([class]) { font-style: italic; } .elementor-inline-editing b { font-weight: bold; } .elementor-inline-editing u { text-decoration: underline; } html.elementor-html { margin-top: 0 !important; } .elementor-edit-area { position: relative; } .elementor.loading { opacity: 0.5; } .elementor-edit-area-active .elementor-top-section > .elementor-container > .elementor-row { min-height: 40px; } .elementor-edit-area-active .elementor-inner-section:first-child { margin-top: 15px; } .elementor-edit-area-active .elementor-inner-section > .elementor-container > .elementor-row { min-height: 40px; } .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap { min-height: 30px; } @media (min-width: 768px) { .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap { margin: 10px; } } .elementor-edit-area-active .elementor-column { min-width: 25px; } .elementor-edit-area-active .elementor-widget.elementor-loading { opacity: .3; } .elementor-edit-area-active .elementor-widget.elementor-element-editable, .elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover { -webkit-box-shadow: 0 0 0 1px #71d7f7; box-shadow: 0 0 0 1px #71d7f7; } .elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings { display: none; } .elementor-edit-area-active .elementor-widget.ui-draggable-dragging { pointer-events: none; } .elementor-edit-area-active .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; } .elementor-edit-area-active .handle { display: none; } .elementor-edit-area-active .elementor-inline-editing { min-height: 15px; } .elementor-edit-area-active .elementor-edit-hidden { display: none; } .elementor-section-wrap:empty { min-height: 25px; } .elementor-element > .elementor-element-overlay { position: absolute; top: 0; right: 0; letter-spacing: 0; z-index: 9998; pointer-events: none; } .elementor-element-empty .elementor-sortable-placeholder { display: none; } .elementor-element.elementor-widget-empty { background-color: rgba(213, 218, 223, 0.8); } .elementor-element.elementor-widget-empty .elementor-widget-empty-icon { color: #c2cbd2; font-size: 22px; display: block; text-align: center; padding: 10px 0; } .elementor-element:not(:hover):not(.elementor-element-editable) > .elementor-element-overlay .elementor-editor-element-settings { display: none; } .elementor-element--toggle-edit-tools > .elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active) ~ * { width: 0; font-size: 0; } .elementor-element[data-side="top"]:before, .elementor-element[data-side="bottom"] + .elementor-element: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: placeholder-widget 500ms; animation: placeholder-widget 500ms; display: block; } .elementor-element[data-side="bottom"]:last-child: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: placeholder-widget 500ms; animation: placeholder-widget 500ms; display: block; } .elementor-element.elementor-absolute, .elementor-element.elementor-fixed { cursor: -webkit-grab; cursor: grab; } .elementor-element.elementor-absolute:active, .elementor-element.elementor-fixed:active { cursor: -webkit-grabbing; cursor: grabbing; } .elementor-element.elementor-absolute .eicon-edit:before, .elementor-element.elementor-fixed .eicon-edit:before { content: '\e902'; } .elementor-section > .elementor-element-overlay { left: 0; bottom: 0; } .elementor-section > .elementor-element-overlay:after { position: absolute; left: 2px; right: 2px; top: 2px; bottom: 2px; outline: 2px solid #71d7f7; -webkit-animation: section-outline .75s; animation: section-outline .75s; } .elementor-section:hover > .elementor-element-overlay:after, .elementor-section.elementor-element-editable > .elementor-element-overlay:after { content: ''; } .elementor-section-filled .elementor-sortable-placeholder.elementor-column { display: none; } .elementor-section-filled .elementor-row.elementor-draggable-over { border: 1px solid #d72b3f; } .elementor-column > .elementor-element-overlay { left: 0; bottom: 0; } .elementor-column > .elementor-element-overlay:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; outline: 1px dashed #6d7882; } .elementor-column:hover > .elementor-element-overlay, .elementor-column.elementor-element-editable > .elementor-element-overlay { border: 1px solid #ffffff; } .elementor-column:hover > .elementor-element-overlay:after, .elementor-column.elementor-element-editable > .elementor-element-overlay:after { content: ''; } .elementor-column.elementor-dragging-on-child > .elementor-element-overlay { border: 1px solid #71d7f7; } .elementor-column.elementor-dragging-on-child > .elementor-element-overlay:after { display: none; } .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w { cursor: col-resize; width: 7px; position: absolute; right: -5px; top: 0; height: 100%; } .elementor-column:last-of-type > .ui-resizable-e, .elementor-column:last-of-type > .ui-resizable-w { display: none !important; } @media (max-width: 1024px) { .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w { display: none !important; } } .elementor-editor-element-settings { position: absolute; 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: normal; font-style: normal; line-height: 1; z-index: 1; pointer-events: all; } .elementor-editor-element-setting.elementor-editor-element-save { display: none; } @media (min-width: 1025px) { .elementor-editor-element-edit { cursor: move; } } .elementor-editor-section-settings { height: 24px; top: 1px; left: 50%; -webkit-transform: translateX(-50%) translateY(-100%); -ms-transform: translateX(-50%) translateY(-100%); transform: translateX(-50%) translateY(-100%); background-color: #71d7f7; -webkit-border-radius: 5px 5px 0 0; border-radius: 5px 5px 0 0; -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); } .elementor-editor-section-settings i.eicon-handle { font-size: 16px; } .elementor-editor-section-settings .elementor-editor-element-setting:hover { background-color: #10bcf2; } .elementor-editor-section-settings .elementor-editor-element-setting:first-child { -webkit-border-radius: 5px 0 0 0; border-radius: 5px 0 0 0; } .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before { content: ''; position: absolute; border: solid transparent; top: 2px; border-right-color: #71d7f7; border-width: 22px 12px 0 0; right: -webkit-calc(100% - 1px); right: calc(100% - 1px); } .elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before { border-right-color: #10bcf2; } .elementor-editor-section-settings .elementor-editor-element-setting:last-child { -webkit-border-radius: 0 5px 0 0; border-radius: 0 5px 0 0; } .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after { content: ''; position: absolute; border: solid transparent; top: 2px; border-left-color: #71d7f7; border-width: 22px 0 0 12px; left: -webkit-calc(100% - 1px); left: calc(100% - 1px); } .elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after { border-left-color: #10bcf2; } .elementor-section--handles-inside .elementor-editor-section-settings { -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-border-radius: 0 0 5px 5px; border-radius: 0 0 5px 5px; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child { -webkit-border-radius: 0 0 0 5px; border-radius: 0 0 0 5px; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before { top: 0; border-width: 0 12px 22px 0; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child { -webkit-border-radius: 0 0 5px 0; border-radius: 0 0 5px 0; } .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after { top: 0; border-width: 0 0 22px 12px; } .elementor-editor-column-settings { top: -1px; left: -1px; -webkit-border-radius: 0 0 3px 0; border-radius: 0 0 3px 0; overflow: hidden; } .elementor-editor-column-settings .elementor-editor-element-setting { background-color: #495157; } .elementor-editor-column-settings .elementor-editor-element-setting:not(:hover) { 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(to bottom, #6d7882, #556068); } .elementor-editor-widget-settings { z-index: 2; top: -1px; right: -1px; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; -webkit-border-radius: 0 0 0 3px; border-radius: 0 0 0 3px; overflow: hidden; } .elementor-editor-widget-settings .elementor-editor-element-setting { background-color: #10bcf2; } .elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover) { 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(to top, #41c9f4, #71d7f7); } .elementor-empty-view { position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1; } .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-first-add .elementor-icon { font-size: 19px; color: #a4afb7; cursor: pointer; } .elementor-sortable-helper { position: absolute; -webkit-border-radius: 3px; border-radius: 3px; background-color: #fff; text-align: center; color: #556068; -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); cursor: move; } .elementor-sortable-helper .icon { font-size: 28px; padding-top: 15px; line-height: 1; } .elementor-sortable-helper .elementor-element-title-wrapper { display: table; width: 100%; } .elementor-sortable-helper .title { font-size: 11px; font-family: Arial, Helvetica, sans-serif; font-weight: normal; font-style: normal; display: table-cell; vertical-align: middle; height: 40px; } .elementor-editor-content-only .elementor-first-add { display: none; } .elementor-editor-content-only .elementor-section > .elementor-element-overlay { display: none; } .elementor-editor-content-only .elementor-section > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-section:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-section.elementor-element-editable > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-column > .elementor-element-overlay { display: none; } .elementor-editor-content-only .elementor-column > .elementor-element-overlay:after { display: none; } .elementor-editor-content-only .elementor-column:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-column.elementor-element-editable > .elementor-element-overlay:after { display: none; } @media (min-width: 1025px) { .elementor-editor-content-only .elementor-editor-element-edit { cursor: pointer; } } .elementor-sortable-placeholder:not(.elementor-column-placeholder) { background-color: #71d7f7; -webkit-animation-duration: 250ms; animation-duration: 250ms; opacity: .9; width: 100%; -webkit-align-self: stretch; -ms-flex-item-align: stretch; align-self: stretch; } .elementor-section-placeholder { height: 40px; -webkit-animation-name: placeholder-section; animation-name: placeholder-section; } .elementor-column-placeholder { position: relative; } .elementor-column-placeholder:before, .elementor-column-placeholder:after { 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: placeholder-widget; animation-name: placeholder-widget; } .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: placeholder-widget 500ms; animation: placeholder-widget 500ms; 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-first-add.elementor-html5dnd-current-element .elementor-icon { display: none; } .elementor-draggable-over[data-dragged-element="section"][data-dragged-is-inner="true"] .elementor-inner-column .elementor-sortable-placeholder { display: none; } .elementor-add-section { all: initial; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; max-width: 1160px; position: relative; } .elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner { border: 2px dashed #d5dadf; background-color: rgba(255, 255, 255, 0.5); } .elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner { border: 3px dashed #71d7f7; } .elementor-add-section[data-view="choose-action"] .elementor-select-preset { display: none; } .elementor-add-section[data-view="select-preset"] .elementor-add-new-section { display: none; } .elementor-add-section-inner { text-align: center; margin: 20px; padding: 40px 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-add-new-section { display: inline-block; } .elementor-add-new-section .elementor-add-section-area-button { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; height: 40px; width: 40px; color: #fff; font-size: 16px; -webkit-border-radius: 50%; border-radius: 50%; -webkit-transition: all .3s; -o-transition: all .3s; transition: all .3s; cursor: pointer; } .elementor-add-new-section .elementor-add-section-area-button:hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-add-new-section .elementor-add-section-area-button:active { -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); } .elementor-add-new-section .elementor-add-section-button { background-color: #D30C5C; } .elementor-add-new-section .elementor-add-template-button { background-color: #6d7882; margin-left: 5px; } .elementor-add-section-drag-title { font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; font-style: italic; line-height: 1; color: #556068; margin-top: 15px; } .elementor-add-section-close { position: absolute; right: 40px; top: 40px; 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; max-width: 33.333%; } .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; width: 100%; } #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"] { -webkit-border-radius: 3px 0 0 3px; 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"] { -webkit-border-radius: 0 3px 3px 0; 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-element-overlay, .elementor-editor-preview .elementor-empty, .elementor-editor-preview .elementor-add-section, .elementor-editor-preview .elementor-add-section-inline, .elementor-editor-preview .elementor-empty-view, .elementor-editor-preview .elementor-widget-empty { display: none; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone { display: inherit; background: -webkit-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); background: -o-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); background: repeating-linear-gradient(125deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px); border: 1px solid rgba(0, 0, 0, 0.02); } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section > .elementor-element-overlay, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section > .elementor-element-overlay, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone.elementor-section > .elementor-element-overlay { background-color: #d5dadf; mix-blend-mode: color; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone.elementor-section:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.6); z-index: 9997; } [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-container, [data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-column-wrap, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-container, [data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-column-wrap, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone > .elementor-widget-container, [data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-phone > .elementor-column-wrap { -webkit-filter: opacity(0.4) saturate(0); filter: opacity(0.4) saturate(0); } /*# sourceMappingURL=editor-preview.css.map */assets/css/frontend-msie.min.css000066600000020267152142641160012721 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-msie .elementor-grid,.elementor-msie ul.products{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-msie .elementor-grid .elementor-grid-item,.elementor-msie .elementor-grid li.product,.elementor-msie ul.products .elementor-grid-item,.elementor-msie ul.products li.product{word-break:break-word}.elementor-msie .elementor-grid-1 .elementor-grid-item{width:100%}.elementor-msie .elementor-grid-2 .elementor-grid-item{width:50%}.elementor-msie .elementor-grid-3 .elementor-grid-item{width:33.3333333333%}.elementor-msie .elementor-grid-4 .elementor-grid-item{width:25%}.elementor-msie .elementor-grid-5 .elementor-grid-item{width:20%}.elementor-msie .elementor-grid-6 .elementor-grid-item{width:16.6666666667%}.elementor-msie .elementor-grid-7 .elementor-grid-item{width:14.2857142857%}.elementor-msie .elementor-grid-8 .elementor-grid-item{width:12.5%}.elementor-msie .elementor-grid-9 .elementor-grid-item{width:11.1111111111%}.elementor-msie .elementor-grid-10 .elementor-grid-item{width:10%}.elementor-msie .elementor-grid-11 .elementor-grid-item{width:9.0909090909%}.elementor-msie .elementor-grid-12 .elementor-grid-item{width:8.3333333333%}@media (max-width:1024px){.elementor-msie .elementor-grid-tablet-1 .elementor-grid-item{width:100%}.elementor-msie .elementor-grid-tablet-2 .elementor-grid-item{width:50%}.elementor-msie .elementor-grid-tablet-3 .elementor-grid-item{width:33.3333333333%}.elementor-msie .elementor-grid-tablet-4 .elementor-grid-item{width:25%}.elementor-msie .elementor-grid-tablet-5 .elementor-grid-item{width:20%}.elementor-msie .elementor-grid-tablet-6 .elementor-grid-item{width:16.6666666667%}.elementor-msie .elementor-grid-tablet-7 .elementor-grid-item{width:14.2857142857%}.elementor-msie .elementor-grid-tablet-8 .elementor-grid-item{width:12.5%}.elementor-msie .elementor-grid-tablet-9 .elementor-grid-item{width:11.1111111111%}.elementor-msie .elementor-grid-tablet-10 .elementor-grid-item{width:10%}.elementor-msie .elementor-grid-tablet-11 .elementor-grid-item{width:9.0909090909%}.elementor-msie .elementor-grid-tablet-12 .elementor-grid-item{width:8.3333333333%}}@media (max-width:767px){.elementor-msie .elementor-grid-mobile-1 .elementor-grid-item{width:100%}.elementor-msie .elementor-grid-mobile-2 .elementor-grid-item{width:50%}.elementor-msie .elementor-grid-mobile-3 .elementor-grid-item{width:33.3333333333%}.elementor-msie .elementor-grid-mobile-4 .elementor-grid-item{width:25%}.elementor-msie .elementor-grid-mobile-5 .elementor-grid-item{width:20%}.elementor-msie .elementor-grid-mobile-6 .elementor-grid-item{width:16.6666666667%}.elementor-msie .elementor-grid-mobile-7 .elementor-grid-item{width:14.2857142857%}.elementor-msie .elementor-grid-mobile-8 .elementor-grid-item{width:12.5%}.elementor-msie .elementor-grid-mobile-9 .elementor-grid-item{width:11.1111111111%}.elementor-msie .elementor-grid-mobile-10 .elementor-grid-item{width:10%}.elementor-msie .elementor-grid-mobile-11 .elementor-grid-item{width:9.0909090909%}.elementor-msie .elementor-grid-mobile-12 .elementor-grid-item{width:8.3333333333%}}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-1 ul.products li.product{width:100%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-2 ul.products li.product{width:50%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-3 ul.products li.product{width:33.3333333333%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-4 ul.products li.product{width:25%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-5 ul.products li.product{width:20%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-6 ul.products li.product{width:16.6666666667%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-7 ul.products li.product{width:14.2857142857%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-8 ul.products li.product{width:12.5%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-9 ul.products li.product{width:11.1111111111%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-10 ul.products li.product{width:10%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-11 ul.products li.product{width:9.0909090909%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-12 ul.products li.product{width:8.3333333333%}@media (max-width:1024px){.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-1 ul.products li.product{width:100%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-2 ul.products li.product{width:50%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-3 ul.products li.product{width:33.3333333333%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-4 ul.products li.product{width:25%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-5 ul.products li.product{width:20%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-6 ul.products li.product{width:16.6666666667%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-7 ul.products li.product{width:14.2857142857%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-8 ul.products li.product{width:12.5%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-9 ul.products li.product{width:11.1111111111%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-10 ul.products li.product{width:10%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-11 ul.products li.product{width:9.0909090909%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-tablet-12 ul.products li.product{width:8.3333333333%}}@media (max-width:767px){.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-1 ul.products li.product{width:100%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-2 ul.products li.product{width:50%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-3 ul.products li.product{width:33.3333333333%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-4 ul.products li.product{width:25%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-5 ul.products li.product{width:20%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-6 ul.products li.product{width:16.6666666667%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-7 ul.products li.product{width:14.2857142857%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-8 ul.products li.product{width:12.5%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-9 ul.products li.product{width:11.1111111111%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-10 ul.products li.product{width:10%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-11 ul.products li.product{width:9.0909090909%}.elementor-msie .elementor-element.elementor-wc-products.elementor-products-columns-mobile-12 ul.products li.product{width:8.3333333333%}}.elementor-msie .elementor-element.elementor-wc-products ul.products,.elementor-msie .elementor-posts{margin-right:-10px;margin-left:-10px}.elementor-msie .elementor-element.elementor-wc-products ul.products .elementor-post,.elementor-msie .elementor-element.elementor-wc-products ul.products li.product,.elementor-msie .elementor-posts .elementor-post,.elementor-msie .elementor-posts li.product{padding-right:10px;padding-left:10px;margin-bottom:20px}assets/css/common.min.css000066600000026227152142641160011441 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-right:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}#elementor-finder__modal{background:none}#elementor-finder__modal .dialog-widget-content{width:650px;max-width:98%;top:18vh;left:-webkit-calc(50% - 325px);left:calc(50% - 325px)}#elementor-finder__modal .dialog-message{height:auto;min-height:0;padding:0;text-align:left}#elementor-finder__search{padding:14px 15px 14px 21px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-shadow:0 -3px 15px 6px rgba(0,0,0,.03);box-shadow:0 -3px 15px 6px rgba(0,0,0,.03)}#elementor-finder__search i{font-size:16px;color:#a4afb7;font-weight:700;margin-right:15px}#elementor-finder__search__input{border:none;background:none;outline:none;padding:0;margin:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;font-size:14px;color:#495157;-webkit-box-shadow:none;box-shadow:none}#elementor-finder__search__input::-webkit-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input:-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__results{max-height:50vh;overflow:auto}#elementor-finder__no-results{display:none;padding:20px;color:#a4afb7}.elementor-finder__results__category{position:relative}.elementor-finder__results__category__title{padding:5px 25px;color:#6d7882;background-color:#e6e9ec;font-size:9px;text-transform:uppercase}.elementor-finder__results__category--dynamic .elementor-finder__results__category__items{min-height:26px}.elementor-finder__results__category .eicon-loading{display:none;position:absolute;right:10px;top:30px;color:#71d7f7;font-size:14px}.elementor-finder__results__item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-finder__results__item a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active{background-color:#71d7f7;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active *{color:#fff}.elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions{display:none}.elementor-finder__results__item__link{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;height:35px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-finder__results__item__icon{width:60px;text-align:center;color:#6d7882;font-size:17px}.elementor-finder__results__item__title{color:#6d7882;font-size:13px}.elementor-finder__results__item__description{margin-left:5px;color:#a4afb7;font-style:italic}.elementor-finder__results__item__action,.elementor-finder__results__item__actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-finder__results__item__action{-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;height:100%;width:35px}.elementor-finder__results__item__action:hover{background-color:rgba(0,0,0,.07)}assets/css/admin.css000066600000105153152142641160010453 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-weight: 500; text-transform: uppercase; outline: none; border: none; -webkit-border-radius: 3px; 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: .3s; -o-transition-duration: .3s; transition-duration: .3s; } .elementor-button:hover { border: none; } .elementor-button:not([disabled]) { cursor: pointer; } .elementor-button:not(.elementor-button-state) .elementor-state-icon { display: none; } .elementor-button.elementor-button-success { color: #fff; } .elementor-button.elementor-button-success[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-success:not([disabled]) { background-color: #39b54a; } .elementor-button.elementor-button-success:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-success:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-warning { background-color: #a4afb7; color: #fff; } .elementor-button.elementor-button-warning[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-warning:not([disabled]):hover { background-color: #b01b1b; opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-warning:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-danger { background-color: #d72b3f; color: #fff; } .elementor-button.elementor-button-danger[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-danger:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-danger:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .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; padding: 7px 21px; } .elementor-button.elementor-button-default:hover { background-color: #6d7882; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-default:active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-default:visited { color: #fff; } .elementor-button.elementor-button-go-pro { background-color: #D30C5C; } .elementor-button i { margin-right: 10px; } #adminmenu #toplevel_page_elementor div.wp-menu-image:before { content: "\e813"; font-family: eicons; font-size: 18px; margin-top: 1px; } #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] { font-weight: 700; } #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover { color: #f43883; } #adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled { height: auto; } #adminmenu #menu-posts-elementor_library .wp-menu-image:before { content: '\e8ff'; font-family: eicons; font-size: 18px; } body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] { color: #f22074; } .elementor-plugins-gopro { color: #D30C5C; text-shadow: 1px 1px 1px #eee; font-weight: bold; } .e-logo-wrapper { display: inline-block; padding: .75em; background-image: -webkit-linear-gradient(225deg, #EF295A, #434363); background-image: -o-linear-gradient(225deg, #EF295A, #434363); background-image: linear-gradient(-135deg, #EF295A, #434363); -webkit-border-radius: 7.5%; border-radius: 7.5%; line-height: 1; } .e-logo-wrapper i { color: #ffffff; font-size: 1em; } #elementor-switch-mode { margin: 15px 0; } #elementor-switch-mode-button, #elementor-editor-button { outline: none; cursor: pointer; } #elementor-switch-mode-button i, #elementor-editor-button i { margin-right: 3px; font-size: 125%; font-style: normal; } 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 #postdivrich { display: none !important; } body.elementor-editor-active .editor-block-list__layout, body.elementor-editor-active .block-editor-block-list__layout { display: none; } body.elementor-editor-inactive .elementor-switch-mode-on { display: none; } body.elementor-editor-inactive #elementor-editor { display: none; } body.elementor-editor-active .editor-block-list__layout { display: none; } body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; } body.elementor-editor-active #elementor-editor { margin-bottom: 50px; } body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor { display: none; } body .block-editor #elementor-switch-mode { margin: 0 15px; } body .block-editor #elementor-switch-mode .button { margin: 2px; height: 33px; font-size: 13px; line-height: 1; } body .block-editor #elementor-switch-mode .button i { padding-right: 5px; } .elementor-button { font-size: 13px; text-decoration: none; padding: 15px 40px; } #elementor-editor { height: 300px; width: 100%; -webkit-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; } #elementor-editor .elementor-loader-wrapper { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 300px; 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: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } #elementor-editor .elementor-loader { -webkit-border-radius: 7px; border-radius: 7px; padding: 40px; height: 150px; width: 150px; background-color: rgba(255, 255, 255, 0.9); -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); } #elementor-editor .elementor-loader-boxes { height: 100%; width: 100%; position: relative; } #elementor-editor .elementor-loader-box { position: absolute; background-color: #d5dadf; -webkit-animation: load 1.8s linear infinite; animation: load 1.8s linear infinite; } #elementor-editor .elementor-loader-box:nth-of-type(1) { width: 20%; height: 100%; left: 0; top: 0; } #elementor-editor .elementor-loader-box:not(:nth-of-type(1)) { right: 0; height: 20%; width: 60%; } #elementor-editor .elementor-loader-box:nth-of-type(2) { top: 0; -webkit-animation-delay: -0.45s; animation-delay: -0.45s; } #elementor-editor .elementor-loader-box:nth-of-type(3) { top: 40%; -webkit-animation-delay: -0.9s; animation-delay: -0.9s; } #elementor-editor .elementor-loader-box:nth-of-type(4) { bottom: 0; -webkit-animation-delay: -1.35s; animation-delay: -1.35s; } #elementor-editor .elementor-loading-title { color: #a4afb7; text-align: center; text-transform: uppercase; margin-top: 30px; letter-spacing: 7px; text-indent: 7px; font-size: 10px; width: 100%; } #elementor-go-to-edit-page-link { 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; border: 1px solid #DDD; background-color: #F7F7F7; text-decoration: none; position: relative; font-family: Sans-serif; } #elementor-go-to-edit-page-link:hover { background-color: #ffffff; } #elementor-go-to-edit-page-link:focus { -webkit-box-shadow: none; box-shadow: none; } #elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button { display: none; } #elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper { display: none; } .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; } .elementor-blank_state { padding: 5em 0; margin: auto; max-width: 520px; text-align: center; color: #6d7882; font-family: Roboto, sans-serif; } .elementor-blank_state i { font-size: 50px; color: #a4afb7; } .elementor-blank_state h2 { font-size: 32px; font-weight: 300; color: inherit; margin: 40px 0 10px; line-height: 1.2; } .elementor-blank_state p { font-size: 16px; font-weight: normal; color: #a4afb7; margin-bottom: 40px; } .elementor-blank_state .elementor-button { display: inline-block; } #available-widgets [class*="elementor-template"] .widget-title:before { content: "\e813"; font-family: eicons; font-size: 17px; } .elementor-settings-form-page { padding-top: 30px; } .elementor-settings-form-page:not(.elementor-active) { display: none; } ._elementor_settings_update_time { display: none; } #confirm_fa_migration_admin_modal .dialog-confirm-ok { color: #6d7882; } body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"] { width: 100%; } .e-getting-started { max-width: 900px; padding: 2.5em 0; margin: auto; text-align: center; } .e-getting-started__header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); } .e-getting-started__header .e-logo-wrapper { font-size: 10px; margin-right: 10px; } .e-getting-started__title { padding: 0 15px; font-weight: 600; text-transform: uppercase; 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; } .e-getting-started__skip { border-left: 1px solid #eee; font-size: 16px; color: inherit; } .e-getting-started__skip i { padding: 15px; } .e-getting-started__content { padding: 50px; } .e-getting-started__content h2 { font-size: 2em; margin-top: 0; } .e-getting-started__content--narrow { max-width: 500px; margin: auto; } .e-getting-started__video { margin: 40px 0 60px; } .e-getting-started__video iframe { -webkit-box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); } .e-getting-started__actions .button-primary { margin-right: 20px; } /*= Elementor Message ---------------------------------------*/ .notice.elementor-message { padding: 20px; border-left-color: #D30C5C; } .notice.elementor-message .elementor-message-inner { 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; } .notice.elementor-message .elementor-message-icon { font-size: 20px; } .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-message-action { text-align: center; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin-left: auto; } .notice.elementor-message .elementor-message-action .elementor-button { background-color: #D30C5C; 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-message-action .elementor-button i { margin-right: 5px; } .notice.elementor-message .elementor-message-action .elementor-button:hover { background-color: #a0124a; } .notice.elementor-message .elementor-message-action .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); } .notice.elementor-message .elementor-message-action .elementor-link { padding-top: 5px; } .notice.elementor-message .elementor-message-actions { margin-top: 10px; } .notice.elementor-message .elementor-message-actions .button.button-primary { margin-right: 5px; } .notice.elementor-message-announcement { border-color: #D30C5C; } .notice.elementor-message-announcement a { color: #D30C5C; } @media (min-width: 1200px) { .elementor-message-action { padding-right: 10px; } } @media (max-width: 600px) { .notice.elementor-message { padding: 20px; } .notice.elementor-message .elementor-message-inner { display: block; text-align: center; } .notice.elementor-message .elementor-message-inner .elementor-message-icon, .notice.elementor-message .elementor-message-inner .elementor-message-content, .notice.elementor-message .elementor-message-inner .elementor-message-action { display: block; } .notice.elementor-message .elementor-message-inner .elementor-message-action { text-align: center; } .notice.elementor-message .elementor-message-inner .elementor-message-icon { width: auto; } .notice.elementor-message .elementor-message-inner .elementor-message-content { padding: 10px 0; } } /*= Elementor Admin Alert ---------------------------------------*/ .elementor-admin-alert { padding: 15px; border-left: 5px solid transparent; position: relative; font-size: 12px; line-height: 1.5; text-align: left; } .elementor-admin-alert a { color: inherit; } .elementor-admin-alert.elementor-alert-info { color: #31708f; background-color: #d9edf7; border-color: #bcdff1; } .elementor-admin-alert.elementor-alert-success { color: #3c763d; background-color: #dff0d8; border-color: #cae6be; } .elementor-admin-alert.elementor-alert-warning { color: #8a6d3b; background-color: #fcf8e3; border-color: #f9f0c3; } .elementor-admin-alert.elementor-alert-danger { color: #a94442; background-color: #f2dede; border-color: #e8c4c4; } /*= Elementor System Info ---------------------------------------*/ #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-section .widefat { white-space: pre; } #elementor-system-info .elementor-system-info-section .elementor-log-entries { white-space: pre-wrap; } #elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child { width: 300px; } #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-report-field, #elementor-system-info .elementor-system-info-field-recommendation { 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; } #elementor-system-info .elementor-warning td:first-child { border-left: 3px solid #fcb92c; } #elementor-system-info a.box-title-tool { font-size: 80%; margin-left: 15px; color: #818a91; } #elementor-system-info a.box-title-tool:hover { text-decoration: underline; } #elementor-system-info #elementor-usage-recalc { font-size: 12px; color: #ffffff; background-color: #a4afb7; padding: 4px 18px 5px 18px; -webkit-border-radius: 3px; border-radius: 3px; } @-webkit-keyframes elementor-rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } @keyframes elementor-rotation { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -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-header { padding: 18px 15px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 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; overflow: hidden; } #elementor-deactivate-feedback-modal .dialog-submit { background-color: #D30C5C; -webkit-border-radius: 3px; border-radius: 3px; color: #fff; line-height: 1; padding: 12px 20px; font-size: 13px; width: 180px; height: 38px; } #elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before { display: inline-block; content: '\f463'; font: 18px dashicons; -webkit-animation: elementor-rotation 2s infinite linear; animation: elementor-rotation 2s infinite linear; } #elementor-deactivate-feedback-modal .dialog-skip { font-size: 12px; color: #a4afb7; background: none; float: right; width: auto; } #elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .elementor-feedback-text { color: #b01b1b; padding: 0; } #elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .dialog-submit { display: none; } #elementor-deactivate-feedback-dialog-header i { color: #D30C5C; font-size: 19px; } #elementor-deactivate-feedback-dialog-header-title { font-size: 15px; text-transform: uppercase; font-weight: bold; padding-left: 5px; } #elementor-deactivate-feedback-dialog-form-caption { font-weight: bold; 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: #FFFFFF; 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; line-height: 1.6; display: none; } #tab-replace_url.elementor-active ~ p.submit, #tab-fontawesome4_migration.elementor-active ~ p.submit { display: none; } #elementor_rollback > div, #elementor_rollback_pro > div, #elementor_replace_url > div { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor_rollback > div input, #elementor_rollback > div select, #elementor_rollback_pro > div input, #elementor_rollback_pro > div select, #elementor_replace_url > div input, #elementor_replace_url > div select { margin-right: 6px; } #e-dashboard-overview .dashicons { vertical-align: middle; font-size: 17px; } #e-dashboard-overview .e-overview__header { display: table; width: 100%; -webkit-box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05); box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05); margin: 0 -12px 8px; padding: 0 12px 12px; } #e-dashboard-overview .e-overview__logo, #e-dashboard-overview .e-overview__versions, #e-dashboard-overview .e-overview__create { display: table-cell; vertical-align: middle; } #e-dashboard-overview .e-overview__logo { width: 30px; } #e-dashboard-overview .e-overview__versions { padding: 0 10px; font-size: 0.9em; line-height: 1.5; } #e-dashboard-overview .e-overview__version { display: block; } #e-dashboard-overview .e-overview__create { text-align: right; } #e-dashboard-overview .e-overview__post { margin-top: 10px; } #e-dashboard-overview .e-overview__post-link { display: inline-block; } #e-dashboard-overview .e-overview__badge { background: #39b54a; color: white; font-size: 0.75em; padding: 3px 6px; -webkit-border-radius: 3px; border-radius: 3px; text-transform: uppercase; } #e-dashboard-overview .e-overview__post-description { margin: 0 0 1.5em; } #e-dashboard-overview .e-overview__recently-edited li { color: #72777c; } #e-dashboard-overview .e-overview__feed { font-size: 14px; font-weight: 500; } #e-dashboard-overview .e-overview__feed .e-overview__post-link { padding-bottom: 5px; } #e-dashboard-overview .e-overview__recently-edited .e-overview__heading, #e-dashboard-overview .e-overview__feed .e-overview__heading { font-weight: 700; border-bottom: 1px solid #eee; margin: 0 -12px; padding: 6px 12px; } #e-dashboard-overview .e-overview__footer { margin: 0 -12px -12px; padding: 12px; border-top: 1px solid #eee; } #e-dashboard-overview .e-overview__footer ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; list-style: none; margin: 0; padding: 0; } #e-dashboard-overview .e-overview__footer ul li { padding: 0 10px; margin: 0; border-left: 1px solid #ddd; } #e-dashboard-overview .e-overview__footer ul li:first-child { padding-left: 0; border: none; } #e-dashboard-overview .e-overview__go-pro a { color: #D30C5C; font-weight: 500; } .post-type-elementor_library #elementor-template-library-tabs-wrapper { padding-top: 2em; margin-bottom: 2em; } .post-type-elementor_library th#taxonomy-elementor_library_category { width: 110px; } #elementor-new-template-modal .dialog-message { max-height: 70vh; } #elementor-new-template-dialog-content { 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; height: 100%; text-align: left; color: #6d7882; } @media (max-width: 1439px) { #elementor-new-template-dialog-content { padding: 0 50px; } } @media (min-width: 1440px) { #elementor-new-template-dialog-content { padding: 0 120px; } } #elementor-new-template__description { width: 35%; max-width: 300px; padding-right: 100px; } #elementor-new-template__description__title { font-size: 30px; color: #556068; } #elementor-new-template__description__title span { font-weight: bold; } #elementor-new-template__description__content { font-size: 16px; padding: 30px 0; } #elementor-new-template__take_a_tour { 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; font-size: 15px; } #elementor-new-template__take_a_tour i { color: #f2295b; font-size: 30px; } #elementor-new-template__take_a_tour a { color: #6d7882; padding-left: 10px; text-decoration: none; font-weight: 500; } #elementor-new-template__form { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; max-width: 440px; padding: 55px; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); } #elementor-new-template__form__title { font-size: 23px; color: #556068; } #elementor-new-template__form__template-type.elementor-form-field__select { max-width: initial; } #elementor-new-template__form .elementor-form-field__label { display: block; margin: 25px 0 7px; font-size: 14px; line-height: 1; } #elementor-new-template__form .elementor-form-field input, #elementor-new-template__form .elementor-form-field select { width: 100%; height: 50px; padding: 10px; font-size: 14px; -webkit-box-shadow: none; box-shadow: none; -webkit-border-radius: 3px; border-radius: 3px; background: none; color: #495157; border: 1px solid; outline: none; } #elementor-new-template__form .elementor-form-field input:not(:focus), #elementor-new-template__form .elementor-form-field select:not(:focus) { border-color: #d5dadf; } #elementor-new-template__form .elementor-form-field input:focus, #elementor-new-template__form .elementor-form-field select:focus { border-color: #a4afb7; } #elementor-new-template__form .elementor-form-field__select { appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; } #elementor-new-template__form .elementor-form-field__select__wrapper { position: relative; } #elementor-new-template__form .elementor-form-field__select__wrapper:after { font-family: eicons; content: '\e8ad'; position: absolute; top: 50%; right: 10px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-new-template__form__submit { width: 100%; height: 50px; margin-top: 25px; } @media (max-width: 1024px) { #elementor-new-template__description { max-width: 250px; padding-right: 30px; } } @media (max-width: 767px) { #elementor-new-template__description { display: none; } } #elementor-role-manager { max-width: 500px; margin-top: 50px; } #elementor-role-manager h3 { color: #6d7882; font-weight: normal; font-size: 22px; } #elementor-role-manager .elementor-settings-form-page { padding: 0; } #elementor-role-manager .elementor-role-row { background: #ffffff; color: #6d7882; margin-bottom: 2px; } #elementor-role-manager .elementor-role-row .elementor-role-label { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding: 15px 20px; font-weight: 500; cursor: pointer; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name { padding-right: 20px; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle { text-align: right; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator { color: #a4afb7; } #elementor-role-manager .elementor-role-row .elementor-role-controls { background-color: #f7f7f7; padding: 20px 20px 5px; } #elementor-role-manager .elementor-role-row .elementor-role-controls > div { margin-bottom: 15px; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc { font-weight: 500; font-style: italic; } #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link { text-align: right; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area { color: #c2cbd2; cursor: pointer; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again, #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item > i { color: #6d7882; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close { border: none; } #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again { text-transform: uppercase; font-weight: bold; font-size: 12px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } #elementor-beta-tester-modal .dialog-lightbox-widget-content { max-width: 500px; height: initial; } #elementor-beta-tester-modal .dialog-lightbox-message { padding: 40px; height: 300px; background-color: #fff; } #elementor-beta-tester-form__caption { font-weight: bold; font-size: 20px; color: #495157; } #elementor-beta-tester-form__description { font-size: 15px; color: #6d7882; margin-top: 10px; } #elementor-beta-tester-form__input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-top: 30px; } #elementor-beta-tester-form__input-wrapper .elementor-button { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } #elementor-beta-tester-form__email { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; border: #d5dadf 1px solid; border-right: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; margin: 0; padding: 10px; height: 50px; } #elementor-beta-tester-form__terms { margin-top: 40px; font-size: 11px; color: #a4afb7; } /*# sourceMappingURL=admin.css.map */assets/css/editor-preview-rtl.min.css000066600000227345152142641160013721 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{width:135px}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:1}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;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-tags-list__group-title .eicon-info-circle{padding-left:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-left:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#d30c5c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{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;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;right:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}.elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel-box-content{padding:20px 20px 10px}.elementor-button{display:inline-block}.elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-right:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel-alert a{color:inherit}.elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.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;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-control-field-description,.elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-controls-popover:before{content:"";position:absolute;top:-16px;left:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-controls-popover div.elementor-control:before{content:none}#elementor-controls .pojo-widget-button-collapse{display:none}#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control .elementor-control-content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:12px;line-height:1;margin-left:5px}.elementor-control .elementor-control-spinner{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-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title{display:none}.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop{display:none}body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet{display:none}body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;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:5px;padding-left:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.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-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-right:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-start-end .eicon-h-align-left,.elementor-control-start-end .eicon-h-align-right{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-control-responsive-switchers{margin-left:5px;--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:-webkit-calc(-1*var(--selected-option)*2em);top:calc(-1*var(--selected-option)*2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{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;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 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}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:left}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-left:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices input{display:none}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:-webkit-calc(100% + 1px);width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.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-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-right:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{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-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;left:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:none}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:right}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.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-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area{display:none}.elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media-upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-right:1px}.elementor-control-media__tool{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;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{position:absolute;z-index:1;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;top:10px;left:10px;width:20px;height:20px;font-size:11px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1);-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:ltr}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-left:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.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-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-left:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(-4px);-ms-transform:translateY(calc(50% - 14px)) translateX(-4px);transform:translateY(calc(50% - 14px)) translateX(-4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-input-wrapper{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-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{margin-right:10px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;left:0;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(-8px);-ms-transform:translateY(calc(50% - 14px)) translateX(-8px);transform:translateY(calc(50% - 14px)) translateX(-8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:-webkit-calc(100% + 5px);top:calc(100% + 5px);left:-webkit-calc(50% - 4px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;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-control-type-switcher .elementor-switch-label:after,.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-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-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-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-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:27px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-left:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right-width:0}.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;left:0}.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-textarea textarea{display:block}.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{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-control-type-url .elementor-control-url-more{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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{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-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 0 0 5px;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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-control-type-url .elementor-control-url-option input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:10px}.elementor-control-type-url .elementor-control-url__custom-attributes label{display:block}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-self:baseline;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-text input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}@-webkit-keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes section-outline{0%{opacity:0}to{opacity:1}}@keyframes section-outline{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-edit-area .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}.elementor-edit-area ul.elementor-editor-element-settings{word-break:normal;padding:0}.elementor-edit-area .gallery{opacity:1}.pen{position:relative;outline:none}.pen:not([data-elementor-inline-editing-toolbar=advanced]){white-space:pre-wrap}.pen-menu{-webkit-box-shadow:1px 2px 3px -2px #222;box-shadow:1px 2px 3px -2px #222;background-color:#6d7882;position:fixed;overflow:hidden;-webkit-border-radius:3px;border-radius:3px;z-index:9999}.pen-menu:after{top:100%;content:"";position:absolute;border:6px solid transparent;border-top-color:#6d7882;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.pen-menu-below:after{top:0;-webkit-transform:translateX(-50%) translateY(-100%) rotate(180deg);-ms-transform:translateX(-50%) translateY(-100%) rotate(180deg);transform:translateX(-50%) translateY(-100%) rotate(180deg)}.pen-icon{position:relative;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;height:35px;padding:0 10px;font-size:21px;color:#d5dadf;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pen-icon:hover{background:#556068}.pen-icon[data-action=closeGroup],.pen-icon[data-group]{display:none}.pen-icon[data-action=close]:before{content:"";position:absolute;right:0;height:60%;width:1px;background-color:#556068}.pen-icon.active{background-color:#556068;-webkit-box-shadow:inset 2px 2px 4px #556068;box-shadow:inset 2px 2px 4px #556068}.pen-group-icon:after{font-family:eicons;font-size:12px;content:"\e92a";padding-left:4px;color:#71d7f7}.pen-input-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.pen-input-wrapper .pen-url-input{font-size:12px;line-height:1.5;padding:0 10px;width:250px;direction:ltr}.pen-input-wrapper .pen-url-input,.pen-input-wrapper .pen-url-input:focus{background-color:transparent;border:none;outline:none;-webkit-box-shadow:none;box-shadow:none;color:#fff}.pen-input-wrapper .pen-url-input::-webkit-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input:-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::placeholder{color:#d5dadf}.pen-input-label{margin:0 0 0 -1px}.pen-placeholder:before{content:attr(data-pen-placeholder);position:absolute;font-weight:400;color:#757575;opacity:.6}.pen-external-url-checkbox{display:none}.pen-external-url-checkbox:checked+i{color:#fff}.elementor-inline-editing i:not([class]){font-style:italic}.elementor-inline-editing b{font-weight:700}.elementor-inline-editing u{text-decoration:underline}html.elementor-html{margin-top:0!important}.elementor-edit-area{position:relative}.elementor.loading{opacity:.5}.elementor-edit-area-active .elementor-top-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-inner-section:first-child{margin-top:15px}.elementor-edit-area-active .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-edit-area-active .elementor-column{min-width:25px}.elementor-edit-area-active .elementor-widget.elementor-loading{opacity:.3}.elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover,.elementor-edit-area-active .elementor-widget.elementor-element-editable{-webkit-box-shadow:0 0 0 1px #71d7f7;box-shadow:0 0 0 1px #71d7f7}.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings{display:none}.elementor-edit-area-active .elementor-widget.ui-draggable-dragging{pointer-events:none}.elementor-edit-area-active .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}.elementor-edit-area-active .handle{display:none}.elementor-edit-area-active .elementor-inline-editing{min-height:15px}.elementor-edit-area-active .elementor-edit-hidden{display:none}.elementor-section-wrap:empty{min-height:25px}.elementor-element>.elementor-element-overlay{position:absolute;top:0;left:0;letter-spacing:0;z-index:9998;pointer-events:none}.elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-element--toggle-edit-tools>.elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active)~*{width:0;font-size:0}.elementor-element[data-side=bottom]+.elementor-element:before,.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:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element[data-side=bottom]:last-child: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:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{cursor:-webkit-grab;cursor:grab}.elementor-element.elementor-absolute:active,.elementor-element.elementor-fixed:active{cursor:-webkit-grabbing;cursor:grabbing}.elementor-element.elementor-absolute .eicon-edit:before,.elementor-element.elementor-fixed .eicon-edit:before{content:"\e902"}.elementor-section>.elementor-element-overlay{right:0;bottom:0}.elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:section-outline .75s;animation:section-outline .75s}.elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid #d72b3f}.elementor-column>.elementor-element-overlay{right:0;bottom:0}.elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;left:-5px;top:0;height:100%}.elementor-column:last-of-type>.ui-resizable-e,.elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-element-settings{position:absolute;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-element-setting.elementor-editor-element-save{display:none}@media (min-width:1025px){.elementor-editor-element-edit{cursor:move}}.elementor-editor-section-settings{height:24px;top:1px;right:50%;-webkit-transform:translateX(50%) translateY(-100%);-ms-transform:translateX(50%) translateY(-100%);transform:translateX(50%) translateY(-100%);background-color:#71d7f7;-webkit-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0;-webkit-box-shadow:0 -2px 8px rgba(0,0,0,.05);box-shadow:0 -2px 8px rgba(0,0,0,.05)}.elementor-editor-section-settings i.eicon-handle{font-size:16px}.elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 5px 0 0;border-radius:0 5px 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{content:"";position:absolute;top:2px;border:solid transparent;border-left:solid #71d7f7;border-width:22px 0 0 12px;left:-webkit-calc(100% - 1px);left:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before{border-left-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:5px 0 0 0;border-radius:5px 0 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{content:"";position:absolute;top:2px;border:solid transparent;border-right:solid #71d7f7;border-width:22px 12px 0 0;right:-webkit-calc(100% - 1px);right:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after{border-right-color:#10bcf2}.elementor-section--handles-inside .elementor-editor-section-settings{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 0 5px 0;border-radius:0 0 5px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{top:0;border-width:0 0 22px 12px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 0 0 5px;border-radius:0 0 0 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{top:0;border-width:0 12px 22px 0}.elementor-editor-column-settings{top:-1px;right:-1px;-webkit-border-radius:0 0 0 3px;border-radius:0 0 0 3px;overflow:hidden}.elementor-editor-column-settings .elementor-editor-element-setting{background-color:#495157}.elementor-editor-column-settings .elementor-editor-element-setting:not(:hover){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-widget-settings{z-index:2;top:-1px;left:-1px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-border-radius:0 0 3px 0;border-radius:0 0 3px 0;overflow:hidden}.elementor-editor-widget-settings .elementor-editor-element-setting{background-color:#10bcf2}.elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover){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)}.elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.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-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-sortable-helper{position:absolute;-webkit-border-radius:3px;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-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.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-editor-content-only .elementor-first-add{display:none}.elementor-editor-content-only .elementor-section>.elementor-element-overlay{display:none}.elementor-editor-content-only .elementor-section>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section:hover>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-column>.elementor-element-overlay{display:none}.elementor-editor-content-only .elementor-column>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column:hover>.elementor-element-overlay:after{display:none}@media (min-width:1025px){.elementor-editor-content-only .elementor-editor-element-edit{cursor:pointer}}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-duration:.25s;animation-duration:.25s;opacity:.9;width:100%;-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}.elementor-section-placeholder{height:40px;-webkit-animation-name:placeholder-section;animation-name:placeholder-section}.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:placeholder-widget;animation-name:placeholder-widget}.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:placeholder-widget .5s;animation:placeholder-widget .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-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder{display:none}.elementor-add-section{all:initial;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:1160px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner{border:2px dashed #d5dadf;background-color:hsla(0,0%,100%,.5)}.elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset{display:none}.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}.elementor-add-section-inner{text-align:center;margin:20px;padding:40px 0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-add-section-area-button{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;height:40px;width:40px;color:#fff;font-size:16px;-webkit-border-radius:50%;border-radius:50%;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-add-new-section .elementor-add-section-area-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-add-section-area-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:#d30c5c}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-right:5px}.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:40px;top:40px;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;max-width:33.333%}.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;width:100%;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}#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]{-webkit-border-radius:3px 0 0 3px;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]{-webkit-border-radius:0 3px 3px 0;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-add-section-inline,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-empty-view,.elementor-editor-preview .elementor-widget-empty{display:none}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet{display:inherit;background:-webkit-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:-o-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:repeating-linear-gradient(125deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);border:1px solid rgba(0,0,0,.02)}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section>.elementor-element-overlay,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone.elementor-section>.elementor-element-overlay,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section>.elementor-element-overlay{background-color:#d5dadf;mix-blend-mode:color}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone.elementor-section:before,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before{content:"";display:block;position:absolute;top:0;left:0;width:100%;height:100%;background-color:hsla(0,0%,100%,.6);z-index:9997}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-column-wrap,[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-container,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone>.elementor-column-wrap,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone>.elementor-widget-container,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-column-wrap,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-container{-webkit-filter:opacity(.4) saturate(0);filter:opacity(.4) saturate(0)}assets/css/frontend.min.css000066600000330362152142641160011766 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;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{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:-webkit-calc(100vh - 32px);height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{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}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__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;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{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-templates-modal__header__logo__icon-wrapper{margin-right:10px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__logo i{font-size:10px}.elementor-templates-modal__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-templates-modal__header__item{position:relative;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;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:45px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;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-gradient-logo{background-image:-webkit-linear-gradient(225deg,#f2295b,#434363);background-image:-o-linear-gradient(225deg,#f2295b,#434363);background-image:linear-gradient(-135deg,#f2295b,#434363);display:inline-block;padding:.6em;-webkit-border-radius:.2em;border-radius:.2em}.elementor-gradient-logo i{color:#fff;display:block}.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;-webkit-border-radius:0;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,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.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:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-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:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@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:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}.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-bc-flex-widget .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-bc-flex-widget .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-bc-flex-widget .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{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap{position:relative;width:100%;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-content:flex-start;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.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 (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid .elementor-grid-item{word-break:break-word;min-width:0}.elementor-grid-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr);display:grid}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr);display:grid}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr);display:grid}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr);display:grid}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr);display:grid}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr);display:grid}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr);display:grid}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr);display:grid}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr);display:grid}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr);display:grid}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr);display:grid}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr);display:grid}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:768px) and (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}.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%;max-width: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%;max-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::-ms-input-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{appearance:none;-webkit-appearance:none;-moz-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:"\e92a";font-family:eicons;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-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.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-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.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;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-center .elementor-field-type-submit button,.elementor-button-align-end .elementor-field-type-submit button,.elementor-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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 button,.elementor-tablet-button-align-end .elementor-field-type-submit button,.elementor-tablet-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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 button,.elementor-mobile-button-align-end .elementor-field-type-submit button,.elementor-mobile-button-align-start .elementor-field-type-submit button{-webkit-flex-basis:initial;-ms-flex-preferred-size:initial;flex-basis:auto}.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:"\e90e";display:inline-block;font-family:eicons;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:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:0}.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-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-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.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-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.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:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.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-tab-title a{color:inherit}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{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-button-icon{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em}.elementor-button-text{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-webkit-order:15;-ms-flex-order:15;order:15}.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-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,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:right}.elementor-counter .elementor-counter-number-suffix{text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;color:#666;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-border-color:$gray-darkest;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon):not(.elementor-widget-divider--separator-type-pattern) .elementor-divider-separator{display:inline-block}.elementor-widget-divider .elementor-divider{line-height:0;font-size:0}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:100;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-border-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern .elementor-divider-separator:before{width:100%;min-height:var(--divider-pattern-height);background-image:var(--divider-pattern-url);-webkit-background-size:var(--divider-pattern-size) 100%;background-size:var(--divider-pattern-size) 100%;background-repeat:var(--divider-pattern-repeat)}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line_text .elementor-divider-separator{background-image:none}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.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-widget-google_maps iframe{height:300px}.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-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}@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{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-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-content{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;right:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.elementor-widget .elementor-icon-list-item a{width:100%}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget .elementor-icon-list-icon{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-widget .elementor-icon-list-icon i{width:1.25em}.elementor-widget .elementor-icon-list-icon svg{width:1em}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{right:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{right:0}}.elementor-widget-image{text-align:center}.elementor-widget-image .elementor-image>a,.elementor-widget-image .elementor-image figure>a{display:inline-block}.elementor-widget-image .elementor-image>a img[src$=".svg"],.elementor-widget-image .elementor-image figure>a img[src$=".svg"]{width:48px}.elementor-widget-image .elementor-image img{vertical-align:middle;display:inline-block}.elementor-widget-image .elementor-image.elementor-image-shape-circle{-webkit-border-radius:50%;border-radius:50%}.elementor-widget-image-box .elementor-image-box-content{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}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;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;height:30px;line-height:30px;-webkit-border-radius:2px;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;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;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-text{padding-left:10px}}.elementor-social-icons-wrapper{font-size:0}.elementor-social-icon{background-color:#818a91;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-android{background-color:#a4c639}.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-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{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-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.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-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.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-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.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:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.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-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;left:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{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-star-rating__title{margin-right:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-right:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-right:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-right:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.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.elementor-active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-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.elementor-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.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-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 #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;outline:none}.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.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-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 solid 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 solid solid none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-tabs .elementor-tab-mobile-title{display:none}}.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;color:inherit;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;color:inherit;display:block}.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;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.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-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}.elementor-toggle{text-align:left}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;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-widget-video .elementor-video{-o-object-fit:cover;object-fit:cover}.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}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.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:eicons;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:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.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:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.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:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";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 .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.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;-webkit-background-size:27px 44px;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:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.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 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;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-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{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;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{-webkit-border-radius:10px;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);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:-webkit-calc(50% - 15px);top:calc(50% - 15px)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:-webkit-calc(100% - 60px);width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.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:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 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 swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-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:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.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:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;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;width:15%;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header>i:first-of-type{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:67px;top:60px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;font-size:16px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{margin-right:10px;font-size:15px}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:0;right:15px;border:9px solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.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}.animated.reverse{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.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{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.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:-webkit-calc(100% + 1.3px);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)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}@media (max-width:767px){.elementor .elementor-hidden-phone{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:1025px){.elementor .elementor-hidden-desktop{display:none}}assets/css/admin.min.css000066600000067523152142641160011245 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;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:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success: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{-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-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;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-warning: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-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger: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-danger: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-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.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.elementor-button-go-pro{background-color:#d30c5c}.elementor-button i{margin-right:10px}#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e813";font-family:eicons;font-size:18px;margin-top:1px}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{font-weight:700}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover{color:#f43883}#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}#adminmenu #menu-posts-elementor_library .wp-menu-image:before{content:"\e8ff";font-family:eicons;font-size:18px}body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#f22074}.elementor-plugins-gopro{color:#d30c5c;text-shadow:1px 1px 1px #eee;font-weight:700}.e-logo-wrapper{display:inline-block;padding:.75em;background-image:-webkit-linear-gradient(225deg,#ef295a,#434363);background-image:-o-linear-gradient(225deg,#ef295a,#434363);background-image:linear-gradient(-135deg,#ef295a,#434363);-webkit-border-radius:7.5%;border-radius:7.5%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}#elementor-switch-mode{margin:15px 0}#elementor-editor-button,#elementor-switch-mode-button{outline:none;cursor:pointer}#elementor-editor-button i,#elementor-switch-mode-button i{margin-right:3px;font-size:125%;font-style:normal}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 #postdivrich{display:none!important}body.elementor-editor-active .block-editor-block-list__layout,body.elementor-editor-active .editor-block-list__layout,body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor{-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto}body.elementor-editor-active #elementor-editor{margin-bottom:50px}body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor{display:none}body .block-editor #elementor-switch-mode{margin:0 15px}body .block-editor #elementor-switch-mode .button{margin:2px;height:33px;font-size:13px;line-height:1}body .block-editor #elementor-switch-mode .button i{padding-right:5px}.elementor-button{font-size:13px;text-decoration:none;padding:15px 40px}#elementor-editor{height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor .elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;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:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}#elementor-editor .elementor-loader{-webkit-border-radius:7px;border-radius:7px;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}#elementor-editor .elementor-loader-boxes{height:100%;width:100%;position:relative}#elementor-editor .elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 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}#elementor-editor .elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}#elementor-go-to-edit-page-link{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;border:1px solid #ddd;background-color:#f7f7f7;text-decoration:none;position:relative;font-family:Sans-serif}#elementor-go-to-edit-page-link:hover{background-color:#fff}#elementor-go-to-edit-page-link:focus{-webkit-box-shadow:none;box-shadow:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button{display:none}#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.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 linear infinite;animation:rotation 1s linear infinite}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}.elementor-blank_state{padding:5em 0;margin:auto;max-width:520px;text-align:center;color:#6d7882;font-family:Roboto,sans-serif}.elementor-blank_state i{font-size:50px;color:#a4afb7}.elementor-blank_state h2{font-size:32px;font-weight:300;color:inherit;margin:40px 0 10px;line-height:1.2}.elementor-blank_state p{font-size:16px;font-weight:400;color:#a4afb7;margin-bottom:40px}.elementor-blank_state .elementor-button{display:inline-block}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e813";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}.elementor-settings-form-page:not(.elementor-active){display:none}._elementor_settings_update_time{display:none}#confirm_fa_migration_admin_modal .dialog-confirm-ok{color:#6d7882}body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"]{width:100%}.e-getting-started{max-width:900px;padding:2.5em 0;margin:auto;text-align:center}.e-getting-started__header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.e-getting-started__header .e-logo-wrapper{font-size:10px;margin-right:10px}.e-getting-started__title{padding:0 15px;font-weight:600;text-transform:uppercase;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}.e-getting-started__skip{border-left:1px solid #eee;font-size:16px;color:inherit}.e-getting-started__skip i{padding:15px}.e-getting-started__content{padding:50px}.e-getting-started__content h2{font-size:2em;margin-top:0}.e-getting-started__content--narrow{max-width:500px;margin:auto}.e-getting-started__video{margin:40px 0 60px}.e-getting-started__video iframe{-webkit-box-shadow:10px 10px 20px rgba(0,0,0,.15);box-shadow:10px 10px 20px rgba(0,0,0,.15)}.e-getting-started__actions .button-primary{margin-right:20px}.notice.elementor-message{padding:20px;border-left-color:#d30c5c}.notice.elementor-message .elementor-message-inner{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}.notice.elementor-message .elementor-message-icon{font-size:20px}.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-message-action{text-align:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-left:auto}.notice.elementor-message .elementor-message-action .elementor-button{background-color:#d30c5c;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-message-action .elementor-button i{margin-right:5px}.notice.elementor-message .elementor-message-action .elementor-button:hover{background-color:#a0124a}.notice.elementor-message .elementor-message-action .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)}.notice.elementor-message .elementor-message-action .elementor-link{padding-top:5px}.notice.elementor-message .elementor-message-actions{margin-top:10px}.notice.elementor-message .elementor-message-actions .button.button-primary{margin-right:5px}.notice.elementor-message-announcement{border-color:#d30c5c}.notice.elementor-message-announcement a{color:#d30c5c}@media (min-width:1200px){.elementor-message-action{padding-right:10px}}@media (max-width:600px){.notice.elementor-message{padding:20px}.notice.elementor-message .elementor-message-inner{display:block;text-align:center}.notice.elementor-message .elementor-message-inner .elementor-message-action,.notice.elementor-message .elementor-message-inner .elementor-message-content,.notice.elementor-message .elementor-message-inner .elementor-message-icon{display:block}.notice.elementor-message .elementor-message-inner .elementor-message-action{text-align:center}.notice.elementor-message .elementor-message-inner .elementor-message-icon{width:auto}.notice.elementor-message .elementor-message-inner .elementor-message-content{padding:10px 0}}.elementor-admin-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:left}.elementor-admin-alert a{color:inherit}.elementor-admin-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-admin-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-admin-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-admin-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}#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-section .widefat{white-space:pre}#elementor-system-info .elementor-system-info-section .elementor-log-entries{white-space:pre-wrap}#elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child{width:300px}#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}#elementor-system-info .elementor-warning td:first-child{border-left:3px solid #fcb92c}#elementor-system-info a.box-title-tool{font-size:80%;margin-left:15px;color:#818a91}#elementor-system-info a.box-title-tool:hover{text-decoration:underline}#elementor-system-info #elementor-usage-recalc{font-size:12px;color:#fff;background-color:#a4afb7;padding:4px 18px 5px;-webkit-border-radius:3px;border-radius:3px}@-webkit-keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes elementor-rotation{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-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;overflow:hidden}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#d30c5c;-webkit-border-radius:3px;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:elementor-rotation 2s linear infinite;animation:elementor-rotation 2s linear infinite}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .elementor-feedback-text{color:#b01b1b;padding:0}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .dialog-submit{display:none}#elementor-deactivate-feedback-dialog-header i{color:#d30c5c;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;line-height:1.6;display:none}#tab-fontawesome4_migration.elementor-active~p.submit,#tab-replace_url.elementor-active~p.submit{display:none}#elementor_replace_url>div,#elementor_rollback>div,#elementor_rollback_pro>div{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor_replace_url>div input,#elementor_replace_url>div select,#elementor_rollback>div input,#elementor_rollback>div select,#elementor_rollback_pro>div input,#elementor_rollback_pro>div select{margin-right:6px}#e-dashboard-overview .dashicons{vertical-align:middle;font-size:17px}#e-dashboard-overview .e-overview__header{display:table;width:100%;-webkit-box-shadow:0 5px 8px rgba(0,0,0,.05);box-shadow:0 5px 8px rgba(0,0,0,.05);margin:0 -12px 8px;padding:0 12px 12px}#e-dashboard-overview .e-overview__create,#e-dashboard-overview .e-overview__logo,#e-dashboard-overview .e-overview__versions{display:table-cell;vertical-align:middle}#e-dashboard-overview .e-overview__logo{width:30px}#e-dashboard-overview .e-overview__versions{padding:0 10px;font-size:.9em;line-height:1.5}#e-dashboard-overview .e-overview__version{display:block}#e-dashboard-overview .e-overview__create{text-align:right}#e-dashboard-overview .e-overview__post{margin-top:10px}#e-dashboard-overview .e-overview__post-link{display:inline-block}#e-dashboard-overview .e-overview__badge{background:#39b54a;color:#fff;font-size:.75em;padding:3px 6px;-webkit-border-radius:3px;border-radius:3px;text-transform:uppercase}#e-dashboard-overview .e-overview__post-description{margin:0 0 1.5em}#e-dashboard-overview .e-overview__recently-edited li{color:#72777c}#e-dashboard-overview .e-overview__feed{font-size:14px;font-weight:500}#e-dashboard-overview .e-overview__feed .e-overview__post-link{padding-bottom:5px}#e-dashboard-overview .e-overview__feed .e-overview__heading,#e-dashboard-overview .e-overview__recently-edited .e-overview__heading{font-weight:700;border-bottom:1px solid #eee;margin:0 -12px;padding:6px 12px}#e-dashboard-overview .e-overview__footer{margin:0 -12px -12px;padding:12px;border-top:1px solid #eee}#e-dashboard-overview .e-overview__footer ul{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;margin:0;padding:0}#e-dashboard-overview .e-overview__footer ul li{padding:0 10px;margin:0;border-left:1px solid #ddd}#e-dashboard-overview .e-overview__footer ul li:first-child{padding-left:0;border:none}#e-dashboard-overview .e-overview__go-pro a{color:#d30c5c;font-weight:500}.post-type-elementor_library #elementor-template-library-tabs-wrapper{padding-top:2em;margin-bottom:2em}.post-type-elementor_library th#taxonomy-elementor_library_category{width:110px}#elementor-new-template-modal .dialog-message{max-height:70vh}#elementor-new-template-dialog-content{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;height:100%;text-align:left;color:#6d7882}@media (max-width:1439px){#elementor-new-template-dialog-content{padding:0 50px}}@media (min-width:1440px){#elementor-new-template-dialog-content{padding:0 120px}}#elementor-new-template__description{width:35%;max-width:300px;padding-right:100px}#elementor-new-template__description__title{font-size:30px;color:#556068}#elementor-new-template__description__title span{font-weight:700}#elementor-new-template__description__content{font-size:16px;padding:30px 0}#elementor-new-template__take_a_tour{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;font-size:15px}#elementor-new-template__take_a_tour i{color:#f2295b;font-size:30px}#elementor-new-template__take_a_tour a{color:#6d7882;padding-left:10px;text-decoration:none;font-weight:500}#elementor-new-template__form{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:440px;padding:55px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 30px 0 rgba(0,0,0,.08);box-shadow:0 2px 30px 0 rgba(0,0,0,.08)}#elementor-new-template__form__title{font-size:23px;color:#556068}#elementor-new-template__form__template-type.elementor-form-field__select{max-width:none}#elementor-new-template__form .elementor-form-field__label{display:block;margin:25px 0 7px;font-size:14px;line-height:1}#elementor-new-template__form .elementor-form-field input,#elementor-new-template__form .elementor-form-field select{width:100%;height:50px;padding:10px;font-size:14px;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:3px;border-radius:3px;background:none;color:#495157;border:1px solid;outline:none}#elementor-new-template__form .elementor-form-field input:not(:focus),#elementor-new-template__form .elementor-form-field select:not(:focus){border-color:#d5dadf}#elementor-new-template__form .elementor-form-field input:focus,#elementor-new-template__form .elementor-form-field select:focus{border-color:#a4afb7}#elementor-new-template__form .elementor-form-field__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}#elementor-new-template__form .elementor-form-field__select__wrapper{position:relative}#elementor-new-template__form .elementor-form-field__select__wrapper:after{font-family:eicons;content:"\e8ad";position:absolute;top:50%;right:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-new-template__form__submit{width:100%;height:50px;margin-top:25px}@media (max-width:1024px){#elementor-new-template__description{max-width:250px;padding-right:30px}}@media (max-width:767px){#elementor-new-template__description{display:none}}#elementor-role-manager{max-width:500px;margin-top:50px}#elementor-role-manager h3{color:#6d7882;font-weight:400;font-size:22px}#elementor-role-manager .elementor-settings-form-page{padding:0}#elementor-role-manager .elementor-role-row{background:#fff;color:#6d7882;margin-bottom:2px}#elementor-role-manager .elementor-role-row .elementor-role-label{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:15px 20px;font-weight:500;cursor:pointer}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name{padding-right:20px}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle{text-align:right;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator{color:#a4afb7}#elementor-role-manager .elementor-role-row .elementor-role-controls{background-color:#f7f7f7;padding:20px 20px 5px}#elementor-role-manager .elementor-role-row .elementor-role-controls>div{margin-bottom:15px}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc{font-weight:500;font-style:italic}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link{text-align:right;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area{color:#c2cbd2;cursor:pointer}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item>i{color:#6d7882}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close{border:none}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again{text-transform:uppercase;font-weight:700;font-size:12px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-beta-tester-modal .dialog-lightbox-widget-content{max-width:500px;height:auto}#elementor-beta-tester-modal .dialog-lightbox-message{padding:40px;height:300px;background-color:#fff}#elementor-beta-tester-form__caption{font-weight:700;font-size:20px;color:#495157}#elementor-beta-tester-form__description{font-size:15px;color:#6d7882;margin-top:10px}#elementor-beta-tester-form__input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:30px}#elementor-beta-tester-form__input-wrapper .elementor-button{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#elementor-beta-tester-form__email{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;border:1px solid #d5dadf;border-right:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;margin:0;padding:10px;height:50px}#elementor-beta-tester-form__terms{margin-top:40px;font-size:11px;color:#a4afb7}assets/css/common-rtl.css000066600000034422152142641160011452 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ .dialog-widget-content { background-color: #fff; position: absolute; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2); overflow: hidden; } .dialog-message { font-size: 12px; line-height: 1.5; -webkit-box-sizing: border-box; box-sizing: border-box; } .dialog-type-lightbox { position: fixed; height: 100%; width: 100%; bottom: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 9999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .dialog-type-lightbox .dialog-widget-content { margin: auto; width: 375px; } .dialog-type-lightbox .dialog-header { font-size: 15px; color: #495157; padding: 30px 0 10px; font-weight: 500; } .dialog-type-lightbox .dialog-message { padding: 0 30px 30px; min-height: 50px; } .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header, .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message { text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper { border-top: 1px solid #e6e9ec; text-align: center; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; width: 50%; border: none; background: none; color: #6d7882; font-size: 15px; cursor: pointer; padding: 13px 0; outline: 0; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover { background-color: #f4f6f7; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok { color: #b01b1b; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over { color: #39b54a; } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active { background-color: rgba(230, 233, 236, 0.5); } .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner { border: 0; } .dialog-close-button { cursor: pointer; position: absolute; margin-top: 15px; left: 15px; font-size: 15px; line-height: 1; } .dialog-close-button:not(:hover) { opacity: .4; } .dialog-alert-widget .dialog-buttons-wrapper > button { width: 100%; } .dialog-confirm-widget .dialog-button:first-child { border-left: 1px solid #e6e9ec; } .dialog-prevent-scroll { overflow: hidden; max-height: 100vh; } @media (min-width: 1024px) { body.admin-bar .dialog-lightbox-widget { height: -webkit-calc(100vh - 32px); height: calc(100vh - 32px); } } @media (max-width: 1024px) { body.admin-bar .dialog-type-lightbox { position: -webkit-sticky; position: sticky; height: 100vh; } } .elementor-aspect-ratio-219 .elementor-fit-aspect-ratio { padding-bottom: 42.8571%; } .elementor-aspect-ratio-169 .elementor-fit-aspect-ratio { padding-bottom: 56.25%; } .elementor-aspect-ratio-43 .elementor-fit-aspect-ratio { padding-bottom: 75%; } .elementor-aspect-ratio-32 .elementor-fit-aspect-ratio { padding-bottom: 66.6666%; } .elementor-aspect-ratio-11 .elementor-fit-aspect-ratio { padding-bottom: 100%; } .elementor-aspect-ratio-916 .elementor-fit-aspect-ratio { padding-bottom: 177.8%; } .elementor-fit-aspect-ratio { position: relative; height: 0; } .elementor-fit-aspect-ratio iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; background-color: #000; } .elementor-fit-aspect-ratio video { width: 100%; } .flatpickr-calendar { width: 280px; } .flatpickr-calendar .flatpickr-current-month span.cur-month { font-weight: 300; } .flatpickr-calendar .dayContainer { width: 280px; min-width: 280px; max-width: 280px; } .flatpickr-calendar .flatpickr-days { width: 280px; } .flatpickr-calendar .flatpickr-day { max-width: 37px; height: 37px; line-height: 37px; } .elementor-templates-modal .dialog-widget-content { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; background-color: #f1f3f5; width: 100%; } @media (max-width: 1439px) { .elementor-templates-modal .dialog-widget-content { max-width: 990px; } } @media (min-width: 1440px) { .elementor-templates-modal .dialog-widget-content { max-width: 1200px; } } .elementor-templates-modal .dialog-header { padding: 0; background-color: #fff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; z-index: 1; } .elementor-templates-modal .dialog-buttons-wrapper { background-color: #fff; border: none; display: none; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; padding: 5px; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); position: relative; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button { height: 40px; margin-right: 5px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success { padding: 12px 36px; color: #fff; width: initial; font-size: 15px; } .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover { background-color: #39b54a; } .elementor-templates-modal .dialog-message { height: 750px; max-height: 85vh; overflow: auto; padding-top: 25px; } .elementor-templates-modal .dialog-content { height: 100%; } .elementor-templates-modal .dialog-loading { display: none; } .elementor-templates-modal__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; height: 50px; } .elementor-templates-modal__header__logo { line-height: 1; text-transform: uppercase; font-weight: bold; cursor: pointer; } .elementor-templates-modal__header__logo-area { text-align: right; padding-right: 15px; } .elementor-templates-modal__header__logo-area > * { 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-templates-modal__header__logo__icon-wrapper { margin-left: 10px; } .elementor-templates-modal__header__logo__title { padding-top: 2px; } .elementor-templates-modal__header__logo i { font-size: 10px; } .elementor-templates-modal__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-templates-modal__header__item { position: relative; 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; -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-templates-modal__header__item > i { font-size: 20px; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; cursor: pointer; } .elementor-templates-modal__header__item > i:not(:hover) { color: #a4afb7; } .elementor-templates-modal__header__close--normal { width: 45px; border-right: 1px solid #e6e9ec; } .elementor-templates-modal__header__close--normal i { font-size: 18px; } .elementor-templates-modal__header__close--skip { padding: 10px; padding-right: 20px; margin-left: 10px; color: #fff; background-color: #a4afb7; font-size: 11px; font-weight: normal; line-height: 1; text-transform: uppercase; -webkit-border-radius: 2px; border-radius: 2px; cursor: pointer; } .elementor-templates-modal__header__close--skip > i { font-size: inherit; padding-right: 10px; margin-right: 15px; border-right: 1px solid; } .elementor-templates-modal__header__close--skip > i:not(:hover) { color: #fff; } .elementor-templates-modal__sidebar { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 25%; background-color: rgba(255, 255, 255, 0.3); } .elementor-templates-modal__content { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); } .elementor-hidden { display: none; } .elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible { position: absolute; top: -10000em; 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-gradient-logo { background-image: -webkit-linear-gradient(225deg, #f2295b, #434363); background-image: -o-linear-gradient(225deg, #f2295b, #434363); background-image: linear-gradient(-135deg, #f2295b, #434363); display: inline-block; padding: 0.6em; -webkit-border-radius: 0.2em; border-radius: 0.2em; } .elementor-gradient-logo i { color: #fff; display: block; } #elementor-finder__modal { background: none; } #elementor-finder__modal .dialog-widget-content { width: 650px; max-width: 98%; top: 18vh; left: -webkit-calc( 50% - 650px / 2); left: calc( 50% - 650px / 2); } #elementor-finder__modal .dialog-message { height: initial; min-height: 0; padding: 0; text-align: right; } #elementor-finder__search { padding: 14px 15px 14px 21px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); } #elementor-finder__search i { font-size: 16px; color: #a4afb7; font-weight: bold; margin-left: 15px; } #elementor-finder__search__input { border: none; background: none; outline: none; padding: 0; margin: 0; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; font-size: 14px; color: #495157; -webkit-box-shadow: none; box-shadow: none; } #elementor-finder__search__input::-webkit-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input:-ms-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input::-ms-input-placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__search__input::placeholder { color: #a4afb7; font-style: italic; font-weight: 300; } #elementor-finder__results { max-height: 50vh; overflow: auto; } #elementor-finder__no-results { display: none; padding: 20px; color: #a4afb7; } .elementor-finder__results__category { position: relative; } .elementor-finder__results__category__title { padding: 5px 25px; color: #6d7882; background-color: #e6e9ec; font-size: 9px; text-transform: uppercase; } .elementor-finder__results__category--dynamic .elementor-finder__results__category__items { min-height: 26px; } .elementor-finder__results__category .eicon-loading { display: none; position: absolute; left: 10px; top: 30px; color: #71d7f7; font-size: 14px; } .elementor-finder__results__item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-finder__results__item a { text-decoration: none; -webkit-box-shadow: none; box-shadow: none; outline: none; } .elementor-finder__results__item.elementor-active { background-color: #71d7f7; -webkit-box-shadow: none; box-shadow: none; outline: none; } .elementor-finder__results__item.elementor-active * { color: #fff; } .elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions { display: none; } .elementor-finder__results__item__link { 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; height: 35px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-finder__results__item__icon { width: 60px; text-align: center; color: #6d7882; font-size: 17px; } .elementor-finder__results__item__title { color: #6d7882; font-size: 13px; } .elementor-finder__results__item__description { margin-right: 5px; color: #a4afb7; font-style: italic; } .elementor-finder__results__item__actions { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-finder__results__item__action { 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; height: 100%; width: 35px; } .elementor-finder__results__item__action:hover { background-color: rgba(0, 0, 0, 0.07); } /*# sourceMappingURL=common-rtl.css.map */assets/css/editor-rtl.css000066600000522274152142641160011457 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8"; .elementor-control-unit-1 { width: 27px; } .elementor-control-unit-2 { width: 54px; } .elementor-control-unit-3 { width: 81px; } .elementor-control-unit-4 { width: 108px; } .elementor-control-unit-5 { width: 135px; } *, :before, :after { 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 { text-decoration: none; } body { color: #6d7882; font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 13px; font-weight: normal; line-height: 1; text-decoration: none; text-transform: none; overflow: hidden; } body:after { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 0; background-color: #71d7f7; -webkit-transition: width .5s; -o-transition: width .5s; transition: width .5s; } body a { color: #71d7f7; } body a:hover { color: #D30C5C; } 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-mode-switcher-preview .eicon:before { content: ""; } body.elementor-editor-preview #elementor-preview { left: 0; } body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before { content: ""; } body.elementor-navigator--dock-hint:after { width: 30px; } #elementor-panel:not(.ui-resizable-resizing), #elementor-preview:not(.ui-resizable-resizing) { -webkit-transition: right 0.5s, width 0.5s; -o-transition: right 0.5s, width 0.5s; transition: right 0.5s, width 0.5s; } #elementor-loading { position: fixed; top: 0; left: 0; bottom: 0; right: 0; background: #f1f3f5; z-index: 9999; } #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-container { width: 100% !important; outline: none; z-index: 9999; } .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered { color: #6d7882; } .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear { display: none; } .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice { line-height: 1.5; font-size: 0.9em; border: none; -webkit-border-radius: 0; border-radius: 0; } .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single, .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple { border-color: #d5dadf; } .select2-container.select2-container--open .select2-selection--single, .select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single, .select2-container.select2-container--focus .select2-selection--multiple { border-color: #a4afb7; } .select2-selection { outline: none; } .select2-selection--single { height: 27px; } .select2-selection__rendered { line-height: 27px; } .select2-selection__arrow { height: 27px; top: 0; } .select2-results__option[aria-selected=true] { color: #495157; } .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) { background-color: initial; } .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-header { color: #6d7882; } #elementor-flexbox-attention-dialog .dialog-cancel { color: #39b54a; } #elementor-flexbox-attention-dialog .dialog-ok { color: #6d7882; } .elementor-nerd-box { padding: 30px; text-align: center; } .elementor-nerd-box-icon { width: 100px; margin-right: 10px; } .elementor-nerd-box-title { margin-top: 20px; font-size: 16px; font-weight: bold; line-height: 1.4; } .elementor-nerd-box-message { margin-top: 5px; line-height: 1.8; font-size: 11px; } .elementor-nerd-box .elementor-button.elementor-nerd-box-link { background-color: #D30C5C; color: #ffffff; padding: 7px 25px; margin-top: 20px; -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1); box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1); -webkit-transition: .5s; -o-transition: .5s; transition: .5s; } .elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover { background-color: #f22074; } .eicon-nerd:hover:before { content: '\e8b7'; } .eicon-nerd:active:before { content: '\e8b6'; } .elementor-loader-wrapper { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 300px; 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: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-loader { -webkit-border-radius: 7px; border-radius: 7px; padding: 40px; height: 150px; width: 150px; background-color: rgba(255, 255, 255, 0.9); -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); } .elementor-loader-boxes { height: 100%; width: 100%; position: relative; } .elementor-loader-box { position: absolute; background-color: #d5dadf; -webkit-animation: load 1.8s linear infinite; animation: load 1.8s linear infinite; } .elementor-loader-box:nth-of-type(1) { width: 20%; height: 100%; left: 0; top: 0; } .elementor-loader-box:not(:nth-of-type(1)) { right: 0; height: 20%; width: 60%; } .elementor-loader-box:nth-of-type(2) { top: 0; -webkit-animation-delay: -0.45s; animation-delay: -0.45s; } .elementor-loader-box:nth-of-type(3) { top: 40%; -webkit-animation-delay: -0.9s; animation-delay: -0.9s; } .elementor-loader-box:nth-of-type(4) { bottom: 0; -webkit-animation-delay: -1.35s; animation-delay: -1.35s; } .elementor-loading-title { color: #a4afb7; text-align: center; text-transform: uppercase; margin-top: 30px; letter-spacing: 7px; text-indent: 7px; font-size: 10px; width: 100%; } .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-weight: 500; text-transform: uppercase; outline: none; border: none; -webkit-border-radius: 3px; 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: .3s; -o-transition-duration: .3s; transition-duration: .3s; } .elementor-button:hover { border: none; } .elementor-button:not([disabled]) { cursor: pointer; } .elementor-button:not(.elementor-button-state) .elementor-state-icon { display: none; } .elementor-button.elementor-button-success { color: #fff; } .elementor-button.elementor-button-success[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-success:not([disabled]) { background-color: #39b54a; } .elementor-button.elementor-button-success:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-success:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-warning { background-color: #a4afb7; color: #fff; } .elementor-button.elementor-button-warning[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-warning:not([disabled]):hover { background-color: #b01b1b; opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-warning:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-danger { background-color: #d72b3f; color: #fff; } .elementor-button.elementor-button-danger[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-danger:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-danger:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .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; padding: 7px 21px; } .elementor-button.elementor-button-default:hover { background-color: #6d7882; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-default:active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-default:visited { color: #fff; } .elementor-button.elementor-button-go-pro { background-color: #D30C5C; } .elementor-button i { margin-left: 10px; } input, select, textarea, .elementor-input-style { -webkit-border-radius: 3px; border-radius: 3px; font-size: 12px; width: 100%; background: none; -webkit-box-shadow: none; box-shadow: none; color: #6d7882; border: 1px solid; outline: none; } input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) { border-color: #d5dadf; } input:focus, input:focus + .elementor-control-dynamic-switcher, select:focus, select:focus + .elementor-control-dynamic-switcher, textarea:focus, textarea:focus + .elementor-control-dynamic-switcher, .elementor-input-style:focus, .elementor-input-style:focus + .elementor-control-dynamic-switcher { border-color: #a4afb7; } input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .elementor-input-style::-webkit-input-placeholder { color: #a4afb7; } input:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder, .elementor-input-style:-ms-input-placeholder { color: #a4afb7; } input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder, .elementor-input-style::-ms-input-placeholder { color: #a4afb7; } input::placeholder, select::placeholder, textarea::placeholder, .elementor-input-style::placeholder { color: #a4afb7; } .elementor-error input, .elementor-error select, .elementor-error textarea { border-color: #b01b1b; } input { min-width: 0; } input, textarea, .elementor-input-style { padding: 5px; } textarea, .elementor-input-style { resize: vertical; } input[type="checkbox"], input[type="radio"] { height: auto; width: auto; } input[disabled] { background-color: #e6e9ec; cursor: not-allowed; opacity: 1; } select { outline: none; height: 27px; } /* * Container style */ .ps { overflow: hidden !important; overflow-anchor: none; -ms-touch-action: auto; touch-action: auto; } /* * Scrollbar rail styles */ .ps__rail-y { display: none; 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; width: 15px; /* there must be 'right' or 'left' for ps__rail-y */ right: 0; left: initial !important; /* please don't change 'position' */ position: absolute; } .ps--active-y > .ps__rail-y { display: block; background-color: transparent; } .ps:hover > .ps__rail-y, .ps--focus > .ps__rail-y, .ps--scrolling-y > .ps__rail-y { opacity: 0.6; } .ps .ps__rail-y:hover, .ps .ps__rail-y:focus, .ps .ps__rail-y.ps--clicking { opacity: 0.9; } .ps__thumb-y { background-color: #aaa; -webkit-border-radius: 6px; border-radius: 6px; -webkit-transition: background-color .2s linear, width .2s ease-in-out; -o-transition: background-color .2s linear, width .2s ease-in-out; transition: background-color .2s linear, width .2s ease-in-out; width: 6px; /* there must be 'right' for ps__thumb-y */ right: 2px; /* please don't change 'position' */ position: absolute; } .ps__rail-y:hover > .ps__thumb-y, .ps__rail-y:focus > .ps__thumb-y, .ps__rail-y.ps--clicking .ps__thumb-y { background-color: #999; width: 6px; } /* Make clicks pass-through */ #nprogress { pointer-events: none; } #nprogress .bar { background: #39b54a; position: fixed; z-index: 1031; top: 0; left: 0; width: 100%; height: 2px; } /* Fancy blur effect */ #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.0; -webkit-transform: rotate(3deg) translate(0px, -4px); -ms-transform: rotate(3deg) translate(0px, -4px); transform: rotate(3deg) translate(0px, -4px); } /* Remove these to get rid of the spinner */ #nprogress .spinner { display: none; position: fixed; z-index: 1031; top: 15px; right: 15px; } #nprogress .spinner-icon { width: 18px; height: 18px; -webkit-box-sizing: border-box; box-sizing: border-box; border: solid 2px transparent; border-top-color: #39b54a; border-left-color: #39b54a; -webkit-border-radius: 50%; border-radius: 50%; -webkit-animation: nprogress-spinner 400ms linear infinite; animation: nprogress-spinner 400ms linear infinite; } .nprogress-custom-parent { overflow: hidden; position: relative; } .nprogress-custom-parent #nprogress .spinner, .nprogress-custom-parent #nprogress .bar { position: absolute; } @-webkit-keyframes nprogress-spinner { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes nprogress-spinner { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } #nprogress .bar, #nprogress .spinner { z-index: 100000; } .elementor-panel { position: fixed; height: 100%; top: 0; bottom: 0; overflow: visible; background-color: #e6e9ec; z-index: 1; font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 13px; } .elementor-editor-active .elementor-panel { right: 0; } @media (max-width: 1439px) { .elementor-editor-preview .elementor-panel { right: -280px; } } @media (min-width: 1440px) { .elementor-editor-preview .elementor-panel { right: -300px; } } .elementor-editor-preview .elementor-panel > .ui-resizable-e, .elementor-editor-preview .elementor-panel > .ui-resizable-w { display: none; } @media (max-width: 1439px) { .elementor-panel { width: 280px; } } @media (min-width: 1440px) { .elementor-panel { width: 300px; } } .elementor-panel .ps-scrollbar-y-rail { z-index: 2; } .elementor-panel ::-moz-selection { background: #5bc0de; color: #ffffff; } .elementor-panel ::selection { background: #5bc0de; color: #ffffff; } .elementor-panel a { color: #D30C5C; } .elementor-panel h1, .elementor-panel h2, .elementor-panel h3, .elementor-panel h4, .elementor-panel h5, .elementor-panel h6 { font-size: 100%; font-weight: normal; } .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-box { margin-top: 10px; background-color: #fff; } .elementor-panel .elementor-panel-box-content { padding: 20px 20px 10px; } .elementor-panel .elementor-button { display: inline-block; } .elementor-panel .elementor-panel-alert { background-color: #fcfcfc; padding: 15px; border-right: 3px solid transparent; position: relative; font-size: 12px; font-weight: 300; font-style: italic; line-height: 1.5; text-align: right; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); } .elementor-panel .elementor-panel-alert a { color: inherit; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-info { border-color: #71d7f7; background-color: #f3fcff; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-success { border-color: #39b54a; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-warning { border-color: #fcb92c; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-danger { border-color: #d72b3f; } .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; -webkit-border-radius: .25em; 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-descriptor, .elementor-panel .elementor-control-field-description { font-size: 11px; font-style: italic; line-height: 1.4; color: #a4afb7; } .elementor-panel .elementor-controls-popover { display: none; position: absolute; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; left: 0; right: 0; margin: -4px auto 5px; padding-top: 15px; width: 90%; z-index: 10000; background-color: #fff; } .elementor-panel .elementor-controls-popover:before { content: ''; position: absolute; top: -16px; left: 22px; border: 8px solid transparent; border-bottom-color: #fff; } .elementor-panel .elementor-controls-popover div.elementor-control { background-color: transparent; } .elementor-panel .elementor-controls-popover div.elementor-control:before { content: none; } .elementor-panel #elementor-controls .pojo-widget-button-collapse { display: none; } .elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-header { display: table; height: 40px; width: 100%; background-color: #D30C5C; 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 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar { font-size: 18px; } .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-category { position: relative; } .elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title { padding-top: 14px; } .elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before { -webkit-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); } .elementor-panel .elementor-panel-category:not(.elementor-active):after { content: ''; position: absolute; left: 15px; right: 15px; bottom: 0; height: 8px; background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.03)), to(transparent)); background: -webkit-linear-gradient(rgba(0, 0, 0, 0.03), transparent); background: -o-linear-gradient(rgba(0, 0, 0, 0.03), transparent); background: linear-gradient(rgba(0, 0, 0, 0.03), transparent); -webkit-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); } .elementor-panel .elementor-panel-category-title { margin: 0 15px; padding: 20px 0; position: relative; text-transform: uppercase; font-size: 11px; cursor: pointer; } .elementor-panel .elementor-panel-category-title:before { content: ""; font-family: eicons; position: absolute; left: 0; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; -o-transition: transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; } .elementor-panel .elementor-panel-category-items { overflow: hidden; padding: 0 5px; display: none; } .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, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); } .elementor-panel .elementor-panel-scheme-buttons .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 11px; font-weight: 400; } .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; } .elementor-panel .elementor-panel-scheme-reset .elementor-button, .elementor-panel .elementor-panel-scheme-discard .elementor-button { color: #a4afb7; background: none; } .elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items { position: relative; display: grid; grid-template-columns: repeat(4, 27px); -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .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 select, .elementor-panel .elementor-panel-scheme-typography-item-value input { width: 100%; } .elementor-panel .elementor-panel-scheme-item: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; -webkit-border-radius: 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 { color: #39b54a; } .elementor-panel #elementor-panel-schemes-disabled a:hover { text-decoration: underline; } .elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-page-menu { padding: 25px 15px; } .elementor-panel .elementor-panel-menu-group-title { text-transform: uppercase; font-size: 11px; } .elementor-panel .elementor-panel-menu-items { margin: 15px 0 25px; -webkit-border-radius: 5px; border-radius: 5px; overflow: hidden; } .elementor-panel .elementor-panel-menu-item { display: table; width: 100%; height: 40px; cursor: pointer; margin-bottom: 1px; background-color: #fff; } .elementor-panel .elementor-panel-menu-item:hover { background-color: rgba(255, 255, 255, 0.8); } .elementor-panel .elementor-panel-menu-item > * { display: table-cell; vertical-align: middle; } .elementor-panel .elementor-panel-menu-item-icon { text-align: center; width: 50px; color: #a4afb7; } .elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link { font-size: 18px; } .elementor-panel .elementor-panel-menu-item-title { font-weight: 500; } .elementor-panel .elementor-panel-menu-item-title > span { color: #39b54a; } .elementor-panel .elementor-panel-menu-item a { color: #6d7882; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard { background-color: #0085ba; color: #fff; text-transform: uppercase; font-size: 12px; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover { background-color: #0073a1; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title, .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon { color: #fff; } .elementor-panel .elementor-control.elementor-control-clear_page { background-color: transparent; } .elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html { 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: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-panel .elementor-panel-navigation { background-color: #ffffff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 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.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff)); background-image: -webkit-linear-gradient(top, #f1f3f5, #fff); background-image: -o-linear-gradient(top, #f1f3f5, #fff); background-image: linear-gradient(to bottom, #f1f3f5, #fff); border-bottom: 3px solid #D30C5C; } .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: eicons; font-size: 16px; display: block; margin-bottom: 6px; } .elementor-panel .elementor-tab-control-content a:before { content: '\e92c'; } .elementor-panel .elementor-tab-control-style a:before { content: '\e921'; } .elementor-panel .elementor-tab-control-advanced a:before, .elementor-panel .elementor-tab-control-settings a:before, .elementor-panel .elementor-tab-control-general_style a:before { content: '\e916'; } .elementor-panel .elementor-tab-control-responsive a:before { content: '\e885'; } .elementor-panel .elementor-tab-control-layout a:before, .elementor-panel .elementor-tab-control-column a:before { content: '\e899'; } .elementor-panel .elementor-tab-control-lightbox a:before { content: '\e922'; } .elementor-panel #elementor-panel__editor__help { padding: 50px 25px; 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-panel__editor__help__link { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; color: #6d7882; font-size: 12px; font-weight: 500; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel #elementor-panel__editor__help__link i { padding: 0 5px; color: #a4afb7; font-size: 18px; position: relative; } .elementor-panel #elementor-panel__editor__help__link i:after { content: ''; position: absolute; height: 13px; width: 13px; top: 3px; bottom: 0; right: 8px; left: 0; -webkit-border-radius: 50%; border-radius: 50%; z-index: -1; } .elementor-panel #elementor-panel__editor__help__link:hover { color: #495157; } .elementor-panel #elementor-panel__editor__help__link:hover i { color: #71d7f7; } .elementor-panel #elementor-panel__editor__help__link:hover i:before { content: '\e941'; } .elementor-panel #elementor-panel__editor__help__link:hover i:after { background: #fff; } .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 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update { border-left: 1px solid #2d8739; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i { margin-left: 5px; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options { float: right; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i { margin: auto; } .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, 0.1); box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1); cursor: default; z-index: 10000; } .elementor-panel .elementor-panel-footer-sub-menu { -webkit-border-radius: 5px; 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.elementor-disabled .elementor-icon, .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title { color: #6d7882; } .elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child) { margin-bottom: 1px; } .elementor-panel .elementor-panel-footer-sub-menu-item:hover { background-color: rgba(0, 0, 0, 0.2); } .elementor-panel .elementor-panel-footer-sub-menu-item.active { background-color: rgba(0, 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-responsive > i { display: block; height: 100%; line-height: 40px; } .elementor-panel #elementor-panel-footer-saver-publish { width: 80px; } .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i { margin-left: 0; } .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label { display: none; } .elementor-panel #elementor-panel-footer-saver-options { width: 35px; border-right: 1px solid #495157; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper { font-size: 11px; font-style: italic; color: #a4afb7; padding: 5px 0 15px; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon { display: none; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time { border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; cursor: pointer; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover { border-bottom-color: inherit; } .elementor-panel .elementor-disabled { cursor: default; } .elementor-panel #elementor-panel-saver-button-preview a { color: #a4afb7; } .elementor-panel #elementor-panel-saver-button-publish, .elementor-panel #elementor-panel-saver-button-save-options { font-size: 11px; text-transform: uppercase; height: 26px; } .elementor-panel #elementor-panel-saver-button-publish.elementor-disabled, .elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled { background-color: #556068; color: #a4afb7; } .elementor-panel #elementor-panel-saver-button-publish { width: 100%; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-panel #elementor-panel-saver-button-save-options { width: 25px; } #elementor-panel-elements-navigation .elementor-panel-navigation-tab { text-align: center; padding: 10px 0; font-size: 11px; text-transform: uppercase; cursor: pointer; } #elementor-panel-elements { overflow: hidden; padding: 0 5px; } #elementor-panel-state-loading { display: none; } body.elementor-panel-loading #elementor-panel-state-loading { position: absolute; top: 0; left: 0; height: 100%; width: 100%; 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; background-color: rgba(255, 255, 255, 0.5); z-index: 1; } #elementor-panel-state-loading .eicon-loading { font-size: 25px; color: #71d7f7; } #elementor-panel-elements-search-wrapper { position: relative; margin: 10px 10px 5px; } #elementor-panel-elements-search-input { background-color: rgba(255, 255, 255, 0.7); font-size: 11px; padding: 10px 29px 10px 10px; font-style: italic; color: #a4afb7; border: none; -webkit-transition: all 1s; -o-transition: all 1s; transition: all 1s; -webkit-border-radius: 3px; border-radius: 3px; appearance: none; -webkit-appearance: none; -moz-appearance: none; } #elementor-panel-elements-search-input + i { position: absolute; right: 10px; top: 50%; color: #a4afb7; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-panel-elements-search-input:focus { background-color: white; padding-left: 15px; } .elementor-panel .elementor-element { -webkit-border-radius: 3px; border-radius: 3px; background-color: #fff; cursor: move; position: relative; } .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--promotion .elementor-element { cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .elementor-panel .elementor-element .icon, .elementor-panel .elementor-element .title { color: #556068; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-element:hover { -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); } .elementor-panel .elementor-element:hover .icon, .elementor-panel .elementor-element:hover .title { color: #D30C5C; } .elementor-panel .elementor-element .icon { font-size: 28px; padding-top: 15px; } .elementor-panel .elementor-element .elementor-element-title-wrapper { display: table; width: 100%; } .elementor-panel .elementor-element .title { font-size: 11px; display: table-cell; vertical-align: middle; height: 40px; } .elementor-panel .elementor-element > .eicon-lock { position: absolute; top: 5px; left: 5px; color: #e6e9ec; } #elementor-element--promotion__dialog { position: absolute; width: 300px; z-index: 1; background-color: #fff; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; } #elementor-element--promotion__dialog:after { content: ''; position: absolute; top: 15px; left: 100%; -webkit-transform: scaleY(0.7); -ms-transform: scaleY(0.7); transform: scaleY(0.7); border: 10px solid transparent; border-left-color: #fff; } #elementor-element--promotion__dialog__title { font-size: 14px; } #elementor-element--promotion__dialog .dialog-header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding: 20px; color: #495157; border-bottom: 1px solid #e6e9ec; font-weight: 500; } #elementor-element--promotion__dialog .dialog-header i { color: #a4afb7; } #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; margin-right: 10px; font-size: 14px; } #elementor-element--promotion__dialog .dialog-header .eicon-close { cursor: pointer; } #elementor-element--promotion__dialog .dialog-message { padding: 20px; } #elementor-element--promotion__dialog .dialog-buttons-wrapper { padding: 0 20px 20px 20px; } #elementor-element--promotion__dialog .dialog-button { width: 100%; padding: 6.5px; font-size: 12px; } #elementor-element--promotion__dialog .dialog-button::-moz-focus-inner { border: 0; } #elementor-panel-inner { position: relative; height: 100%; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); } #elementor-panel-content-wrapper { position: absolute; bottom: 40px; top: 40px; left: 0; width: 100%; } .elementor-panel-container { clear: both; padding-left: 15px; padding-right: 15px; } .media-modal.wp-core-ui input { width: auto; } .media-modal.wp-core-ui select { width: initial; } .media-modal.wp-core-ui fieldset { padding: 0; border: 0; } .media-modal.wp-core-ui .wp-clearfix::after { content: ''; display: table; clear: both; } #elementor-panel-get-pro-elements .elementor-nerd-box-message { margin-top: 10px; } #elementor-panel-get-pro-elements .elementor-nerd-box-icon { margin-top: 20px; } .elementor-control { background-color: #fff; position: relative; padding: 0 20px 15px; } .elementor-control a { font-weight: 500; text-decoration: none; border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; } .elementor-control a:hover { border-bottom-color: inherit; } .elementor-control .elementor-control-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } .elementor-control .elementor-control-title { font-size: 12px; line-height: 1; margin-left: 5px; } .elementor-control .elementor-control-spinner { 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-control.elementor-control-type-divider { padding: 0; background-color: transparent; } .elementor-control.elementor-control-type-divider .elementor-control-content { border-width: 0; border-color: #e6e9ec; border-style: solid; border-top-width: 1px; background-color: #ffffff; height: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp { margin-top: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before { content: ''; height: 1px; display: block; margin-bottom: 15px; background-color: transparent; } .elementor-control.elementor-control-separator-before { padding-top: 15px; } .elementor-control.elementor-control-separator-before:before { content: ''; position: absolute; height: 1px; width: 100%; top: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after:after { content: ''; position: absolute; height: 1px; width: 100%; bottom: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default { padding-top: 15px; } .elementor-control.elementor-control-deprecated { color: #b01b1b; } .elementor-control.elementor-control-deprecated .elementor-control-field-description { color: #b01b1b; } .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title { display: none; } .elementor-control.elementor-hidden-control { display: none; } .elementor-control.elementor-control-type-heading .elementor-control-title { font-weight: bold; margin: 0; } body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop { display: none; } body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet { display: none; } body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile { display: none; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper { position: relative; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select { appearance: none; -webkit-appearance: none; -moz-appearance: none; font-size: 12px; 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: 5px; padding-left: 20px; cursor: pointer; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after { font-family: eicons; content: '\e8ad'; font-size: 12px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 5px; pointer-events: none; } .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message { margin-top: 5px; } .elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before { content: '\e92a'; } .elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before { content: ""; } .elementor-panel-heading { display: table; table-layout: fixed; height: 40px; padding: 0 20px; width: 100%; border-bottom: 1px solid #e6e9ec; cursor: pointer; } .elementor-panel-heading > * { display: table-cell; vertical-align: middle; } .elementor-panel-heading-toggle { width: 20px; color: #495157; } .elementor-panel-heading-title { color: #495157; font-weight: bold; } .elementor-control-wp { line-height: 1.5; } .elementor-control-wp p { margin: 15px 0; } .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-label-block > .elementor-control-content > .elementor-control-field { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { width: 100%; margin-top: 10px; } .elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-right: auto; } .elementor-control-field-description { margin-top: 10px; } .elementor-group-control-attachment_alert .elementor-control-field-description { margin-top: 0; } .elementor-required { color: #b01b1b; } .elementor-units-choices { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; } .elementor-units-choices input { display: none; } .elementor-units-choices input:not(:checked) + label { color: #a4afb7; } .elementor-units-choices input:checked + label { text-decoration: underline; } .elementor-units-choices label { cursor: pointer; padding: 0 2px; text-transform: uppercase; font-size: 9px; } .elementor-control-start-end .eicon-h-align-left, .elementor-control-start-end .eicon-h-align-right { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); } .elementor-control-responsive-switchers { margin-left: 5px; --selected-option: 0; --pointer-position: var(--selected-option); position: relative; width: 2em; height: 2em; } .elementor-control-responsive-switchers__holder { position: absolute; width: 100%; top: 0; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; border: 1px transparent solid; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open { z-index: 11000; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder { top: -webkit-calc(-1 * var(--selected-option) * 2em); top: calc(-1 * var(--selected-option) * 2em); -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-responsive-switcher { 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; z-index: 2; cursor: pointer; height: 0; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; font-size: 12px; } a.elementor-responsive-switcher { color: #a4afb7; } a.elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop { color: #71d7f7; } .elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet { color: #71d7f7; } .elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile { color: #71d7f7; } .elementor-update-preview { margin: 15px 15px 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; } .elementor-update-preview-button-wrapper { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; } .elementor-update-preview-button { padding: 8px 15px; text-transform: uppercase; } .elementor-control-direction-ltr input, .elementor-control-direction-ltr textarea { direction: ltr; } .elementor-control-direction-rtl input, .elementor-control-direction-rtl textarea { direction: rtl; } .elementor-control-type-button .elementor-control-input-wrapper { text-align: left; } .elementor-control-type-button .elementor-button { width: auto; height: 26px; } .elementor-control-type-choose.elementor-label-block .elementor-choices { width: 100%; } .elementor-choices { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 27px; line-height: 27px; text-align: center; border-spacing: 1px; -webkit-border-radius: 3px; border-radius: 3px; overflow: hidden; } .elementor-choices .elementor-choices-label { border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-right: 1px solid #d5dadf; border-left: none; font-size: 12px; -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; cursor: pointer; overflow: hidden; } .elementor-choices .elementor-choices-label:nth-child(2) { -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-choices .elementor-choices-label:last-child { border-left: 1px solid #d5dadf; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-choices input { display: none; } .elementor-choices input:checked + .elementor-choices-label { color: #fff; background-color: #a4afb7; border-color: #a4afb7; } .elementor-label-inline .elementor-choices { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .rtl .elementor-control-text_align .elementor-choices, .rtl .elementor-control-align .elementor-choices, .rtl .elementor-control-position .elementor-choices { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-color .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-control-type-color .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-color.elementor-control-dynamic .pickr { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-group-control-css-filter .elementor-slider { height: 6px; -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); } .elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; margin-bottom: 5px; } .elementor-group-control-blur .elementor-slider { background: url("../images/blur.png"); -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-group-control-contrast .elementor-slider { background: url("../images/contrast.png"); -webkit-background-size: 100% 100%; background-size: 100% 100%; } .elementor-group-control-hue .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet)); background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); } .elementor-group-control-saturate .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red)); background-image: -webkit-linear-gradient(left, gray, red); background-image: -o-linear-gradient(left, gray, red); background-image: linear-gradient(to right, gray, red); } .elementor-group-control-brightness .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(black), to(white)); background-image: -webkit-linear-gradient(left, black, white); background-image: -o-linear-gradient(left, black, white); background-image: linear-gradient(to right, black, white); } .elementor-control-type-dimensions .elementor-control-dimensions { overflow: hidden; } .elementor-control-type-dimensions li { float: left; width: 20%; } .elementor-control-type-dimensions li input, .elementor-control-type-dimensions li .elementor-link-dimensions { display: block; text-align: center; width: 100%; border-color: #d5dadf; height: 27px; } .elementor-control-type-dimensions li input { border-left: none; -webkit-border-radius: 0; border-radius: 0; padding: 4px 0; } .elementor-control-type-dimensions li input:focus { border-left: solid 1px; border-color: #a4afb7; margin-left: -1px; width: -webkit-calc(100% + 1px); width: calc(100% + 1px); } .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label { color: #a4afb7; } .elementor-control-type-dimensions li .elementor-link-dimensions { border: 1px solid #d5dadf; border-left: none; background-color: #fff; padding: 0; outline: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; cursor: pointer; } .elementor-control-type-dimensions li:first-child input { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-dimensions li:first-child input:focus { border-color: #a4afb7; margin-left: 0; width: 100%; } .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-control-type-dimensions .elementor-link-dimensions.unlinked { background-color: #fff; } .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) { background-color: #a4afb7; border-color: #a4afb7; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked { color: #fff; } .elementor-control-type-icons .elementor-control-media__preview > * { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-icons .elementor-control-media__preview i { font-size: 70px; color: #6d7882; } .elementor-control-type-icons .elementor-control-media__preview svg { height: 75%; } .elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload { font-size: 15px; } .elementor-control-type-gallery .elementor-control-media__content { border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-status { font-size: 12px; height: 27px; padding-right: 10px; border-bottom: 1px solid #d5dadf; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-gallery .elementor-control-gallery-status > * { 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-control-type-gallery .elementor-control-gallery-status-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-gallery .elementor-control-gallery-content { position: relative; overflow: hidden; } .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit { opacity: 0; } .elementor-control-type-gallery .elementor-control-gallery-thumbnails { display: grid; grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); grid-gap: 10px; cursor: pointer; padding: 10px; } .elementor-control-type-gallery .elementor-control-gallery-thumbnail { width: 48px; height: 48px; -webkit-background-size: cover; background-size: cover; background-position: 50% 50%; } .elementor-control-type-gallery .elementor-control-gallery-edit { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(109, 120, 130, 0.3); padding: 10px; font-size: 11px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; pointer-events: none; cursor: pointer; opacity: 1; } .elementor-control-type-gallery .elementor-control-gallery-edit span { position: absolute; top: 10px; left: 10px; width: 21px; height: 21px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-edit span i { font-size: 11px; padding: 5px; } .elementor-control-type-gallery .elementor-control-gallery-add { width: 48px; height: 48px; color: #fff; background-color: #d5dadf; font-size: 14px; -webkit-border-radius: 0; border-radius: 0; } .elementor-control-type-gallery .elementor-control-gallery-add:hover { background-color: #c2cbd2; } .elementor-control-type-gallery .elementor-control-gallery-add i { margin: 0; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit { display: none; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content { padding: 10px; } .elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add { display: none; } .elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-gallery .elementor-control-gallery-clear { cursor: pointer; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-control-type-gallery .elementor-control-gallery-clear:hover { color: #b01b1b; } .elementor-control-type-gallery .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-hidden { display: none !important; } .elementor-control-type-icon .select2-selection__rendered .eicon { margin-right: 3px; } .elementor-control-type-image_dimensions .elementor-control-field-description { margin: 0 0 15px; line-height: 1.4; } .elementor-control-type-image_dimensions .elementor-control-input-wrapper { overflow: hidden; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field { width: 65px; float: right; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description { color: #a4afb7; } .elementor-control-type-image_dimensions .elementor-image-dimensions-separator { width: 20px; text-align: center; float: right; padding-top: 4px; } .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-control-type-image_dimensions .elementor-image-dimensions-apply-button { float: left; height: 27px; width: 65px; } .elementor-control-media.elementor-media-empty .elementor-control-media-area { display: none; } .elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button { display: none; } .elementor-control-media .elementor-control-input-wrapper { border: 1px solid #d5dadf; } .elementor-control-media .eicon-plus-circle { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #fff; font-size: 20px; } .elementor-control-media-upload-button { background-color: #d5dadf; } .elementor-control-media__preview { height: 100%; -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-control-media-area { background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); -webkit-background-size: 16px 16px; background-size: 16px 16px; background-position: 0 0, 8px 8px; background-color: #f6f6f6; } .elementor-control-media-area:not(:hover) .elementor-control-media__remove { display: none; } .elementor-control-media-area .eicon-video-camera { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: rgba(255, 255, 255, 0.7); font-size: 21px; } .elementor-control-media .elementor-control-media__content { cursor: pointer; overflow: hidden; } .elementor-control-media .elementor-control-media__content:hover:after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, 0.2); pointer-events: none; } .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools { bottom: -30px; } .elementor-control-media__content { -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools { position: absolute; bottom: 0; left: 0; right: 0; height: 27px; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools > *:not(:first-child) { margin-right: 1px; } .elementor-control-media__tool { 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; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; color: #fff; background-color: rgba(109, 120, 130, 0.85); font-size: 11px; -webkit-transition: background .3s; -o-transition: background .3s; transition: background .3s; } .elementor-control-media__tool:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-media__remove { position: absolute; z-index: 1; 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; top: 10px; left: 10px; width: 20px; height: 20px; font-size: 11px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; } .elementor-control-media__remove:hover { background-color: white; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); } .elementor-control-media .elementor-control-dynamic-switcher { border: none; -webkit-border-radius: 0; border-radius: 0; background-color: rgba(109, 120, 130, 0.85); color: #fff; } .elementor-control-media .elementor-control-dynamic-switcher:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper { border: none; } .elementor-control-type-number.elementor-control-dynamic input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; border-left: none; } .elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order .elementor-control-oreder-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-order input { display: none; } .elementor-control-type-order input:checked + .elementor-control-order-label { -webkit-transform: scale(1, -1); -ms-transform: scale(1, -1); transform: scale(1, -1); } .elementor-control-type-order select { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label { border-color: #d5dadf; } .elementor-control-type-order select:focus ~ .elementor-control-order-label { border-color: #a4afb7; } .elementor-control-type-order .elementor-control-order-label { position: relative; padding: 0; width: 40px; border: 1px solid; font-size: 10px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; margin-left: -3px; background-color: #fff; cursor: pointer; } .elementor-control-type-order .elementor-control-order-label i { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-popover_toggle input { display: none; } .elementor-control-type-popover_toggle label { cursor: pointer; } .elementor-control-type-popover_toggle .elementor-control-input-wrapper { direction: ltr; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label { color: #71d7f7; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label { display: none; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label { color: #c2cbd2; margin-left: 5px; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label { height: 27px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #d5dadf; } .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) { padding-right: 10px; padding-left: 10px; padding-bottom: 10px; } .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove { display: none; } .elementor-control-type-repeater .elementor-repeater-fields { margin: 10px 0; } .elementor-control-type-repeater .elementor-repeater-row-controls { border: 1px solid #d5dadf; border-top-width: 0; padding-top: 15px; } .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) { display: none; } .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-control-type-repeater .elementor-repeater-row-tools:hover { background-color: #a4afb7; } .elementor-control-type-repeater .elementor-repeater-row-tools > div { display: table-cell; text-align: center; vertical-align: middle; cursor: pointer; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) { background-color: #fff; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover { opacity: .95; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title { text-align: right; padding: 0 10px; font-size: 12px; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg { margin-left: 5px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] { width: 1em; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool { width: 40px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable { cursor: move; width: 10px; color: #fff; } .elementor-control-type-repeater .elementor-button-wrapper { text-align: center; padding-top: 5px; } .elementor-control-type-section { margin-top: 10px; padding: 0; } .elementor-control-type-section.elementor-open { padding-bottom: 15px; } .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before { display: none; } .elementor-shadow-box .elementor-shadow-slider { margin-top: 10px; } .elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-slider.elementor-control-dynamic input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper { display: block; } .elementor-control-type-slider--multiple { padding-bottom: 40px; } .elementor-control-type-slider--multiple .elementor-slider { margin-top: 12px; width: 98%; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle { -webkit-border-radius: 0; border-radius: 0; width: 10px; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(-4px); -ms-transform: translateY(calc(50% - 14px)) translateX(-4px); transform: translateY(calc(50% - 14px)) translateX(-4px); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after { content: ''; position: absolute; top: 2px; height: 12px; width: 11px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after { left: 5px; -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after { right: 5px; -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-slider .elementor-control-input-wrapper { 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-control-type-slider .elementor-dynamic-cover { margin-top: 10px; } .elementor-slider { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 4px; background-color: #d5dadf; -webkit-border-radius: 5px; border-radius: 5px; position: relative; cursor: pointer; } .elementor-slider-input { margin-right: 10px; } .elementor-slider__extra { position: relative; } .elementor-slider__labels { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-slider__label { font-size: 9px; color: #c2cbd2; } .elementor-slider__scales { position: absolute; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: space-evenly; -webkit-justify-content: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; width: 100%; margin-top: 4px; } .elementor-slider__scale { width: 1px; height: 21px; background-color: #a4afb7; } .elementor-slider .noUi-handle { height: 16px; width: 16px; background-color: #fff; left: 0; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(-8px); -ms-transform: translateY(calc(50% - 14px)) translateX(-8px); transform: translateY(calc(50% - 14px)) translateX(-8px); position: absolute; -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 50%; border-radius: 50%; } .elementor-slider .noUi-connects { position: absolute; width: 100%; height: 4px; } .elementor-slider .noUi-connect { position: absolute; z-index: 0; top: 0; left: 0; height: 100%; width: 100%; will-change: transform; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; background-color: #a4afb7; } .elementor-slider .noUi-tooltip { position: absolute; top: -webkit-calc(100% + 5px); top: calc(100% + 5px); left: -webkit-calc(50% - 4px); left: calc(50% - 4px); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); font-size: 10px; } .elementor-control-type-structure .elementor-control-field { display: initial; } .elementor-control-type-structure .elementor-control-structure-preset { padding: 3px; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; cursor: pointer; height: 50px; } .elementor-control-type-structure .elementor-control-structure-preset svg { height: 100%; } .elementor-control-type-structure .elementor-control-structure-preset path { fill: #e6e9ec; } .elementor-control-type-structure .elementor-control-structure-reset { padding: 15px 20px 0; font-size: 11px; cursor: pointer; color: #a4afb7; border-top: 1px solid #e6e9ec; margin: 0 -20px; } .elementor-control-type-structure .elementor-control-structure-title { margin: 10px -20px 0; } .elementor-control-type-structure .elementor-control-structure-title:before { height: 10px; -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); } .elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input { display: none; } .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path { fill: #a4afb7; } .elementor-control-type-structure .elementor-control-structure-preset-wrapper { margin-bottom: 15px; } .elementor-control-type-structure .elementor-control-structure-preset-title { text-align: center; padding-top: 5px; font-style: italic; font-size: 11px; color: #a4afb7; } .elementor-control-type-switcher .elementor-control-input-wrapper { text-align: left; } .elementor-control-type-switcher .elementor-switch { position: relative; display: inline-block; vertical-align: top; height: 20px; background-color: white; -webkit-border-radius: 18px; border-radius: 18px; cursor: pointer; } .elementor-control-type-switcher .elementor-switch-input { display: none; } .elementor-control-type-switcher .elementor-switch-label { position: relative; display: block; height: inherit; font-size: 7px; text-transform: uppercase; background: #eceeef; -webkit-border-radius: inherit; border-radius: inherit; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); -webkit-transition: 0.15s ease-out; -o-transition: 0.15s ease-out; transition: 0.15s ease-out; -webkit-transition-property: opacity, background; -o-transition-property: opacity, background; transition-property: opacity, background; } .elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after { position: absolute; top: 0; width: 50%; text-align: center; line-height: 20px; -webkit-transition: inherit; -o-transition: inherit; transition: inherit; } .elementor-control-type-switcher .elementor-switch-label:before { content: attr(data-off); right: 3px; color: #a4afb7; text-shadow: 0 1px rgba(255, 255, 255, 0.5); } .elementor-control-type-switcher .elementor-switch-label:after { content: attr(data-on); left: 3px; color: white; text-shadow: 0 1px rgba(0, 0, 0, 0.2); opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label { background: #71d7f7; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before { opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after { opacity: 1; } .elementor-control-type-switcher .elementor-switch-handle { position: absolute; top: 1px; left: 1px; width: 18px; height: 18px; background: white; -webkit-border-radius: 10px; border-radius: 10px; -webkit-transition: left 0.15s ease-out; -o-transition: left 0.15s ease-out; transition: left 0.15s ease-out; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle { left: initial; right: 1px; -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); } .elementor-control-type-tabs { font-size: 0.8em; text-transform: uppercase; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-tab { text-align: center; width: 100%; padding: 0; line-height: 27px; border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-left: 1px solid #d5dadf; cursor: pointer; } .elementor-control-type-tab:first-child { border-right: 1px solid #d5dadf; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-control-type-tab:last-child { -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-control-type-tab.elementor-tab-active { background-color: #a4afb7; border-color: #a4afb7; color: #ffffff; } .elementor-tab-close { display: none !important; } .elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; border-right-width: 0; } .elementor-control-type-textarea .elementor-control-dynamic-switcher { -webkit-border-radius: 0px 3px; border-radius: 0px 3px; } .elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher { position: absolute; top: 0; left: 0; } .elementor-control-type-textarea .elementor-control-input-wrapper { position: relative; } .elementor-control-type-textarea textarea { display: block; } .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher { display: none; } .elementor-control-type-url.elementor-control-dynamic .elementor-input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-field { position: relative; } .elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-url .elementor-control-input-wrapper { 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-control-type-url .elementor-control-url-more { 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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; border: 1px solid #d5dadf; border-left: none; cursor: pointer; } .elementor-control-type-url .elementor-control-url-more i { font-size: 12px; } .elementor-control-type-url .elementor-control-url-more-options { display: none; padding-top: 10px; } .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description { margin-top: 10px; } .elementor-control-type-url .elementor-control-url-option { 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-control-type-url .elementor-control-url-option:not(:last-child) { padding-bottom: 10px; } .elementor-control-type-url .elementor-control-url-option input, .elementor-control-type-url .elementor-control-url-option label { cursor: pointer; } .elementor-control-type-url .elementor-control-url-option input { margin: 0; padding: 0; -webkit-border-radius: 2px; border-radius: 2px; margin-left: 5px; -webkit-appearance: none; -moz-appearance: none; outline: none; content: none; height: 15px; width: 15px; border: 1px solid #d5dadf; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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-control-type-url .elementor-control-url-option input:checked { background: #71d7f7; border: none; } .elementor-control-type-url .elementor-control-url-option input:checked:before { display: block; content: ""; width: 4px; height: 7px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } .elementor-control-type-url .elementor-control-url-option label { font-size: 12px; } .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more { display: none; } .elementor-control-type-url .elementor-control-url-external-show .elementor-input, .elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-url-autocomplete-spinner { display: none; position: absolute; top: 5px; right: 0px; width: 10px; height: 10px; font-size: 10px; color: #D4D4D4; } .elementor-control-type-url .elementor-control-url__custom-attributes { margin-top: 10px; } .elementor-control-type-url .elementor-control-url__custom-attributes label { display: block; } .elementor-control-type-url .elementor-control-url__custom-attributes input { width: 100%; margin-top: 10px; } .elementor-control-type-url .elementor-input { direction: ltr; } .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more { border-color: #d5dadf; } .elementor-control-type-url .elementor-input:focus ~ div { border-color: #a4afb7; } .elementor-control-type-url .elementor-control-dynamic-switcher { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-autocomplete-menu { position: absolute; background: #fff; color: #495157; border: 1px solid #a4afb7; margin: 0; list-style: none; padding: 4px 0; height: auto; width: 100%; min-width: 260px; max-width: 300px; max-height: 200px; overflow-y: auto; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; cursor: default; z-index: 1; } .elementor-autocomplete-menu .ui-menu-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-self: baseline; -ms-flex-item-align: baseline; align-self: baseline; padding: 5px 8px; font-size: 12px; width: 100%; line-height: 1.2; cursor: pointer; } .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus { background: #e6e9ec; } .elementor-autocomplete-menu .elementor-autocomplete-item-info { font-size: 10px; padding-top: 2px; } .elementor-control-type-wp_widget .widget-inside { display: block; } .elementor-control-type-wp_widget .quicktags-toolbar input { width: auto; } .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container { margin-top: 10px; } .elementor-control-type-wysiwyg * { -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-control-type-wysiwyg .wp-editor-container { border: 1px solid #e6e9ec; } .elementor-control-type-wysiwyg .wp-editor-tabs { border: 1px solid #d5dadf; border-bottom: none; -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-control-type-wysiwyg #insert-media-button { height: initial; line-height: 24px; font-size: 10px; background-color: #e6e9ec; min-height: initial; } .elementor-control-type-wysiwyg .ed_button { height: 22px; width: initial; } .elementor-control-type-wysiwyg .wp-media-buttons-icon { height: 14px; margin: 0; } .elementor-control-type-wysiwyg .wp-media-buttons-icon:before { font-size: 14px; } .elementor-control-type-wysiwyg .wp-switch-editor { position: static; border: none; margin: 0; color: #6d7882; font-size: 10px; padding: 3px 9px 4px; } .elementor-control-type-wysiwyg .switch-html { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-wysiwyg .html-active .switch-tmce { background-color: transparent; } .elementor-control-type-wysiwyg .html-active .switch-html { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-tmce { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-html { background-color: transparent; } .elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .mce-toolbar-grp > div { padding: 0 3px; } .elementor-control-type-wysiwyg .elementor-wp-editor { -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-control-type-wysiwyg .mce-ico { color: #6d7882; font-size: 16px; } .elementor-control-type-wysiwyg .mce-btn { margin-right: 0; margin-left: 0; } .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active { border-color: #d5dadf; } .elementor-control-type-wysiwyg .mce-path { padding: 5px 10px; } .elementor-control-type-wysiwyg .mce-path-item { font-size: 12px; color: #6d7882; } .elementor-control-type-wysiwyg .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-text .elementor-control-dynamic-switcher { border-right-width: 0; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-text input { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } #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, 0.1); box-shadow: -3px 1px 5px rgba(0, 0, 0, 0.1); cursor: pointer; } #elementor-mode-switcher:hover { background-color: #D30C5C; color: #FFFFFF; } #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 .eicon { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } #elementor-mode-switcher-preview-input { display: none; } .elementor-revision-item__wrapper { 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; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-revision-item__wrapper.current { font-weight: bold; } .elementor-revision-item__wrapper .elementor-revision-item__tools-current { color: #71d7f7; } .elementor-revision-item:hover:not(.elementor-revision-current-preview) { background-color: rgba(230, 233, 236, 0.3); } .elementor-revision-item-loading .elementor-revision-item__tools-current { display: none; } .elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner { display: none; } .elementor-revision-item__gravatar { -webkit-border-radius: 50%; 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-meta { padding-top: 5px; font-size: 10px; font-weight: bold; } .elementor-revision-current-preview { background-color: #e6e9ec; } #elementor-restore-autosave-dialog.dialog-widget { background-color: rgba(0, 0, 0, 0.3); } #elementor-panel-revisions-loading { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } #elementor-panel-revisions-loading .eicon-loading { font-size: 50px; color: #a4afb7; } .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; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-history-item:hover { background-color: rgba(230, 233, 236, 0.3); } .elementor-history-item:hover .elementor-history-item__icon .eicon:before { content: '\e924'; } .elementor-history-item-applied { color: #a4afb7; } .elementor-history-item-current { background: #e6e9ec; cursor: default; } .elementor-history-item-current .elementor-history-item__icon .eicon:before, .elementor-history-item-current:hover .elementor-history-item__icon .eicon:before { content: '\e90e'; } .elementor-history-item__details { width: 95%; } .elementor-history-item__title { font-weight: bold; } .elementor-history-item__subtitle, .elementor-history-item__action { 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-top: 5px; } #elementor-panel-history { padding: 20px 20px 15px; } #elementor-panel-history.elementor-empty .elementor-history-revisions-message { padding-top: 20px; } #elementor-panel-history:not(.elementor-empty) { background-color: #fff; margin-top: 10px; } #elementor-panel-history-no-items, #elementor-panel-revisions-no-revisions { text-align: center; } #elementor-panel-history-no-items .elementor-nerd-box-icon, #elementor-panel-revisions-no-revisions .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close, .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back { display: none; } .elementor-editor-kit .elementor-panel #elementor-panel-header { background-color: #4ab7f4; } .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close, .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back { display: table-cell; } body:not(.e-routes-has-history) #elementor-panel-header-kit-back { pointer-events: none; opacity: 0.4; } body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon { cursor: inherit; color: inherit; } .elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active { border-bottom-color: #4ab7f4; } .elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation { display: none; } .elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled), .elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled) { background-color: #4ab7f4; } .elementor-editor-kit #elementor-panel-header-add-button, .elementor-editor-kit #elementor-panel-header-menu-button, .elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template, .elementor-editor-kit #elementor-panel-footer-navigator { display: none; } @-webkit-keyframes load { 0% { opacity: .3; } 50% { opacity: 1; } 100% { opacity: .3; } } @keyframes load { 0% { opacity: .3; } 50% { opacity: 1; } 100% { opacity: .3; } } @-webkit-keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @-webkit-keyframes mover { 0% { -webkit-transform: translateY(0); transform: translateY(0); } 100% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } } @keyframes mover { 0% { -webkit-transform: translateY(0); transform: translateY(0); } 100% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } } @-webkit-keyframes slideDown { 0% { -webkit-transform: translateY(-30px); transform: translateY(-30px); } 100% { -webkit-transform: translateY(0); transform: translateY(0); } } @keyframes slideDown { 0% { -webkit-transform: translateY(-30px); transform: translateY(-30px); } 100% { -webkit-transform: translateY(0); transform: translateY(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; margin: 0 auto; 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 { -webkit-border-radius: 30px; 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: 100000; } .tipsy-inner { background-color: #000; color: #FFF; max-width: 200px; padding: 6px 12px 6px; text-align: center; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); } .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-template-library-modal a.elementor-template-library-blank-footer-link { font-style: normal; text-decoration: underline; color: #39b54a; } #elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover { color: #2d8e3a; } #elementor-template-library-modal .dialog-buttons-wrapper { display: none; } #elementor-template-library-modal .select2-container { z-index: 0; } #elementor-template-library-header-menu { text-align: center; color: #6d7882; font-size: 13px; } .elementor-template-library-menu-item { display: inline-block; padding: 17px 0; width: 115px; cursor: pointer; } .elementor-template-library-menu-item.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff)); background-image: -webkit-linear-gradient(top, #f1f3f5, #fff); background-image: -o-linear-gradient(top, #f1f3f5, #fff); background-image: linear-gradient(to bottom, #f1f3f5, #fff); border-bottom: 3px solid #D30C5C; } #elementor-template-library-header-actions { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-template-library-header-actions > div { padding-left: 16px; } #elementor-template-library-header-preview-insert-wrapper { cursor: default; padding: 0 10px; } #elementor-template-library-header-preview-insert-wrapper .elementor-button { padding: 8px 14px; font-size: 11px; } #elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert { color: #fff; background-color: #39b54a; } #elementor-template-library-header-preview-insert-wrapper .elementor-go-pro { background-color: #D30C5C; color: #fff; } #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-templates { padding: 0 15px; } #elementor-template-library-templates[data-template-source="local"] #elementor-template-library-templates-container { -webkit-box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03); box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03); margin-top: 10px; margin-bottom: 45px; } #elementor-template-library-templates[data-template-source="local"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label { color: #6d7882; } #elementor-template-library-templates[data-template-source="remote"] #elementor-template-library-templates-container { margin: 10px -15px 0; } #elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label { color: #495157; } #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-order-toolbar-local, #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-footer-banner { display: none; } #elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner { display: none; } #elementor-template-library-templates .elementor-template-library-order-input { display: none; } #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label { padding-left: 8px; } #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label:after { font-family: eicons; content: '\e8ae'; margin-right: 3px; } #elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse + .elementor-template-library-order-label:after { content: '\e8ad'; } #elementor-template-library-templates-container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; } #elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert { text-transform: none; font-size: 12px; } #elementor-template-library-toolbar { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .elementor-template-library-filter-toolbar { 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-filter-toolbar-remote { font-size: 11px; } #elementor-template-library-order { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; border-left: 1px solid #d5dadf; } .elementor-template-library-order-label { text-transform: uppercase; padding-left: 22px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } label.elementor-template-library-order-label { cursor: pointer; } label.elementor-template-library-order-label:hover { color: #556068; } #elementor-template-library-filter { border-left: 1px solid #d5dadf; } #elementor-template-library-filter .select2 { text-align: right; margin-left: 25px; } #elementor-template-library-filter .select2-selection__rendered { text-transform: capitalize; } #select2-elementor-template-library-filter-subtype-results .select2-results__option { text-transform: capitalize; } #elementor-template-library-my-favorites { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; padding-right: 20px; } #elementor-template-library-filter-my-favorites { display: none; } #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label { color: #495157; } #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label i:after { color: #D30C5C; content: '\e93f'; } #elementor-template-library-filter-my-favorites-label { cursor: pointer; text-transform: uppercase; } #elementor-template-library-filter-my-favorites-label:hover { color: #556068; } #elementor-template-library-filter-my-favorites-label:hover i:after { color: #D30C5C; } #elementor-template-library-filter-my-favorites-label i { padding-left: 5px; } #elementor-template-library-filter-my-favorites-label i:after { color: #a4afb7; content: '\e923'; } #elementor-template-library-filter-text-wrapper { width: 200px; position: relative; } #elementor-template-library-filter-text-wrapper i { position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-template-library-filter-text { border: none; border-bottom: 1px solid #d5dadf; -webkit-border-radius: 0; border-radius: 0; font-size: 11px; padding: 8px 15px 8px 0; -webkit-transition: border 0.5s; -o-transition: border 0.5s; transition: border 0.5s; } #elementor-template-library-filter-text:focus { border-color: #c2cbd2; } #elementor-template-library-filter-text::-webkit-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text:-ms-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text::-ms-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text::placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text:focus { border-color: #c2cbd2; } .elementor-template-library-template-remote { margin: 15px; padding: 8px; background-color: #fff; -webkit-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-template-library-template-remote:hover .elementor-template-library-template-name { display: none; } .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview { opacity: 0; } .elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite, .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action { display: none; } .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: #D30C5C; color: #d5dadf; padding: 2px 4px 0; font-size: 9px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) { position: relative; width: -webkit-calc(33.333% - 30px); width: calc(33.333% - 30px); overflow: hidden; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) img { display: block; width: 100%; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer { position: absolute; width: 100%; bottom: 0; right: 0; padding: 10px; background-color: #fff; -webkit-transition: -webkit-transform .5s; transition: -webkit-transform .5s; -o-transition: transform .5s; transition: transform .5s; transition: transform .5s, -webkit-transform .5s; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-name { display: none; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(:hover) .elementor-template-library-template-footer { -webkit-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); } .elementor-template-library-template-remote .elementor-template-library-template-body { position: relative; } @media (max-width: 1025px) { .elementor-template-library-template-remote .elementor-template-library-template-body { height: 300px; } } .elementor-template-library-template-remote .elementor-template-library-template-screenshot { height: 100%; -webkit-background-size: cover; background-size: cover; background-position-x: 50%; -webkit-box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); } .elementor-template-library-template-remote .elementor-template-library-template-preview { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); -webkit-transition: opacity .5s; -o-transition: opacity .5s; transition: opacity .5s; 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: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-template-library-template-remote .elementor-template-library-template-insert { color: #39b54a; } .elementor-template-library-template-remote .elementor-go-pro { color: #D30C5C; } .elementor-template-library-template-remote .elementor-template-library-template-footer { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin-top: 10px; font-size: 11px; line-height: 1; } .elementor-template-library-template-remote .elementor-template-library-template-name { text-align: right; color: #6d7882; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; padding-left: 5px; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-input { display: none; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked + .elementor-template-library-template-favorite-label i:before { content: '\e93f'; color: #D30C5C; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-label { cursor: pointer; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i { color: #D30C5C; } @media (max-width: 1439px) { .elementor-template-library-template-page { width: -webkit-calc(25% - 30px); width: calc(25% - 30px); } } @media (min-width: 1440px) { .elementor-template-library-template-page { width: -webkit-calc(20% - 30px); width: calc(20% - 30px); } } @media (max-width: 1025px) { .elementor-template-library-template-page { width: -webkit-calc(33.333% - 30px); width: calc(33.333% - 30px); } } .elementor-template-library-template-page .elementor-template-library-template-body { height: 200px; } #elementor-template-library-order-toolbar-local, .elementor-template-library-template-local { 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; padding: 0 25px; text-align: right; } #elementor-template-library-order-toolbar-local { margin-top: 30px; } #elementor-template-library-order-toolbar-local .elementor-template-library-order-label { line-height: 1; font-size: 10px; font-weight: 500; } #elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover) { color: #a4afb7; } .elementor-template-library-template-local { height: 50px; width: 100%; margin-top: 1px; background-color: #fff; -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-insert { background: none; color: #a4afb7; } .elementor-template-library-template-local:first-child { -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-template-library-template-local:last-child { -webkit-border-radius: 0 0 3px 3px; border-radius: 0 0 3px 3px; } .elementor-template-library-template-local .elementor-template-library-template-name { font-weight: 500; } .elementor-template-library-template-local .elementor-template-library-template-name, .elementor-template-library-template-local .elementor-template-library-template-meta { padding-left: 20px; } .elementor-template-library-template-local .elementor-template-library-template-meta { color: #a4afb7; } .elementor-template-library-template-local .elementor-template-library-template-name, .elementor-template-library-template-local .elementor-template-library-template-meta, .elementor-template-library-template-local .elementor-template-library-template-preview, .elementor-template-library-template-local .elementor-template-library-template-action { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-template-library-template-local .elementor-template-library-template-controls { position: relative; 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-template-local .elementor-template-library-template-controls, .elementor-template-library-template-local .elementor-template-library-template-controls a { color: #a4afb7; } .elementor-template-library-template-local .elementor-template-library-template-controls > div { cursor: pointer; -webkit-transition: color .5s; -o-transition: color .5s; transition: color .5s; } .elementor-template-library-template-local .elementor-template-library-template-insert i { margin-left: 3px; } .elementor-template-library-template-local .elementor-template-library-template-control-title { margin-right: 6px; } .elementor-template-library-template-local .elementor-template-library-template-more:hover, .elementor-template-library-template-local .elementor-template-library-template-more a:hover { color: #556068; } .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover { color: #d72b3f; } .elementor-template-library-template-local .elementor-template-library-template-action { padding: 8px 18px; margin: 0 5%; } .elementor-template-library-template-local .elementor-template-library-template-more { display: none; position: absolute; background-color: #fff; padding: 3px 20px; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3); box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3); top: 100%; left: 0; -webkit-transform: translateX(-65%) translateY(-7px); -ms-transform: translateX(-65%) translateY(-7px); transform: translateX(-65%) translateY(-7px); z-index: 1; } .elementor-template-library-template-local .elementor-template-library-template-more:before { content: ''; position: absolute; border: solid transparent; border-width: 8px 4px; border-bottom-color: #fff; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); } .elementor-template-library-template-local .elementor-template-library-template-more > div { margin: 10px 0; font-size: 11px; } .elementor-template-library-template-local .elementor-template-library-template-more-toggle { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; } .elementor-template-library-template-local .elementor-template-library-template-more-toggle i { font-size: 16px; } #elementor-template-library-preview { height: 100%; overflow: hidden; } #elementor-template-library-preview iframe { height: 150%; -webkit-transform: scale(0.666) translateX(25%) translateY(-25%); -ms-transform: scale(0.666) translateX(25%) translateY(-25%); transform: scale(0.666) translateX(25%) translateY(-25%); } @media (max-width: 1439px) { #elementor-template-library-preview iframe { width: 1440px; } } @media (min-width: 1440px) { #elementor-template-library-preview iframe { width: 1710px; } } .elementor-template-library-blank-icon { font-size: 65px; margin-top: 45px; color: #c2cbd2; line-height: 1; } .elementor-template-library-blank-icon img { width: 70px; } .elementor-template-library-blank-icon .elementor-template-library-no-results { width: 200px; } .elementor-template-library-blank-title { font-size: 30px; margin-top: 40px; } @media (max-width: 1439px) { .elementor-template-library-blank-title { font-size: 25px; } } .elementor-template-library-blank-message { font-size: 18px; color: #a4afb7; margin-top: 15px; font-weight: 300; } @media (max-width: 1439px) { .elementor-template-library-blank-message { font-size: 16px; margin-top: 10px; } } #elementor-template-library-save-template-form { margin-top: 40px; 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: 55px; font-size: 16px; } #elementor-template-library-save-template-name { width: 500px; background-color: #fff; font-weight: 300; color: #a4afb7; padding-right: 25px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; border: none; } #elementor-template-library-save-template-submit { width: 150px; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } #elementor-template-library-save-template-submit:hover { -webkit-box-shadow: none; box-shadow: none; } #elementor-template-library-import-form { width: 95%; background-color: rgba(255, 255, 255, 0.5); padding: 60px; border: 2px dashed #d5dadf; margin: 35px auto; -webkit-transition: background-color 0.5s; -o-transition: background-color 0.5s; transition: background-color 0.5s; } #elementor-template-library-import-form:hover { background-color: rgba(255, 255, 255, 0.9); } #elementor-template-library-import-form-or { margin-top: 15px; font-size: 18px; } #elementor-template-library-import-form-label { margin-top: 20px; padding: 15px 35px; display: inline-block; } #elementor-template-library-import-form-input { display: none; } #elementor-template-library-import-form.elementor-drag-over { border: 3px dashed #71d7f7; } #elementor-template-library-import .elementor-template-library-blank-icon { margin-top: 0; } #elementor-template-library-import .elementor-template-library-blank-message { margin-top: 20px; } .e-route-library-connect #elementor-template-library-modal .dialog-message { max-height: 95vh; padding: 100px 0 0; min-height: 550px; } #elementor-template-library-connect-logo { font-size: 20px; } #elementor-template-library-connect__button { display: inline-block; position: relative; z-index: 1; margin-top: 25px; padding: 12px 24px; font-size: 14px; } #elementor-template-library-connect__background-image-left-1 { right: 22.4%; bottom: -29%; -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; } #elementor-template-library-connect__background-image-left-2 { right: 46.25%; bottom: -15.5%; -webkit-animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; } #elementor-template-library-connect__background-image-right-1 { left: 37%; bottom: -41%; -webkit-animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; } #elementor-template-library-connect__background-image-right-2 { left: 48%; bottom: -12.5%; -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; } .elementor-template-library-connect__background-image { position: absolute; } .elementor-template-library-blank-footer { position: absolute; bottom: 70px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); color: #a4afb7; font-style: italic; } @media (max-height: 700px) { .elementor-template-library-blank-footer { display: none; } } #elementor-template-library-footer-banner i { color: #c2cbd2; font-size: 56px; margin-top: 40px; } #elementor-template-library-footer-banner .elementor-nerd-box-icon { margin-top: 70px; } #elementor-template-library-footer-banner .elementor-excerpt { color: #a4afb7; font-size: 15px; font-weight: 500; margin: 20px 0; } #elementor-template-library-templates-empty { width: 100%; margin-top: 40px; } #elementor-template-library-error-dialog .dialog-message { text-align: start; } #elementor-template-library-error-info { margin-top: 10px; } @media (max-width: 1439px) { .elementor-template-library-local-column-1 { width: 33%; } .elementor-template-library-local-column-2 { width: 10%; } .elementor-template-library-local-column-3 { width: 15%; } .elementor-template-library-local-column-4 { width: 15%; } .elementor-template-library-local-column-5 { width: 27%; } } @media (min-width: 1440px) { .elementor-template-library-local-column-1 { width: 25%; } .elementor-template-library-local-column-2 { width: 17%; } .elementor-template-library-local-column-3 { width: 17%; } .elementor-template-library-local-column-4 { width: 17%; } .elementor-template-library-local-column-5 { width: 24%; } } @media (max-width: 1024px) { .elementor-template-library-local-column-3 { display: none; } .elementor-template-library-local-column-5 { width: 41%; } } .elementor-tags-list { display: none; position: absolute; width: 260px; max-height: 300px; overflow: auto; padding-bottom: 5px; background-color: #fff; border: 1px solid #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; z-index: 1; } .elementor-tags-list__group-title { color: #495157; font-weight: bold; font-size: 12px; padding: 10px 15px; 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-tags-list__group-title .eicon-info-circle { padding-left: 5px; color: #71d7f7; font-size: 14px; } .elementor-tags-list__item { font-size: 10px; padding: 6px 15px; cursor: pointer; } .elementor-tags-list__item:before { content: '>'; font-size: 8px; padding-left: 5px; } .elementor-tags-list__item:hover { background-color: #e6e9ec; } .elementor-tags-list__teaser { border-top: 2px solid #d5dadf; padding-top: 4px; margin-top: 4px; } .elementor-tags-list__teaser-title { color: #6d7882; } .elementor-tags-list__teaser-text { padding: 2px 15px 8px; line-height: 1.5; font-size: 12px; } .elementor-tags-list__teaser-link { color: #D30C5C; text-decoration: underline; font-style: italic; font-weight: bold; } .elementor-dynamic-cover { 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; width: 100%; height: 27px; -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-dynamic-cover__title { padding: 0 8px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove { color: #c2cbd2; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover { color: #a4afb7; } .elementor-control-type-wysiwyg .elementor-dynamic-cover { margin-top: 10px; } .elementor-tag-settings-popup { position: absolute; width: 260px; background-color: #e6e9ec; -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); z-index: 1; } .elementor-tag-settings-popup:before { content: ''; position: absolute; top: -20px; right: 5px; border: 10px solid transparent; border-bottom-color: #fff; } .elementor-tag-settings-popup .elementor-control-type-section:first-child { margin: 0; } .elementor-tag-controls-stack-empty { background-color: #fff; padding: 10px; font-size: 13px; text-align: center; } .elementor-control-dynamic-switcher { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; height: 27px; cursor: pointer; border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; background: #fff; } .elementor-control-dynamic-switcher-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-dynamic-switcher .eicon-database { font-size: 12px; } .elementor-control-dynamic-value .elementor-control-tag-area, .elementor-control-dynamic-value .elementor-control-dynamic-switcher { display: none; } #elementor-toast { position: absolute; width: 280px; padding: 20px; -webkit-border-radius: 5px; border-radius: 5px; color: #d5dadf; background-color: rgba(0, 0, 0, 0.8); z-index: 10000; } #elementor-toast .dialog-message { font-size: 13px; } #elementor-toast .dialog-buttons-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; margin-top: 15px; } #elementor-toast .dialog-button { color: #fcb92c; margin: 0 5px; text-transform: uppercase; cursor: pointer; } #elementor-toast .dialog-button:last-child { margin-left: 0; } .elementor-context-menu { position: absolute; width: 200px; background-color: #fff; border: 1px solid #e6e9ec; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09); box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09); -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; z-index: 3; } .elementor-context-menu-list__group { padding: 5px 0; } .elementor-context-menu-list__group:not(:last-child) { border-bottom: 1px solid #e6e9ec; } .elementor-context-menu-list__item { padding: 5px 10px; padding-left: 20px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; cursor: pointer; } .elementor-context-menu-list__item--disabled { cursor: default; color: #d5dadf; } .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover { background-color: #71d7f7; } .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover > * { color: #fff; } .elementor-context-menu-list__item__icon { width: 20px; color: #c2cbd2; } .elementor-context-menu-list__item__title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-context-menu-list__item__shortcut { color: #d5dadf; } .elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover { background-color: #d72b3f; } .elementor-context-menu .eicon-pro-icon { color: #fcb92c; } .elementor-right-click-introduction { position: absolute; width: 250px; padding: 30px 20px; background-color: #fff; -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.07); text-align: center; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-right-click-introduction:before { content: ''; position: absolute; border: solid transparent; border-width: 7px 5px; border-bottom-color: #fff; top: -14px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .elementor-right-click-introduction .dialog-header { color: #6d7882; font-size: 16px; } .elementor-right-click-introduction .dialog-message { font-size: 13px; line-height: 1.6; margin-top: 10px; color: #a4afb7; } .elementor-right-click-introduction .dialog-buttons-wrapper { 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; margin-top: 25px; } .elementor-right-click-introduction .dialog-button { font-size: 11px; } .elementor-right-click-introduction .dialog-ok { padding: 7px 27px; text-transform: capitalize; } .elementor-right-click-introduction .dialog-learn-more { color: #39b54a; margin-left: 15px; cursor: pointer; } #elementor-hotkeys { text-align: right; } #elementor-hotkeys__content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: 100%; overflow: hidden; margin-bottom: 30px; } @media (max-width: 1024px) { #elementor-hotkeys__content { -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } } #elementor-hotkeys__actions .elementor-hotkeys__list { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } @media (max-width: 1024px) { #elementor-hotkeys__actions .elementor-hotkeys__list { -webkit-border-radius: 3px; border-radius: 3px; } } @media (min-width: 1025px) { #elementor-hotkeys__actions .elementor-hotkeys__header, #elementor-hotkeys__actions .elementor-hotkeys__list { padding-left: 25px; } } @media (min-width: 1440px) { #elementor-hotkeys__actions .elementor-hotkeys__header, #elementor-hotkeys__actions .elementor-hotkeys__list { padding-left: 50px; } } #elementor-hotkeys__navigation .elementor-hotkeys__list { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } @media (max-width: 1024px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { -webkit-border-radius: 3px; border-radius: 3px; } } @media (min-width: 1025px) { #elementor-hotkeys__navigation .elementor-hotkeys__header { padding-right: 25px; } } @media (min-width: 1440px) { #elementor-hotkeys__navigation .elementor-hotkeys__header { padding-right: 50px; } } @media (min-width: 1025px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { padding-right: 15px; } } @media (min-width: 1440px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { padding-right: 40px; } } .elementor-hotkeys__col { width: 50%; } @media (max-width: 1024px) { .elementor-hotkeys__col { width: 100%; } } .elementor-hotkeys__header, .elementor-hotkeys__list { width: 100%; } .elementor-hotkeys__header { padding: 10px 30px; font-weight: 500; } @media (max-width: 479px) { .elementor-hotkeys__header { padding-right: 10px; padding-left: 10px; } } .elementor-hotkeys__list { background-color: #ffffff; height: -webkit-calc(100% - 42px); height: calc(100% - 42px); padding: 10px 20px; } @media (max-width: 479px) { .elementor-hotkeys__list { padding: 0; } } @media (max-width: 1024px) { .elementor-hotkeys__list { margin-bottom: 30px; } } @media (max-width: 1024px) { .elementor-hotkeys__list { height: auto; } } .elementor-hotkeys__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; padding: 20px 10px; border-bottom: 1px solid #eceeef; } .elementor-hotkeys__item:last-child { margin-bottom: 30px; } @media (max-width: 479px) { .elementor-hotkeys__item:last-child { margin-bottom: 0; } } .elementor-hotkeys__item--label { font-size: 13px; font-weight: 400; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-hotkeys__item--shortcut { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; 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-hotkeys__item--shortcut span { position: relative; background-color: #eceeef; padding: 5px 12px; margin-right: 27px; -webkit-border-radius: 3px; border-radius: 3px; } @media (max-width: 479px) { .elementor-hotkeys__item--shortcut span { padding: 4px 9px; margin-right: 23px; } } .elementor-hotkeys__item--shortcut span:after { content: '+'; position: absolute; right: -18px; width: 9px; text-align: center; } @media (max-width: 479px) { .elementor-hotkeys__item--shortcut span:after { right: -16px; } } .elementor-hotkeys__item--shortcut span:last-child { margin-right: 0; } .elementor-hotkeys__item--shortcut span:last-child:after { display: none; } .ui-resizable-n { top: -5px; } .ui-resizable-e { right: -5px; } .ui-resizable-s { bottom: -5px; } .ui-resizable-w { left: -5px; } .ui-resizable-ne { top: -5px; right: -5px; } .ui-resizable-nw { top: -5px; left: -5px; } .ui-resizable-se { bottom: -5px; right: -5px; } .ui-resizable-sw { bottom: -5px; left: -5px; } .ui-resizable-n, .ui-resizable-s { left: 0; height: 10px; width: 100%; cursor: ns-resize; } .ui-resizable-e, .ui-resizable-w { top: 0; height: 100%; width: 10px; cursor: ew-resize; } .ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw { height: 15px; width: 15px; } .ui-resizable-nw, .ui-resizable-se { cursor: nwse-resize; } .ui-resizable-ne, .ui-resizable-sw { cursor: nesw-resize; } .ui-resizable-handle { position: absolute; } .ui-resizable-resizing { pointer-events: none; } #elementor-navigator { position: fixed; top: 100px; width: 240px; height: 339px; left: 30px; background-color: #fff; -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1); -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; overflow: hidden; z-index: 2; display: none; } body.elementor-navigator-docked #elementor-navigator { top: 0; left: 0; height: 100%; } body:not(.elementor-navigator-docked) #elementor-navigator { -webkit-border-radius: 5px; border-radius: 5px; } #elementor-navigator__inner { height: 100%; background-color: #e6e9ec; } #elementor-navigator__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; padding: 12px 10px; background-color: #fff; border-bottom: 1px solid #e6e9ec; cursor: move; } #elementor-navigator__close, #elementor-navigator__toggle-all { -webkit-transition: color .5s; -o-transition: color .5s; transition: color .5s; cursor: pointer; } #elementor-navigator__close:not(:hover), #elementor-navigator__toggle-all:not(:hover) { color: #a4afb7; } #elementor-navigator__toggle-all { font-size: 13px; } #elementor-navigator__close { font-size: 11px; } #elementor-navigator__elements { height: -webkit-calc(100% - 49px); height: calc(100% - 49px); overflow: auto; position: relative; } .elementor-navigator-docked #elementor-navigator__elements { height: -webkit-calc(100% - 35px); height: calc(100% - 35px); } #elementor-navigator__elements .elementor-nerd-box { padding: 25px; } #elementor-navigator__footer { position: absolute; width: 100%; left: 0; bottom: 0; text-align: center; background-color: #fff; border-top: 1px solid #e6e9ec; color: #a4afb7; } .elementor-navigator-docked #elementor-navigator__footer { display: none; } .elementor-navigator__item { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 30px; font-size: 11px; border-bottom: 1px solid #e6e9ec; cursor: pointer; -webkit-transition: padding .5s linear; -o-transition: padding .5s linear; transition: padding .5s linear; overflow: hidden; } .elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); } .elementor-navigator__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; } .elementor-navigator__item + .elementor-navigator__elements { display: none; } .elementor-navigator__elements .elementor-empty-view { padding: 10px; border-bottom: 1px solid #e6e9ec; } .elementor-navigator__elements .elementor-empty-view__title { margin-right: 23px; color: #c2cbd2; font-size: 10px; font-style: italic; } .elementor-navigator__elements .ui-sortable-helper { background-color: #fff; -webkit-box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1); box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1); -webkit-transform: rotate(4deg); -ms-transform: rotate(4deg); transform: rotate(4deg); border: 1px solid #e6e9ec; pointer-events: none; } .elementor-navigator__elements .ui-sortable-placeholder { background-color: #f1f3f5; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view { border-top: 2px solid #71d7f7; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view .elementor-empty-view__title { display: none; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view + .ui-sortable-placeholder { display: none; } .elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle { visibility: hidden; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item .elementor-navigator__element__toggle { color: #71d7f7; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle { display: none; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing { background-color: #71d7f7; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing > * { color: #fff; } .elementor-navigator__element__list-toggle { margin-left: 7px; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; -o-transition: transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; color: #a4afb7; } .elementor-navigator__element__element-type { margin-left: 8px; } .elementor-navigator__element__title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; overflow: hidden; } .elementor-navigator__element__title__text { white-space: nowrap; -webkit-user-select: text; } .elementor-navigator__element__title__text[contenteditable="true"] { outline: none; color: #6d7882; background-color: #fff; padding: 2px 3px; -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); } .elementor-navigator__element__title__text:not([contenteditable="true"]) { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-navigator__element__toggle { position: absolute; left: 15px; height: 100%; z-index: 0; font-size: 13px; } .elementor-navigator__element__indicators { position: relative; -webkit-transition: -webkit-transform .5s; transition: -webkit-transform .5s; -o-transition: transform .5s; transition: transform .5s; transition: transform .5s, -webkit-transform .5s; padding-right: 5px; z-index: 91; } .elementor-navigator__element__indicators:not(:hover) { -webkit-transform: translateX(-webkit-calc(-100% + 8px)); -ms-transform: translateX(calc(-100% + 8px)); transform: translateX(calc(-100% + 8px)); } .elementor-navigator__element__indicator { height: 100%; width: 31px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; color: #6d7882; background-color: #fff; border-right: 1px solid #e6e9ec; } .elementor-navigator__element__indicator:first-child { border-right: 3px solid #71d7f7; } .elementor-editing .elementor-navigator__element__indicator:first-child { border-color: #41c9f4; } .elementor-navigator__element__indicator:hover { color: #495157; } .elementor-navigator__element--hidden .elementor-navigator__element__title, .elementor-navigator__element--hidden .elementor-navigator__element__toggle { opacity: .5; } .elementor-navigator__element-column { background-color: #fafbfb; } .elementor-navigator__element-column > .elementor-navigator__item .elementor-navigator__element__element-type { color: #a4afb7; } .elementor-navigator__element-section { background-color: #fff; } #elementor-notice-bar { position: absolute; width: 100%; bottom: 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; height: 40px; color: #fff; background-color: #6d7882; padding: 0 50px; } #elementor-notice-bar__message { padding-right: 15px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-notice-bar__message a { text-decoration: underline; } #elementor-notice-bar__action { text-transform: uppercase; } #elementor-notice-bar__close { margin: 0 20px; cursor: pointer; } #elementor-notice-bar i { font-size: 16px; opacity: .9; } #elementor-notice-bar a { color: #fff; } #elementor-notice-bar a, #elementor-notice-bar i { -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } #elementor-notice-bar a:hover, #elementor-notice-bar i:hover { color: #D4D4D4; } body:not(.elementor-device-desktop) #elementor-notice-bar { display: none; } #elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header { color: #495157; } #elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a { color: #6d7882; text-decoration: underline; font-style: italic; } #elementor-preview-debug-link-text { display: inline-block; } #elementor-icons-manager-modal .dialog-message { padding: 0; height: 700px; } #elementor-icons-manager-modal .dialog-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-icons-manager-modal .dialog-buttons-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-icons-manager__wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } @media (max-width: 479px) { #elementor-icons-manager__sidebar { display: none; } } #elementor-icons-manager__tab-links { margin-top: 30px; } #elementor-icons-manager__upload { margin: 20px 45px; padding-top: 35px; border-top: 1px solid #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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } @media (max-width: 1439px) { #elementor-icons-manager__upload { margin: 20px 25px; } } #elementor-icons-manager__upload__title { color: #a4afb7; font-size: 11px; text-transform: uppercase; } #elementor-icons-manager__main { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 30px 80px 0; } @media (max-width: 1439px) { #elementor-icons-manager__main { padding: 30px 50px 0; } } @media (max-width: 479px) { #elementor-icons-manager__main { width: 100%; } } #elementor-icons-manager__search { position: relative; } #elementor-icons-manager__search input { padding: 8px 15px; background-color: #fff; border: none; } #elementor-icons-manager__search input::-webkit-input-placeholder { font-style: italic; } #elementor-icons-manager__search input:-ms-input-placeholder { font-style: italic; } #elementor-icons-manager__search input::-ms-input-placeholder { font-style: italic; } #elementor-icons-manager__search input::placeholder { font-style: italic; } #elementor-icons-manager__search i { position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 15px; } #elementor-icons-manager__tab__wrapper { overflow: auto; margin: 25px -15px 0; padding: 0 15px 15px; } #elementor-icons-manager__tab__title { color: #556068; font-size: 16px; font-weight: 500; text-align: right; } @media (max-width: 479px) { #elementor-icons-manager__tab__title { display: none; } } #elementor-icons-manager__tab__content { display: grid; grid-template-columns: repeat(7, 1fr); grid-gap: 20px; margin: 20px 0; } @media (max-width: 1439px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(6, 1fr); } } @media (max-width: 1024px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(5, 1fr); } } @media (max-width: 767px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(4, 1fr); } } @media (max-width: 479px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(3, 1fr); } } #elementor-icons-manager__promotion { 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-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding-top: 70px; } #elementor-icons-manager__promotion__icon { font-size: 60px; color: #c2cbd2; } #elementor-icons-manager__promotion__text { width: 300px; font-size: 16px; padding-top: 25px; } #elementor-icons-manager__promotion__link { margin-top: 20px; } .elementor-icons-manager__tab-link { padding: 15px 45px 15px 0; font-size: 14px; color: #6d7882; text-align: right; cursor: pointer; position: relative; } .elementor-icons-manager__tab-link i { font-size: 20px; padding-left: 15px; color: #a4afb7; } @media (max-width: 1439px) { .elementor-icons-manager__tab-link { padding: 15px 25px 15px 15px; font-size: 11px; } .elementor-icons-manager__tab-link i { font-size: 15px; } } @media (max-width: 1024px) { .elementor-icons-manager__tab-link i { display: none; } } .elementor-icons-manager__tab-link.elementor-active { background-color: #fff; -webkit-box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); } .elementor-icons-manager__tab-link.elementor-active:after { content: ''; position: absolute; height: 100%; width: 5px; top: 0; right: 0; background-color: #71d7f7; } .elementor-icons-manager__tab-link.elementor-active i { color: #71d7f7; } .elementor-icons-manager__tab__item { position: relative; height: 0; padding-bottom: 100%; background-color: #fff; -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05); box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05); -webkit-border-radius: 3px; border-radius: 3px; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; overflow: hidden; } .elementor-icons-manager__tab__item:hover { -webkit-box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); } .elementor-icons-manager__tab__item.elementor-selected { -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; } .elementor-icons-manager__tab__item__content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); padding: 1px; } .elementor-icons-manager__tab__item__icon { font-size: 25px; color: #6d7882; } .elementor-icons-manager__tab__item__name { color: #c2cbd2; font-size: 11px; padding: 13px 20px 0; max-width: 100%; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } #elementor-enable-fa5-dialog a { font-style: italic; text-decoration: underline; } #elementor-enable-fa5-dialog .dialog-confirm-ok { color: #39b54a; } #elementor-enable-svg-dialog .dialog-confirm-ok { color: #39b54a; } .elementor-color-picker__header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 10px; } .elementor-color-picker__swatch-tool { position: relative; -webkit-box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.15); box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.15); background-color: #fff; } .elementor-color-picker__swatch-tool i { position: absolute; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); color: #6d7882; font-size: 13px; } .elementor-color-picker__swatch-placeholder { border: 1px dashed #c2cbd2; } .elementor-color-picker__dropping-area { margin-top: 10px; padding: 15px; border: 1px dashed #d5dadf; text-align: center; color: #6d7882; display: none; } .elementor-color-picker__dropping-area.elementor-active { border-color: #a4afb7; } .elementor-color-picker__dropping-area.elementor-active i { color: #b01b1b; } .elementor-color-picker__dropping-area i { font-size: 15px; } .elementor-color-picker__dropping-area__drag-to-delete { margin-top: 10px; } .elementor-color-picker__dropping-area .elementor-color-picker__swatch-placeholder { display: none; } .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch { background-color: #d5dadf; pointer-events: none; -webkit-box-shadow: none; box-shadow: none; } .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch i { color: #fff; } /*# sourceMappingURL=editor-rtl.css.map */assets/css/editor.css000066600000521401152142641160010647 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8"; .elementor-control-unit-1 { width: 27px; } .elementor-control-unit-2 { width: 54px; } .elementor-control-unit-3 { width: 81px; } .elementor-control-unit-4 { width: 108px; } .elementor-control-unit-5 { width: 135px; } *, :before, :after { 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 { text-decoration: none; } body { color: #6d7882; font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 13px; font-weight: normal; line-height: 1; text-decoration: none; text-transform: none; overflow: hidden; } body:after { content: ''; position: absolute; top: 0; right: 0; height: 100%; width: 0; background-color: #71d7f7; -webkit-transition: width .5s; -o-transition: width .5s; transition: width .5s; } body a { color: #71d7f7; } body a:hover { color: #D30C5C; } 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-mode-switcher-preview .eicon:before { content: ""; } body.elementor-editor-preview #elementor-preview { left: 0; } body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before { content: ""; } body.elementor-navigator--dock-hint:after { width: 30px; } #elementor-panel:not(.ui-resizable-resizing), #elementor-preview:not(.ui-resizable-resizing) { -webkit-transition: left 0.5s, width 0.5s; -o-transition: left 0.5s, width 0.5s; transition: left 0.5s, width 0.5s; } #elementor-loading { position: fixed; top: 0; left: 0; bottom: 0; right: 0; background: #f1f3f5; z-index: 9999; } #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-container { width: 100% !important; outline: none; z-index: 9999; } .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered { color: #6d7882; } .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear { display: none; } .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice { line-height: 1.5; font-size: 0.9em; border: none; -webkit-border-radius: 0; border-radius: 0; } .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single, .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple { border-color: #d5dadf; } .select2-container.select2-container--open .select2-selection--single, .select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single, .select2-container.select2-container--focus .select2-selection--multiple { border-color: #a4afb7; } .select2-selection { outline: none; } .select2-selection--single { height: 27px; } .select2-selection__rendered { line-height: 27px; } .select2-selection__arrow { height: 27px; top: 0; } .select2-results__option[aria-selected=true] { color: #495157; } .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) { background-color: initial; } .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-header { color: #6d7882; } #elementor-flexbox-attention-dialog .dialog-cancel { color: #39b54a; } #elementor-flexbox-attention-dialog .dialog-ok { color: #6d7882; } .elementor-nerd-box { padding: 30px; text-align: center; } .elementor-nerd-box-icon { width: 100px; margin-right: 10px; } .elementor-nerd-box-title { margin-top: 20px; font-size: 16px; font-weight: bold; line-height: 1.4; } .elementor-nerd-box-message { margin-top: 5px; line-height: 1.8; font-size: 11px; } .elementor-nerd-box .elementor-button.elementor-nerd-box-link { background-color: #D30C5C; color: #ffffff; padding: 7px 25px; margin-top: 20px; -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1); box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1); -webkit-transition: .5s; -o-transition: .5s; transition: .5s; } .elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover { background-color: #f22074; } .eicon-nerd:hover:before { content: '\e8b7'; } .eicon-nerd:active:before { content: '\e8b6'; } .elementor-loader-wrapper { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 300px; 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: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-loader { -webkit-border-radius: 7px; border-radius: 7px; padding: 40px; height: 150px; width: 150px; background-color: rgba(255, 255, 255, 0.9); -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); } .elementor-loader-boxes { height: 100%; width: 100%; position: relative; } .elementor-loader-box { position: absolute; background-color: #d5dadf; -webkit-animation: load 1.8s linear infinite; animation: load 1.8s linear infinite; } .elementor-loader-box:nth-of-type(1) { width: 20%; height: 100%; left: 0; top: 0; } .elementor-loader-box:not(:nth-of-type(1)) { right: 0; height: 20%; width: 60%; } .elementor-loader-box:nth-of-type(2) { top: 0; -webkit-animation-delay: -0.45s; animation-delay: -0.45s; } .elementor-loader-box:nth-of-type(3) { top: 40%; -webkit-animation-delay: -0.9s; animation-delay: -0.9s; } .elementor-loader-box:nth-of-type(4) { bottom: 0; -webkit-animation-delay: -1.35s; animation-delay: -1.35s; } .elementor-loading-title { color: #a4afb7; text-align: center; text-transform: uppercase; margin-top: 30px; letter-spacing: 7px; text-indent: 7px; font-size: 10px; width: 100%; } .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-weight: 500; text-transform: uppercase; outline: none; border: none; -webkit-border-radius: 3px; 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: .3s; -o-transition-duration: .3s; transition-duration: .3s; } .elementor-button:hover { border: none; } .elementor-button:not([disabled]) { cursor: pointer; } .elementor-button:not(.elementor-button-state) .elementor-state-icon { display: none; } .elementor-button.elementor-button-success { color: #fff; } .elementor-button.elementor-button-success[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-success:not([disabled]) { background-color: #39b54a; } .elementor-button.elementor-button-success:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-success:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-warning { background-color: #a4afb7; color: #fff; } .elementor-button.elementor-button-warning[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-warning:not([disabled]):hover { background-color: #b01b1b; opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-warning:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-danger { background-color: #d72b3f; color: #fff; } .elementor-button.elementor-button-danger[disabled] { background-color: #c2cbd2; } .elementor-button.elementor-button-danger:not([disabled]):hover { opacity: 0.85; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-danger:not([disabled]):active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .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; padding: 7px 21px; } .elementor-button.elementor-button-default:hover { background-color: #6d7882; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); } .elementor-button.elementor-button-default:active { -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); } .elementor-button.elementor-button-default:visited { color: #fff; } .elementor-button.elementor-button-go-pro { background-color: #D30C5C; } .elementor-button i { margin-right: 10px; } input, select, textarea, .elementor-input-style { -webkit-border-radius: 3px; border-radius: 3px; font-size: 12px; width: 100%; background: none; -webkit-box-shadow: none; box-shadow: none; color: #6d7882; border: 1px solid; outline: none; } input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) { border-color: #d5dadf; } input:focus, input:focus + .elementor-control-dynamic-switcher, select:focus, select:focus + .elementor-control-dynamic-switcher, textarea:focus, textarea:focus + .elementor-control-dynamic-switcher, .elementor-input-style:focus, .elementor-input-style:focus + .elementor-control-dynamic-switcher { border-color: #a4afb7; } input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .elementor-input-style::-webkit-input-placeholder { color: #a4afb7; } input:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder, .elementor-input-style:-ms-input-placeholder { color: #a4afb7; } input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder, .elementor-input-style::-ms-input-placeholder { color: #a4afb7; } input::placeholder, select::placeholder, textarea::placeholder, .elementor-input-style::placeholder { color: #a4afb7; } .elementor-error input, .elementor-error select, .elementor-error textarea { border-color: #b01b1b; } input { min-width: 0; } input, textarea, .elementor-input-style { padding: 5px; } textarea, .elementor-input-style { resize: vertical; } input[type="checkbox"], input[type="radio"] { height: auto; width: auto; } input[disabled] { background-color: #e6e9ec; cursor: not-allowed; opacity: 1; } select { outline: none; height: 27px; } /* * Container style */ .ps { overflow: hidden !important; overflow-anchor: none; -ms-touch-action: auto; touch-action: auto; } /* * Scrollbar rail styles */ .ps__rail-y { display: none; 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; width: 15px; /* there must be 'right' or 'left' for ps__rail-y */ right: 0; left: initial !important; /* please don't change 'position' */ position: absolute; } .ps--active-y > .ps__rail-y { display: block; background-color: transparent; } .ps:hover > .ps__rail-y, .ps--focus > .ps__rail-y, .ps--scrolling-y > .ps__rail-y { opacity: 0.6; } .ps .ps__rail-y:hover, .ps .ps__rail-y:focus, .ps .ps__rail-y.ps--clicking { opacity: 0.9; } .ps__thumb-y { background-color: #aaa; -webkit-border-radius: 6px; border-radius: 6px; -webkit-transition: background-color .2s linear, width .2s ease-in-out; -o-transition: background-color .2s linear, width .2s ease-in-out; transition: background-color .2s linear, width .2s ease-in-out; width: 6px; /* there must be 'right' for ps__thumb-y */ right: 2px; /* please don't change 'position' */ position: absolute; } .ps__rail-y:hover > .ps__thumb-y, .ps__rail-y:focus > .ps__thumb-y, .ps__rail-y.ps--clicking .ps__thumb-y { background-color: #999; width: 6px; } /* Make clicks pass-through */ #nprogress { pointer-events: none; } #nprogress .bar { background: #39b54a; position: fixed; z-index: 1031; top: 0; left: 0; width: 100%; height: 2px; } /* Fancy blur effect */ #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.0; -webkit-transform: rotate(3deg) translate(0px, -4px); -ms-transform: rotate(3deg) translate(0px, -4px); transform: rotate(3deg) translate(0px, -4px); } /* Remove these to get rid of the spinner */ #nprogress .spinner { display: none; position: fixed; z-index: 1031; top: 15px; right: 15px; } #nprogress .spinner-icon { width: 18px; height: 18px; -webkit-box-sizing: border-box; box-sizing: border-box; border: solid 2px transparent; border-top-color: #39b54a; border-left-color: #39b54a; -webkit-border-radius: 50%; border-radius: 50%; -webkit-animation: nprogress-spinner 400ms linear infinite; animation: nprogress-spinner 400ms linear infinite; } .nprogress-custom-parent { overflow: hidden; position: relative; } .nprogress-custom-parent #nprogress .spinner, .nprogress-custom-parent #nprogress .bar { position: absolute; } @-webkit-keyframes nprogress-spinner { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes nprogress-spinner { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } #nprogress .bar, #nprogress .spinner { z-index: 100000; } .elementor-panel { position: fixed; height: 100%; top: 0; bottom: 0; overflow: visible; background-color: #e6e9ec; z-index: 1; font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 13px; } .elementor-editor-active .elementor-panel { left: 0; } @media (max-width: 1439px) { .elementor-editor-preview .elementor-panel { left: -280px; } } @media (min-width: 1440px) { .elementor-editor-preview .elementor-panel { left: -300px; } } .elementor-editor-preview .elementor-panel > .ui-resizable-e, .elementor-editor-preview .elementor-panel > .ui-resizable-w { display: none; } @media (max-width: 1439px) { .elementor-panel { width: 280px; } } @media (min-width: 1440px) { .elementor-panel { width: 300px; } } .elementor-panel .ps-scrollbar-y-rail { z-index: 2; } .elementor-panel ::-moz-selection { background: #5bc0de; color: #ffffff; } .elementor-panel ::selection { background: #5bc0de; color: #ffffff; } .elementor-panel a { color: #D30C5C; } .elementor-panel h1, .elementor-panel h2, .elementor-panel h3, .elementor-panel h4, .elementor-panel h5, .elementor-panel h6 { font-size: 100%; font-weight: normal; } .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-box { margin-top: 10px; background-color: #fff; } .elementor-panel .elementor-panel-box-content { padding: 20px 20px 10px; } .elementor-panel .elementor-button { display: inline-block; } .elementor-panel .elementor-panel-alert { background-color: #fcfcfc; padding: 15px; border-left: 3px solid transparent; position: relative; font-size: 12px; font-weight: 300; font-style: italic; line-height: 1.5; text-align: left; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); } .elementor-panel .elementor-panel-alert a { color: inherit; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-info { border-color: #71d7f7; background-color: #f3fcff; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-success { border-color: #39b54a; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-warning { border-color: #fcb92c; } .elementor-panel .elementor-panel-alert.elementor-panel-alert-danger { border-color: #d72b3f; } .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; -webkit-border-radius: .25em; 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-descriptor, .elementor-panel .elementor-control-field-description { font-size: 11px; font-style: italic; line-height: 1.4; color: #a4afb7; } .elementor-panel .elementor-controls-popover { display: none; position: absolute; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; left: 0; right: 0; margin: -4px auto 5px; padding-top: 15px; width: 90%; z-index: 10000; background-color: #fff; } .elementor-panel .elementor-controls-popover:before { content: ''; position: absolute; top: -16px; right: 22px; border: 8px solid transparent; border-bottom-color: #fff; } .elementor-panel .elementor-controls-popover div.elementor-control { background-color: transparent; } .elementor-panel .elementor-controls-popover div.elementor-control:before { content: none; } .elementor-panel #elementor-controls .pojo-widget-button-collapse { display: none; } .elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-header { display: table; height: 40px; width: 100%; background-color: #D30C5C; 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 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar { font-size: 18px; } .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-category { position: relative; } .elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title { padding-top: 14px; } .elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); } .elementor-panel .elementor-panel-category:not(.elementor-active):after { content: ''; position: absolute; left: 15px; right: 15px; bottom: 0; height: 8px; background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.03)), to(transparent)); background: -webkit-linear-gradient(rgba(0, 0, 0, 0.03), transparent); background: -o-linear-gradient(rgba(0, 0, 0, 0.03), transparent); background: linear-gradient(rgba(0, 0, 0, 0.03), transparent); -webkit-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); } .elementor-panel .elementor-panel-category-title { margin: 0 15px; padding: 20px 0; position: relative; text-transform: uppercase; font-size: 11px; cursor: pointer; } .elementor-panel .elementor-panel-category-title:before { content: ""; font-family: eicons; position: absolute; right: 0; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; -o-transition: transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; } .elementor-panel .elementor-panel-category-items { overflow: hidden; padding: 0 5px; display: none; } .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, 0.1); box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); } .elementor-panel .elementor-panel-scheme-buttons .elementor-button { font-family: Roboto, Arial, Helvetica, Verdana, sans-serif; font-size: 11px; font-weight: 400; } .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; } .elementor-panel .elementor-panel-scheme-reset .elementor-button, .elementor-panel .elementor-panel-scheme-discard .elementor-button { color: #a4afb7; background: none; } .elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items { position: relative; display: grid; grid-template-columns: repeat(4, 27px); -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .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 select, .elementor-panel .elementor-panel-scheme-typography-item-value input { width: 100%; } .elementor-panel .elementor-panel-scheme-item: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; -webkit-border-radius: 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 { color: #39b54a; } .elementor-panel #elementor-panel-schemes-disabled a:hover { text-decoration: underline; } .elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-page-menu { padding: 25px 15px; } .elementor-panel .elementor-panel-menu-group-title { text-transform: uppercase; font-size: 11px; } .elementor-panel .elementor-panel-menu-items { margin: 15px 0 25px; -webkit-border-radius: 5px; border-radius: 5px; overflow: hidden; } .elementor-panel .elementor-panel-menu-item { display: table; width: 100%; height: 40px; cursor: pointer; margin-bottom: 1px; background-color: #fff; } .elementor-panel .elementor-panel-menu-item:hover { background-color: rgba(255, 255, 255, 0.8); } .elementor-panel .elementor-panel-menu-item > * { display: table-cell; vertical-align: middle; } .elementor-panel .elementor-panel-menu-item-icon { text-align: center; width: 50px; color: #a4afb7; } .elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link { font-size: 18px; } .elementor-panel .elementor-panel-menu-item-title { font-weight: 500; } .elementor-panel .elementor-panel-menu-item-title > span { color: #39b54a; } .elementor-panel .elementor-panel-menu-item a { color: #6d7882; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard { background-color: #0085ba; color: #fff; text-transform: uppercase; font-size: 12px; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover { background-color: #0073a1; } .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title, .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon { color: #fff; } .elementor-panel .elementor-control.elementor-control-clear_page { background-color: transparent; } .elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html { 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: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-panel .elementor-panel-navigation { background-color: #ffffff; -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 0 8px rgba(0, 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.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff)); background-image: -webkit-linear-gradient(top, #f1f3f5, #fff); background-image: -o-linear-gradient(top, #f1f3f5, #fff); background-image: linear-gradient(to bottom, #f1f3f5, #fff); border-bottom: 3px solid #D30C5C; } .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: eicons; font-size: 16px; display: block; margin-bottom: 6px; } .elementor-panel .elementor-tab-control-content a:before { content: '\e92c'; } .elementor-panel .elementor-tab-control-style a:before { content: '\e921'; } .elementor-panel .elementor-tab-control-advanced a:before, .elementor-panel .elementor-tab-control-settings a:before, .elementor-panel .elementor-tab-control-general_style a:before { content: '\e916'; } .elementor-panel .elementor-tab-control-responsive a:before { content: '\e885'; } .elementor-panel .elementor-tab-control-layout a:before, .elementor-panel .elementor-tab-control-column a:before { content: '\e899'; } .elementor-panel .elementor-tab-control-lightbox a:before { content: '\e922'; } .elementor-panel #elementor-panel__editor__help { padding: 50px 25px; 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-panel__editor__help__link { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; color: #6d7882; font-size: 12px; font-weight: 500; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel #elementor-panel__editor__help__link i { padding: 0 5px; color: #a4afb7; font-size: 18px; position: relative; } .elementor-panel #elementor-panel__editor__help__link i:after { content: ''; position: absolute; height: 13px; width: 13px; top: 3px; bottom: 0; left: 8px; right: 0; -webkit-border-radius: 50%; border-radius: 50%; z-index: -1; } .elementor-panel #elementor-panel__editor__help__link:hover { color: #495157; } .elementor-panel #elementor-panel__editor__help__link:hover i { color: #71d7f7; } .elementor-panel #elementor-panel__editor__help__link:hover i:before { content: '\e941'; } .elementor-panel #elementor-panel__editor__help__link:hover i:after { background: #fff; } .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 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update { border-right: 1px solid #2d8739; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i { margin-right: 5px; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options { float: left; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i { margin: auto; } .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, 0.1); box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1); cursor: default; z-index: 10000; } .elementor-panel .elementor-panel-footer-sub-menu { -webkit-border-radius: 5px; 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.elementor-disabled .elementor-icon, .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title { color: #6d7882; } .elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child) { margin-bottom: 1px; } .elementor-panel .elementor-panel-footer-sub-menu-item:hover { background-color: rgba(0, 0, 0, 0.2); } .elementor-panel .elementor-panel-footer-sub-menu-item.active { background-color: rgba(0, 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-responsive > i { display: block; height: 100%; line-height: 40px; } .elementor-panel #elementor-panel-footer-saver-publish { width: 80px; } .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i { margin-right: 0; } .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label { display: none; } .elementor-panel #elementor-panel-footer-saver-options { width: 35px; border-left: 1px solid #495157; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper { font-size: 11px; font-style: italic; color: #a4afb7; padding: 5px 0 15px; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon { display: none; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time { border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; cursor: pointer; } .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover { border-bottom-color: inherit; } .elementor-panel .elementor-disabled { cursor: default; } .elementor-panel #elementor-panel-saver-button-preview a { color: #a4afb7; } .elementor-panel #elementor-panel-saver-button-publish, .elementor-panel #elementor-panel-saver-button-save-options { font-size: 11px; text-transform: uppercase; height: 26px; } .elementor-panel #elementor-panel-saver-button-publish.elementor-disabled, .elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled { background-color: #556068; color: #a4afb7; } .elementor-panel #elementor-panel-saver-button-publish { width: 100%; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-panel #elementor-panel-saver-button-save-options { width: 25px; } #elementor-panel-elements-navigation .elementor-panel-navigation-tab { text-align: center; padding: 10px 0; font-size: 11px; text-transform: uppercase; cursor: pointer; } #elementor-panel-elements { overflow: hidden; padding: 0 5px; } #elementor-panel-state-loading { display: none; } body.elementor-panel-loading #elementor-panel-state-loading { position: absolute; top: 0; left: 0; height: 100%; width: 100%; 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; background-color: rgba(255, 255, 255, 0.5); z-index: 1; } #elementor-panel-state-loading .eicon-loading { font-size: 25px; color: #71d7f7; } #elementor-panel-elements-search-wrapper { position: relative; margin: 10px 10px 5px; } #elementor-panel-elements-search-input { background-color: rgba(255, 255, 255, 0.7); font-size: 11px; padding: 10px 10px 10px 29px; font-style: italic; color: #a4afb7; border: none; -webkit-transition: all 1s; -o-transition: all 1s; transition: all 1s; -webkit-border-radius: 3px; border-radius: 3px; appearance: none; -webkit-appearance: none; -moz-appearance: none; } #elementor-panel-elements-search-input + i { position: absolute; left: 10px; top: 50%; color: #a4afb7; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-panel-elements-search-input:focus { background-color: white; padding-right: 15px; } .elementor-panel .elementor-element { -webkit-border-radius: 3px; border-radius: 3px; background-color: #fff; cursor: move; position: relative; } .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--promotion .elementor-element { cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .elementor-panel .elementor-element .icon, .elementor-panel .elementor-element .title { color: #556068; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-panel .elementor-element:hover { -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); } .elementor-panel .elementor-element:hover .icon, .elementor-panel .elementor-element:hover .title { color: #D30C5C; } .elementor-panel .elementor-element .icon { font-size: 28px; padding-top: 15px; } .elementor-panel .elementor-element .elementor-element-title-wrapper { display: table; width: 100%; } .elementor-panel .elementor-element .title { font-size: 11px; display: table-cell; vertical-align: middle; height: 40px; } .elementor-panel .elementor-element > .eicon-lock { position: absolute; top: 5px; right: 5px; color: #e6e9ec; } #elementor-element--promotion__dialog { position: absolute; width: 300px; z-index: 1; background-color: #fff; -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -webkit-border-radius: 3px; border-radius: 3px; } #elementor-element--promotion__dialog:after { content: ''; position: absolute; top: 15px; right: 100%; -webkit-transform: scaleY(0.7); -ms-transform: scaleY(0.7); transform: scaleY(0.7); border: 10px solid transparent; border-right-color: #fff; } #elementor-element--promotion__dialog__title { font-size: 14px; } #elementor-element--promotion__dialog .dialog-header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding: 20px; color: #495157; border-bottom: 1px solid #e6e9ec; font-weight: 500; } #elementor-element--promotion__dialog .dialog-header i { color: #a4afb7; } #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; margin-left: 10px; font-size: 14px; } #elementor-element--promotion__dialog .dialog-header .eicon-close { cursor: pointer; } #elementor-element--promotion__dialog .dialog-message { padding: 20px; } #elementor-element--promotion__dialog .dialog-buttons-wrapper { padding: 0 20px 20px 20px; } #elementor-element--promotion__dialog .dialog-button { width: 100%; padding: 6.5px; font-size: 12px; } #elementor-element--promotion__dialog .dialog-button::-moz-focus-inner { border: 0; } #elementor-panel-inner { position: relative; height: 100%; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); } #elementor-panel-content-wrapper { position: absolute; bottom: 40px; top: 40px; left: 0; width: 100%; } .elementor-panel-container { clear: both; padding-left: 15px; padding-right: 15px; } .media-modal.wp-core-ui input { width: auto; } .media-modal.wp-core-ui select { width: initial; } .media-modal.wp-core-ui fieldset { padding: 0; border: 0; } .media-modal.wp-core-ui .wp-clearfix::after { content: ''; display: table; clear: both; } #elementor-panel-get-pro-elements .elementor-nerd-box-message { margin-top: 10px; } #elementor-panel-get-pro-elements .elementor-nerd-box-icon { margin-top: 20px; } .elementor-control { background-color: #fff; position: relative; padding: 0 20px 15px; } .elementor-control a { font-weight: 500; text-decoration: none; border-bottom: 1px dotted transparent; -webkit-transition: all ease-in-out .3s; -o-transition: all ease-in-out .3s; transition: all ease-in-out .3s; } .elementor-control a:hover { border-bottom-color: inherit; } .elementor-control .elementor-control-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } .elementor-control .elementor-control-title { font-size: 12px; line-height: 1; margin-right: 5px; } .elementor-control .elementor-control-spinner { 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-control.elementor-control-type-divider { padding: 0; background-color: transparent; } .elementor-control.elementor-control-type-divider .elementor-control-content { border-width: 0; border-color: #e6e9ec; border-style: solid; border-top-width: 1px; background-color: #ffffff; height: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp { margin-top: 15px; } .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before { content: ''; height: 1px; display: block; margin-bottom: 15px; background-color: transparent; } .elementor-control.elementor-control-separator-before { padding-top: 15px; } .elementor-control.elementor-control-separator-before:before { content: ''; position: absolute; height: 1px; width: 100%; top: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after:after { content: ''; position: absolute; height: 1px; width: 100%; bottom: 0; left: 0; background-color: #e6e9ec; } .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default { padding-top: 15px; } .elementor-control.elementor-control-deprecated { color: #b01b1b; } .elementor-control.elementor-control-deprecated .elementor-control-field-description { color: #b01b1b; } .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title { display: none; } .elementor-control.elementor-hidden-control { display: none; } .elementor-control.elementor-control-type-heading .elementor-control-title { font-weight: bold; margin: 0; } body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop { display: none; } body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet { display: none; } body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile { display: none; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper { position: relative; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select { appearance: none; -webkit-appearance: none; -moz-appearance: none; font-size: 12px; 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: 5px; padding-right: 20px; cursor: pointer; } .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after { font-family: eicons; content: '\e8ad'; font-size: 12px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 5px; pointer-events: none; } .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message { margin-top: 5px; } .elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before { content: '\e92a'; } .elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before, .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before { content: ""; } .elementor-panel-heading { display: table; table-layout: fixed; height: 40px; padding: 0 20px; width: 100%; border-bottom: 1px solid #e6e9ec; cursor: pointer; } .elementor-panel-heading > * { display: table-cell; vertical-align: middle; } .elementor-panel-heading-toggle { width: 20px; color: #495157; } .elementor-panel-heading-title { color: #495157; font-weight: bold; } .elementor-control-wp { line-height: 1.5; } .elementor-control-wp p { margin: 15px 0; } .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-label-block > .elementor-control-content > .elementor-control-field { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { width: 100%; margin-top: 10px; } .elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; } .elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-left: auto; } .elementor-control-field-description { margin-top: 10px; } .elementor-group-control-attachment_alert .elementor-control-field-description { margin-top: 0; } .elementor-required { color: #b01b1b; } .elementor-units-choices { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; } .elementor-units-choices input { display: none; } .elementor-units-choices input:not(:checked) + label { color: #a4afb7; } .elementor-units-choices input:checked + label { text-decoration: underline; } .elementor-units-choices label { cursor: pointer; padding: 0 2px; text-transform: uppercase; font-size: 9px; } .elementor-control-responsive-switchers { margin-right: 5px; --selected-option: 0; --pointer-position: var(--selected-option); position: relative; width: 2em; height: 2em; } .elementor-control-responsive-switchers__holder { position: absolute; width: 100%; top: 0; background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; border: 1px transparent solid; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open { z-index: 11000; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder { top: -webkit-calc(-1 * var(--selected-option) * 2em); top: calc(-1 * var(--selected-option) * 2em); -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-responsive-switcher { 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; z-index: 2; cursor: pointer; height: 0; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transition: 0.15s; -o-transition: 0.15s; transition: 0.15s; font-size: 12px; } a.elementor-responsive-switcher { color: #a4afb7; } a.elementor-responsive-switcher:hover { color: #71d7f7; } .elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop { color: #71d7f7; } .elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet { color: #71d7f7; } .elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile { height: 2em; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; } .elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile { color: #71d7f7; } .elementor-update-preview { margin: 15px 15px 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; } .elementor-update-preview-button-wrapper { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; } .elementor-update-preview-button { padding: 8px 15px; text-transform: uppercase; } .elementor-control-direction-ltr input, .elementor-control-direction-ltr textarea { direction: ltr; } .elementor-control-direction-rtl input, .elementor-control-direction-rtl textarea { direction: rtl; } .elementor-control-type-button .elementor-control-input-wrapper { text-align: right; } .elementor-control-type-button .elementor-button { width: auto; height: 26px; } .elementor-control-type-choose.elementor-label-block .elementor-choices { width: 100%; } .elementor-choices { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 27px; line-height: 27px; text-align: center; border-spacing: 1px; -webkit-border-radius: 3px; border-radius: 3px; overflow: hidden; } .elementor-choices .elementor-choices-label { border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-left: 1px solid #d5dadf; border-right: none; font-size: 12px; -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; cursor: pointer; overflow: hidden; } .elementor-choices .elementor-choices-label:nth-child(2) { -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-choices .elementor-choices-label:last-child { border-right: 1px solid #d5dadf; -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-choices input { display: none; } .elementor-choices input:checked + .elementor-choices-label { color: #fff; background-color: #a4afb7; border-color: #a4afb7; } .elementor-label-inline .elementor-choices { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .rtl .elementor-control-text_align .elementor-choices, .rtl .elementor-control-align .elementor-choices, .rtl .elementor-control-position .elementor-choices { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2), .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) { border-right: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child, .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child { border-right: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-color .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; } .elementor-control-type-color .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-color.elementor-control-dynamic .pickr { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-group-control-css-filter .elementor-slider { height: 6px; -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); } .elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper { margin-top: 0; margin-bottom: 5px; } .elementor-group-control-blur .elementor-slider { background: url("../images/blur.png"); -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-group-control-contrast .elementor-slider { background: url("../images/contrast.png"); -webkit-background-size: 100% 100%; background-size: 100% 100%; } .elementor-group-control-hue .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet)); background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); } .elementor-group-control-saturate .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red)); background-image: -webkit-linear-gradient(left, gray, red); background-image: -o-linear-gradient(left, gray, red); background-image: linear-gradient(to right, gray, red); } .elementor-group-control-brightness .elementor-slider { background-image: -webkit-gradient(linear, left top, right top, from(black), to(white)); background-image: -webkit-linear-gradient(left, black, white); background-image: -o-linear-gradient(left, black, white); background-image: linear-gradient(to right, black, white); } .elementor-control-type-dimensions .elementor-control-dimensions { overflow: hidden; } .elementor-control-type-dimensions li { float: left; width: 20%; } .elementor-control-type-dimensions li input, .elementor-control-type-dimensions li .elementor-link-dimensions { display: block; text-align: center; width: 100%; border-color: #d5dadf; height: 27px; } .elementor-control-type-dimensions li input { border-left: none; -webkit-border-radius: 0; border-radius: 0; padding: 4px 0; } .elementor-control-type-dimensions li input:focus { border-left: solid 1px; border-color: #a4afb7; margin-left: -1px; width: -webkit-calc(100% + 1px); width: calc(100% + 1px); } .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label { color: #a4afb7; } .elementor-control-type-dimensions li .elementor-link-dimensions { border: 1px solid #d5dadf; border-left: none; background-color: #fff; padding: 0; outline: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; cursor: pointer; } .elementor-control-type-dimensions li:first-child input { border-left: 1px solid #d5dadf; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-dimensions li:first-child input:focus { border-color: #a4afb7; margin-left: 0; width: 100%; } .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-control-type-dimensions .elementor-link-dimensions.unlinked { background-color: #fff; } .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) { background-color: #a4afb7; border-color: #a4afb7; } .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked { display: none; } .elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked { color: #fff; } .elementor-control-type-icons .elementor-control-media__preview > * { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-icons .elementor-control-media__preview i { font-size: 70px; color: #6d7882; } .elementor-control-type-icons .elementor-control-media__preview svg { height: 75%; } .elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload { font-size: 15px; } .elementor-control-type-gallery .elementor-control-media__content { border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-status { font-size: 12px; height: 27px; padding-left: 10px; border-bottom: 1px solid #d5dadf; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-gallery .elementor-control-gallery-status > * { 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-control-type-gallery .elementor-control-gallery-status-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-gallery .elementor-control-gallery-content { position: relative; overflow: hidden; } .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit { opacity: 0; } .elementor-control-type-gallery .elementor-control-gallery-thumbnails { display: grid; grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); grid-gap: 10px; cursor: pointer; padding: 10px; } .elementor-control-type-gallery .elementor-control-gallery-thumbnail { width: 48px; height: 48px; -webkit-background-size: cover; background-size: cover; background-position: 50% 50%; } .elementor-control-type-gallery .elementor-control-gallery-edit { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(109, 120, 130, 0.3); padding: 10px; font-size: 11px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; pointer-events: none; cursor: pointer; opacity: 1; } .elementor-control-type-gallery .elementor-control-gallery-edit span { position: absolute; top: 10px; right: 10px; width: 21px; height: 21px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-gallery .elementor-control-gallery-edit span i { font-size: 11px; padding: 5px; } .elementor-control-type-gallery .elementor-control-gallery-add { width: 48px; height: 48px; color: #fff; background-color: #d5dadf; font-size: 14px; -webkit-border-radius: 0; border-radius: 0; } .elementor-control-type-gallery .elementor-control-gallery-add:hover { background-color: #c2cbd2; } .elementor-control-type-gallery .elementor-control-gallery-add i { margin: 0; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails, .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit { display: none; } .elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content { padding: 10px; } .elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add { display: none; } .elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-gallery .elementor-control-gallery-clear { cursor: pointer; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .elementor-control-type-gallery .elementor-control-gallery-clear:hover { color: #b01b1b; } .elementor-control-type-gallery .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-hidden { display: none !important; } .elementor-control-type-icon .select2-selection__rendered .eicon { margin-right: 3px; } .elementor-control-type-image_dimensions .elementor-control-field-description { margin: 0 0 15px; line-height: 1.4; } .elementor-control-type-image_dimensions .elementor-control-input-wrapper { overflow: hidden; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field { width: 65px; float: left; } .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description { color: #a4afb7; } .elementor-control-type-image_dimensions .elementor-image-dimensions-separator { width: 20px; text-align: center; float: left; padding-top: 4px; } .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-control-type-image_dimensions .elementor-image-dimensions-apply-button { float: right; height: 27px; width: 65px; } .elementor-control-media.elementor-media-empty .elementor-control-media-area { display: none; } .elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button { display: none; } .elementor-control-media .elementor-control-input-wrapper { border: 1px solid #d5dadf; } .elementor-control-media .eicon-plus-circle { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: #fff; font-size: 20px; } .elementor-control-media-upload-button { background-color: #d5dadf; } .elementor-control-media__preview { height: 100%; -webkit-background-size: cover; background-size: cover; background-position: center; } .elementor-control-media-area { background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); background-image: linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd), linear-gradient(45deg, #ddd 25%, transparent 25%, transparent 75%, #ddd 75%, #ddd); -webkit-background-size: 16px 16px; background-size: 16px 16px; background-position: 0 0, 8px 8px; background-color: #f6f6f6; } .elementor-control-media-area:not(:hover) .elementor-control-media__remove { display: none; } .elementor-control-media-area .eicon-video-camera { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: rgba(255, 255, 255, 0.7); font-size: 21px; } .elementor-control-media .elementor-control-media__content { cursor: pointer; overflow: hidden; } .elementor-control-media .elementor-control-media__content:hover:after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, 0.2); pointer-events: none; } .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools { bottom: -30px; } .elementor-control-media__content { -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools { position: absolute; bottom: 0; left: 0; right: 0; height: 27px; -webkit-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; transition: all .2s ease-in-out; } .elementor-control-media__tools > *:not(:first-child) { margin-left: 1px; } .elementor-control-media__tool { 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; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; color: #fff; background-color: rgba(109, 120, 130, 0.85); font-size: 11px; -webkit-transition: background .3s; -o-transition: background .3s; transition: background .3s; } .elementor-control-media__tool:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-media__remove { position: absolute; z-index: 1; 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; top: 10px; right: 10px; width: 20px; height: 20px; font-size: 11px; background-color: rgba(255, 255, 255, 0.9); color: #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; } .elementor-control-media__remove:hover { background-color: white; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); } .elementor-control-media .elementor-control-dynamic-switcher { border: none; -webkit-border-radius: 0; border-radius: 0; background-color: rgba(109, 120, 130, 0.85); color: #fff; } .elementor-control-media .elementor-control-dynamic-switcher:hover { background-color: rgba(109, 120, 130, 0.95); } .elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper { border: none; } .elementor-control-type-number.elementor-control-dynamic input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; border-right: none; } .elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-order .elementor-control-oreder-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-order input { display: none; } .elementor-control-type-order input:checked + .elementor-control-order-label { -webkit-transform: scale(1, -1); -ms-transform: scale(1, -1); transform: scale(1, -1); } .elementor-control-type-order select { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label { border-color: #d5dadf; } .elementor-control-type-order select:focus ~ .elementor-control-order-label { border-color: #a4afb7; } .elementor-control-type-order .elementor-control-order-label { position: relative; padding: 0; width: 40px; border: 1px solid; font-size: 10px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; margin-left: -3px; background-color: #fff; cursor: pointer; } .elementor-control-type-order .elementor-control-order-label i { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-control-type-popover_toggle input { display: none; } .elementor-control-type-popover_toggle label { cursor: pointer; } .elementor-control-type-popover_toggle .elementor-control-input-wrapper { direction: rtl; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label { color: #71d7f7; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label { display: none; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label { color: #c2cbd2; margin-right: 5px; } .elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label { height: 27px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #d5dadf; } .elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) { padding-right: 10px; padding-left: 10px; padding-bottom: 10px; } .elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove { display: none; } .elementor-control-type-repeater .elementor-repeater-fields { margin: 10px 0; } .elementor-control-type-repeater .elementor-repeater-row-controls { border: 1px solid #d5dadf; border-top-width: 0; padding-top: 15px; } .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) { display: none; } .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-control-type-repeater .elementor-repeater-row-tools:hover { background-color: #a4afb7; } .elementor-control-type-repeater .elementor-repeater-row-tools > div { display: table-cell; text-align: center; vertical-align: middle; cursor: pointer; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) { background-color: #fff; } .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover { opacity: .95; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title { text-align: left; padding: 0 10px; font-size: 12px; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i, .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg { margin-right: 5px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] { width: 1em; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool { width: 40px; } .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable { cursor: move; width: 10px; color: #fff; } .elementor-control-type-repeater .elementor-button-wrapper { text-align: center; padding-top: 5px; } .elementor-control-type-section { margin-top: 10px; padding: 0; } .elementor-control-type-section.elementor-open { padding-bottom: 15px; } .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before { display: none; } .elementor-shadow-box .elementor-shadow-slider { margin-top: 10px; } .elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-control-type-slider.elementor-control-dynamic input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper { display: block; } .elementor-control-type-slider--multiple { padding-bottom: 40px; } .elementor-control-type-slider--multiple .elementor-slider { margin-top: 12px; width: 98%; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle { -webkit-border-radius: 0; border-radius: 0; width: 10px; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(4px); -ms-transform: translateY(calc(50% - 14px)) translateX(4px); transform: translateY(calc(50% - 14px)) translateX(4px); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after { content: ''; position: absolute; top: 2px; height: 12px; width: 11px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); background-color: #fff; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after { left: 5px; -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after { right: 5px; -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); } .elementor-control-type-slider .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-slider .elementor-control-input-wrapper { 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-control-type-slider .elementor-dynamic-cover { margin-top: 10px; } .elementor-slider { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 4px; background-color: #d5dadf; -webkit-border-radius: 5px; border-radius: 5px; position: relative; cursor: pointer; } .elementor-slider-input { margin-left: 10px; } .elementor-slider__extra { position: relative; } .elementor-slider__labels { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } .elementor-slider__label { font-size: 9px; color: #c2cbd2; } .elementor-slider__scales { position: absolute; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: space-evenly; -webkit-justify-content: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; width: 100%; margin-top: 4px; } .elementor-slider__scale { width: 1px; height: 21px; background-color: #a4afb7; } .elementor-slider .noUi-handle { height: 16px; width: 16px; background-color: #fff; right: 0; -webkit-transform: translateY(-webkit-calc(50% - 14px)) translateX(8px); -ms-transform: translateY(calc(50% - 14px)) translateX(8px); transform: translateY(calc(50% - 14px)) translateX(8px); position: absolute; -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3); -webkit-border-radius: 50%; border-radius: 50%; } .elementor-slider .noUi-connects { position: absolute; width: 100%; height: 4px; } .elementor-slider .noUi-connect { position: absolute; z-index: 0; top: 0; left: 0; height: 100%; width: 100%; will-change: transform; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; background-color: #a4afb7; } .elementor-slider .noUi-tooltip { position: absolute; top: -webkit-calc(100% + 5px); top: calc(100% + 5px); left: -webkit-calc(50% - 4px); left: calc(50% - 4px); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); font-size: 10px; } .elementor-control-type-structure .elementor-control-field { display: initial; } .elementor-control-type-structure .elementor-control-structure-preset { padding: 3px; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; cursor: pointer; height: 50px; } .elementor-control-type-structure .elementor-control-structure-preset svg { height: 100%; } .elementor-control-type-structure .elementor-control-structure-preset path { fill: #e6e9ec; } .elementor-control-type-structure .elementor-control-structure-reset { padding: 15px 20px 0; font-size: 11px; cursor: pointer; color: #a4afb7; border-top: 1px solid #e6e9ec; margin: 0 -20px; } .elementor-control-type-structure .elementor-control-structure-title { margin: 10px -20px 0; } .elementor-control-type-structure .elementor-control-structure-title:before { height: 10px; -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); } .elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input { display: none; } .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path { fill: #a4afb7; } .elementor-control-type-structure .elementor-control-structure-preset-wrapper { margin-bottom: 15px; } .elementor-control-type-structure .elementor-control-structure-preset-title { text-align: center; padding-top: 5px; font-style: italic; font-size: 11px; color: #a4afb7; } .elementor-control-type-switcher .elementor-control-input-wrapper { text-align: right; } .elementor-control-type-switcher .elementor-switch { position: relative; display: inline-block; vertical-align: top; height: 20px; background-color: white; -webkit-border-radius: 18px; border-radius: 18px; cursor: pointer; } .elementor-control-type-switcher .elementor-switch-input { display: none; } .elementor-control-type-switcher .elementor-switch-label { position: relative; display: block; height: inherit; font-size: 7px; text-transform: uppercase; background: #eceeef; -webkit-border-radius: inherit; border-radius: inherit; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15); -webkit-transition: 0.15s ease-out; -o-transition: 0.15s ease-out; transition: 0.15s ease-out; -webkit-transition-property: opacity, background; -o-transition-property: opacity, background; transition-property: opacity, background; } .elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after { position: absolute; top: 0; width: 50%; text-align: center; line-height: 20px; -webkit-transition: inherit; -o-transition: inherit; transition: inherit; } .elementor-control-type-switcher .elementor-switch-label:before { content: attr(data-off); right: 3px; color: #a4afb7; text-shadow: 0 1px rgba(255, 255, 255, 0.5); } .elementor-control-type-switcher .elementor-switch-label:after { content: attr(data-on); left: 3px; color: white; text-shadow: 0 1px rgba(0, 0, 0, 0.2); opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label { background: #71d7f7; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before { opacity: 0; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after { opacity: 1; } .elementor-control-type-switcher .elementor-switch-handle { position: absolute; top: 1px; left: 1px; width: 18px; height: 18px; background: white; -webkit-border-radius: 10px; border-radius: 10px; -webkit-transition: left 0.15s ease-out; -o-transition: left 0.15s ease-out; transition: left 0.15s ease-out; } .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle { left: initial; right: 1px; -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); } .elementor-control-type-tabs { font-size: 0.8em; text-transform: uppercase; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-type-tab { text-align: center; width: 100%; padding: 0; line-height: 27px; border-top: 1px solid #d5dadf; border-bottom: 1px solid #d5dadf; border-right: 1px solid #d5dadf; cursor: pointer; } .elementor-control-type-tab:first-child { border-left: 1px solid #d5dadf; -webkit-border-top-left-radius: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; border-bottom-left-radius: 3px; } .elementor-control-type-tab:last-child { -webkit-border-top-right-radius: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; border-bottom-right-radius: 3px; } .elementor-control-type-tab.elementor-tab-active { background-color: #a4afb7; border-color: #a4afb7; color: #ffffff; } .elementor-tab-close { display: none !important; } .elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; border-left-width: 0; } .elementor-control-type-textarea .elementor-control-dynamic-switcher { -webkit-border-radius: 0px 3px; border-radius: 0px 3px; } .elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher { position: absolute; top: 0; right: 0; } .elementor-control-type-textarea .elementor-control-input-wrapper { position: relative; } .elementor-control-type-textarea textarea { display: block; } .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher { display: none; } .elementor-control-type-url.elementor-control-dynamic .elementor-input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-field { position: relative; } .elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-url .elementor-control-input-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; } .elementor-control-type-url .elementor-control-url-more { 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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; border: 1px solid #d5dadf; border-left: none; cursor: pointer; } .elementor-control-type-url .elementor-control-url-more i { font-size: 12px; } .elementor-control-type-url .elementor-control-url-more-options { display: none; padding-top: 10px; } .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description { margin-top: 10px; } .elementor-control-type-url .elementor-control-url-option { 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-control-type-url .elementor-control-url-option:not(:last-child) { padding-bottom: 10px; } .elementor-control-type-url .elementor-control-url-option input, .elementor-control-type-url .elementor-control-url-option label { cursor: pointer; } .elementor-control-type-url .elementor-control-url-option input { margin: 0; padding: 0; -webkit-border-radius: 2px; border-radius: 2px; margin-right: 5px; -webkit-appearance: none; -moz-appearance: none; outline: none; content: none; height: 15px; width: 15px; border: 1px solid #d5dadf; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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-control-type-url .elementor-control-url-option input:checked { background: #71d7f7; border: none; } .elementor-control-type-url .elementor-control-url-option input:checked:before { display: block; content: ""; width: 4px; height: 7px; border: solid white; border-width: 0 2px 2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } .elementor-control-type-url .elementor-control-url-option label { font-size: 12px; } .elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more { display: none; } .elementor-control-type-url .elementor-control-url-external-show .elementor-input, .elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } .elementor-control-type-url .elementor-control-url-autocomplete-spinner { display: none; position: absolute; top: 5px; right: 0px; width: 10px; height: 10px; font-size: 10px; color: #D4D4D4; } .elementor-control-type-url .elementor-control-url__custom-attributes { margin-top: 10px; } .elementor-control-type-url .elementor-control-url__custom-attributes label { display: block; } .elementor-control-type-url .elementor-control-url__custom-attributes input { width: 100%; margin-top: 10px; } .elementor-control-type-url .elementor-input { direction: ltr; } .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more { border-color: #d5dadf; } .elementor-control-type-url .elementor-input:focus ~ div { border-color: #a4afb7; } .elementor-control-type-url .elementor-control-dynamic-switcher { border-left: none; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-autocomplete-menu { position: absolute; background: #fff; color: #495157; border: 1px solid #a4afb7; margin: 0; list-style: none; padding: 4px 0; height: auto; width: 100%; min-width: 260px; max-width: 300px; max-height: 200px; overflow-y: auto; -webkit-border-radius: 3px; border-radius: 3px; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; cursor: default; z-index: 1; } .elementor-autocomplete-menu .ui-menu-item { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-self: baseline; -ms-flex-item-align: baseline; align-self: baseline; padding: 5px 8px; font-size: 12px; width: 100%; line-height: 1.2; cursor: pointer; } .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus { background: #e6e9ec; } .elementor-autocomplete-menu .elementor-autocomplete-item-info { font-size: 10px; padding-top: 2px; } .elementor-control-type-wp_widget .widget-inside { display: block; } .elementor-control-type-wp_widget .quicktags-toolbar input { width: auto; } .elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container { margin-top: 10px; } .elementor-control-type-wysiwyg * { -webkit-box-sizing: content-box; box-sizing: content-box; } .elementor-control-type-wysiwyg .wp-editor-container { border: 1px solid #e6e9ec; } .elementor-control-type-wysiwyg .wp-editor-tabs { border: 1px solid #d5dadf; border-bottom: none; -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-control-type-wysiwyg #insert-media-button { height: initial; line-height: 24px; font-size: 10px; background-color: #e6e9ec; min-height: initial; } .elementor-control-type-wysiwyg .ed_button { height: 22px; width: initial; } .elementor-control-type-wysiwyg .wp-media-buttons-icon { height: 14px; margin: 0; } .elementor-control-type-wysiwyg .wp-media-buttons-icon:before { font-size: 14px; } .elementor-control-type-wysiwyg .wp-switch-editor { position: static; border: none; margin: 0; color: #6d7882; font-size: 10px; padding: 3px 9px 4px; } .elementor-control-type-wysiwyg .switch-html { border: solid #d5dadf; border-width: 0 1px; } .elementor-control-type-wysiwyg .html-active .switch-tmce { background-color: transparent; } .elementor-control-type-wysiwyg .html-active .switch-html { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-tmce { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .tmce-active .switch-html { background-color: transparent; } .elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar { background-color: #e6e9ec; } .elementor-control-type-wysiwyg .mce-toolbar-grp > div { padding: 0 3px; } .elementor-control-type-wysiwyg .elementor-wp-editor { -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-control-type-wysiwyg .mce-ico { color: #6d7882; font-size: 16px; } .elementor-control-type-wysiwyg .mce-btn { margin-right: 0; margin-left: 0; } .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active { border-color: #d5dadf; } .elementor-control-type-wysiwyg .mce-path { padding: 5px 10px; } .elementor-control-type-wysiwyg .mce-path-item { font-size: 12px; color: #6d7882; } .elementor-control-type-wysiwyg .elementor-control-dynamic-switcher { border: none; } .elementor-control-type-text .elementor-control-dynamic-switcher { border-left-width: 0; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } .elementor-control-type-text input { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } #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, 0.1); box-shadow: 3px 1px 5px rgba(0, 0, 0, 0.1); cursor: pointer; } #elementor-mode-switcher:hover { background-color: #D30C5C; color: #FFFFFF; } #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 .eicon { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } #elementor-mode-switcher-preview-input { display: none; } .elementor-revision-item__wrapper { 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; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-revision-item__wrapper.current { font-weight: bold; } .elementor-revision-item__wrapper .elementor-revision-item__tools-current { color: #71d7f7; } .elementor-revision-item:hover:not(.elementor-revision-current-preview) { background-color: rgba(230, 233, 236, 0.3); } .elementor-revision-item-loading .elementor-revision-item__tools-current { display: none; } .elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner { display: none; } .elementor-revision-item__gravatar { -webkit-border-radius: 50%; 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-meta { padding-top: 5px; font-size: 10px; font-weight: bold; } .elementor-revision-current-preview { background-color: #e6e9ec; } #elementor-restore-autosave-dialog.dialog-widget { background-color: rgba(0, 0, 0, 0.3); } #elementor-panel-revisions-loading { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } #elementor-panel-revisions-loading .eicon-loading { font-size: 50px; color: #a4afb7; } .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; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-history-item:hover { background-color: rgba(230, 233, 236, 0.3); } .elementor-history-item:hover .elementor-history-item__icon .eicon:before { content: '\e924'; } .elementor-history-item-applied { color: #a4afb7; } .elementor-history-item-current { background: #e6e9ec; cursor: default; } .elementor-history-item-current .elementor-history-item__icon .eicon:before, .elementor-history-item-current:hover .elementor-history-item__icon .eicon:before { content: '\e90e'; } .elementor-history-item__details { width: 95%; } .elementor-history-item__title { font-weight: bold; } .elementor-history-item__subtitle, .elementor-history-item__action { 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-top: 5px; } #elementor-panel-history { padding: 20px 20px 15px; } #elementor-panel-history.elementor-empty .elementor-history-revisions-message { padding-top: 20px; } #elementor-panel-history:not(.elementor-empty) { background-color: #fff; margin-top: 10px; } #elementor-panel-history-no-items, #elementor-panel-revisions-no-revisions { text-align: center; } #elementor-panel-history-no-items .elementor-nerd-box-icon, #elementor-panel-revisions-no-revisions .elementor-nerd-box-icon { margin-top: 20px; } .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close, .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back { display: none; } .elementor-editor-kit .elementor-panel #elementor-panel-header { background-color: #4ab7f4; } .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close, .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back { display: table-cell; } body:not(.e-routes-has-history) #elementor-panel-header-kit-back { pointer-events: none; opacity: 0.4; } body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon { cursor: inherit; color: inherit; } .elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active { border-bottom-color: #4ab7f4; } .elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation { display: none; } .elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled), .elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled) { background-color: #4ab7f4; } .elementor-editor-kit #elementor-panel-header-add-button, .elementor-editor-kit #elementor-panel-header-menu-button, .elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template, .elementor-editor-kit #elementor-panel-footer-navigator { display: none; } @-webkit-keyframes load { 0% { opacity: .3; } 50% { opacity: 1; } 100% { opacity: .3; } } @keyframes load { 0% { opacity: .3; } 50% { opacity: 1; } 100% { opacity: .3; } } @-webkit-keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @-webkit-keyframes mover { 0% { -webkit-transform: translateY(0); transform: translateY(0); } 100% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } } @keyframes mover { 0% { -webkit-transform: translateY(0); transform: translateY(0); } 100% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } } @-webkit-keyframes slideDown { 0% { -webkit-transform: translateY(-30px); transform: translateY(-30px); } 100% { -webkit-transform: translateY(0); transform: translateY(0); } } @keyframes slideDown { 0% { -webkit-transform: translateY(-30px); transform: translateY(-30px); } 100% { -webkit-transform: translateY(0); transform: translateY(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; margin: 0 auto; 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 { -webkit-border-radius: 30px; 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: 100000; } .tipsy-inner { background-color: #000; color: #FFF; max-width: 200px; padding: 6px 12px 6px; text-align: center; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); } .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-template-library-modal a.elementor-template-library-blank-footer-link { font-style: normal; text-decoration: underline; color: #39b54a; } #elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover { color: #2d8e3a; } #elementor-template-library-modal .dialog-buttons-wrapper { display: none; } #elementor-template-library-modal .select2-container { z-index: 0; } #elementor-template-library-header-menu { text-align: center; color: #6d7882; font-size: 13px; } .elementor-template-library-menu-item { display: inline-block; padding: 17px 0; width: 115px; cursor: pointer; } .elementor-template-library-menu-item.elementor-active { background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff)); background-image: -webkit-linear-gradient(top, #f1f3f5, #fff); background-image: -o-linear-gradient(top, #f1f3f5, #fff); background-image: linear-gradient(to bottom, #f1f3f5, #fff); border-bottom: 3px solid #D30C5C; } #elementor-template-library-header-actions { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-template-library-header-actions > div { padding-right: 16px; } #elementor-template-library-header-preview-insert-wrapper { cursor: default; padding: 0 10px; } #elementor-template-library-header-preview-insert-wrapper .elementor-button { padding: 8px 14px; font-size: 11px; } #elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert { color: #fff; background-color: #39b54a; } #elementor-template-library-header-preview-insert-wrapper .elementor-go-pro { background-color: #D30C5C; color: #fff; } #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-templates { padding: 0 15px; } #elementor-template-library-templates[data-template-source="local"] #elementor-template-library-templates-container { -webkit-box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03); box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03); margin-top: 10px; margin-bottom: 45px; } #elementor-template-library-templates[data-template-source="local"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label { color: #6d7882; } #elementor-template-library-templates[data-template-source="remote"] #elementor-template-library-templates-container { margin: 10px -15px 0; } #elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label { color: #495157; } #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-order-toolbar-local, #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-footer-banner { display: none; } #elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner { display: none; } #elementor-template-library-templates .elementor-template-library-order-input { display: none; } #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label { padding-right: 8px; } #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label:after { font-family: eicons; content: '\e8ae'; margin-left: 3px; } #elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse + .elementor-template-library-order-label:after { content: '\e8ad'; } #elementor-template-library-templates-container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; } #elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert { text-transform: none; font-size: 12px; } #elementor-template-library-toolbar { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .elementor-template-library-filter-toolbar { 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-filter-toolbar-remote { font-size: 11px; } #elementor-template-library-order { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; border-right: 1px solid #d5dadf; } .elementor-template-library-order-label { text-transform: uppercase; padding-right: 22px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } label.elementor-template-library-order-label { cursor: pointer; } label.elementor-template-library-order-label:hover { color: #556068; } #elementor-template-library-filter { border-right: 1px solid #d5dadf; } #elementor-template-library-filter .select2 { text-align: left; margin-right: 25px; } #elementor-template-library-filter .select2-selection__rendered { text-transform: capitalize; } #select2-elementor-template-library-filter-subtype-results .select2-results__option { text-transform: capitalize; } #elementor-template-library-my-favorites { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: left; padding-left: 20px; } #elementor-template-library-filter-my-favorites { display: none; } #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label { color: #495157; } #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label i:after { color: #D30C5C; content: '\e93f'; } #elementor-template-library-filter-my-favorites-label { cursor: pointer; text-transform: uppercase; } #elementor-template-library-filter-my-favorites-label:hover { color: #556068; } #elementor-template-library-filter-my-favorites-label:hover i:after { color: #D30C5C; } #elementor-template-library-filter-my-favorites-label i { padding-right: 5px; } #elementor-template-library-filter-my-favorites-label i:after { color: #a4afb7; content: '\e923'; } #elementor-template-library-filter-text-wrapper { width: 200px; position: relative; } #elementor-template-library-filter-text-wrapper i { position: absolute; top: 50%; right: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } #elementor-template-library-filter-text { border: none; border-bottom: 1px solid #d5dadf; -webkit-border-radius: 0; border-radius: 0; font-size: 11px; padding: 8px 15px 8px 0; -webkit-transition: border 0.5s; -o-transition: border 0.5s; transition: border 0.5s; } #elementor-template-library-filter-text:focus { border-color: #c2cbd2; } #elementor-template-library-filter-text::-webkit-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text:-ms-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text::-ms-input-placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text::placeholder { font-weight: 300; text-transform: uppercase; } #elementor-template-library-filter-text:focus { border-color: #c2cbd2; } .elementor-template-library-template-remote { margin: 15px; padding: 8px; background-color: #fff; -webkit-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07); -webkit-border-radius: 3px; border-radius: 3px; } .elementor-template-library-template-remote:hover .elementor-template-library-template-name { display: none; } .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview { opacity: 0; } .elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite, .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action { display: none; } .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: #D30C5C; color: #d5dadf; padding: 2px 4px 0; font-size: 9px; -webkit-border-radius: 2px; border-radius: 2px; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) { position: relative; width: -webkit-calc(33.333% - 30px); width: calc(33.333% - 30px); overflow: hidden; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) img { display: block; width: 100%; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer { position: absolute; width: 100%; bottom: 0; left: 0; padding: 10px; background-color: #fff; -webkit-transition: -webkit-transform .5s; transition: -webkit-transform .5s; -o-transition: transform .5s; transition: transform .5s; transition: transform .5s, -webkit-transform .5s; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-name { display: none; } .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(:hover) .elementor-template-library-template-footer { -webkit-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); } .elementor-template-library-template-remote .elementor-template-library-template-body { position: relative; } @media (max-width: 1025px) { .elementor-template-library-template-remote .elementor-template-library-template-body { height: 300px; } } .elementor-template-library-template-remote .elementor-template-library-template-screenshot { height: 100%; -webkit-background-size: cover; background-size: cover; background-position-x: 50%; -webkit-box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); } .elementor-template-library-template-remote .elementor-template-library-template-preview { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); -webkit-transition: opacity .5s; -o-transition: opacity .5s; transition: opacity .5s; 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: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } .elementor-template-library-template-remote .elementor-template-library-template-insert { color: #39b54a; } .elementor-template-library-template-remote .elementor-go-pro { color: #D30C5C; } .elementor-template-library-template-remote .elementor-template-library-template-footer { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin-top: 10px; font-size: 11px; line-height: 1; } .elementor-template-library-template-remote .elementor-template-library-template-name { text-align: left; color: #6d7882; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; padding-right: 5px; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-input { display: none; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked + .elementor-template-library-template-favorite-label i:before { content: '\e93f'; color: #D30C5C; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-label { cursor: pointer; } .elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i { color: #D30C5C; } @media (max-width: 1439px) { .elementor-template-library-template-page { width: -webkit-calc(25% - 30px); width: calc(25% - 30px); } } @media (min-width: 1440px) { .elementor-template-library-template-page { width: -webkit-calc(20% - 30px); width: calc(20% - 30px); } } @media (max-width: 1025px) { .elementor-template-library-template-page { width: -webkit-calc(33.333% - 30px); width: calc(33.333% - 30px); } } .elementor-template-library-template-page .elementor-template-library-template-body { height: 200px; } #elementor-template-library-order-toolbar-local, .elementor-template-library-template-local { 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; padding: 0 25px; text-align: left; } #elementor-template-library-order-toolbar-local { margin-top: 30px; } #elementor-template-library-order-toolbar-local .elementor-template-library-order-label { line-height: 1; font-size: 10px; font-weight: 500; } #elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover) { color: #a4afb7; } .elementor-template-library-template-local { height: 50px; width: 100%; margin-top: 1px; background-color: #fff; -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-insert { background: none; color: #a4afb7; } .elementor-template-library-template-local:first-child { -webkit-border-radius: 3px 3px 0 0; border-radius: 3px 3px 0 0; } .elementor-template-library-template-local:last-child { -webkit-border-radius: 0 0 3px 3px; border-radius: 0 0 3px 3px; } .elementor-template-library-template-local .elementor-template-library-template-name { font-weight: 500; } .elementor-template-library-template-local .elementor-template-library-template-name, .elementor-template-library-template-local .elementor-template-library-template-meta { padding-right: 20px; } .elementor-template-library-template-local .elementor-template-library-template-meta { color: #a4afb7; } .elementor-template-library-template-local .elementor-template-library-template-name, .elementor-template-library-template-local .elementor-template-library-template-meta, .elementor-template-library-template-local .elementor-template-library-template-preview, .elementor-template-library-template-local .elementor-template-library-template-action { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-template-library-template-local .elementor-template-library-template-controls { position: relative; 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-template-local .elementor-template-library-template-controls, .elementor-template-library-template-local .elementor-template-library-template-controls a { color: #a4afb7; } .elementor-template-library-template-local .elementor-template-library-template-controls > div { cursor: pointer; -webkit-transition: color .5s; -o-transition: color .5s; transition: color .5s; } .elementor-template-library-template-local .elementor-template-library-template-insert i { margin-right: 3px; } .elementor-template-library-template-local .elementor-template-library-template-control-title { margin-left: 6px; } .elementor-template-library-template-local .elementor-template-library-template-more:hover, .elementor-template-library-template-local .elementor-template-library-template-more a:hover { color: #556068; } .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover { color: #d72b3f; } .elementor-template-library-template-local .elementor-template-library-template-action { padding: 8px 18px; margin: 0 5%; } .elementor-template-library-template-local .elementor-template-library-template-more { display: none; position: absolute; background-color: #fff; padding: 3px 20px; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3); box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3); top: 100%; right: 0; -webkit-transform: translateX(65%) translateY(-7px); -ms-transform: translateX(65%) translateY(-7px); transform: translateX(65%) translateY(-7px); z-index: 1; } .elementor-template-library-template-local .elementor-template-library-template-more:before { content: ''; position: absolute; border: solid transparent; border-width: 8px 4px; border-bottom-color: #fff; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); } .elementor-template-library-template-local .elementor-template-library-template-more > div { margin: 10px 0; font-size: 11px; } .elementor-template-library-template-local .elementor-template-library-template-more-toggle { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: right; } .elementor-template-library-template-local .elementor-template-library-template-more-toggle i { font-size: 16px; } #elementor-template-library-preview { height: 100%; overflow: hidden; } #elementor-template-library-preview iframe { height: 150%; -webkit-transform: scale(0.666) translateX(-25%) translateY(-25%); -ms-transform: scale(0.666) translateX(-25%) translateY(-25%); transform: scale(0.666) translateX(-25%) translateY(-25%); } @media (max-width: 1439px) { #elementor-template-library-preview iframe { width: 1440px; } } @media (min-width: 1440px) { #elementor-template-library-preview iframe { width: 1710px; } } .elementor-template-library-blank-icon { font-size: 65px; margin-top: 45px; color: #c2cbd2; line-height: 1; } .elementor-template-library-blank-icon img { width: 70px; } .elementor-template-library-blank-icon .elementor-template-library-no-results { width: 200px; } .elementor-template-library-blank-title { font-size: 30px; margin-top: 40px; } @media (max-width: 1439px) { .elementor-template-library-blank-title { font-size: 25px; } } .elementor-template-library-blank-message { font-size: 18px; color: #a4afb7; margin-top: 15px; font-weight: 300; } @media (max-width: 1439px) { .elementor-template-library-blank-message { font-size: 16px; margin-top: 10px; } } #elementor-template-library-save-template-form { margin-top: 40px; 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: 55px; font-size: 16px; } #elementor-template-library-save-template-name { width: 500px; background-color: #fff; font-weight: 300; color: #a4afb7; padding-left: 25px; -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; border: none; } #elementor-template-library-save-template-submit { width: 150px; -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } #elementor-template-library-save-template-submit:hover { -webkit-box-shadow: none; box-shadow: none; } #elementor-template-library-import-form { width: 95%; background-color: rgba(255, 255, 255, 0.5); padding: 60px; border: 2px dashed #d5dadf; margin: 35px auto; -webkit-transition: background-color 0.5s; -o-transition: background-color 0.5s; transition: background-color 0.5s; } #elementor-template-library-import-form:hover { background-color: rgba(255, 255, 255, 0.9); } #elementor-template-library-import-form-or { margin-top: 15px; font-size: 18px; } #elementor-template-library-import-form-label { margin-top: 20px; padding: 15px 35px; display: inline-block; } #elementor-template-library-import-form-input { display: none; } #elementor-template-library-import-form.elementor-drag-over { border: 3px dashed #71d7f7; } #elementor-template-library-import .elementor-template-library-blank-icon { margin-top: 0; } #elementor-template-library-import .elementor-template-library-blank-message { margin-top: 20px; } .e-route-library-connect #elementor-template-library-modal .dialog-message { max-height: 95vh; padding: 100px 0 0; min-height: 550px; } #elementor-template-library-connect-logo { font-size: 20px; } #elementor-template-library-connect__button { display: inline-block; position: relative; z-index: 1; margin-top: 25px; padding: 12px 24px; font-size: 14px; } #elementor-template-library-connect__background-image-left-1 { right: 22.4%; bottom: -29%; -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; } #elementor-template-library-connect__background-image-left-2 { right: 46.25%; bottom: -15.5%; -webkit-animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; } #elementor-template-library-connect__background-image-right-1 { left: 37%; bottom: -41%; -webkit-animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; } #elementor-template-library-connect__background-image-right-2 { left: 48%; bottom: -12.5%; -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; } .elementor-template-library-connect__background-image { position: absolute; } .elementor-template-library-blank-footer { position: absolute; bottom: 70px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); color: #a4afb7; font-style: italic; } @media (max-height: 700px) { .elementor-template-library-blank-footer { display: none; } } #elementor-template-library-footer-banner i { color: #c2cbd2; font-size: 56px; margin-top: 40px; } #elementor-template-library-footer-banner .elementor-nerd-box-icon { margin-top: 70px; } #elementor-template-library-footer-banner .elementor-excerpt { color: #a4afb7; font-size: 15px; font-weight: 500; margin: 20px 0; } #elementor-template-library-templates-empty { width: 100%; margin-top: 40px; } #elementor-template-library-error-dialog .dialog-message { text-align: start; } #elementor-template-library-error-info { margin-top: 10px; } @media (max-width: 1439px) { .elementor-template-library-local-column-1 { width: 33%; } .elementor-template-library-local-column-2 { width: 10%; } .elementor-template-library-local-column-3 { width: 15%; } .elementor-template-library-local-column-4 { width: 15%; } .elementor-template-library-local-column-5 { width: 27%; } } @media (min-width: 1440px) { .elementor-template-library-local-column-1 { width: 25%; } .elementor-template-library-local-column-2 { width: 17%; } .elementor-template-library-local-column-3 { width: 17%; } .elementor-template-library-local-column-4 { width: 17%; } .elementor-template-library-local-column-5 { width: 24%; } } @media (max-width: 1024px) { .elementor-template-library-local-column-3 { display: none; } .elementor-template-library-local-column-5 { width: 41%; } } .elementor-tags-list { display: none; position: absolute; width: 260px; max-height: 300px; overflow: auto; padding-bottom: 5px; background-color: #fff; border: 1px solid #a4afb7; -webkit-border-radius: 3px; border-radius: 3px; z-index: 1; } .elementor-tags-list__group-title { color: #495157; font-weight: bold; font-size: 12px; padding: 10px 15px; 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-tags-list__group-title .eicon-info-circle { padding-right: 5px; color: #71d7f7; font-size: 14px; } .elementor-tags-list__item { font-size: 10px; padding: 6px 15px; cursor: pointer; } .elementor-tags-list__item:before { content: '>'; font-size: 8px; padding-right: 5px; } .elementor-tags-list__item:hover { background-color: #e6e9ec; } .elementor-tags-list__teaser { border-top: 2px solid #d5dadf; padding-top: 4px; margin-top: 4px; } .elementor-tags-list__teaser-title { color: #6d7882; } .elementor-tags-list__teaser-text { padding: 2px 15px 8px; line-height: 1.5; font-size: 12px; } .elementor-tags-list__teaser-link { color: #D30C5C; text-decoration: underline; font-style: italic; font-weight: bold; } .elementor-dynamic-cover { 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; width: 100%; height: 27px; -webkit-box-sizing: border-box; box-sizing: border-box; } .elementor-dynamic-cover__title { padding: 0 8px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove { color: #c2cbd2; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover { color: #a4afb7; } .elementor-control-type-wysiwyg .elementor-dynamic-cover { margin-top: 10px; } .elementor-tag-settings-popup { position: absolute; width: 260px; background-color: #e6e9ec; -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3); z-index: 1; } .elementor-tag-settings-popup:before { content: ''; position: absolute; top: -20px; left: 5px; border: 10px solid transparent; border-bottom-color: #fff; } .elementor-tag-settings-popup .elementor-control-type-section:first-child { margin: 0; } .elementor-tag-controls-stack-empty { background-color: #fff; padding: 10px; font-size: 13px; text-align: center; } .elementor-control-dynamic-switcher { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; height: 27px; cursor: pointer; border: 1px solid #d5dadf; -webkit-border-radius: 3px; border-radius: 3px; background: #fff; } .elementor-control-dynamic-switcher-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-control-dynamic-switcher .eicon-database { font-size: 12px; } .elementor-control-dynamic-value .elementor-control-tag-area, .elementor-control-dynamic-value .elementor-control-dynamic-switcher { display: none; } #elementor-toast { position: absolute; width: 280px; padding: 20px; -webkit-border-radius: 5px; border-radius: 5px; color: #d5dadf; background-color: rgba(0, 0, 0, 0.8); z-index: 10000; } #elementor-toast .dialog-message { font-size: 13px; } #elementor-toast .dialog-buttons-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; margin-top: 15px; } #elementor-toast .dialog-button { color: #fcb92c; margin: 0 5px; text-transform: uppercase; cursor: pointer; } #elementor-toast .dialog-button:last-child { margin-right: 0; } .elementor-context-menu { position: absolute; width: 200px; background-color: #fff; border: 1px solid #e6e9ec; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09); box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09); -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; z-index: 3; } .elementor-context-menu-list__group { padding: 5px 0; } .elementor-context-menu-list__group:not(:last-child) { border-bottom: 1px solid #e6e9ec; } .elementor-context-menu-list__item { padding: 5px 10px; padding-right: 20px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; cursor: pointer; } .elementor-context-menu-list__item--disabled { cursor: default; color: #d5dadf; } .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover { background-color: #71d7f7; } .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover > * { color: #fff; } .elementor-context-menu-list__item__icon { width: 20px; color: #c2cbd2; } .elementor-context-menu-list__item__title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-context-menu-list__item__shortcut { color: #d5dadf; } .elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover { background-color: #d72b3f; } .elementor-context-menu .eicon-pro-icon { color: #fcb92c; } .elementor-right-click-introduction { position: absolute; width: 250px; padding: 30px 20px; background-color: #fff; -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.07); box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.07); text-align: center; -webkit-border-radius: 3px; border-radius: 3px; } .elementor-right-click-introduction:before { content: ''; position: absolute; border: solid transparent; border-width: 7px 5px; border-bottom-color: #fff; top: -14px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } .elementor-right-click-introduction .dialog-header { color: #6d7882; font-size: 16px; } .elementor-right-click-introduction .dialog-message { font-size: 13px; line-height: 1.6; margin-top: 10px; color: #a4afb7; } .elementor-right-click-introduction .dialog-buttons-wrapper { 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; margin-top: 25px; } .elementor-right-click-introduction .dialog-button { font-size: 11px; } .elementor-right-click-introduction .dialog-ok { padding: 7px 27px; text-transform: capitalize; } .elementor-right-click-introduction .dialog-learn-more { color: #39b54a; margin-right: 15px; cursor: pointer; } #elementor-hotkeys { text-align: left; } #elementor-hotkeys__content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: 100%; overflow: hidden; margin-bottom: 30px; } @media (max-width: 1024px) { #elementor-hotkeys__content { -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } } #elementor-hotkeys__actions .elementor-hotkeys__list { -webkit-border-radius: 3px 0 0 3px; border-radius: 3px 0 0 3px; } @media (max-width: 1024px) { #elementor-hotkeys__actions .elementor-hotkeys__list { -webkit-border-radius: 3px; border-radius: 3px; } } @media (min-width: 1025px) { #elementor-hotkeys__actions .elementor-hotkeys__header, #elementor-hotkeys__actions .elementor-hotkeys__list { padding-right: 25px; } } @media (min-width: 1440px) { #elementor-hotkeys__actions .elementor-hotkeys__header, #elementor-hotkeys__actions .elementor-hotkeys__list { padding-right: 50px; } } #elementor-hotkeys__navigation .elementor-hotkeys__list { -webkit-border-radius: 0 3px 3px 0; border-radius: 0 3px 3px 0; } @media (max-width: 1024px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { -webkit-border-radius: 3px; border-radius: 3px; } } @media (min-width: 1025px) { #elementor-hotkeys__navigation .elementor-hotkeys__header { padding-left: 25px; } } @media (min-width: 1440px) { #elementor-hotkeys__navigation .elementor-hotkeys__header { padding-left: 50px; } } @media (min-width: 1025px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { padding-left: 15px; } } @media (min-width: 1440px) { #elementor-hotkeys__navigation .elementor-hotkeys__list { padding-left: 40px; } } .elementor-hotkeys__col { width: 50%; } @media (max-width: 1024px) { .elementor-hotkeys__col { width: 100%; } } .elementor-hotkeys__header, .elementor-hotkeys__list { width: 100%; } .elementor-hotkeys__header { padding: 10px 30px; font-weight: 500; } @media (max-width: 479px) { .elementor-hotkeys__header { padding-right: 10px; padding-left: 10px; } } .elementor-hotkeys__list { background-color: #ffffff; height: -webkit-calc(100% - 42px); height: calc(100% - 42px); padding: 10px 20px; } @media (max-width: 479px) { .elementor-hotkeys__list { padding: 0; } } @media (max-width: 1024px) { .elementor-hotkeys__list { margin-bottom: 30px; } } @media (max-width: 1024px) { .elementor-hotkeys__list { height: auto; } } .elementor-hotkeys__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; padding: 20px 10px; border-bottom: 1px solid #eceeef; } .elementor-hotkeys__item:last-child { margin-bottom: 30px; } @media (max-width: 479px) { .elementor-hotkeys__item:last-child { margin-bottom: 0; } } .elementor-hotkeys__item--label { font-size: 13px; font-weight: 400; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } .elementor-hotkeys__item--shortcut { -webkit-box-flex: 0; -webkit-flex-grow: 0; -ms-flex-positive: 0; flex-grow: 0; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } .elementor-hotkeys__item--shortcut span { position: relative; background-color: #eceeef; padding: 5px 12px; margin-right: 27px; -webkit-border-radius: 3px; border-radius: 3px; } @media (max-width: 479px) { .elementor-hotkeys__item--shortcut span { padding: 4px 9px; margin-right: 23px; } } .elementor-hotkeys__item--shortcut span:after { content: '+'; position: absolute; right: -18px; width: 9px; text-align: center; } @media (max-width: 479px) { .elementor-hotkeys__item--shortcut span:after { right: -16px; } } .elementor-hotkeys__item--shortcut span:last-child { margin-right: 0; } .elementor-hotkeys__item--shortcut span:last-child:after { display: none; } .ui-resizable-n { top: -5px; } .ui-resizable-e { right: -5px; } .ui-resizable-s { bottom: -5px; } .ui-resizable-w { left: -5px; } .ui-resizable-ne { top: -5px; right: -5px; } .ui-resizable-nw { top: -5px; left: -5px; } .ui-resizable-se { bottom: -5px; right: -5px; } .ui-resizable-sw { bottom: -5px; left: -5px; } .ui-resizable-n, .ui-resizable-s { left: 0; height: 10px; width: 100%; cursor: ns-resize; } .ui-resizable-e, .ui-resizable-w { top: 0; height: 100%; width: 10px; cursor: ew-resize; } .ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw { height: 15px; width: 15px; } .ui-resizable-nw, .ui-resizable-se { cursor: nwse-resize; } .ui-resizable-ne, .ui-resizable-sw { cursor: nesw-resize; } .ui-resizable-handle { position: absolute; } .ui-resizable-resizing { pointer-events: none; } #elementor-navigator { position: fixed; top: 100px; width: 240px; height: 339px; right: 30px; background-color: #fff; -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1); -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; overflow: hidden; z-index: 2; display: none; } body.elementor-navigator-docked #elementor-navigator { top: 0; right: 0; height: 100%; } body:not(.elementor-navigator-docked) #elementor-navigator { -webkit-border-radius: 5px; border-radius: 5px; } #elementor-navigator__inner { height: 100%; background-color: #e6e9ec; } #elementor-navigator__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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; padding: 12px 10px; background-color: #fff; border-bottom: 1px solid #e6e9ec; cursor: move; } #elementor-navigator__close, #elementor-navigator__toggle-all { -webkit-transition: color .5s; -o-transition: color .5s; transition: color .5s; cursor: pointer; } #elementor-navigator__close:not(:hover), #elementor-navigator__toggle-all:not(:hover) { color: #a4afb7; } #elementor-navigator__toggle-all { font-size: 13px; } #elementor-navigator__close { font-size: 11px; } #elementor-navigator__elements { height: -webkit-calc(100% - 49px); height: calc(100% - 49px); overflow: auto; position: relative; } .elementor-navigator-docked #elementor-navigator__elements { height: -webkit-calc(100% - 35px); height: calc(100% - 35px); } #elementor-navigator__elements .elementor-nerd-box { padding: 25px; } #elementor-navigator__footer { position: absolute; width: 100%; left: 0; bottom: 0; text-align: center; background-color: #fff; border-top: 1px solid #e6e9ec; color: #a4afb7; } .elementor-navigator-docked #elementor-navigator__footer { display: none; } .elementor-navigator__item { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 30px; font-size: 11px; border-bottom: 1px solid #e6e9ec; cursor: pointer; -webkit-transition: padding .5s linear; -o-transition: padding .5s linear; transition: padding .5s linear; overflow: hidden; } .elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i { -webkit-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); } .elementor-navigator__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; } .elementor-navigator__item + .elementor-navigator__elements { display: none; } .elementor-navigator__elements .elementor-empty-view { padding: 10px; border-bottom: 1px solid #e6e9ec; } .elementor-navigator__elements .elementor-empty-view__title { margin-left: 23px; color: #c2cbd2; font-size: 10px; font-style: italic; } .elementor-navigator__elements .ui-sortable-helper { background-color: #fff; -webkit-box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1); box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1); -webkit-transform: rotate(4deg); -ms-transform: rotate(4deg); transform: rotate(4deg); border: 1px solid #e6e9ec; pointer-events: none; } .elementor-navigator__elements .ui-sortable-placeholder { background-color: #f1f3f5; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view { border-top: 2px solid #71d7f7; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view .elementor-empty-view__title { display: none; } .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view + .ui-sortable-placeholder { display: none; } .elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle { visibility: hidden; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item .elementor-navigator__element__toggle { color: #71d7f7; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle { display: none; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing { background-color: #71d7f7; } .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing > * { color: #fff; } .elementor-navigator__element__list-toggle { margin-right: 7px; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; -o-transition: transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; color: #a4afb7; } .elementor-navigator__element__element-type { margin-right: 8px; } .elementor-navigator__element__title { -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; overflow: hidden; } .elementor-navigator__element__title__text { white-space: nowrap; -webkit-user-select: text; } .elementor-navigator__element__title__text[contenteditable="true"] { outline: none; color: #6d7882; background-color: #fff; padding: 2px 3px; -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); } .elementor-navigator__element__title__text:not([contenteditable="true"]) { white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } .elementor-navigator__element__toggle { position: absolute; right: 15px; height: 100%; z-index: 0; font-size: 13px; } .elementor-navigator__element__indicators { position: relative; -webkit-transition: -webkit-transform .5s; transition: -webkit-transform .5s; -o-transition: transform .5s; transition: transform .5s; transition: transform .5s, -webkit-transform .5s; padding-left: 5px; z-index: 91; } .elementor-navigator__element__indicators:not(:hover) { -webkit-transform: translateX(-webkit-calc(100% - 8px)); -ms-transform: translateX(calc(100% - 8px)); transform: translateX(calc(100% - 8px)); } .elementor-navigator__element__indicator { height: 100%; width: 31px; display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-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; color: #6d7882; background-color: #fff; border-left: 1px solid #e6e9ec; } .elementor-navigator__element__indicator:first-child { border-left: 3px solid #71d7f7; } .elementor-editing .elementor-navigator__element__indicator:first-child { border-color: #41c9f4; } .elementor-navigator__element__indicator:hover { color: #495157; } .elementor-navigator__element--hidden .elementor-navigator__element__title, .elementor-navigator__element--hidden .elementor-navigator__element__toggle { opacity: .5; } .elementor-navigator__element-column { background-color: #fafbfb; } .elementor-navigator__element-column > .elementor-navigator__item .elementor-navigator__element__element-type { color: #a4afb7; } .elementor-navigator__element-section { background-color: #fff; } #elementor-notice-bar { position: absolute; width: 100%; bottom: 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; height: 40px; color: #fff; background-color: #6d7882; padding: 0 50px; } #elementor-notice-bar__message { padding-left: 15px; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; } #elementor-notice-bar__message a { text-decoration: underline; } #elementor-notice-bar__action { text-transform: uppercase; } #elementor-notice-bar__close { margin: 0 20px; cursor: pointer; } #elementor-notice-bar i { font-size: 16px; opacity: .9; } #elementor-notice-bar a { color: #fff; } #elementor-notice-bar a, #elementor-notice-bar i { -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; } #elementor-notice-bar a:hover, #elementor-notice-bar i:hover { color: #D4D4D4; } body:not(.elementor-device-desktop) #elementor-notice-bar { display: none; } #elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header { color: #495157; } #elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a { color: #6d7882; text-decoration: underline; font-style: italic; } #elementor-preview-debug-link-text { display: inline-block; } #elementor-icons-manager-modal .dialog-message { padding: 0; height: 700px; } #elementor-icons-manager-modal .dialog-content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-icons-manager-modal .dialog-buttons-wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } #elementor-icons-manager__wrapper { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; } @media (max-width: 479px) { #elementor-icons-manager__sidebar { display: none; } } #elementor-icons-manager__tab-links { margin-top: 30px; } #elementor-icons-manager__upload { margin: 20px 45px; padding-top: 35px; border-top: 1px solid #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; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; } @media (max-width: 1439px) { #elementor-icons-manager__upload { margin: 20px 25px; } } #elementor-icons-manager__upload__title { color: #a4afb7; font-size: 11px; text-transform: uppercase; } #elementor-icons-manager__main { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 30px 80px 0; } @media (max-width: 1439px) { #elementor-icons-manager__main { padding: 30px 50px 0; } } @media (max-width: 479px) { #elementor-icons-manager__main { width: 100%; } } #elementor-icons-manager__search { position: relative; } #elementor-icons-manager__search input { padding: 8px 15px; background-color: #fff; border: none; } #elementor-icons-manager__search input::-webkit-input-placeholder { font-style: italic; } #elementor-icons-manager__search input:-ms-input-placeholder { font-style: italic; } #elementor-icons-manager__search input::-ms-input-placeholder { font-style: italic; } #elementor-icons-manager__search input::placeholder { font-style: italic; } #elementor-icons-manager__search i { position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 15px; } #elementor-icons-manager__tab__wrapper { overflow: auto; margin: 25px -15px 0; padding: 0 15px 15px; } #elementor-icons-manager__tab__title { color: #556068; font-size: 16px; font-weight: 500; text-align: left; } @media (max-width: 479px) { #elementor-icons-manager__tab__title { display: none; } } #elementor-icons-manager__tab__content { display: grid; grid-template-columns: repeat(7, 1fr); grid-gap: 20px; margin: 20px 0; } @media (max-width: 1439px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(6, 1fr); } } @media (max-width: 1024px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(5, 1fr); } } @media (max-width: 767px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(4, 1fr); } } @media (max-width: 479px) { #elementor-icons-manager__tab__content { grid-template-columns: repeat(3, 1fr); } } #elementor-icons-manager__promotion { 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-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding-top: 70px; } #elementor-icons-manager__promotion__icon { font-size: 60px; color: #c2cbd2; } #elementor-icons-manager__promotion__text { width: 300px; font-size: 16px; padding-top: 25px; } #elementor-icons-manager__promotion__link { margin-top: 20px; } .elementor-icons-manager__tab-link { padding: 15px 0 15px 45px; font-size: 14px; color: #6d7882; text-align: left; cursor: pointer; position: relative; } .elementor-icons-manager__tab-link i { font-size: 20px; padding-right: 15px; color: #a4afb7; } @media (max-width: 1439px) { .elementor-icons-manager__tab-link { padding: 15px 15px 15px 25px; font-size: 11px; } .elementor-icons-manager__tab-link i { font-size: 15px; } } @media (max-width: 1024px) { .elementor-icons-manager__tab-link i { display: none; } } .elementor-icons-manager__tab-link.elementor-active { background-color: #fff; -webkit-box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); } .elementor-icons-manager__tab-link.elementor-active:after { content: ''; position: absolute; height: 100%; width: 5px; top: 0; left: 0; background-color: #71d7f7; } .elementor-icons-manager__tab-link.elementor-active i { color: #71d7f7; } .elementor-icons-manager__tab__item { position: relative; height: 0; padding-bottom: 100%; background-color: #fff; -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05); box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05); -webkit-border-radius: 3px; border-radius: 3px; cursor: pointer; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; overflow: hidden; } .elementor-icons-manager__tab__item:hover { -webkit-box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); } .elementor-icons-manager__tab__item.elementor-selected { -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; } .elementor-icons-manager__tab__item__content { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); padding: 1px; } .elementor-icons-manager__tab__item__icon { font-size: 25px; color: #6d7882; } .elementor-icons-manager__tab__item__name { color: #c2cbd2; font-size: 11px; padding: 13px 20px 0; max-width: 100%; white-space: nowrap; -o-text-overflow: ellipsis; text-overflow: ellipsis; overflow: hidden; } #elementor-enable-fa5-dialog a { font-style: italic; text-decoration: underline; } #elementor-enable-fa5-dialog .dialog-confirm-ok { color: #39b54a; } #elementor-enable-svg-dialog .dialog-confirm-ok { color: #39b54a; } .elementor-color-picker__header { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 10px; } .elementor-color-picker__swatch-tool { position: relative; -webkit-box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.15); box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.15); background-color: #fff; } .elementor-color-picker__swatch-tool i { position: absolute; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); color: #6d7882; font-size: 13px; } .elementor-color-picker__swatch-placeholder { border: 1px dashed #c2cbd2; } .elementor-color-picker__dropping-area { margin-top: 10px; padding: 15px; border: 1px dashed #d5dadf; text-align: center; color: #6d7882; display: none; } .elementor-color-picker__dropping-area.elementor-active { border-color: #a4afb7; } .elementor-color-picker__dropping-area.elementor-active i { color: #b01b1b; } .elementor-color-picker__dropping-area i { font-size: 15px; } .elementor-color-picker__dropping-area__drag-to-delete { margin-top: 10px; } .elementor-color-picker__dropping-area .elementor-color-picker__swatch-placeholder { display: none; } .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch { background-color: #d5dadf; pointer-events: none; -webkit-box-shadow: none; box-shadow: none; } .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch i { color: #fff; } /*# sourceMappingURL=editor.css.map */assets/css/editor-preview.min.css000066600000226674152142641160013126 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ @charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{width:135px}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:1}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;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-tags-list__group-title .eicon-info-circle{padding-right:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-right:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#d30c5c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{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;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;left:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}.elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel-box-content{padding:20px 20px 10px}.elementor-button{display:inline-block}.elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-left:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel-alert a{color:inherit}.elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.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;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-control-field-description,.elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-controls-popover:before{content:"";position:absolute;top:-16px;right:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-controls-popover div.elementor-control:before{content:none}#elementor-controls .pojo-widget-button-collapse{display:none}#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-control{background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control .elementor-control-content{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:12px;line-height:1;margin-right:5px}.elementor-control .elementor-control-spinner{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-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title{display:none}.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop{display:none}body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet{display:none}body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;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:5px;padding-right:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.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-label-block>.elementor-control-content>.elementor-control-field{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-left:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-responsive-switchers{margin-right:5px;--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:-webkit-calc(-1*var(--selected-option)*2em);top:calc(-1*var(--selected-option)*2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{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;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 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}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:right}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-right:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices input{display:none}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-right:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-right:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:-webkit-calc(100% + 1px);width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.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-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-left:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{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-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;right:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:none}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:left}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.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-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area{display:none}.elementor-control-media:not(.elementor-media-empty) .elementor-control-media-upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media-upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 25%,transparent 75%,#ddd 75%,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-left:1px}.elementor-control-media__tool{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;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{position:absolute;z-index:1;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;top:10px;right:10px;width:20px;height:20px;font-size:11px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1);-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:rtl}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-right:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.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-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-right:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(4px);-ms-transform:translateY(calc(50% - 14px)) translateX(4px);transform:translateY(calc(50% - 14px)) translateX(4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-input-wrapper{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-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{margin-left:10px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;right:0;-webkit-transform:translateY(-webkit-calc(50% - 14px)) translateX(8px);-ms-transform:translateY(calc(50% - 14px)) translateX(8px);transform:translateY(calc(50% - 14px)) translateX(8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:-webkit-calc(100% + 5px);top:calc(100% + 5px);left:-webkit-calc(50% - 4px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-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-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;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-control-type-switcher .elementor-switch-label:after,.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-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-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-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-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:27px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-right:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left-width:0}.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;right:0}.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-textarea textarea{display:block}.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.elementor-control-type-url .elementor-control-url-more{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;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{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-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 5px 0 0;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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-control-type-url .elementor-control-url-option input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:10px}.elementor-control-type-url .elementor-control-url__custom-attributes label{display:block}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-self:baseline;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg.elementor-rich-editing-disabled .wp-editor-container{margin-top:10px}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-text input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}@-webkit-keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes section-outline{0%{opacity:0}to{opacity:1}}@keyframes section-outline{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-edit-area .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}.elementor-edit-area ul.elementor-editor-element-settings{word-break:normal;padding:0}.elementor-edit-area .gallery{opacity:1}.pen{position:relative;outline:none}.pen:not([data-elementor-inline-editing-toolbar=advanced]){white-space:pre-wrap}.pen-menu{-webkit-box-shadow:1px 2px 3px -2px #222;box-shadow:1px 2px 3px -2px #222;background-color:#6d7882;position:fixed;overflow:hidden;-webkit-border-radius:3px;border-radius:3px;z-index:9999}.pen-menu:after{top:100%;content:"";position:absolute;border:6px solid transparent;border-top-color:#6d7882;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.pen-menu-below:after{top:0;-webkit-transform:translateX(-50%) translateY(-100%) rotate(180deg);-ms-transform:translateX(-50%) translateY(-100%) rotate(180deg);transform:translateX(-50%) translateY(-100%) rotate(180deg)}.pen-icon{position:relative;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;height:35px;padding:0 10px;font-size:21px;color:#d5dadf;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pen-icon:hover{background:#556068}.pen-icon[data-action=closeGroup],.pen-icon[data-group]{display:none}.pen-icon[data-action=close]:before{content:"";position:absolute;left:0;height:60%;width:1px;background-color:#556068}.pen-icon.active{background-color:#556068;-webkit-box-shadow:inset 2px 2px 4px #556068;box-shadow:inset 2px 2px 4px #556068}.pen-group-icon:after{font-family:eicons;font-size:12px;content:"\e92a";padding-left:4px;color:#71d7f7}.pen-input-wrapper{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.pen-input-wrapper .pen-url-input{font-size:12px;line-height:1.5;padding:0 10px;width:250px;direction:ltr}.pen-input-wrapper .pen-url-input,.pen-input-wrapper .pen-url-input:focus{background-color:transparent;border:none;outline:none;-webkit-box-shadow:none;box-shadow:none;color:#fff}.pen-input-wrapper .pen-url-input::-webkit-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input:-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::placeholder{color:#d5dadf}.pen-input-label{margin:0 -1px 0 0}.pen-placeholder:before{content:attr(data-pen-placeholder);position:absolute;font-weight:400;color:#757575;opacity:.6}.pen-external-url-checkbox{display:none}.pen-external-url-checkbox:checked+i{color:#fff}.elementor-inline-editing i:not([class]){font-style:italic}.elementor-inline-editing b{font-weight:700}.elementor-inline-editing u{text-decoration:underline}html.elementor-html{margin-top:0!important}.elementor-edit-area{position:relative}.elementor.loading{opacity:.5}.elementor-edit-area-active .elementor-top-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-inner-section:first-child{margin-top:15px}.elementor-edit-area-active .elementor-inner-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-edit-area-active .elementor-column{min-width:25px}.elementor-edit-area-active .elementor-widget.elementor-loading{opacity:.3}.elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover,.elementor-edit-area-active .elementor-widget.elementor-element-editable{-webkit-box-shadow:0 0 0 1px #71d7f7;box-shadow:0 0 0 1px #71d7f7}.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings{display:none}.elementor-edit-area-active .elementor-widget.ui-draggable-dragging{pointer-events:none}.elementor-edit-area-active .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}.elementor-edit-area-active .handle{display:none}.elementor-edit-area-active .elementor-inline-editing{min-height:15px}.elementor-edit-area-active .elementor-edit-hidden{display:none}.elementor-section-wrap:empty{min-height:25px}.elementor-element>.elementor-element-overlay{position:absolute;top:0;right:0;letter-spacing:0;z-index:9998;pointer-events:none}.elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-element--toggle-edit-tools>.elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active)~*{width:0;font-size:0}.elementor-element[data-side=bottom]+.elementor-element:before,.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:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element[data-side=bottom]:last-child: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:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{cursor:-webkit-grab;cursor:grab}.elementor-element.elementor-absolute:active,.elementor-element.elementor-fixed:active{cursor:-webkit-grabbing;cursor:grabbing}.elementor-element.elementor-absolute .eicon-edit:before,.elementor-element.elementor-fixed .eicon-edit:before{content:"\e902"}.elementor-section>.elementor-element-overlay{left:0;bottom:0}.elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:section-outline .75s;animation:section-outline .75s}.elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid #d72b3f}.elementor-column>.elementor-element-overlay{left:0;bottom:0}.elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;right:-5px;top:0;height:100%}.elementor-column:last-of-type>.ui-resizable-e,.elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-element-settings{position:absolute;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-element-setting.elementor-editor-element-save{display:none}@media (min-width:1025px){.elementor-editor-element-edit{cursor:move}}.elementor-editor-section-settings{height:24px;top:1px;left:50%;-webkit-transform:translateX(-50%) translateY(-100%);-ms-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);background-color:#71d7f7;-webkit-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0;-webkit-box-shadow:0 -2px 8px rgba(0,0,0,.05);box-shadow:0 -2px 8px rgba(0,0,0,.05)}.elementor-editor-section-settings i.eicon-handle{font-size:16px}.elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:5px 0 0 0;border-radius:5px 0 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{content:"";position:absolute;top:2px;border:solid transparent;border-right:solid #71d7f7;border-width:22px 12px 0 0;right:-webkit-calc(100% - 1px);right:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before{border-right-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 5px 0 0;border-radius:0 5px 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{content:"";position:absolute;top:2px;border:solid transparent;border-left:solid #71d7f7;border-width:22px 0 0 12px;left:-webkit-calc(100% - 1px);left:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after{border-left-color:#10bcf2}.elementor-section--handles-inside .elementor-editor-section-settings{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 0 0 5px;border-radius:0 0 0 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{top:0;border-width:0 12px 22px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 0 5px 0;border-radius:0 0 5px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{top:0;border-width:0 0 22px 12px}.elementor-editor-column-settings{top:-1px;left:-1px;-webkit-border-radius:0 0 3px 0;border-radius:0 0 3px 0;overflow:hidden}.elementor-editor-column-settings .elementor-editor-element-setting{background-color:#495157}.elementor-editor-column-settings .elementor-editor-element-setting:not(:hover){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-widget-settings{z-index:2;top:-1px;right:-1px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-border-radius:0 0 0 3px;border-radius:0 0 0 3px;overflow:hidden}.elementor-editor-widget-settings .elementor-editor-element-setting{background-color:#10bcf2}.elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover){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)}.elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.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-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-sortable-helper{position:absolute;-webkit-border-radius:3px;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-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.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-editor-content-only .elementor-first-add{display:none}.elementor-editor-content-only .elementor-section>.elementor-element-overlay{display:none}.elementor-editor-content-only .elementor-section>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section:hover>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-column>.elementor-element-overlay{display:none}.elementor-editor-content-only .elementor-column>.elementor-element-overlay:after{display:none}.elementor-editor-content-only .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column:hover>.elementor-element-overlay:after{display:none}@media (min-width:1025px){.elementor-editor-content-only .elementor-editor-element-edit{cursor:pointer}}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-duration:.25s;animation-duration:.25s;opacity:.9;width:100%;-webkit-align-self:stretch;-ms-flex-item-align:stretch;align-self:stretch}.elementor-section-placeholder{height:40px;-webkit-animation-name:placeholder-section;animation-name:placeholder-section}.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:placeholder-widget;animation-name:placeholder-widget}.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:placeholder-widget .5s;animation:placeholder-widget .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-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder{display:none}.elementor-add-section{all:initial;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:1160px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner{border:2px dashed #d5dadf;background-color:hsla(0,0%,100%,.5)}.elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset{display:none}.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}.elementor-add-section-inner{text-align:center;margin:20px;padding:40px 0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-add-section-area-button{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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;height:40px;width:40px;color:#fff;font-size:16px;-webkit-border-radius:50%;border-radius:50%;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-add-new-section .elementor-add-section-area-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-add-section-area-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:#d30c5c}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-left:5px}.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:40px;top:40px;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;max-width:33.333%}.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;width:100%}#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]{-webkit-border-radius:3px 0 0 3px;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]{-webkit-border-radius:0 3px 3px 0;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-add-section-inline,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-empty-view,.elementor-editor-preview .elementor-widget-empty{display:none}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet{display:inherit;background:-webkit-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:-o-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:repeating-linear-gradient(125deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);border:1px solid rgba(0,0,0,.02)}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section>.elementor-element-overlay,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone.elementor-section>.elementor-element-overlay,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section>.elementor-element-overlay{background-color:#d5dadf;mix-blend-mode:color}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone.elementor-section:before,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before{content:"";display:block;position:absolute;top:0;left:0;width:100%;height:100%;background-color:hsla(0,0%,100%,.6);z-index:9997}[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-column-wrap,[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-container,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone>.elementor-column-wrap,[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-phone>.elementor-widget-container,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-column-wrap,[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-container{-webkit-filter:opacity(.4) saturate(0);filter:opacity(.4) saturate(0)}assets/js/admin.js000066600000156232152142641160010127 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 592); /******/ }) /************************************************************************/ /******/ ({ /***/ 10: /***/ (function(module, exports, __webpack_require__) { var store = __webpack_require__(60)('wks'); var uid = __webpack_require__(61); var Symbol = __webpack_require__(13).Symbol; var USE_SYMBOL = typeof Symbol == 'function'; var $exports = module.exports = function (name) { return store[name] || (store[name] = USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); }; $exports.store = store; /***/ }), /***/ 100: /***/ (function(module, exports, __webpack_require__) { "use strict"; var at = __webpack_require__(168)(true); // `AdvanceStringIndex` abstract operation // https://tc39.github.io/ecma262/#sec-advancestringindex module.exports = function (S, index, unicode) { return index + (unicode ? at(S, index).length : 1); }; /***/ }), /***/ 101: /***/ (function(module, exports, __webpack_require__) { "use strict"; // 21.2.5.3 get RegExp.prototype.flags var anObject = __webpack_require__(18); module.exports = function () { var that = anObject(this); var result = ''; if (that.global) result += 'g'; if (that.ignoreCase) result += 'i'; if (that.multiline) result += 'm'; if (that.unicode) result += 'u'; if (that.sticky) result += 'y'; return result; }; /***/ }), /***/ 108: /***/ (function(module, exports, __webpack_require__) { module.exports = !__webpack_require__(23) && !__webpack_require__(25)(function () { return Object.defineProperty(__webpack_require__(92)('div'), 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ 113: /***/ (function(module, exports, __webpack_require__) { // 0 -> Array#forEach // 1 -> Array#map // 2 -> Array#filter // 3 -> Array#some // 4 -> Array#every // 5 -> Array#find // 6 -> Array#findIndex var ctx = __webpack_require__(56); var IObject = __webpack_require__(97); var toObject = __webpack_require__(64); var toLength = __webpack_require__(37); var asc = __webpack_require__(130); module.exports = function (TYPE, $create) { var IS_MAP = TYPE == 1; var IS_FILTER = TYPE == 2; var IS_SOME = TYPE == 3; var IS_EVERY = TYPE == 4; var IS_FIND_INDEX = TYPE == 6; var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; var create = $create || asc; return function ($this, callbackfn, that) { var O = toObject($this); var self = IObject(O); var f = ctx(callbackfn, that, 3); var length = toLength(self.length); var index = 0; var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; var val, res; for (;length > index; index++) if (NO_HOLES || index in self) { val = self[index]; res = f(val, index, O); if (TYPE) { if (IS_MAP) result[index] = res; // map else if (res) switch (TYPE) { case 3: return true; // some case 5: return val; // find case 6: return index; // findIndex case 2: result.push(val); // filter } else if (IS_EVERY) return false; // every } } return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; }; }; /***/ }), /***/ 114: /***/ (function(module, exports, __webpack_require__) { // 7.2.8 IsRegExp(argument) var isObject = __webpack_require__(24); var cof = __webpack_require__(34); var MATCH = __webpack_require__(10)('match'); module.exports = function (it) { var isRegExp; return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp'); }; /***/ }), /***/ 119: /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(60)('native-function-to-string', Function.toString); /***/ }), /***/ 13: /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self // eslint-disable-next-line no-new-func : Function('return this')(); if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), /***/ 130: /***/ (function(module, exports, __webpack_require__) { // 9.4.2.3 ArraySpeciesCreate(originalArray, length) var speciesConstructor = __webpack_require__(131); module.exports = function (original, length) { return new (speciesConstructor(original))(length); }; /***/ }), /***/ 131: /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(24); var isArray = __webpack_require__(132); var SPECIES = __webpack_require__(10)('species'); module.exports = function (original) { var C; if (isArray(original)) { C = original.constructor; // cross-realm fallback if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; if (isObject(C)) { C = C[SPECIES]; if (C === null) C = undefined; } } return C === undefined ? Array : C; }; /***/ }), /***/ 132: /***/ (function(module, exports, __webpack_require__) { // 7.2.2 IsArray(argument) var cof = __webpack_require__(34); module.exports = Array.isArray || function isArray(arg) { return cof(arg) == 'Array'; }; /***/ }), /***/ 133: /***/ (function(module, exports, __webpack_require__) { // 7.3.20 SpeciesConstructor(O, defaultConstructor) var anObject = __webpack_require__(18); var aFunction = __webpack_require__(62); var SPECIES = __webpack_require__(10)('species'); module.exports = function (O, D) { var C = anObject(O).constructor; var S; return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S); }; /***/ }), /***/ 15: /***/ (function(module, exports, __webpack_require__) { "use strict"; // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) var $export = __webpack_require__(29); var $find = __webpack_require__(113)(5); var KEY = 'find'; var forced = true; // Shouldn't skip holes if (KEY in []) Array(1)[KEY](function () { forced = false; }); $export($export.P + $export.F * forced, 'Array', { find: function find(callbackfn /* , that = undefined */) { return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); } }); __webpack_require__(75)(KEY); /***/ }), /***/ 168: /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__(48); var defined = __webpack_require__(33); // true -> String#at // false -> String#codePointAt module.exports = function (TO_STRING) { return function (that, pos) { var s = String(defined(that)); var i = toInteger(pos); var l = s.length; var a, b; if (i < 0 || i >= l) return TO_STRING ? '' : undefined; a = s.charCodeAt(i); return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; }; }; /***/ }), /***/ 169: /***/ (function(module, exports, __webpack_require__) { "use strict"; var regexpExec = __webpack_require__(80); __webpack_require__(29)({ target: 'RegExp', proto: true, forced: regexpExec !== /./.exec }, { exec: regexpExec }); /***/ }), /***/ 18: /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(24); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; /***/ }), /***/ 23: /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty module.exports = !__webpack_require__(25)(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ 24: /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /***/ 25: /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (e) { return true; } }; /***/ }), /***/ 264: /***/ (function(module, exports, __webpack_require__) { "use strict"; var anObject = __webpack_require__(18); var sameValue = __webpack_require__(313); var regExpExec = __webpack_require__(85); // @@search logic __webpack_require__(86)('search', 1, function (defined, SEARCH, $search, maybeCallNative) { return [ // `String.prototype.search` method // https://tc39.github.io/ecma262/#sec-string.prototype.search function search(regexp) { var O = defined(this); var fn = regexp == undefined ? undefined : regexp[SEARCH]; return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); }, // `RegExp.prototype[@@search]` method // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search function (regexp) { var res = maybeCallNative($search, regexp, this); if (res.done) return res.value; var rx = anObject(regexp); var S = String(this); var previousLastIndex = rx.lastIndex; if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; var result = regExpExec(rx, S); if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; return result === null ? -1 : result.index; } ]; }); /***/ }), /***/ 28: /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__(40); var createDesc = __webpack_require__(87); module.exports = __webpack_require__(23) ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /***/ 29: /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(13); var core = __webpack_require__(41); var hide = __webpack_require__(28); var redefine = __webpack_require__(31); var ctx = __webpack_require__(56); var PROTOTYPE = 'prototype'; var $export = function (type, name, source) { var IS_FORCED = type & $export.F; var IS_GLOBAL = type & $export.G; var IS_STATIC = type & $export.S; var IS_PROTO = type & $export.P; var IS_BIND = type & $export.B; var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]; var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {}); var key, own, out, exp; if (IS_GLOBAL) source = name; for (key in source) { // contains in native own = !IS_FORCED && target && target[key] !== undefined; // export native or passed out = (own ? target : source)[key]; // bind timers to global for call from export context exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; // extend global if (target) redefine(target, key, out, type & $export.U); // export if (exports[key] != out) hide(exports, key, exp); if (IS_PROTO && expProto[key] != out) expProto[key] = out; } }; global.core = core; // type bitmap $export.F = 1; // forced $export.G = 2; // global $export.S = 4; // static $export.P = 8; // proto $export.B = 16; // bind $export.W = 32; // wrap $export.U = 64; // safe $export.R = 128; // real proto method for `library` module.exports = $export; /***/ }), /***/ 31: /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(13); var hide = __webpack_require__(28); var has = __webpack_require__(51); var SRC = __webpack_require__(61)('src'); var $toString = __webpack_require__(119); var TO_STRING = 'toString'; var TPL = ('' + $toString).split(TO_STRING); __webpack_require__(41).inspectSource = function (it) { return $toString.call(it); }; (module.exports = function (O, key, val, safe) { var isFunction = typeof val == 'function'; if (isFunction) has(val, 'name') || hide(val, 'name', key); if (O[key] === val) return; if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key))); if (O === global) { O[key] = val; } else if (!safe) { delete O[key]; hide(O, key, val); } else if (O[key]) { O[key] = val; } else { hide(O, key, val); } // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative })(Function.prototype, TO_STRING, function toString() { return typeof this == 'function' && this[SRC] || $toString.call(this); }); /***/ }), /***/ 313: /***/ (function(module, exports) { // 7.2.9 SameValue(x, y) module.exports = Object.is || function is(x, y) { // eslint-disable-next-line no-self-compare return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; }; /***/ }), /***/ 33: /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) module.exports = function (it) { if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; /***/ }), /***/ 34: /***/ (function(module, exports) { var toString = {}.toString; module.exports = function (it) { return toString.call(it).slice(8, -1); }; /***/ }), /***/ 37: /***/ (function(module, exports, __webpack_require__) { // 7.1.15 ToLength var toInteger = __webpack_require__(48); var min = Math.min; module.exports = function (it) { return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 }; /***/ }), /***/ 40: /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__(18); var IE8_DOM_DEFINE = __webpack_require__(108); var toPrimitive = __webpack_require__(99); var dP = Object.defineProperty; exports.f = __webpack_require__(23) ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); if (IE8_DOM_DEFINE) try { return dP(O, P, Attributes); } catch (e) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /***/ 41: /***/ (function(module, exports) { var core = module.exports = { version: '2.6.10' }; if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef /***/ }), /***/ 48: /***/ (function(module, exports) { // 7.1.4 ToInteger var ceil = Math.ceil; var floor = Math.floor; module.exports = function (it) { return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); }; /***/ }), /***/ 50: /***/ (function(module, exports, __webpack_require__) { "use strict"; var anObject = __webpack_require__(18); var toObject = __webpack_require__(64); var toLength = __webpack_require__(37); var toInteger = __webpack_require__(48); var advanceStringIndex = __webpack_require__(100); var regExpExec = __webpack_require__(85); var max = Math.max; var min = Math.min; var floor = Math.floor; var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g; var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g; var maybeToString = function (it) { return it === undefined ? it : String(it); }; // @@replace logic __webpack_require__(86)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) { return [ // `String.prototype.replace` method // https://tc39.github.io/ecma262/#sec-string.prototype.replace function replace(searchValue, replaceValue) { var O = defined(this); var fn = searchValue == undefined ? undefined : searchValue[REPLACE]; return fn !== undefined ? fn.call(searchValue, O, replaceValue) : $replace.call(String(O), searchValue, replaceValue); }, // `RegExp.prototype[@@replace]` method // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace function (regexp, replaceValue) { var res = maybeCallNative($replace, regexp, this, replaceValue); if (res.done) return res.value; var rx = anObject(regexp); var S = String(this); var functionalReplace = typeof replaceValue === 'function'; if (!functionalReplace) replaceValue = String(replaceValue); var global = rx.global; if (global) { var fullUnicode = rx.unicode; rx.lastIndex = 0; } var results = []; while (true) { var result = regExpExec(rx, S); if (result === null) break; results.push(result); if (!global) break; var matchStr = String(result[0]); if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); } var accumulatedResult = ''; var nextSourcePosition = 0; for (var i = 0; i < results.length; i++) { result = results[i]; var matched = String(result[0]); var position = max(min(toInteger(result.index), S.length), 0); var captures = []; // NOTE: This is equivalent to // captures = result.slice(1).map(maybeToString) // but for some reason `nativeSlice.call(result, 1, result.length)` (called in // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); var namedCaptures = result.groups; if (functionalReplace) { var replacerArgs = [matched].concat(captures, position, S); if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); var replacement = String(replaceValue.apply(undefined, replacerArgs)); } else { replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); } if (position >= nextSourcePosition) { accumulatedResult += S.slice(nextSourcePosition, position) + replacement; nextSourcePosition = position + matched.length; } } return accumulatedResult + S.slice(nextSourcePosition); } ]; // https://tc39.github.io/ecma262/#sec-getsubstitution function getSubstitution(matched, str, position, captures, namedCaptures, replacement) { var tailPos = position + matched.length; var m = captures.length; var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; if (namedCaptures !== undefined) { namedCaptures = toObject(namedCaptures); symbols = SUBSTITUTION_SYMBOLS; } return $replace.call(replacement, symbols, function (match, ch) { var capture; switch (ch.charAt(0)) { case '$': return '$'; case '&': return matched; case '`': return str.slice(0, position); case "'": return str.slice(tailPos); case '<': capture = namedCaptures[ch.slice(1, -1)]; break; default: // \d\d? var n = +ch; if (n === 0) return match; if (n > m) { var f = floor(n / 10); if (f === 0) return match; if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); return match; } capture = captures[n - 1]; } return capture === undefined ? '' : capture; }); } }); /***/ }), /***/ 51: /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /***/ 56: /***/ (function(module, exports, __webpack_require__) { // optional / simple context binding var aFunction = __webpack_require__(62); module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; switch (length) { case 1: return function (a) { return fn.call(that, a); }; case 2: return function (a, b) { return fn.call(that, a, b); }; case 3: return function (a, b, c) { return fn.call(that, a, b, c); }; } return function (/* ...args */) { return fn.apply(that, arguments); }; }; /***/ }), /***/ 592: /***/ (function(module, exports, __webpack_require__) { "use strict"; __webpack_require__(50); __webpack_require__(264); __webpack_require__(76); __webpack_require__(15); (function ($) { var ElementorAdmin = elementorModules.ViewModule.extend({ maintenanceMode: null, config: elementorAdminConfig, getDefaultElements: function getDefaultElements() { var elements = { $switchMode: $('#elementor-switch-mode'), $goToEditLink: $('#elementor-go-to-edit-page-link'), $switchModeInput: $('#elementor-switch-mode-input'), $switchModeButton: $('#elementor-switch-mode-button'), $elementorLoader: $('.elementor-loader'), $builderEditor: $('#elementor-editor'), $importButton: $('#elementor-import-template-trigger'), $importArea: $('#elementor-import-template-area'), $settingsForm: $('#elementor-settings-form'), $settingsTabsWrapper: $('#elementor-settings-tabs-wrapper') }; elements.$settingsFormPages = elements.$settingsForm.find('.elementor-settings-form-page'); elements.$activeSettingsPage = elements.$settingsFormPages.filter('.elementor-active'); elements.$settingsTabs = elements.$settingsTabsWrapper.children(); elements.$activeSettingsTab = elements.$settingsTabs.filter('.nav-tab-active'); return elements; }, toggleStatus: function toggleStatus() { var isElementorMode = this.isElementorMode(); elementorCommon.elements.$body.toggleClass('elementor-editor-active', isElementorMode).toggleClass('elementor-editor-inactive', !isElementorMode); }, bindEvents: function bindEvents() { var self = this; self.elements.$switchModeButton.on('click', function (event) { event.preventDefault(); if (self.isElementorMode()) { elementorCommon.dialogsManager.createWidget('confirm', { message: self.translate('back_to_wordpress_editor_message'), headerMessage: self.translate('back_to_wordpress_editor_header'), strings: { confirm: self.translate('yes'), cancel: self.translate('cancel') }, defaultOption: 'confirm', onConfirm: function onConfirm() { self.elements.$switchModeInput.val(''); self.toggleStatus(); } }).show(); } else { self.elements.$switchModeInput.val(true); var $wpTitle = $('#title'); if (!$wpTitle.val()) { $wpTitle.val('Elementor #' + $('#post_ID').val()); } if (wp.autosave) { wp.autosave.server.triggerSave(); } self.animateLoader(); $(document).on('heartbeat-tick.autosave', function () { elementorCommon.elements.$window.off('beforeunload.edit-post'); location.href = self.elements.$goToEditLink.attr('href'); }); self.toggleStatus(); } }); self.elements.$goToEditLink.on('click', function () { self.animateLoader(); }); $('div.notice.elementor-message-dismissed').on('click', 'button.notice-dismiss, .elementor-button-notice-dismiss', function (event) { event.preventDefault(); $.post(ajaxurl, { action: 'elementor_set_admin_notice_viewed', notice_id: $(this).closest('.elementor-message-dismissed').data('notice_id') }); var $wrapperElm = $(this).closest('.elementor-message-dismissed'); $wrapperElm.fadeTo(100, 0, function () { $wrapperElm.slideUp(100, function () { $wrapperElm.remove(); }); }); }); $('#elementor-clear-cache-button').on('click', function (event) { event.preventDefault(); var $thisButton = $(this); $thisButton.removeClass('success').addClass('loading'); $.post(ajaxurl, { action: 'elementor_clear_cache', _nonce: $thisButton.data('nonce') }).done(function () { $thisButton.removeClass('loading').addClass('success'); }); }); $('#elementor-library-sync-button').on('click', function (event) { event.preventDefault(); var $thisButton = $(this); $thisButton.removeClass('success').addClass('loading'); $.post(ajaxurl, { action: 'elementor_reset_library', _nonce: $thisButton.data('nonce') }).done(function () { $thisButton.removeClass('loading').addClass('success'); }); }); $('#elementor-replace-url-button').on('click', function (event) { event.preventDefault(); var $this = $(this), $tr = $this.parents('tr'), $from = $tr.find('[name="from"]'), $to = $tr.find('[name="to"]'); $this.removeClass('success').addClass('loading'); $.post(ajaxurl, { action: 'elementor_replace_url', from: $from.val(), to: $to.val(), _nonce: $this.data('nonce') }).done(function (response) { $this.removeClass('loading'); if (response.success) { $this.addClass('success'); } elementorCommon.dialogsManager.createWidget('alert', { message: response.data }).show(); }); }); $('#elementor_upgrade_fa_button').on('click', function (event) { event.preventDefault(); var $updateButton = $(this); $updateButton.addClass('loading'); elementorCommon.dialogsManager.createWidget('confirm', { id: 'confirm_fa_migration_admin_modal', message: self.translate('confirm_fa_migration_admin_modal_body'), headerMessage: self.translate('confirm_fa_migration_admin_modal_head'), strings: { confirm: self.translate('yes'), cancel: self.translate('cancel') }, defaultOption: 'confirm', onConfirm: function onConfirm() { $updateButton.removeClass('error').addClass('loading'); $.post(ajaxurl, $updateButton.data()).done(function (response) { $updateButton.removeClass('loading').addClass('success'); $('#elementor_upgrade_fa_button').parent().append(response.data.message); var redirectTo = (location.search.split('redirect_to=')[1] || '').split('&')[0]; if (redirectTo) { location.href = decodeURIComponent(redirectTo); return; } history.go(-1); }).fail(function () { $updateButton.removeClass('loading').addClass('error'); }); }, onCancel: function onCancel() { $updateButton.removeClass('loading').addClass('error'); } }).show(); }); self.elements.$settingsTabs.on({ click: function click(event) { event.preventDefault(); event.currentTarget.focus(); // Safari does not focus the tab automatically }, focus: function focus() { // Using focus event to enable navigation by tab key var hrefWithoutHash = location.href.replace(/#.*/, ''); history.pushState({}, '', hrefWithoutHash + this.hash); self.goToSettingsTabFromHash(); } }); $('select.elementor-rollback-select').on('change', function () { var $this = $(this), $rollbackButton = $this.next('.elementor-rollback-button'), placeholderText = $rollbackButton.data('placeholder-text'), placeholderUrl = $rollbackButton.data('placeholder-url'); $rollbackButton.html(placeholderText.replace('{VERSION}', $this.val())); $rollbackButton.attr('href', placeholderUrl.replace('VERSION', $this.val())); }).trigger('change'); $('.elementor-rollback-button').on('click', function (event) { event.preventDefault(); var $this = $(this); elementorCommon.dialogsManager.createWidget('confirm', { headerMessage: self.translate('rollback_to_previous_version'), message: self.translate('rollback_confirm'), strings: { confirm: self.translate('yes'), cancel: self.translate('cancel') }, onConfirm: function onConfirm() { $this.addClass('loading'); location.href = $this.attr('href'); } }).show(); }); $('.elementor_css_print_method select').on('change', function () { var $descriptions = $('.elementor-css-print-method-description'); $descriptions.hide(); $descriptions.filter('[data-value="' + $(this).val() + '"]').show(); }).trigger('change'); }, onInit: function onInit() { elementorModules.ViewModule.prototype.onInit.apply(this, arguments); this.initTemplatesImport(); this.initMaintenanceMode(); this.goToSettingsTabFromHash(); this.roleManager.init(); }, initTemplatesImport: function initTemplatesImport() { if (!elementorCommon.elements.$body.hasClass('post-type-elementor_library')) { return; } var self = this, $importButton = self.elements.$importButton, $importArea = self.elements.$importArea; self.elements.$formAnchor = $('h1'); $('#wpbody-content').find('.page-title-action:last').after($importButton); self.elements.$formAnchor.after($importArea); $importButton.on('click', function () { $('#elementor-import-template-area').toggle(); }); }, initMaintenanceMode: function initMaintenanceMode() { var MaintenanceMode = __webpack_require__(593); this.maintenanceMode = new MaintenanceMode(); }, isElementorMode: function isElementorMode() { return !!this.elements.$switchModeInput.val(); }, animateLoader: function animateLoader() { this.elements.$goToEditLink.addClass('elementor-animate'); }, goToSettingsTabFromHash: function goToSettingsTabFromHash() { var hash = location.hash.slice(1); if (hash) { this.goToSettingsTab(hash); } }, goToSettingsTab: function goToSettingsTab(tabName) { var $pages = this.elements.$settingsFormPages; if (!$pages.length) { return; } var $activePage = $pages.filter('#' + tabName); this.elements.$activeSettingsPage.removeClass('elementor-active'); this.elements.$activeSettingsTab.removeClass('nav-tab-active'); var $activeTab = this.elements.$settingsTabs.filter('#elementor-settings-' + tabName); $activePage.addClass('elementor-active'); $activeTab.addClass('nav-tab-active'); this.elements.$settingsForm.attr('action', 'options.php#' + tabName); this.elements.$activeSettingsPage = $activePage; this.elements.$activeSettingsTab = $activeTab; }, translate: function translate(stringKey, templateArgs) { return elementorCommon.translate(stringKey, null, templateArgs, this.config.i18n); }, roleManager: { selectors: { body: 'elementor-role-manager', row: '.elementor-role-row', label: '.elementor-role-label', excludedIndicator: '.elementor-role-excluded-indicator', excludedField: 'input[name="elementor_exclude_user_roles[]"]', controlsContainer: '.elementor-role-controls', toggleHandle: '.elementor-role-toggle', arrowUp: 'dashicons-arrow-up', arrowDown: 'dashicons-arrow-down' }, toggle: function toggle($trigger) { var self = this, $row = $trigger.closest(self.selectors.row), $toggleHandleIcon = $row.find(self.selectors.toggleHandle).find('.dashicons'), $controls = $row.find(self.selectors.controlsContainer); $controls.toggleClass('hidden'); if ($controls.hasClass('hidden')) { $toggleHandleIcon.removeClass(self.selectors.arrowUp).addClass(self.selectors.arrowDown); } else { $toggleHandleIcon.removeClass(self.selectors.arrowDown).addClass(self.selectors.arrowUp); } self.updateLabel($row); }, updateLabel: function updateLabel($row) { var self = this, $indicator = $row.find(self.selectors.excludedIndicator), excluded = $row.find(self.selectors.excludedField).is(':checked'); if (excluded) { $indicator.html($indicator.data('excluded-label')); } else { $indicator.html(''); } self.setAdvancedState($row, excluded); }, setAdvancedState: function setAdvancedState($row, state) { var self = this, $controls = $row.find('input[type="checkbox"]').not(self.selectors.excludedField); $controls.each(function (index, input) { $(input).prop('disabled', state); }); }, bind: function bind() { var self = this; $(document).on('click', self.selectors.label + ',' + self.selectors.toggleHandle, function (event) { event.stopPropagation(); event.preventDefault(); self.toggle($(this)); }).on('change', self.selectors.excludedField, function () { self.updateLabel($(this).closest(self.selectors.row)); }); }, init: function init() { var self = this; if (!$('body[class*="' + self.selectors.body + '"]').length) { return; } self.bind(); $(self.selectors.row).each(function (index, row) { self.updateLabel($(row)); }); } } }); $(function () { window.elementorAdmin = new ElementorAdmin(); elementorCommon.elements.$window.trigger('elementor/admin/init'); }); })(jQuery); /***/ }), /***/ 593: /***/ (function(module, exports, __webpack_require__) { "use strict"; __webpack_require__(15); module.exports = elementorModules.ViewModule.extend({ getDefaultSettings: function getDefaultSettings() { 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 getDefaultElements() { var elements = {}, selectors = this.getSettings('selectors'); elements.$modeSelect = jQuery(selectors.modeSelect); elements.$maintenanceModeTable = elements.$modeSelect.parents(selectors.maintenanceModeTable); elements.$excludeModeSelect = elements.$maintenanceModeTable.find(selectors.excludeModeSelect); elements.$excludeRolesArea = elements.$maintenanceModeTable.find(selectors.excludeRolesArea); elements.$templateSelect = elements.$maintenanceModeTable.find(selectors.templateSelect); elements.$editTemplateButton = elements.$maintenanceModeTable.find(selectors.editTemplateButton); elements.$maintenanceModeDescriptions = elements.$maintenanceModeTable.find(selectors.maintenanceModeDescriptions); elements.$maintenanceModeError = elements.$maintenanceModeTable.find(selectors.maintenanceModeError); return elements; }, handleModeSelectChange: function handleModeSelectChange() { var settings = this.getSettings(), elements = this.elements; elements.$maintenanceModeTable.toggleClass(settings.classes.isEnabled, !!elements.$modeSelect.val()); elements.$maintenanceModeDescriptions.hide(); elements.$maintenanceModeDescriptions.filter('[data-value="' + elements.$modeSelect.val() + '"]').show(); }, handleExcludeModeSelectChange: function handleExcludeModeSelectChange() { var elements = this.elements; elements.$excludeRolesArea.toggle('custom' === elements.$excludeModeSelect.val()); }, handleTemplateSelectChange: function handleTemplateSelectChange() { var elements = this.elements; var templateID = elements.$templateSelect.val(); if (!templateID) { elements.$editTemplateButton.hide(); elements.$maintenanceModeError.show(); return; } var editUrl = elementorAdmin.config.home_url + '?p=' + templateID + '&elementor'; elements.$editTemplateButton.prop('href', editUrl).show(); elements.$maintenanceModeError.hide(); }, bindEvents: function bindEvents() { var elements = this.elements; elements.$modeSelect.on('change', this.handleModeSelectChange.bind(this)); elements.$excludeModeSelect.on('change', this.handleExcludeModeSelectChange.bind(this)); elements.$templateSelect.on('change', this.handleTemplateSelectChange.bind(this)); }, onAdminInit: function onAdminInit() { this.handleModeSelectChange(); this.handleExcludeModeSelectChange(); this.handleTemplateSelectChange(); }, onInit: function onInit() { elementorModules.ViewModule.prototype.onInit.apply(this, arguments); elementorCommon.elements.$window.on('elementor/admin/init', this.onAdminInit); } }); /***/ }), /***/ 60: /***/ (function(module, exports, __webpack_require__) { var core = __webpack_require__(41); var global = __webpack_require__(13); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: core.version, mode: __webpack_require__(94) ? 'pure' : 'global', copyright: '© 2019 Denis Pushkarev (zloirock.ru)' }); /***/ }), /***/ 61: /***/ (function(module, exports) { var id = 0; var px = Math.random(); module.exports = function (key) { return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); }; /***/ }), /***/ 62: /***/ (function(module, exports) { module.exports = function (it) { if (typeof it != 'function') throw TypeError(it + ' is not a function!'); return it; }; /***/ }), /***/ 64: /***/ (function(module, exports, __webpack_require__) { // 7.1.13 ToObject(argument) var defined = __webpack_require__(33); module.exports = function (it) { return Object(defined(it)); }; /***/ }), /***/ 75: /***/ (function(module, exports, __webpack_require__) { // 22.1.3.31 Array.prototype[@@unscopables] var UNSCOPABLES = __webpack_require__(10)('unscopables'); var ArrayProto = Array.prototype; if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(28)(ArrayProto, UNSCOPABLES, {}); module.exports = function (key) { ArrayProto[UNSCOPABLES][key] = true; }; /***/ }), /***/ 76: /***/ (function(module, exports, __webpack_require__) { "use strict"; var isRegExp = __webpack_require__(114); var anObject = __webpack_require__(18); var speciesConstructor = __webpack_require__(133); var advanceStringIndex = __webpack_require__(100); var toLength = __webpack_require__(37); var callRegExpExec = __webpack_require__(85); var regexpExec = __webpack_require__(80); var fails = __webpack_require__(25); var $min = Math.min; var $push = [].push; var $SPLIT = 'split'; var LENGTH = 'length'; var LAST_INDEX = 'lastIndex'; var MAX_UINT32 = 0xffffffff; // babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); }); // @@split logic __webpack_require__(86)('split', 2, function (defined, SPLIT, $split, maybeCallNative) { var internalSplit; if ( 'abbc'[$SPLIT](/(b)*/)[1] == 'c' || 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 || 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 || '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 || '.'[$SPLIT](/()()/)[LENGTH] > 1 || ''[$SPLIT](/.?/)[LENGTH] ) { // based on es5-shim implementation, need to rework it internalSplit = function (separator, limit) { var string = String(this); if (separator === undefined && limit === 0) return []; // If `separator` is not a regex, use native split if (!isRegExp(separator)) return $split.call(string, separator, limit); var output = []; var flags = (separator.ignoreCase ? 'i' : '') + (separator.multiline ? 'm' : '') + (separator.unicode ? 'u' : '') + (separator.sticky ? 'y' : ''); var lastLastIndex = 0; var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0; // Make `global` and avoid `lastIndex` issues by working with a copy var separatorCopy = new RegExp(separator.source, flags + 'g'); var match, lastIndex, lastLength; while (match = regexpExec.call(separatorCopy, string)) { lastIndex = separatorCopy[LAST_INDEX]; if (lastIndex > lastLastIndex) { output.push(string.slice(lastLastIndex, match.index)); if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1)); lastLength = match[0][LENGTH]; lastLastIndex = lastIndex; if (output[LENGTH] >= splitLimit) break; } if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop } if (lastLastIndex === string[LENGTH]) { if (lastLength || !separatorCopy.test('')) output.push(''); } else output.push(string.slice(lastLastIndex)); return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output; }; // Chakra, V8 } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) { internalSplit = function (separator, limit) { return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit); }; } else { internalSplit = $split; } return [ // `String.prototype.split` method // https://tc39.github.io/ecma262/#sec-string.prototype.split function split(separator, limit) { var O = defined(this); var splitter = separator == undefined ? undefined : separator[SPLIT]; return splitter !== undefined ? splitter.call(separator, O, limit) : internalSplit.call(String(O), separator, limit); }, // `RegExp.prototype[@@split]` method // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split // // NOTE: This cannot be properly polyfilled in engines that don't support // the 'y' flag. function (regexp, limit) { var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split); if (res.done) return res.value; var rx = anObject(regexp); var S = String(this); var C = speciesConstructor(rx, RegExp); var unicodeMatching = rx.unicode; var flags = (rx.ignoreCase ? 'i' : '') + (rx.multiline ? 'm' : '') + (rx.unicode ? 'u' : '') + (SUPPORTS_Y ? 'y' : 'g'); // ^(? + rx + ) is needed, in combination with some S slicing, to // simulate the 'y' flag. var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; if (lim === 0) return []; if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; var p = 0; var q = 0; var A = []; while (q < S.length) { splitter.lastIndex = SUPPORTS_Y ? q : 0; var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); var e; if ( z === null || (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p ) { q = advanceStringIndex(S, q, unicodeMatching); } else { A.push(S.slice(p, q)); if (A.length === lim) return A; for (var i = 1; i <= z.length - 1; i++) { A.push(z[i]); if (A.length === lim) return A; } q = p = e; } } A.push(S.slice(p)); return A; } ]; }); /***/ }), /***/ 80: /***/ (function(module, exports, __webpack_require__) { "use strict"; var regexpFlags = __webpack_require__(101); var nativeExec = RegExp.prototype.exec; // This always refers to the native implementation, because the // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, // which loads this file before patching the method. var nativeReplace = String.prototype.replace; var patchedExec = nativeExec; var LAST_INDEX = 'lastIndex'; var UPDATES_LAST_INDEX_WRONG = (function () { var re1 = /a/, re2 = /b*/g; nativeExec.call(re1, 'a'); nativeExec.call(re2, 'a'); return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0; })(); // nonparticipating capturing group, copied from es5-shim's String#split patch. var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED; if (PATCH) { patchedExec = function exec(str) { var re = this; var lastIndex, reCopy, match, i; if (NPCG_INCLUDED) { reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re)); } if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX]; match = nativeExec.call(re, str); if (UPDATES_LAST_INDEX_WRONG && match) { re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex; } if (NPCG_INCLUDED && match && match.length > 1) { // Fix browsers whose `exec` methods don't consistently return `undefined` // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ // eslint-disable-next-line no-loop-func nativeReplace.call(match[0], reCopy, function () { for (i = 1; i < arguments.length - 2; i++) { if (arguments[i] === undefined) match[i] = undefined; } }); } return match; }; } module.exports = patchedExec; /***/ }), /***/ 85: /***/ (function(module, exports, __webpack_require__) { "use strict"; var classof = __webpack_require__(98); var builtinExec = RegExp.prototype.exec; // `RegExpExec` abstract operation // https://tc39.github.io/ecma262/#sec-regexpexec module.exports = function (R, S) { var exec = R.exec; if (typeof exec === 'function') { var result = exec.call(R, S); if (typeof result !== 'object') { throw new TypeError('RegExp exec method returned something other than an Object or null'); } return result; } if (classof(R) !== 'RegExp') { throw new TypeError('RegExp#exec called on incompatible receiver'); } return builtinExec.call(R, S); }; /***/ }), /***/ 86: /***/ (function(module, exports, __webpack_require__) { "use strict"; __webpack_require__(169); var redefine = __webpack_require__(31); var hide = __webpack_require__(28); var fails = __webpack_require__(25); var defined = __webpack_require__(33); var wks = __webpack_require__(10); var regexpExec = __webpack_require__(80); var SPECIES = wks('species'); var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { // #replace needs built-in support for named groups. // #match works fine because it just return the exec results, even if it has // a "grops" property. var re = /./; re.exec = function () { var result = []; result.groups = { a: '7' }; return result; }; return ''.replace(re, '$') !== '7'; }); var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () { // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec var re = /(?:)/; var originalExec = re.exec; re.exec = function () { return originalExec.apply(this, arguments); }; var result = 'ab'.split(re); return result.length === 2 && result[0] === 'a' && result[1] === 'b'; })(); module.exports = function (KEY, length, exec) { var SYMBOL = wks(KEY); var DELEGATES_TO_SYMBOL = !fails(function () { // String methods call symbol-named RegEp methods var O = {}; O[SYMBOL] = function () { return 7; }; return ''[KEY](O) != 7; }); var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () { // Symbol-named RegExp methods call .exec var execCalled = false; var re = /a/; re.exec = function () { execCalled = true; return null; }; if (KEY === 'split') { // RegExp[@@split] doesn't call the regex's exec method, but first creates // a new one. We need to return the patched regex when creating the new one. re.constructor = {}; re.constructor[SPECIES] = function () { return re; }; } re[SYMBOL](''); return !execCalled; }) : undefined; if ( !DELEGATES_TO_SYMBOL || !DELEGATES_TO_EXEC || (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) || (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) ) { var nativeRegExpMethod = /./[SYMBOL]; var fns = exec( defined, SYMBOL, ''[KEY], function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) { if (regexp.exec === regexpExec) { if (DELEGATES_TO_SYMBOL && !forceStringMethod) { // The native String method already delegates to @@method (this // polyfilled function), leasing to infinite recursion. // We avoid it by directly calling the native @@method method. return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; } return { done: true, value: nativeMethod.call(str, regexp, arg2) }; } return { done: false }; } ); var strfn = fns[0]; var rxfn = fns[1]; redefine(String.prototype, KEY, strfn); hide(RegExp.prototype, SYMBOL, length == 2 // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) // 21.2.5.11 RegExp.prototype[@@split](string, limit) ? function (string, arg) { return rxfn.call(string, this, arg); } // 21.2.5.6 RegExp.prototype[@@match](string) // 21.2.5.9 RegExp.prototype[@@search](string) : function (string) { return rxfn.call(string, this); } ); } }; /***/ }), /***/ 87: /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /***/ 92: /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(24); var document = __webpack_require__(13).document; // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) { return is ? document.createElement(it) : {}; }; /***/ }), /***/ 94: /***/ (function(module, exports) { module.exports = false; /***/ }), /***/ 97: /***/ (function(module, exports, __webpack_require__) { // fallback for non-array-like ES3 and non-enumerable old V8 strings var cof = __webpack_require__(34); // eslint-disable-next-line no-prototype-builtins module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { return cof(it) == 'String' ? it.split('') : Object(it); }; /***/ }), /***/ 98: /***/ (function(module, exports, __webpack_require__) { // getting tag from 19.1.3.6 Object.prototype.toString() var cof = __webpack_require__(34); var TAG = __webpack_require__(10)('toStringTag'); // ES3 wrong here var ARG = cof(function () { return arguments; }()) == 'Arguments'; // fallback for IE11 Script Access Denied error var tryGet = function (it, key) { try { return it[key]; } catch (e) { /* empty */ } }; module.exports = function (it) { var O, T, B; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T // builtinTag case : ARG ? cof(O) // ES3 arguments fallback : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B; }; /***/ }), /***/ 99: /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = __webpack_require__(24); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { if (!isObject(it)) return it; var fn, val; if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; throw TypeError("Can't convert object to primitive value"); }; /***/ }) /******/ }); //# sourceMappingURL=admin.js.mapassets/js/editor-document.min.js000066600000624772152142641160012734 0ustar00/*! elementor - v2.9.8 - 21-04-2020 */ !function(e){var t={};function __webpack_require__(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,__webpack_require__),r.l=!0,r.exports}__webpack_require__.m=e,__webpack_require__.c=t,__webpack_require__.d=function(e,t,n){__webpack_require__.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.t=function(e,t){if(1&t&&(e=__webpack_require__(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(__webpack_require__.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)__webpack_require__.d(n,r,function(t){return e[t]}.bind(null,r));return n},__webpack_require__.n=function(e){var t=e&&e.__esModule?function getDefault(){return e.default}:function getModuleExports(){return e};return __webpack_require__.d(t,"a",t),t},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=660)}([function(e,t){e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){e.exports=n(137)},function(e,t){e.exports=function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t,n){var r=n(1);function _defineProperties(e,t){for(var n=0;n1?arguments[1]:void 0)}}),n(75)("find")},function(e,t,n){var r=n(14);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t,n){var r=n(16),o=n(102),i=n(67),a=Object.defineProperty;t.f=n(12)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=i(t,!0),r(n),o)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var r=n(24);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(109),o=n(53);e.exports=function(e){return r(o(e))}},function(e,t,n){var r=n(129),o=n(182),i=n(185);function _get(t,n,a){return"undefined"!=typeof Reflect&&o?e.exports=_get=o:e.exports=_get=function _get(e,t,n){var o=i(e,t);if(o){var a=r(o,t);return a.get?a.get.call(n):a.value}},_get(t,n,a||t)}e.exports=_get},function(e,t,n){e.exports=n(186)},function(e,t,n){e.exports=!n(25)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var r=n(17),o=n(45);e.exports=n(12)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var r=n(40),o=n(87);e.exports=n(23)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){var r=n(13),o=n(41),i=n(28),a=n(31),u=n(56),l=function(e,t,n){var s,c,d,f,m=e&l.F,v=e&l.G,p=e&l.S,g=e&l.P,h=e&l.B,y=v?r:p?r[t]||(r[t]={}):(r[t]||{}).prototype,C=v?o:o[t]||(o[t]={}),S=C.prototype||(C.prototype={});for(s in v&&(n=t),n)d=((c=!m&&y&&void 0!==y[s])?y:n)[s],f=h&&c?u(d,r):g&&"function"==typeof d?u(Function.call,d):d,y&&a(y,s,d,e&l.U),C[s]!=d&&i(C,s,f),g&&S[s]!=d&&(S[s]=d)};r.core=o,l.F=1,l.G=2,l.S=4,l.P=8,l.B=16,l.W=32,l.U=64,l.R=128,e.exports=l},function(e,t,n){var r=n(40).f,o=Function.prototype,i=/^\s*function ([^ (]*)/;"name"in o||n(23)&&r(o,"name",{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(e){return""}}})},function(e,t,n){var r=n(13),o=n(28),i=n(51),a=n(61)("src"),u=n(119),l=(""+u).split("toString");n(41).inspectSource=function(e){return u.call(e)},(e.exports=function(e,t,n,u){var s="function"==typeof n;s&&(i(n,"name")||o(n,"name",t)),e[t]!==n&&(s&&(i(n,a)||o(n,a,e[t]?""+e[t]:l.join(String(t)))),e===r?e[t]=n:u?e[t]?e[t]=n:o(e,t,n):(delete e[t],o(e,t,n)))})(Function.prototype,"toString",function toString(){return"function"==typeof this&&this[a]||u.call(this)})},function(e,t,n){var r=n(1);e.exports=function _defineProperty(e,t,n){return t in e?r(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var r=n(104),o=n(71);e.exports=Object.keys||function keys(e){return r(e,o)}},function(e,t,n){"use strict";var r=n(0);n(1)(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(43)),i=r(n(2)),a=r(n(3)),u=r(n(5)),l=r(n(4)),s=r(n(47)),c=r(n(6)),d=r(n(32)),f=function(e){function CommandBase(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,i.default)(this,CommandBase),t=(0,u.default)(this,(0,l.default)(CommandBase).call(this,e)),(0,d.default)((0,s.default)(t),"component",void 0),t.currentCommand=n.getCurrentLast(),t.component=n.getComponent(t.currentCommand),t.initialize(e),e=t.args,t.validateArgs(e),t}return(0,c.default)(CommandBase,e),(0,a.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!t.container&&!t.containers)throw Error("container or containers are required.");if(t.container&&t.containers)throw Error("container and containers cannot go together please select one of them.");var n=t.containers||[t.container];n.forEach(function(t){e.requireArgumentInstance("container",elementorModules.editor.Container,{container:t})})}},{key:"initialize",value:function initialize(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]}},{key:"validateArgs",value:function validateArgs(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){arguments.length>0&&void 0!==arguments[0]&&arguments[0];elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var e,t=this;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),e=this.apply(this.args)}catch(e){if(this.onCatchApply(e),e instanceof $e.modules.HookBreak)return!1}var n=function onAfter(e){t.onAfterApply(t.args,e),t.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),t.onAfterRun(t.args,e)};return e&&"object"===(0,o.default)(e)&&e.promise&&e.then&&e.fail?(e.fail(this.onCatchApply.bind(this)),e.done(n)):n(e),e}},{key:"onBeforeRun",value:function onBeforeRun(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,e)}},{key:"onAfterRun",value:function onAfterRun(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,e,t)}},{key:"onBeforeApply",value:function onBeforeApply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,e)}},{key:"onAfterApply",value:function onAfterApply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;$e.hooks.runDataAfter(this.currentCommand,e,t)}},{key:"onCatchApply",value:function onCatchApply(e){$e.hooks.runDataCatch(this.currentCommand,this.args,e),elementorCommon.helpers.consoleError(e),$e.hooks.runUICatch(this.currentCommand,this.args,e)}}]),CommandBase}(r(n(194)).default);t.default=f},function(e,t,n){var r=n(48),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},function(e,t){e.exports={}},function(e,t,n){var r=n(53);e.exports=function(e){return Object(r(e))}},function(e,t,n){var r=n(18),o=n(108),i=n(99),a=Object.defineProperty;t.f=n(23)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=i(t,!0),r(n),o)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t){var n=e.exports={version:"2.6.10"};"number"==typeof __e&&(__e=n)},function(e,t,n){var r=n(66);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var r=n(139),o=n(147);function _typeof2(e){return(_typeof2="function"==typeof o&&"symbol"==typeof r?function _typeof2(e){return typeof e}:function _typeof2(e){return e&&"function"==typeof o&&e.constructor===o&&e!==o.prototype?"symbol":typeof e})(e)}function _typeof(t){return"function"==typeof o&&"symbol"===_typeof2(r)?e.exports=_typeof=function _typeof(e){return _typeof2(e)}:e.exports=_typeof=function _typeof(e){return e&&"function"==typeof o&&e.constructor===o&&e!==o.prototype?"symbol":_typeof2(e)},_typeof(t)}e.exports=_typeof},function(e,t){e.exports=!0},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){t.f={}.propertyIsEnumerable},function(e,t){e.exports=function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},function(e,t,n){"use strict";var r=n(18),o=n(64),i=n(37),a=n(48),u=n(100),l=n(85),s=Math.max,c=Math.min,d=Math.floor,f=/\$([$&`']|\d\d?|<[^>]*>)/g,m=/\$([$&`']|\d\d?)/g;n(86)("replace",2,function(e,t,n,v){return[function replace(r,o){var i=e(this),a=null==r?void 0:r[t];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(e,t){var o=v(n,e,this,t);if(o.done)return o.value;var d=r(e),f=String(this),m="function"==typeof t;m||(t=String(t));var p=d.global;if(p){var g=d.unicode;d.lastIndex=0}for(var h=[];;){var y=l(d,f);if(null===y)break;if(h.push(y),!p)break;""===String(y[0])&&(d.lastIndex=u(f,i(d.lastIndex),g))}for(var C,S="",b=0,_=0;_=b&&(S+=f.slice(b,w)+M,b=w+k.length)}return S+f.slice(b)}];function getSubstitution(e,t,r,i,a,u){var l=r+e.length,s=i.length,c=m;return void 0!==a&&(a=o(a),c=f),n.call(u,c,function(n,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(l);case"<":u=a[o.slice(1,-1)];break;default:var c=+o;if(0===c)return n;if(c>s){var f=d(c/10);return 0===f?n:f<=s?void 0===i[f-1]?o.charAt(1):i[f-1]+o.charAt(1):n}u=i[c-1]}return void 0===u?"":u})}})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(46),o=n(45),i=n(20),a=n(67),u=n(19),l=n(102),s=Object.getOwnPropertyDescriptor;t.f=n(12)?s:function getOwnPropertyDescriptor(e,t){if(e=i(e),t=a(t,!0),l)try{return s(e,t)}catch(e){}if(u(e,t))return o(!r.f.call(e,t),e[t])}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var r=n(16),o=n(122),i=n(71),a=n(69)("IE_PROTO"),u=function(){},l=function(){var e,t=n(88)("iframe"),r=i.length;for(t.style.display="none",n(123).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(" get_scheme_titles(); foreach ( $this->get_scheme_value() as $scheme_key => $scheme_value ) { $scheme[ $scheme_key ] = [ 'title' => isset( $titles[ $scheme_key ] ) ? $titles[ $scheme_key ] : '', 'value' => $scheme_value, ]; } return $scheme; } } core/schemes/typography.php000066600000005777152142641170012071 0ustar00 __( 'Primary Headline', 'elementor' ), self::TYPOGRAPHY_2 => __( 'Secondary Headline', 'elementor' ), self::TYPOGRAPHY_3 => __( 'Body Text', 'elementor' ), self::TYPOGRAPHY_4 => __( 'Accent Text', 'elementor' ), ]; } /** * Get default typography scheme. * * Retrieve the default typography scheme. * * @since 1.0.0 * @access public * * @return array Default typography scheme. */ public function get_default_scheme() { return [ self::TYPOGRAPHY_1 => [ 'font_family' => 'Roboto', 'font_weight' => '600', ], self::TYPOGRAPHY_2 => [ 'font_family' => 'Roboto Slab', 'font_weight' => '400', ], self::TYPOGRAPHY_3 => [ 'font_family' => 'Roboto', 'font_weight' => '400', ], self::TYPOGRAPHY_4 => [ 'font_family' => 'Roboto', 'font_weight' => '500', ], ]; } /** * Init system typography schemes. * * Initialize the system typography schemes. * * @since 1.0.0 * @access protected * * @return array System typography schemes. */ protected function _init_system_schemes() { return []; } /** * Print typography scheme content template. * * Used to generate the HTML in the editor using Underscore JS template. The * variables for the class are available using `data` JS object. * * @since 1.0.0 * @access public */ public function print_template_content() { ?>
__( 'Primary', 'elementor' ), self::COLOR_2 => __( 'Secondary', 'elementor' ), self::COLOR_3 => __( 'Text', 'elementor' ), self::COLOR_4 => __( 'Accent', 'elementor' ), ]; } /** * Get default color scheme. * * Retrieve the default color scheme. * * @since 1.0.0 * @access public * * @return array Default color scheme. */ public function get_default_scheme() { return [ self::COLOR_1 => '#6ec1e4', self::COLOR_2 => '#54595f', self::COLOR_3 => '#7a7a7a', self::COLOR_4 => '#61ce70', ]; } /** * Print color scheme content template. * * Used to generate the HTML in the editor using Underscore JS template. The * variables for the class are available using `data` JS object. * * @since 1.0.0 * @access public */ public function print_template_content() { ?>
_get_current_scheme_title(); ?>
_get_system_schemes_to_print() as $scheme_name => $scheme ) : ?>
[ 'title' => 'Joker', 'items' => [ self::COLOR_1 => '#202020', self::COLOR_2 => '#b7b4b4', self::COLOR_3 => '#707070', self::COLOR_4 => '#f6121c', ], ], 'ocean' => [ 'title' => 'Ocean', 'items' => [ self::COLOR_1 => '#1569ae', self::COLOR_2 => '#b6c9db', self::COLOR_3 => '#545454', self::COLOR_4 => '#fdd247', ], ], 'royal' => [ 'title' => 'Royal', 'items' => [ self::COLOR_1 => '#d5ba7f', self::COLOR_2 => '#902729', self::COLOR_3 => '#ae4848', self::COLOR_4 => '#302a8c', ], ], 'violet' => [ 'title' => 'Violet', 'items' => [ self::COLOR_1 => '#747476', self::COLOR_2 => '#ebca41', self::COLOR_3 => '#6f1683', self::COLOR_4 => '#a43cbd', ], ], 'sweet' => [ 'title' => 'Sweet', 'items' => [ self::COLOR_1 => '#6ccdd9', self::COLOR_2 => '#763572', self::COLOR_3 => '#919ca7', self::COLOR_4 => '#f12184', ], ], 'urban' => [ 'title' => 'Urban', 'items' => [ self::COLOR_1 => '#db6159', self::COLOR_2 => '#3b3b3b', self::COLOR_3 => '#7a7979', self::COLOR_4 => '#2abf64', ], ], 'earth' => [ 'title' => 'Earth', 'items' => [ self::COLOR_1 => '#882021', self::COLOR_2 => '#c48e4c', self::COLOR_3 => '#825e24', self::COLOR_4 => '#e8c12f', ], ], 'river' => [ 'title' => 'River', 'items' => [ self::COLOR_1 => '#8dcfc8', self::COLOR_2 => '#565656', self::COLOR_3 => '#50656e', self::COLOR_4 => '#dc5049', ], ], 'pastel' => [ 'title' => 'Pastel', 'items' => [ self::COLOR_1 => '#f27f6f', self::COLOR_2 => '#f4cd78', self::COLOR_3 => '#a5b3c1', self::COLOR_4 => '#aac9c3', ], ], ]; } /** * Get system color schemes to print. * * Retrieve the system color schemes * * @since 1.0.0 * @access protected * * @return array The system color schemes. */ protected function _get_system_schemes_to_print() { return $this->get_system_schemes(); } /** * Get current color scheme title. * * Retrieve the current color scheme title. * * @since 1.0.0 * @access protected * * @return string The current color scheme title. */ protected function _get_current_scheme_title() { return __( 'Color Palette', 'elementor' ); } } core/role-manager/role-manager.php000066600000014241152142641170013140 0ustar00get_page_title(), $this->get_page_title(), 'manage_options', self::PAGE_ID, [ $this, 'display_settings_page' ] ); } /** * @since 2.0.0 * @access protected */ protected function create_tabs() { $validation_class = 'Elementor\Settings_Validations'; return [ 'general' => [ 'label' => __( 'General', 'elementor' ), 'sections' => [ 'tools' => [ 'fields' => [ 'exclude_user_roles' => [ 'label' => __( 'Exclude Roles', 'elementor' ), 'field_args' => [ 'type' => 'checkbox_list_roles', 'exclude' => [ 'super_admin', 'administrator' ], ], 'setting_args' => [ 'sanitize_callback' => [ $validation_class, 'checkbox_list' ], ], ], ], ], ], ], ]; } /** * @since 2.0.0 * @access public */ public function display_settings_page() { $this->get_tabs(); ?>

get_page_title() ); ?>

'; foreach ( get_editable_roles() as $role_slug => $role_data ) { if ( 'administrator' === $role_slug ) { continue; } $this->display_role_controls( $role_slug, $role_data ); } submit_button(); ?>
get_role_manager_options(); } ?>
roles; $options = $this->get_user_restrictions(); $restrictions = []; if ( empty( $options ) ) { return $restrictions; } foreach ( $user_roles as $role ) { if ( ! isset( $options[ $role ] ) ) { continue; } $restrictions = array_merge( $restrictions, $options[ $role ] ); } return array_unique( $restrictions ); } /** * @since 2.0.0 * @access private */ private function get_user_restrictions() { static $restrictions = false; if ( ! $restrictions ) { $restrictions = []; /** * Editor user restrictions. * * Filters the user restrictions in the editor. * * @since 2.0.0 * * @param array $restrictions User restrictions. */ $restrictions = apply_filters( 'elementor/editor/user/restrictions', $restrictions ); } return $restrictions; } /** * @since 2.0.0 * @access public * * @param $capability * * @return bool */ public function user_can( $capability ) { $options = $this->get_user_restrictions_array(); if ( in_array( $capability, $options, true ) ) { return false; } return true; } /** * @since 2.0.0 * @access public */ public function __construct() { parent::__construct(); add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 100 ); add_action( 'elementor/role/restrictions/controls', [ $this, 'get_go_pro_link_html' ] ); } } core/responsive/responsive.php000066600000006661152142641170012617 0ustar00 0, 'sm' => 480, 'md' => 768, 'lg' => 1025, 'xl' => 1440, 'xxl' => 1600, ]; /** * Editable breakpoint keys. * * Holds the editable breakpoint keys. * * @since 1.0.0 * @access private * @static * * @var array Editable breakpoint keys. */ private static $editable_breakpoints_keys = [ 'md', 'lg', ]; /** * Get default breakpoints. * * Retrieve the default responsive breakpoints. * * @since 1.0.0 * @access public * @static * * @return array Default breakpoints. */ public static function get_default_breakpoints() { return self::$default_breakpoints; } /** * Get editable breakpoints. * * Retrieve the editable breakpoints. * * @since 1.0.0 * @access public * @static * * @return array Editable breakpoints. */ public static function get_editable_breakpoints() { return array_intersect_key( self::get_breakpoints(), array_flip( self::$editable_breakpoints_keys ) ); } /** * Get breakpoints. * * Retrieve the responsive breakpoints. * * @since 1.0.0 * @access public * @static * * @return array Responsive breakpoints. */ public static function get_breakpoints() { return array_reduce( array_keys( self::$default_breakpoints ), function( $new_array, $breakpoint_key ) { if ( ! in_array( $breakpoint_key, self::$editable_breakpoints_keys ) ) { $new_array[ $breakpoint_key ] = self::$default_breakpoints[ $breakpoint_key ]; } else { $saved_option = get_option( self::BREAKPOINT_OPTION_PREFIX . $breakpoint_key ); $new_array[ $breakpoint_key ] = $saved_option ? (int) $saved_option : self::$default_breakpoints[ $breakpoint_key ]; } return $new_array; }, [] ); } /** * @since 2.1.0 * @access public * @static */ public static function has_custom_breakpoints() { return ! ! array_diff( self::$default_breakpoints, self::get_breakpoints() ); } /** * @since 2.1.0 * @access public * @static */ public static function get_stylesheet_templates_path() { return ELEMENTOR_ASSETS_PATH . 'css/templates/'; } /** * @since 2.1.0 * @access public * @static */ public static function compile_stylesheet_templates() { foreach ( self::get_stylesheet_templates() as $file_name => $template_path ) { $file = new Frontend( $file_name, $template_path ); $file->update(); } } /** * @since 2.1.0 * @access private * @static */ private static function get_stylesheet_templates() { $templates_paths = glob( self::get_stylesheet_templates_path() . '*.css' ); $templates = []; foreach ( $templates_paths as $template_path ) { $file_name = 'custom-' . basename( $template_path ); $templates[ $file_name ] = $template_path; } return apply_filters( 'elementor/core/responsive/get_stylesheet_templates', $templates ); } } core/responsive/files/frontend.php000066600000005303152142641170013333 0ustar00template_file = $template_file; parent::__construct( $file_name ); } /** * @since 2.1.0 * @access public */ public function parse_content() { $breakpoints = Responsive::get_breakpoints(); $breakpoints_keys = array_keys( $breakpoints ); $file_content = file_get_contents( $this->template_file ); $file_content = preg_replace_callback( '/ELEMENTOR_SCREEN_([A-Z]+)_([A-Z]+)/', function ( $placeholder_data ) use ( $breakpoints_keys, $breakpoints ) { $breakpoint_index = array_search( strtolower( $placeholder_data[1] ), $breakpoints_keys ); $is_max_point = 'MAX' === $placeholder_data[2]; if ( $is_max_point ) { $breakpoint_index++; } $value = $breakpoints[ $breakpoints_keys[ $breakpoint_index ] ]; if ( $is_max_point ) { $value--; } return $value . 'px'; }, $file_content ); return $file_content; } /** * Load meta. * * Retrieve the file meta data. * * @since 2.1.0 * @access protected */ protected function load_meta() { $option = $this->load_meta_option(); $file_meta_key = $this->get_file_meta_key(); if ( empty( $option[ $file_meta_key ] ) ) { return []; } return $option[ $file_meta_key ]; } /** * Update meta. * * Update the file meta data. * * @since 2.1.0 * @access protected * * @param array $meta New meta data. */ protected function update_meta( $meta ) { $option = $this->load_meta_option(); $option[ $this->get_file_meta_key() ] = $meta; update_option( static::META_KEY, $option ); } /** * Delete meta. * * Delete the file meta data. * * @since 2.1.0 * @access protected */ protected function delete_meta() { $option = $this->load_meta_option(); $file_meta_key = $this->get_file_meta_key(); if ( isset( $option[ $file_meta_key ] ) ) { unset( $option[ $file_meta_key ] ); } if ( $option ) { update_option( static::META_KEY, $option ); } else { delete_option( static::META_KEY ); } } /** * @since 2.1.0 * @access private */ private function get_file_meta_key() { return pathinfo( $this->get_file_name(), PATHINFO_FILENAME ); } /** * @since 2.1.0 * @access private */ private function load_meta_option() { $option = get_option( static::META_KEY ); if ( ! $option ) { $option = []; } return $option; } } core/utils/exceptions.php000066600000001304152142641170011533 0ustar00files_manager->get( get_called_class(), func_get_args() ); } /** * @since 2.1.0 * @access public */ public function __construct( $file_name ) { /** * Elementor File Name * * Filters the File name * * @since 2.3.0 * * @param string $file_name * @param object $this The file instance, which inherits Elementor\Core\Files */ $file_name = apply_filters( 'elementor/files/file_name', $file_name, $this ); $this->set_file_name( $file_name ); $this->set_files_dir( static::DEFAULT_FILES_DIR ); $this->set_path(); } /** * @since 2.1.0 * @access public */ public function set_files_dir( $files_dir ) { $this->files_dir = $files_dir; } /** * @since 2.1.0 * @access public */ public function set_file_name( $file_name ) { $this->file_name = $file_name; } /** * @since 2.1.0 * @access public */ public function get_file_name() { return $this->file_name; } /** * @since 2.1.0 * @access public */ public function get_url() { $url = set_url_scheme( self::get_base_uploads_url() . $this->files_dir . $this->file_name ); return add_query_arg( [ 'ver' => $this->get_meta( 'time' ) ], $url ); } /** * @since 2.1.0 * @access public */ public function get_content() { if ( ! $this->content ) { $this->content = $this->parse_content(); } return $this->content; } /** * @since 2.1.0 * @access public */ public function update() { $this->update_file(); $meta = $this->get_meta(); $meta['time'] = time(); $this->update_meta( $meta ); } /** * @since 2.1.0 * @access public */ public function update_file() { $this->content = $this->parse_content(); if ( $this->content ) { $this->write(); } else { $this->delete(); } } /** * @since 2.1.0 * @access public */ public function write() { return file_put_contents( $this->path, $this->content ); } /** * @since 2.1.0 * @access public */ public function delete() { if ( file_exists( $this->path ) ) { unlink( $this->path ); } $this->delete_meta(); } /** * Get meta data. * * Retrieve the CSS file meta data. Returns an array of all the data, or if * custom property is given it will return the property value, or `null` if * the property does not exist. * * @since 2.1.0 * @access public * * @param string $property Optional. Custom meta data property. Default is * null. * * @return array|null An array of all the data, or if custom property is * given it will return the property value, or `null` if * the property does not exist. */ public function get_meta( $property = null ) { $default_meta = $this->get_default_meta(); $meta = array_merge( $default_meta, (array) $this->load_meta() ); if ( $property ) { return isset( $meta[ $property ] ) ? $meta[ $property ] : null; } return $meta; } /** * @since 2.1.0 * @access protected * @abstract */ abstract protected function parse_content(); /** * Load meta. * * Retrieve the file meta data. * * @since 2.1.0 * @access protected */ protected function load_meta() { return get_option( static::META_KEY ); } /** * Update meta. * * Update the file meta data. * * @since 2.1.0 * @access protected * * @param array $meta New meta data. */ protected function update_meta( $meta ) { update_option( static::META_KEY, $meta ); } /** * Delete meta. * * Delete the file meta data. * * @since 2.1.0 * @access protected */ protected function delete_meta() { delete_option( static::META_KEY ); } /** * @since 2.1.0 * @access protected */ protected function get_default_meta() { return [ 'time' => 0, ]; } /** * @since 2.1.0 * @access private * @static */ private static function get_wp_uploads_dir() { global $blog_id; if ( empty( self::$wp_uploads_dir[ $blog_id ] ) ) { self::$wp_uploads_dir[ $blog_id ] = wp_upload_dir( null, false ); } return self::$wp_uploads_dir[ $blog_id ]; } /** * @since 2.1.0 * @access private */ private function set_path() { $dir_path = self::get_base_uploads_dir() . $this->files_dir; if ( ! is_dir( $dir_path ) ) { wp_mkdir_p( $dir_path ); } $this->path = $dir_path . $this->file_name; } } core/files/manager.php000066600000005714152142641170010737 0ustar00register_actions(); } public function get( $class, $args ) { $id = $class . '-' . wp_json_encode( $args ); if ( ! isset( $this->files[ $id ] ) ) { // Create an instance from dynamic args length. $reflection_class = new \ReflectionClass( $class ); $this->files[ $id ] = $reflection_class->newInstanceArgs( $args ); } return $this->files[ $id ]; } /** * On post delete. * * Delete post CSS immediately after a post is deleted from the database. * * Fired by `deleted_post` action. * * @since 1.2.0 * @access public * * @param string $post_id Post ID. */ public function on_delete_post( $post_id ) { if ( ! Utils::is_post_support( $post_id ) ) { return; } $css_file = Post_CSS::create( $post_id ); $css_file->delete(); } /** * On export post meta. * * When exporting data using WXR, skip post CSS file meta key. This way the * export won't contain the post CSS file data used by Elementor. * * Fired by `wxr_export_skip_postmeta` filter. * * @since 1.2.0 * @access public * * @param bool $skip Whether to skip the current post meta. * @param string $meta_key Current meta key. * * @return bool Whether to skip the post CSS meta. */ public function on_export_post_meta( $skip, $meta_key ) { if ( Post_CSS::META_KEY === $meta_key ) { $skip = true; } return $skip; } /** * Clear cache. * * Delete all meta containing files data. And delete the actual * files from the upload directory. * * @since 1.2.0 * @access public */ public function clear_cache() { delete_post_meta_by_key( Post_CSS::META_KEY ); delete_option( Global_CSS::META_KEY ); delete_option( Frontend::META_KEY ); // Delete files. $path = Base::get_base_uploads_dir() . Base::DEFAULT_FILES_DIR . '*'; foreach ( glob( $path ) as $file_path ) { unlink( $file_path ); } /** * Elementor clear files. * * Fires after Elementor clears files * * @since 2.1.0 */ do_action( 'elementor/core/files/clear_cache' ); } /** * Register actions. * * Register filters and actions for the files manager. * * @since 1.2.0 * @access private */ private function register_actions() { add_action( 'deleted_post', [ $this, 'on_delete_post' ] ); add_filter( 'wxr_export_skip_postmeta', [ $this, 'on_export_post_meta' ], 10, 2 ); } } core/files/assets/svg/svg-handler.php000066600000040775152142641170013646 0ustar00attachment_id = $attachment_id; return $this->attachment_id; } /** * get_attachment_id * @return int */ public function get_attachment_id() { return $this->attachment_id; } /** * get_meta * @return mixed */ protected function get_meta() { return get_post_meta( $this->attachment_id, self::META_KEY, true ); } /** * update_meta * @param $meta */ protected function update_meta( $meta ) { update_post_meta( $this->attachment_id, self::META_KEY, $meta ); } /** * delete_meta */ protected function delete_meta() { delete_post_meta( $this->attachment_id, self::META_KEY ); } /** * delete_meta_cache */ public function delete_meta_cache() { delete_post_meta_by_key( self::META_KEY ); } /** * read_from_file * @return bool|string */ public function read_from_file() { return file_get_contents( get_attached_file( $this->attachment_id ) ); } /** * get_inline_svg * @param $attachment_id * * @return bool|mixed|string */ public static function get_inline_svg( $attachment_id ) { $svg = get_post_meta( $attachment_id, self::META_KEY, true ); if ( ! empty( $svg ) ) { return $svg; } $attachment_file = get_attached_file( $attachment_id ); if ( ! $attachment_file ) { return ''; } $svg = file_get_contents( $attachment_file ); if ( ! empty( $svg ) ) { update_post_meta( $attachment_id, self::META_KEY, $svg ); } return $svg; } public function upload_mimes( $allowed_types ) { if ( $this->is_elementor_media_upload() ) { $allowed_types['svg'] = self::MIME_TYPE; } return $allowed_types; } /** * wp_handle_upload_prefilter * @param $file * * @return mixed */ public function wp_handle_upload_prefilter( $file ) { if ( ! $this->is_elementor_media_upload() || self::MIME_TYPE !== $file['type'] ) { return $file; } $ext = pathinfo( $file['name'], PATHINFO_EXTENSION ); if ( 'svg' !== $ext ) { $file['error'] = sprintf( __( 'The uploaded %s file is not supported. Please upload a valid SVG file', 'elementor' ), $ext ); return $file; } if ( ! self::is_enabled() ) { $file['error'] = __( 'SVG file is not allowed for security reasons', 'elementor' ); return $file; } if ( self::svg_sanitizer_can_run() && ! $this->sanitize_svg( $file['tmp_name'] ) ) { $file['error'] = __( 'Invalid SVG Format, file not uploaded for security reasons', 'elementor' ); } return $file; } /** * is_elementor_media_upload * @return bool */ private function is_elementor_media_upload() { return isset( $_POST['uploadTypeCaller'] ) && 'elementor-editor-upload' === $_POST['uploadTypeCaller']; // phpcs:ignore } /** * wp_check_filetype_and_ext * A workaround for upload validation which relies on a PHP extension (fileinfo) * with inconsistent reporting behaviour. * ref: https://core.trac.wordpress.org/ticket/39550 * ref: https://core.trac.wordpress.org/ticket/40175 * * @param $data * @param $file * @param $filename * @param $mimes * * @return mixed */ public function wp_check_filetype_and_ext( $data, $file, $filename, $mimes ) { if ( ! empty( $data['ext'] ) && ! empty( $data['type'] ) ) { return $data; } $filetype = wp_check_filetype( $filename, $mimes ); if ( 'svg' === $filetype['ext'] ) { $data['ext'] = 'svg'; $data['type'] = self::MIME_TYPE; } return $data; } /** * Check if the contents are gzipped * @see http://www.gzip.org/zlib/rfc-gzip.html#member-format * * @param $contents * @return bool */ private function is_encoded( $contents ) { $needle = "\x1f\x8b\x08"; if ( function_exists( 'mb_strpos' ) ) { return 0 === mb_strpos( $contents, $needle ); } else { return 0 === strpos( $contents, $needle ); } } /** * decode_svg * @param $content * * @return string */ private function decode_svg( $content ) { return gzdecode( $content ); } /** * encode_svg * @param $content * * @return string */ private function encode_svg( $content ) { return gzencode( $content ); } /** * sanitize_svg * @param $filename * * @return bool */ public function sanitize_svg( $filename ) { $original_content = file_get_contents( $filename ); $is_encoded = $this->is_encoded( $original_content ); if ( $is_encoded ) { $decoded = $this->decode_svg( $original_content ); if ( false === $decoded ) { return false; } $original_content = $decoded; } $valid_svg = $this->sanitizer( $original_content ); if ( false === $valid_svg ) { return false; } // If we were gzipped, we need to re-zip if ( $is_encoded ) { $valid_svg = $this->encode_svg( $valid_svg ); } file_put_contents( $filename, $valid_svg ); return true; } /** * is_allowed_tag * @param $element * * @return bool */ private function is_allowed_tag( $element ) { static $allowed_tags = false; if ( false === $allowed_tags ) { $allowed_tags = $this->get_allowed_elements(); } $tag_name = $element->tagName; // phpcs:ignore -- php DomDocument if ( ! in_array( strtolower( $tag_name ), $allowed_tags ) ) { $this->remove_element( $element ); return false; } return true; } private function remove_element( $element ) { $element->parentNode->removeChild( $element ); // phpcs:ignore -- php DomDocument } /** * is_a_attribute * @param $name * @param $check * * @return bool */ private function is_a_attribute( $name, $check ) { return 0 === strpos( $name, $check . '-' ); } /** * is_remote_value * @param $value * * @return string */ private function is_remote_value( $value ) { $value = trim( preg_replace( '/[^ -~]/xu', '', $value ) ); $wrapped_in_url = preg_match( '~^url\(\s*[\'"]\s*(.*)\s*[\'"]\s*\)$~xi', $value, $match ); if ( ! $wrapped_in_url ) { return false; } $value = trim( $match[1], '\'"' ); return preg_match( '~^((https?|ftp|file):)?//~xi', $value ); } /** * has_js_value * @param $value * * @return false|int */ private function has_js_value( $value ) { return preg_match( '/base64|data|(?:java)?script|alert\(|window\.|document/i', $value ); } /** * get_allowed_attributes * @return array */ private function get_allowed_attributes() { $allowed_attributes = [ 'class', 'clip-path', 'clip-rule', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'id', 'mask', 'opacity', 'stroke', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'style', 'systemlanguage', 'transform', 'href', 'xlink:href', 'xlink:title', 'cx', 'cy', 'r', 'requiredfeatures', 'clippathunits', 'type', 'rx', 'ry', 'color-interpolation-filters', 'stddeviation', 'filterres', 'filterunits', 'height', 'primitiveunits', 'width', 'x', 'y', 'font-size', 'display', 'font-family', 'font-style', 'font-weight', 'text-anchor', 'marker-end', 'marker-mid', 'marker-start', 'x1', 'x2', 'y1', 'y2', 'gradienttransform', 'gradientunits', 'spreadmethod', 'markerheight', 'markerunits', 'markerwidth', 'orient', 'preserveaspectratio', 'refx', 'refy', 'viewbox', 'maskcontentunits', 'maskunits', 'd', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'fx', 'fy', 'offset', 'stop-color', 'stop-opacity', 'xmlns', 'xmlns:se', 'xmlns:xlink', 'xml:space', 'method', 'spacing', 'startoffset', 'dx', 'dy', 'rotate', 'textlength', ]; return apply_filters( 'elementor/files/svg/allowed_attributes', $allowed_attributes ); } /** * get_allowed_elements * @return array */ private function get_allowed_elements() { $allowed_elements = [ 'a', 'circle', 'clippath', 'defs', 'style', 'desc', 'ellipse', 'fegaussianblur', 'filter', 'foreignobject', 'g', 'image', 'line', 'lineargradient', 'marker', 'mask', 'metadata', 'path', 'pattern', 'polygon', 'polyline', 'radialgradient', 'rect', 'stop', 'svg', 'switch', 'symbol', 'text', 'textpath', 'title', 'tspan', 'use', ]; return apply_filters( 'elementor/files/svg/allowed_elements', $allowed_elements ); } /** * validate_allowed_attributes * @param \DOMElement $element */ private function validate_allowed_attributes( $element ) { static $allowed_attributes = false; if ( false === $allowed_attributes ) { $allowed_attributes = $this->get_allowed_attributes(); } for ( $index = $element->attributes->length - 1; $index >= 0; $index-- ) { // get attribute name $attr_name = $element->attributes->item( $index )->name; $attr_name_lowercase = strtolower( $attr_name ); // Remove attribute if not in whitelist if ( ! in_array( $attr_name_lowercase, $allowed_attributes ) && ! $this->is_a_attribute( $attr_name_lowercase, 'aria' ) && ! $this->is_a_attribute( $attr_name_lowercase, 'data' ) ) { $element->removeAttribute( $attr_name ); continue; } $attr_value = $element->attributes->item( $index )->value; // Remove attribute if it has a remote reference or js or data-URI/base64 if ( ! empty( $attr_value ) && ( $this->is_remote_value( $attr_value ) || $this->has_js_value( $attr_value ) ) ) { $element->removeAttribute( $attr_name ); continue; } } } /** * strip_xlinks * @param \DOMElement $element */ private function strip_xlinks( $element ) { $xlinks = $element->getAttributeNS( 'http://www.w3.org/1999/xlink', 'href' ); if ( ! $xlinks ) { return; } $allowed_links = [ 'data:image/png', // PNG 'data:image/gif', // GIF 'data:image/jpg', // JPG 'data:image/jpe', // JPEG 'data:image/pjp', // PJPEG ]; if ( 1 === preg_match( self::SCRIPT_REGEX, $xlinks ) ) { if ( ! in_array( substr( $xlinks, 0, 14 ), $allowed_links ) ) { $element->removeAttributeNS( 'http://www.w3.org/1999/xlink', 'href' ); } } } /** * validate_use_tag * @param $element */ private function validate_use_tag( $element ) { $xlinks = $element->getAttributeNS( 'http://www.w3.org/1999/xlink', 'href' ); if ( $xlinks && '#' !== substr( $xlinks, 0, 1 ) ) { $element->parentNode->removeChild( $element ); // phpcs:ignore -- php DomNode } } /** * strip_docktype */ private function strip_doctype() { foreach ( $this->svg_dom->childNodes as $child ) { if ( XML_DOCUMENT_TYPE_NODE === $child->nodeType ) { // phpcs:ignore -- php DomDocument $child->parentNode->removeChild( $child ); // phpcs:ignore -- php DomDocument } } } /** * strip_php_tags * @param $string * * @return string */ private function strip_php_tags( $string ) { $string = preg_replace( '/<\?(=|php)(.+?)\?>/i', '', $string ); // Remove XML, ASP, etc. $string = preg_replace( '/<\?(.*)\?>/Us', '', $string ); $string = preg_replace( '/<\%(.*)\%>/Us', '', $string ); if ( ( false !== strpos( $string, '/Us', '', $string ); $string = preg_replace( '/\/\*(.*)\*\//Us', '', $string ); if ( ( false !== strpos( $string, ' [ 'title' => __( 'General Settings', 'elementor' ), 'url' => $settings_url, 'keywords' => [ 'general', 'settings', 'elementor' ], ], 'style' => [ 'title' => __( 'Style', 'elementor' ), 'url' => $settings_url . '#tab-style', 'keywords' => [ 'style', 'settings', 'elementor' ], ], 'advanced' => [ 'title' => __( 'Advanced', 'elementor' ), 'url' => $settings_url . '#tab-advanced', 'keywords' => [ 'advanced', 'settings', 'elementor' ], ], ]; } } core/common/modules/finder/categories/create.php000066600000003071152142641170016014 0ustar00 sprintf( __( 'Add New %s', 'elementor' ), $post_type_object->labels->singular_name ), 'icon' => 'plus-circle-o', 'url' => $url, 'keywords' => [ 'post', 'page', 'template', 'new', 'create' ], ]; } return $items; } } core/common/modules/finder/categories/site.php000066600000003665152142641170015526 0ustar00 [ 'title' => __( 'Homepage', 'elementor' ), 'url' => home_url(), 'icon' => 'home-heart', 'keywords' => [ 'home', 'page' ], ], 'wordpress-dashboard' => [ 'title' => __( 'Dashboard', 'elementor' ), 'icon' => 'dashboard', 'url' => admin_url(), 'keywords' => [ 'dashboard', 'wordpress' ], ], 'wordpress-menus' => [ 'title' => __( 'Menus', 'elementor' ), 'icon' => 'wordpress', 'url' => admin_url( 'nav-menus.php' ), 'keywords' => [ 'menu', 'wordpress' ], ], 'wordpress-themes' => [ 'title' => __( 'Themes', 'elementor' ), 'icon' => 'wordpress', 'url' => admin_url( 'themes.php' ), 'keywords' => [ 'themes', 'wordpress' ], ], 'wordpress-customizer' => [ 'title' => __( 'Customizer', 'elementor' ), 'icon' => 'wordpress', 'url' => admin_url( 'customize.php' ), 'keywords' => [ 'customizer', 'wordpress' ], ], 'wordpress-plugins' => [ 'title' => __( 'Plugins', 'elementor' ), 'icon' => 'wordpress', 'url' => admin_url( 'plugins.php' ), 'keywords' => [ 'plugins', 'wordpress' ], ], 'wordpress-users' => [ 'title' => __( 'Users', 'elementor' ), 'icon' => 'wordpress', 'url' => admin_url( 'users.php' ), 'keywords' => [ 'users', 'profile', 'wordpress' ], ], ]; } } core/common/modules/finder/categories/edit.php000066600000005222152142641170015476 0ustar00 false, ] ); $post_types[] = Source_Local::CPT; $document_types = Plugin::$instance->documents->get_document_types( [ 'is_editable' => true, 'show_in_finder' => true, ] ); // TODO: Remove on 2.4.0. unset( $document_types['widget'] ); $recently_edited_query_args = [ 'post_type' => $post_types, 'post_status' => [ 'publish', 'draft', 'private', 'pending', 'future' ], 'posts_per_page' => '10', 'meta_query' => [ [ 'key' => '_elementor_edit_mode', 'value' => 'builder', ], [ 'relation' => 'or', [ 'key' => Document::TYPE_META_KEY, 'compare' => 'NOT EXISTS', ], [ 'key' => Document::TYPE_META_KEY, 'value' => array_keys( $document_types ), ], ], ], 'orderby' => 'modified', 's' => $options['filter'], ]; $recently_edited_query = new \WP_Query( $recently_edited_query_args ); $items = []; /** @var \WP_Post $post */ foreach ( $recently_edited_query->posts as $post ) { $document = Plugin::$instance->documents->get( $post->ID ); if ( ! $document ) { continue; } $is_template = Source_Local::CPT === $post->post_type; $description = $document->get_title(); $icon = 'document-file'; if ( $is_template ) { $description = __( 'Template', 'elementor' ) . ' / ' . $description; $icon = 'post-title'; } $items[] = [ 'icon' => $icon, 'title' => $post->post_title, 'description' => $description, 'url' => $document->get_edit_url(), 'actions' => [ [ 'name' => 'view', 'url' => $document->get_permalink(), 'icon' => 'preview-medium', ], ], ]; } return $items; } } core/common/modules/finder/categories/tools.php000066600000003203152142641170015706 0ustar00 [ 'title' => __( 'Tools', 'elementor' ), 'icon' => 'tools', 'url' => $tools_url, 'keywords' => [ 'tools', 'regenerate css', 'safe mode', 'debug bar', 'sync library', 'elementor' ], ], 'replace-url' => [ 'title' => __( 'Replace URL', 'elementor' ), 'icon' => 'tools', 'url' => $tools_url . '#tab-replace_url', 'keywords' => [ 'tools', 'replace url', 'domain', 'elementor' ], ], 'version-control' => [ 'title' => __( 'Version Control', 'elementor' ), 'icon' => 'time-line', 'url' => $tools_url . '#tab-versions', 'keywords' => [ 'tools', 'version', 'control', 'rollback', 'beta', 'elementor' ], ], 'maintenance-mode' => [ 'title' => __( 'Maintenance Mode', 'elementor' ), 'icon' => 'tools', 'url' => $tools_url . '#tab-maintenance_mode', 'keywords' => [ 'tools', 'maintenance', 'coming soon', 'elementor' ], ], ]; } } core/common/modules/finder/categories/general.php000066600000003217152142641170016170 0ustar00 [ 'title' => _x( 'Saved Templates', 'Template Library', 'elementor' ), 'icon' => 'library-save', 'url' => Source_Local::get_admin_url(), 'keywords' => [ 'template', 'section', 'page', 'library' ], ], 'system-info' => [ 'title' => __( 'System Info', 'elementor' ), 'icon' => 'info-circle-o', 'url' => admin_url( 'admin.php?page=elementor-system-info' ), 'keywords' => [ 'system', 'info', 'environment', 'elementor' ], ], 'role-manager' => [ 'title' => __( 'Role Manager', 'elementor' ), 'icon' => 'person', 'url' => Role_Manager::get_url(), 'keywords' => [ 'role', 'manager', 'user', 'elementor' ], ], 'knowledge-base' => [ 'title' => __( 'Knowledge Base', 'elementor' ), 'url' => admin_url( 'admin.php?page=go_knowledge_base_site' ), 'keywords' => [ 'help', 'knowledge', 'docs', 'elementor' ], ], ]; } } core/common/modules/finder/template.php000066600000003266152142641170014245 0ustar00 core/common/modules/finder/base-category.php000066600000002233152142641170015150 0ustar00 $this->get_title(), 'dynamic' => $this->is_dynamic(), ]; if ( ! $settings['dynamic'] ) { $settings['items'] = $this->get_category_items(); } return $settings; } } core/common/modules/finder/module.php000066600000004357152142641170013721 0ustar00categories_manager = new Categories_Manager(); $this->add_template(); add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] ); } /** * Get name. * * @since 2.3.0 * @access public * * @return string */ public function get_name() { return 'finder'; } /** * Add template. * * @since 2.3.0 * @access public */ public function add_template() { Plugin::$instance->common->add_template( __DIR__ . '/template.php' ); } /** * Register ajax actions. * * @since 2.3.0 * @access public * * @param Ajax $ajax */ public function register_ajax_actions( Ajax $ajax ) { $ajax->register_ajax_action( 'finder_get_category_items', [ $this, 'ajax_get_category_items' ] ); } /** * Ajax get category items. * * @since 2.3.0 * @access public * * @param array $data * * @return array */ public function ajax_get_category_items( array $data ) { $category = $this->categories_manager->get_categories( $data['category'] ); return $category->get_category_items( $data ); } /** * Get init settings. * * @since 2.3.0 * @access protected * * @return array */ protected function get_init_settings() { $categories = $this->categories_manager->get_categories(); $categories_data = []; foreach ( $categories as $category_name => $category ) { $categories_data[ $category_name ] = array_merge( $category->get_settings(), [ 'name' => $category_name ] ); } $categories_data = apply_filters( 'elementor/finder/categories', $categories_data ); return [ 'data' => $categories_data, 'i18n' => [ 'finder' => __( 'Finder', 'elementor' ), ], ]; } } core/common/modules/finder/categories-manager.php000066600000003334152142641170016163 0ustar00categories[ $category_name ] = $category; } /** * Get categories. * * @since 2.3.0 * @access public * @param string $category * * @return Base_Category|Base_Category[]|null */ public function get_categories( $category = '' ) { if ( ! $this->categories ) { $this->init_categories(); } if ( $category ) { if ( isset( $this->categories[ $category ] ) ) { return $this->categories[ $category ]; } return null; } return $this->categories; } /** * Init categories. * * Used to initialize finder default categories. * @since 2.3.0 * @access private */ private function init_categories() { foreach ( $this->categories_list as $category_name ) { $class_name = __NAMESPACE__ . '\Categories\\' . $category_name; $this->add_category( $category_name, new $class_name() ); } /** * Elementor Finder categories init. * * Fires after Elementor Finder initialize it's native categories. * * This hook should be used to add your own Finder categories. * * @since 2.3.0 * * @param Categories_Manager $this. */ do_action( 'elementor/finder/categories/init', $this ); } } core/logger/items/log-item-interface.php000066600000002307152142641170014271 0ustar00column = $args['column']; $this->file = $args['url']; $this->date = gmdate( 'Y-m-d H:i:s', $args['timestamp'] ); } public function jsonSerialize() { $json_arr = parent::jsonSerialize(); $json_arr['column'] = $this->column; return $json_arr; } public function deserialize( $properties ) { parent::deserialize( $properties ); $this->column = ! empty( $properties['column'] ) && is_string( $properties['column'] ) ? $properties['column'] : ''; } public function get_name() { return 'JS'; } } core/logger/items/base.php000066600000012243152142641170011530 0ustar00date = current_time( 'mysql' ); $this->message = ! empty( $args['message'] ) ? esc_html( $args['message'] ) : ''; $this->type = ! empty( $args['type'] ) ? $args['type'] : 'info'; $this->meta = ! empty( $args['meta'] ) ? $args['meta'] : []; $this->args = $args; $this->set_trace(); } public function __get( $name ) { if ( property_exists( $this, $name ) ) { return $this->{$name}; } return ''; } public function __toString() { $vars = get_object_vars( $this ); return strtr( static::FORMAT, $vars ); } public function jsonSerialize() { return [ 'class' => get_class( $this ), 'item' => [ 'date' => $this->date, 'message' => $this->message, 'type' => $this->type, 'meta' => $this->meta, 'times' => $this->times, 'times_dates' => $this->times_dates, 'args' => $this->args, ], ]; } public function deserialize( $properties ) { $this->date = ! empty( $properties['date'] ) && is_string( $properties['date'] ) ? $properties['date'] : ''; $this->message = ! empty( $properties['message'] ) && is_string( $properties['message'] ) ? $properties['message'] : ''; $this->type = ! empty( $properties['type'] ) && is_string( $properties['type'] ) ? $properties['type'] : ''; $this->meta = ! empty( $properties['meta'] ) && is_array( $properties['meta'] ) ? $properties['meta'] : []; $this->times = ! empty( $properties['times'] ) && is_string( $properties['times'] ) ? $properties['times'] : ''; $this->times_dates = ! empty( $properties['times_dates'] ) && is_array( $properties['times_dates'] ) ? $properties['times_dates'] : []; $this->args = ! empty( $properties['args'] ) && is_array( $properties['args'] ) ? $properties['args'] : []; } /** * @return Log_Item_Interface | null */ public static function from_json( $str ) { $obj = json_decode( $str, true ); if ( ! array_key_exists( 'class', $obj ) ) { return null; } $class = $obj['class']; if ( class_exists( $class ) ) { /** @var Base $item */ $item = new $class( $obj['item']['message'] ); $item->deserialize( $obj['item'] ); return $item; } return null; } public function to_formatted_string( $output_format = 'html' ) { $vars = get_object_vars( $this ); $format = static::FORMAT; if ( 'html' === $output_format ) { $format = str_replace( 'message', 'message', static::FORMAT ); } if ( empty( $vars['meta'] ) ) { $format = str_replace( '[meta]', '', $format ); } else { $vars['meta'] = stripslashes( var_export( $vars['meta'], true ) ); // @codingStandardsIgnoreLine } return strtr( $format, $vars ); } public function get_fingerprint() { $unique_key = $this->type . $this->message . var_export( $this->meta, true ); // @codingStandardsIgnoreLine //info messages are not be aggregated: if ( 'info' === $this->type ) { $unique_key .= $this->date; } return md5( $unique_key ); } public function increase_times( $item, $truncate = true ) { $this->times++; $this->times_dates[] = $item->date; if ( $truncate && ( self::MAX_LOG_ENTRIES < count( $this->times_dates ) ) ) { $this->times_dates = array_slice( $this->times_dates, -self::MAX_LOG_ENTRIES ); } } public function format( $format = 'html' ) { $trace = $this->format_trace(); if ( empty( $trace ) ) { return $this->to_formatted_string( $format ); } $copy = clone $this; $copy->meta['trace'] = $trace; return $copy->to_formatted_string( $format ); } public function get_name() { return 'Log'; } private function format_trace() { $trace = empty( $this->meta['trace'] ) ? '' : $this->meta['trace']; if ( is_string( $trace ) ) { return $trace; } $trace_str = ''; foreach ( $trace as $key => $trace_line ) { $format = static::TRACE_FORMAT; $trace_line['key'] = $key; if ( empty( $trace_line['file'] ) ) { $format = str_replace( 'file(line): ', '', $format ); } $trace_str .= PHP_EOL . strtr( $format, $trace_line ); $trace_str .= empty( $trace_line['args'] ) ? '' : var_export( $trace_line['args'], true ); // @codingStandardsIgnoreLine } return $trace_str . PHP_EOL; } private function set_trace() { if ( ! empty( $this->args['trace'] ) && true === $this->args['trace'] ) { $limit = empty( $this->args['trace_limit'] ) ? static::TRACE_LIMIT : $this->args['trace_limit']; $stack = debug_backtrace( DEBUG_BACKTRACE_IGNORE_ARGS ); // @codingStandardsIgnoreLine while ( ! empty( $stack ) && ! empty( $stack[0]['file'] ) && ( false !== strpos( $stack[0]['file'], 'core' . DIRECTORY_SEPARATOR . 'logger' ) ) ) { array_shift( $stack ); } $this->meta['trace'] = array_slice( $stack, 0, $limit ); return; } if ( is_array( $this->args ) ) { unset( $this->args['trace'] ); } } } core/logger/items/file.php000066600000001720152142641170011533 0ustar00file = empty( $args['file'] ) ? '' : $args['file']; $this->line = empty( $args['line'] ) ? '' : $args['line']; } public function jsonSerialize() { $json_arr = parent::jsonSerialize(); $json_arr['file'] = $this->file; $json_arr['line'] = $this->line; return $json_arr; } public function deserialize( $properties ) { parent::deserialize( $properties ); $this->file = ! empty( $properties['file'] ) && is_string( $properties['file'] ) ? $properties['file'] : ''; $this->line = ! empty( $properties['line'] ) && is_string( $properties['line'] ) ? $properties['line'] : ''; } public function get_name() { return 'File'; } } core/logger/log-reporter.php000066600000005570152142641170012123 0ustar00_properties['format'] && empty( $_GET[ self::CLEAR_LOG_ACTION ] ) ) { // phpcs:ignore -- nonce validation is not require here. $nonce = wp_create_nonce( self::CLEAR_LOG_ACTION ); $url = add_query_arg( [ self::CLEAR_LOG_ACTION => 1, '_wpnonce' => $nonce, ] ); $title .= '' . __( 'Clear Log', 'elementor' ) . ''; $title .= ''; } return $title; } public function get_fields() { return [ 'log_entries' => '', ]; } public function get_log_entries() { /** @var \Elementor\Core\Logger\Manager $manager */ $manager = Manager::instance(); /** @var \Elementor\Core\Logger\Loggers\Db $logger */ $logger = $manager->get_logger( 'db' ); if ( ! empty( $_GET[ self::CLEAR_LOG_ACTION ] ) ) { if ( empty( $_GET['_wpnonce'] ) || ! wp_verify_nonce( $_GET['_wpnonce'], self::CLEAR_LOG_ACTION ) ) { wp_die( 'Invalid Nonce', 'Invalid Nonce', [ 'back_link' => true, ] ); } $logger->clear(); } $log_string = 'No entries to display'; $log_entries = $logger->get_formatted_log_entries( self::MAX_ENTRIES, false ); if ( ! empty( $log_entries ) ) { $entries_string = ''; foreach ( $log_entries as $key => $log_entry ) { if ( $log_entry['count'] ) { $entries_string .= '

' . sprintf( '%s: showing %s of %s', $key, $log_entry['count'], $log_entry['total_count'] ) . '

'; $entries_string .= '
' . $log_entry['entries'] . '
'; } } if ( ! empty( $entries_string ) ) { $log_string = $entries_string; } } return [ 'value' => $log_string, ]; } public function get_raw_log_entries() { $log_string = 'No entries to display'; /** @var \Elementor\Core\Logger\Manager $manager */ $manager = Manager::instance(); $logger = $manager->get_logger(); $log_entries = $logger->get_formatted_log_entries( self::MAX_ENTRIES, false ); if ( ! empty( $log_entries ) ) { $entries_string = PHP_EOL; foreach ( $log_entries as $key => $log_entry ) { if ( $log_entry['count'] ) { $entries_string .= sprintf( '%s: showing %s of %s', $key, $log_entry['count'], $log_entry['total_count'] ) . $log_entry['entries'] . PHP_EOL; } } if ( ! empty( $entries_string ) ) { $log_string = $entries_string; } } return [ 'value' => $log_string, ]; } } core/logger/loggers/base.php000066600000004523152142641170012053 0ustar00create_item( $item, $type, $args ); } $this->save_log( $item ); } public function info( $message, $args = [] ) { $this->log( $message, self::LEVEL_INFO, $args ); } public function notice( $message, $args = [] ) { $this->log( $message, self::LEVEL_NOTICE, $args ); } public function warning( $message, $args = [] ) { $this->log( $message, self::LEVEL_WARNING, $args ); } public function error( $message, $args = [] ) { $this->log( $message, self::LEVEL_ERROR, $args ); } /** * @param string $message * @param string $type * @param array $args * * @return Log_Item_Interface */ private function create_item( $message, $type, $args = [] ) { $args['message'] = $message; $args['type'] = $type; $item = new Log_Item( $args ); return $item; } public function get_formatted_log_entries( $max_entries, $table = true ) { $entries = $this->get_log(); if ( empty( $entries ) ) { return [ 'All' => [ 'total_count' => 0, 'count' => 0, 'entries' => '', ], ]; } $sorted_entries = []; $open_tag = $table ? '' : ''; $close_tab = $table ? '' : PHP_EOL; $format = $table ? 'html' : 'raw'; foreach ( $entries as $entry ) { /** @var Log_Item $entry */ $sorted_entries[ $entry->get_name() ][] = $open_tag . $entry->format( $format ) . $close_tab; } $formatted_entries = []; foreach ( $sorted_entries as $key => $sorted_entry ) { $formatted_entries[ $key ]['total_count'] = count( $sorted_entry ); $formatted_entries[ $key ]['count'] = count( $sorted_entry ); $sorted_entry = array_slice( $sorted_entry, -$max_entries ); $formatted_entries[ $key ]['count'] = count( $sorted_entry ); $formatted_entries[ $key ]['entries'] = implode( $sorted_entry ); } return $formatted_entries; } } core/logger/loggers/db.php000066600000002011152142641170011514 0ustar00maybe_truncate_log(); $id = $item->get_fingerprint(); if ( empty( $log[ $id ] ) ) { $log[ $id ] = $item; } $log[ $id ]->increase_times( $item ); update_option( self::LOG_NAME, $log, 'no' ); } public function clear() { delete_option( self::LOG_NAME ); } private function maybe_truncate_log() { /** @var Log_Item[] $log */ $log = $this->get_log(); if ( Log_Item::MAX_LOG_ENTRIES < count( $log ) ) { $log = array_slice( $log, -Log_Item::MAX_LOG_ENTRIES ); } return $log; } protected function get_log() { // Clear cache. wp_cache_delete( self::LOG_NAME, 'options' ); $log = get_option( self::LOG_NAME, [] ); // In case the DB log is corrupted. if ( ! is_array( $log ) ) { $log = []; } return $log; } } core/logger/loggers/logger-interface.php000066600000002364152142641170014357 0ustar00 in format * * @return array [ 'key' => [ 'total_count' => int, 'count' => int, 'entries' => Log_Item[] ] ] */ public function get_formatted_log_entries( $max_entries, $table = true ); } core/logger/manager.php000066600000012262152142641170011110 0ustar00get_log_type_from_php_error( $last_error['type'] ); $last_error['trace'] = true; $item = new PHP( $last_error ); $this->get_logger()->log( $item ); } public function add_system_info_report() { System_Info::add_report( 'log', [ 'file_name' => __DIR__ . '/log-reporter.php', 'class_name' => __NAMESPACE__ . '\Log_Reporter', ] ); } /** * Javascript log. * * Log Elementor errors and save them in the database. * * Fired by `wp_ajax_elementor_js_log` action. * */ public function js_log() { /** @var Module $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); if ( ! $ajax->verify_request_nonce() || empty( $_POST['data'] ) ) { wp_send_json_error(); } array_walk_recursive( $_POST['data'], function( &$value ) { $value = sanitize_text_field( $value ); } ); foreach ( $_POST['data'] as $error ) { $error['type'] = Logger_Interface::LEVEL_ERROR; if ( ! empty( $error['customFields'] ) ) { $error['meta'] = $error['customFields']; } $item = new JS( $error ); $this->get_logger()->log( $item ); } wp_send_json_success(); } public function register_logger( $name, $class ) { $this->loggers[ $name ] = $class; } public function set_default_logger( $name ) { if ( ! empty( $this->loggers[ $name ] ) ) { $this->default_logger = $name; } } public function register_default_loggers() { $this->register_logger( 'db', 'Elementor\Core\Logger\Loggers\Db' ); $this->set_default_logger( 'db' ); } /** * @param string $name * * @return Logger_Interface */ public function get_logger( $name = '' ) { $this->register_loggers(); if ( empty( $name ) || ! isset( $this->loggers[ $name ] ) ) { $name = $this->default_logger; } if ( ! $this->get_component( $name ) ) { $this->add_component( $name, new $this->loggers[ $name ]() ); } return $this->get_component( $name ); } /** * @param string $message * @param array $args * * @return void */ public function log( $message, $args = [] ) { $this->get_logger()->log( $message, $args ); } /** * @param string $message * @param array $args * * @return void */ public function info( $message, $args = [] ) { $this->get_logger()->info( $message, $args ); } /** * @param string $message * @param array $args * * @return void */ public function notice( $message, $args = [] ) { $this->get_logger()->notice( $message, $args ); } /** * @param string $message * @param array $args * * @return void */ public function warning( $message, $args = [] ) { $this->get_logger()->warning( $message, $args ); } /** * @param string $message * @param array $args * * @return void */ public function error( $message, $args = [] ) { $this->get_logger()->error( $message, $args ); } private function get_log_type_from_php_error( $type ) { $error_map = [ E_CORE_ERROR => Logger_Interface::LEVEL_ERROR, E_ERROR => Logger_Interface::LEVEL_ERROR, E_USER_ERROR => Logger_Interface::LEVEL_ERROR, E_COMPILE_ERROR => Logger_Interface::LEVEL_ERROR, E_RECOVERABLE_ERROR => Logger_Interface::LEVEL_ERROR, E_PARSE => Logger_Interface::LEVEL_ERROR, E_STRICT => Logger_Interface::LEVEL_ERROR, E_WARNING => Logger_Interface::LEVEL_WARNING, E_USER_WARNING => Logger_Interface::LEVEL_WARNING, E_CORE_WARNING => Logger_Interface::LEVEL_WARNING, E_COMPILE_WARNING => Logger_Interface::LEVEL_WARNING, E_NOTICE => Logger_Interface::LEVEL_NOTICE, E_USER_NOTICE => Logger_Interface::LEVEL_NOTICE, E_DEPRECATED => Logger_Interface::LEVEL_NOTICE, E_USER_DEPRECATED => Logger_Interface::LEVEL_NOTICE, ]; return isset( $error_map[ $type ] ) ? $error_map[ $type ] : Logger_Interface::LEVEL_ERROR; } private function register_loggers() { if ( ! did_action( 'elementor/loggers/register' ) ) { do_action( 'elementor/loggers/register', $this ); } } public function __construct() { register_shutdown_function( [ $this, 'shutdown' ] ); add_action( 'admin_init', [ $this, 'add_system_info_report' ], 80 ); add_action( 'wp_ajax_elementor_js_log', [ $this, 'js_log' ] ); add_action( 'elementor/loggers/register', [ $this, 'register_default_loggers' ] ); } } core/kits/views/panel.php000066600000001217152142641170011423 0ustar00 core/kits/manager.php000066600000006617152142641170010612 0ustar00post_status ) { $id = $this->create_default(); update_option( self::OPTION_ACTIVE, $id ); } return $id; } public function get_active_kit() { $id = $this->get_active_id(); return Plugin::$instance->documents->get( $id ); } private function create_default() { $kit = Plugin::$instance->documents->create( 'kit', [ 'post_type' => Source_Local::CPT, 'post_title' => __( 'Default Kit', 'elementor' ), 'post_status' => 'publish', ] ); return $kit->get_id(); } /** * @param Documents_Manager $documents_manager */ public function register_document( $documents_manager ) { $documents_manager->register_document_type( 'kit', Kit::get_class_full_name() ); } public function localize_settings( $settings ) { $kit = $this->get_active_kit(); $settings = array_replace_recursive( $settings, [ 'kit_id' => $kit->get_main_id(), 'user' => [ 'can_edit_kit' => $kit->is_editable_by_current_user(), ], 'i18n' => [ 'Close' => __( 'Close', 'elementor' ), 'Back' => __( 'Back', 'elementor' ), 'Theme Style' => __( 'Theme Style', 'elementor' ), ], ] ); return $settings; } public function preview_enqueue_styles() { $kit = $this->get_kit_for_frontend(); if ( $kit ) { // On preview, the global style is not enqueued. $this->frontend_before_enqueue_styles(); Plugin::$instance->frontend->print_fonts_links(); } } public function frontend_before_enqueue_styles() { $kit = $this->get_kit_for_frontend(); if ( $kit ) { if ( $kit->is_autosave() ) { $css_file = Post_Preview::create( $kit->get_id() ); } else { $css_file = Post_CSS::create( $kit->get_id() ); } $css_file->enqueue(); Plugin::$instance->frontend->add_body_class( 'elementor-kit-' . $kit->get_main_id() ); } } public function render_panel_html() { require __DIR__ . '/views/panel.php'; } public function get_kit_for_frontend() { $kit = false; $active_kit = $this->get_active_kit(); $is_kit_preview = is_preview() && isset( $_GET['preview_id'] ) && $active_kit->get_main_id() === (int) $_GET['preview_id']; if ( $is_kit_preview ) { $kit = Plugin::$instance->documents->get_doc_or_auto_save( $active_kit->get_main_id(), get_current_user_id() ); } elseif ( 'publish' === $active_kit->get_main_post()->post_status ) { $kit = $active_kit; } return $kit; } public function __construct() { add_action( 'elementor/documents/register', [ $this, 'register_document' ] ); add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] ); add_filter( 'elementor/editor/footer', [ $this, 'render_panel_html' ] ); add_action( 'elementor/frontend/after_enqueue_global', [ $this, 'frontend_before_enqueue_styles' ], 0 ); add_action( 'elementor/preview/enqueue_styles', [ $this, 'preview_enqueue_styles' ], 0 ); } } core/kits/documents/kit.php000066600000050615152142641170011765 0ustar00custom_colors_disabled = get_option( 'elementor_disable_color_schemes' ); $this->typography_schemes_disabled = get_option( 'elementor_disable_typography_schemes' ); } public static function get_properties() { $properties = parent::get_properties(); $properties['has_elements'] = false; $properties['show_in_finder'] = false; $properties['show_on_admin_bar'] = false; $properties['edit_capability'] = 'edit_theme_options'; $properties['support_kit'] = true; return $properties; } public function get_name() { return 'kit'; } public static function get_title() { return __( 'Kit', 'elementor' ); } protected function get_have_a_look_url() { return ''; } public static function get_editor_panel_config() { $config = parent::get_editor_panel_config(); $config['default_route'] = 'panel/global/style'; return $config; } public function get_css_wrapper_selector() { return 'body.elementor-kit-' . $this->get_main_id(); } /** * @since 2.0.0 * @access protected */ protected function _register_controls() { $this->register_document_controls(); $this->add_body_section(); $this->add_typography_section(); $this->add_buttons_section(); $this->add_form_fields_section(); $this->add_images_section(); Plugin::$instance->controls_manager->add_custom_css_controls( $this, Controls_Manager::TAB_STYLE, [ __( 'Available in Pro v2.9.', 'elementor' ) ] ); } protected function get_post_statuses() { return [ 'draft' => sprintf( '%s (%s)', __( 'Disabled', 'elementor' ), __( 'Draft', 'elementor' ) ), 'publish' => __( 'Published', 'elementor' ), ]; } private function add_element_controls( $label, $prefix, $selector ) { $this->add_control( $prefix . '_heading', [ 'type' => Controls_Manager::HEADING, 'label' => $label, 'separator' => 'before', ] ); $this->add_control( $prefix . '_color', [ 'label' => __( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $selector => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => $prefix . '_typography', 'selector' => $selector, ] ); } private function add_schemes_notice() { // Get the current section config (array - section id and tab) to use for creating a unique control ID and name $current_section = $this->get_current_section(); if ( ! $this->custom_colors_disabled || ! $this->typography_schemes_disabled ) { $this->add_control( $current_section['section'] . '_schemes_notice', [ 'name' => $current_section['section'] . '_schemes_notice', 'type' => Controls_Manager::RAW_HTML, 'raw' => sprintf( __( 'In order for Theme Style to affect all relevant Elementor elements, please disable Default Colors and Fonts from the Settings Page.', 'elementor' ), Settings::get_url() ), 'content_classes' => 'elementor-panel-alert elementor-panel-alert-warning', 'render_type' => 'ui', ] ); } } private function add_body_section() { $this->start_controls_section( 'section_body', [ 'label' => __( 'Background', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_schemes_notice(); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'body_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}}', 'fields_options' => [ 'background' => [ 'frontend_available' => true, ], 'color' => [ 'dynamic' => [], ], 'color_b' => [ 'dynamic' => [], ], ], ] ); $this->end_controls_section(); } private function add_buttons_section() { // Use an array for better readability. $button_selectors = [ '{{WRAPPER}} button', '{{WRAPPER}} input[type="button"]', '{{WRAPPER}} input[type="submit"]', '{{WRAPPER}} .elementor-button', ]; $button_hover_selectors = [ '{{WRAPPER}} button:hover', '{{WRAPPER}} button:focus', '{{WRAPPER}} input[type="button"]:hover', '{{WRAPPER}} input[type="button"]:focus', '{{WRAPPER}} input[type="submit"]:hover', '{{WRAPPER}} input[type="submit"]:focus', '{{WRAPPER}} .elementor-button:hover', '{{WRAPPER}} .elementor-button:focus', ]; $button_selector = implode( ',', $button_selectors ); $button_hover_selector = implode( ',', $button_hover_selectors ); $this->start_controls_section( 'section_buttons', [ 'label' => __( 'Buttons', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_schemes_notice(); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'button_typography', 'selector' => $button_selector, ] ); $this->add_group_control( Group_Control_Text_Shadow::get_type(), [ 'name' => 'button_text_shadow', 'selector' => $button_selector, ] ); $this->start_controls_tabs( 'tabs_button_style' ); $this->start_controls_tab( 'tab_button_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_control( 'button_text_color', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $button_selector => 'color: {{VALUE}};', ], ] ); $this->add_control( 'button_background_color', [ 'label' => __( 'Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $button_selector => 'background-color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'button_box_shadow', 'selector' => $button_selector, ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'button_border', 'selector' => $button_selector, 'fields_options' => [ 'color' => [ 'dynamic' => [], ], ], ] ); $this->add_control( 'button_border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ $button_selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_button_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_control( 'button_hover_text_color', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $button_hover_selector => 'color: {{VALUE}};', ], ] ); $this->add_control( 'button_hover_background_color', [ 'label' => __( 'Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $button_hover_selector => 'background-color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'button_hover_box_shadow', 'selector' => $button_hover_selector, ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'button_hover_border', 'selector' => $button_hover_selector, 'fields_options' => [ 'color' => [ 'dynamic' => [], ], ], ] ); $this->add_control( 'button_hover_border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ $button_hover_selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_responsive_control( 'button_padding', [ 'label' => __( 'Padding', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', 'em', '%' ], 'selectors' => [ $button_selector => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', ] ); $this->end_controls_section(); } private function add_typography_section() { $this->start_controls_section( 'section_typography', [ 'label' => __( 'Typography', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_schemes_notice(); $this->add_control( 'body_heading', [ 'type' => Controls_Manager::HEADING, 'label' => __( 'Body', 'elementor' ), ] ); $this->add_control( 'body_color', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ '{{WRAPPER}}' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'body_typography', 'selector' => '{{WRAPPER}}', ] ); $this->add_responsive_control( 'paragraph_spacing', [ 'label' => __( 'Paragraph Spacing', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'selectors' => [ '{{WRAPPER}} p' => 'margin-bottom: {{SIZE}}{{UNIT}}', ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, ], 'em' => [ 'min' => 0.1, 'max' => 20, ], 'vh' => [ 'min' => 0, 'max' => 100, ], ], 'size_units' => [ 'px', 'em', 'vh' ], ] ); //Link Selectors $link_selectors = [ '{{WRAPPER}} a', ]; $link_hover_selectors = [ '{{WRAPPER}} a:hover', ]; $link_selectors = implode( ',', $link_selectors ); $link_hover_selectors = implode( ',', $link_hover_selectors ); $this->add_control( 'link_heading', [ 'type' => Controls_Manager::HEADING, 'label' => __( 'Link', 'elementor' ), 'separator' => 'before', ] ); $this->start_controls_tabs( 'tabs_link_style' ); $this->start_controls_tab( 'tab_link_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_control( 'link_normal_color', [ 'label' => __( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $link_selectors => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'link_normal_typography', 'selector' => $link_selectors, ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_link_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_control( 'link_hover_color', [ 'label' => __( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $link_hover_selectors => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'link_hover_typography', 'selector' => $link_hover_selectors, ] ); $this->end_controls_tab(); $this->end_controls_tabs(); // Headings. $this->add_element_controls( __( 'H1', 'elementor' ), 'h1', '{{WRAPPER}} h1' ); $this->add_element_controls( __( 'H2', 'elementor' ), 'h2', '{{WRAPPER}} h2' ); $this->add_element_controls( __( 'H3', 'elementor' ), 'h3', '{{WRAPPER}} h3' ); $this->add_element_controls( __( 'H4', 'elementor' ), 'h4', '{{WRAPPER}} h4' ); $this->add_element_controls( __( 'H5', 'elementor' ), 'h5', '{{WRAPPER}} h5' ); $this->add_element_controls( __( 'H6', 'elementor' ), 'h6', '{{WRAPPER}} h6' ); $this->end_controls_section(); } private function add_form_fields_section() { // Use an array for better readability. $label_selectors = [ '{{WRAPPER}} label', ]; $input_selectors = [ '{{WRAPPER}} input:not([type="button"]):not([type="submit"])', '{{WRAPPER}} textarea', '{{WRAPPER}} .elementor-field-textual', ]; $input_focus_selectors = [ '{{WRAPPER}} input:focus:not([type="button"]):not([type="submit"])', '{{WRAPPER}} textarea:focus', '{{WRAPPER}} .elementor-field-textual:focus', ]; $label_selector = implode( ',', $label_selectors ); $input_selector = implode( ',', $input_selectors ); $input_focus_selector = implode( ',', $input_focus_selectors ); $this->start_controls_section( 'section_form_fields', [ 'label' => __( 'Form Fields', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_schemes_notice(); $this->add_control( 'form_label_heading', [ 'type' => Controls_Manager::HEADING, 'label' => __( 'Label', 'elementor' ), ] ); $this->add_control( 'form_label_color', [ 'label' => __( 'Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $label_selector => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'form_label_typography', 'selector' => $label_selector, ] ); $this->add_control( 'form_field_heading', [ 'type' => Controls_Manager::HEADING, 'label' => __( 'Field', 'elementor' ), 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'label' => __( 'Typography', 'elementor' ), 'name' => 'form_field_typography', 'selector' => $input_selector, ] ); $this->start_controls_tabs( 'tabs_form_field_style' ); $this->start_controls_tab( 'tab_form_field_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_form_field_state_tab_controls( 'form_field', $input_selector ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_form_field_focus', [ 'label' => __( 'Focus', 'elementor' ), ] ); $this->add_form_field_state_tab_controls( 'form_field_focus', $input_focus_selector ); $this->add_control( 'form_field_focus_transition_duration', [ 'label' => __( 'Transition Duration', 'elementor' ) . ' (ms)', 'type' => Controls_Manager::SLIDER, 'selectors' => [ $input_selector => 'transition: {{SIZE}}ms', ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 3000, ], ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_responsive_control( 'form_field_padding', [ 'label' => __( 'Padding', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', 'em', '%' ], 'selectors' => [ $input_selector => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', ] ); $this->end_controls_section(); } private function add_images_section() { //Image Selectors $image_selectors = [ '{{WRAPPER}} img', ]; $image_hover_selectors = [ '{{WRAPPER}} img:hover', ]; $image_selectors = implode( ',', $image_selectors ); $image_hover_selectors = implode( ',', $image_hover_selectors ); $this->start_controls_section( 'section_images', [ 'label' => __( 'Images', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_schemes_notice(); $this->start_controls_tabs( 'tabs_image_style' ); $this->start_controls_tab( 'tab_image_normal', [ 'label' => __( 'Normal', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'image_border', 'selector' => $image_selectors, 'fields_options' => [ 'color' => [ 'dynamic' => [], ], ], ] ); $this->add_responsive_control( 'image_border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ $image_selectors => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'image_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'max' => 1, 'min' => 0.10, 'step' => 0.01, ], ], 'selectors' => [ $image_selectors => 'opacity: {{SIZE}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'image_box_shadow', 'exclude' => [ 'box_shadow_position', ], 'selector' => $image_selectors, ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'image_css_filters', 'selector' => '{{WRAPPER}} img', ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_image_hover', [ 'label' => __( 'Hover', 'elementor' ), ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'image_hover_border', 'selector' => '{{WRAPPER}} img:hover', 'fields_options' => [ 'color' => [ 'dynamic' => [], ], ], ] ); $this->add_responsive_control( 'image_hover_border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ $image_hover_selectors => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'image_hover_opacity', [ 'label' => __( 'Opacity', 'elementor' ), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'max' => 1, 'min' => 0.10, 'step' => 0.01, ], ], 'selectors' => [ $image_hover_selectors => 'opacity: {{SIZE}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'image_hover_box_shadow', 'exclude' => [ 'box_shadow_position', ], 'selector' => $image_hover_selectors, ] ); $this->add_group_control( Group_Control_Css_Filter::get_type(), [ 'name' => 'image_hover_css_filters', 'selector' => $image_hover_selectors, ] ); $this->add_control( 'image_hover_transition', [ 'label' => __( 'Transition Duration', 'elementor' ) . ' (s)', 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'max' => 3, 'step' => 0.1, ], ], 'selectors' => [ $image_selectors => 'transition-duration: {{SIZE}}s', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); } private function add_form_field_state_tab_controls( $prefix, $selector ) { $this->add_control( $prefix . '_text_color', [ 'label' => __( 'Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $selector => 'color: {{VALUE}};', ], ] ); $this->add_control( $prefix . '_background_color', [ 'label' => __( 'Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'dynamic' => [], 'selectors' => [ $selector => 'background-color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => $prefix . '_box_shadow', 'selector' => $selector, ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => $prefix . '_border', 'selector' => $selector, 'fields_options' => [ 'color' => [ 'dynamic' => [], ], ], ] ); $this->add_control( $prefix . '_border_radius', [ 'label' => __( 'Border Radius', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ $selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); } } core/debug/classes/htaccess.php000066600000002222152142641170012532 0ustar00message = __( 'Your site\'s .htaccess file appears to be missing.', 'elementor' ); } public function run() { $safe_mode_enabled = get_option( Safe_Mode::OPTION_ENABLED, '' ); if ( empty( $safe_mode_enabled ) || is_multisite() ) { return true; } $permalink_structure = get_option( 'permalink_structure' ); if ( empty( $permalink_structure ) || empty( $_SERVER['SERVER_SOFTWARE'] ) ) { return true; } $server = strtoupper( $_SERVER['SERVER_SOFTWARE'] ); if ( strstr( $server, 'APACHE' ) ) { $htaccess_file = get_home_path() . '.htaccess'; $this->message .= ' ' . sprintf( __( 'File Path: %s', 'elementor' ), $htaccess_file ) . ' '; return file_exists( $htaccess_file ); } return true; } public function get_name() { return 'apache-htaccess'; } public function get_message() { return $this->message; } public function get_help_doc_url() { return 'https://go.elementor.com/preview-not-loaded/#htaccess'; } } core/debug/classes/inspection-base.php000066600000000756152142641170014032 0ustar00exists(); } public function get_name() { return 'theme-missing'; } public function get_message() { return __( 'Some of your theme files are missing.', 'elementor' ); } public function get_help_doc_url() { return 'https://go.elementor.com/preview-not-loaded/#theme-files'; } } core/debug/inspector.php000066600000006417152142641170011320 0ustar00is_enabled = is_null( $option ) ? $is_debug : 'enable' === $option; if ( $this->is_enabled ) { add_action( 'admin_bar_menu', [ $this, 'add_menu_in_admin_bar' ], 201 ); } add_action( 'elementor/admin/after_create_settings/' . Tools::PAGE_ID, [ $this, 'register_admin_tools_fields' ], 50 ); } /** * @since 2.1.3 * @access public */ public function is_enabled() { return $this->is_enabled; } /** * @since 2.1.3 * @access public */ public function register_admin_tools_fields( Tools $tools ) { $tools->add_fields( Settings::TAB_GENERAL, 'tools', [ 'enable_inspector' => [ 'label' => __( 'Debug Bar', 'elementor' ), 'field_args' => [ 'type' => 'select', 'std' => $this->is_enabled ? 'enable' : '', 'options' => [ '' => __( 'Disable', 'elementor' ), 'enable' => __( 'Enable', 'elementor' ), ], 'desc' => __( 'Debug Bar adds an admin bar menu that lists all the templates that are used on a page that is being displayed.', 'elementor' ), ], ], ] ); } /** * @since 2.1.2 * @access public */ public function parse_template_path( $template ) { // `untrailingslashit` for windows path style. if ( 0 === strpos( $template, untrailingslashit( ELEMENTOR_PATH ) ) ) { return 'Elementor - ' . basename( $template ); } if ( 0 === strpos( $template, get_stylesheet_directory() ) ) { return wp_get_theme()->get( 'Name' ) . ' - ' . basename( $template ); } $plugins_dir = dirname( ELEMENTOR_PATH ); if ( 0 === strpos( $template, $plugins_dir ) ) { return ltrim( str_replace( $plugins_dir, '', $template ), '/\\' ); } return str_replace( WP_CONTENT_DIR, '', $template ); } /** * @since 2.1.2 * @access public */ public function add_log( $module, $title, $url = '' ) { if ( ! $this->is_enabled ) { return; } if ( ! isset( $this->log[ $module ] ) ) { $this->log[ $module ] = []; } $this->log[ $module ][] = [ 'title' => $title, 'url' => $url, ]; } /** * @since 2.1.2 * @access public */ public function add_menu_in_admin_bar( \WP_Admin_Bar $wp_admin_bar ) { if ( empty( $this->log ) ) { return; } $wp_admin_bar->add_node( [ 'id' => 'elementor_inspector', 'title' => __( 'Elementor Debugger', 'elementor' ), ] ); foreach ( $this->log as $module => $log ) { $module_id = sanitize_key( $module ); $wp_admin_bar->add_menu( [ 'id' => 'elementor_inspector_' . $module_id, 'parent' => 'elementor_inspector', 'title' => $module, ] ); foreach ( $log as $index => $row ) { $url = $row['url']; unset( $row['url'] ); $wp_admin_bar->add_menu( [ 'id' => 'elementor_inspector_log_' . $module_id . '_' . $index, 'parent' => 'elementor_inspector_' . $module_id, 'href' => $url, 'title' => implode( ' > ', $row ), 'meta' => [ 'target' => '_blank', ], ] ); } } } } core/debug/loading-inspection-manager.php000066600000002707152142641170014506 0ustar00inspections['theme-missing'] = new Theme_Missing(); $this->inspections['htaccess'] = new Htaccess(); } /** * @param Inspection_Base $inspection */ public function register_inspection( $inspection ) { $this->inspections[ $inspection->get_name() ] = $inspection; } public function run_inspections() { $debug_data = [ 'message' => __( 'We\'re sorry, but something went wrong. Click on \'Learn more\' and follow each of the steps to quickly solve it.', 'elementor' ), 'header' => __( 'The preview could not be loaded', 'elementor' ), 'doc_url' => 'https://go.elementor.com/preview-not-loaded/', ]; foreach ( $this->inspections as $inspection ) { if ( ! $inspection->run() ) { $debug_data = [ 'message' => $inspection->get_message(), 'header' => $inspection->get_header_message(), 'doc_url' => $inspection->get_help_doc_url(), 'error' => true, ]; break; } } return $debug_data; } } core/modules-manager.php000066600000004302152142641170011273 0ustar00get_modules_namespace_prefix(); foreach ( $this->get_modules_names() as $module_name ) { $class_name = str_replace( '-', ' ', $module_name ); $class_name = str_replace( ' ', '', ucwords( $class_name ) ); $class_name = $modules_namespace_prefix . '\\Modules\\' . $class_name . '\Module'; /** @var Module $class_name */ if ( $class_name::is_active() ) { $this->modules[ $module_name ] = $class_name::instance(); } } } /** * Get modules names. * * Retrieve the modules names. * * @since 2.0.0 * @access public * * @return string[] Modules names. */ public function get_modules_names() { return [ 'history', 'library', 'dynamic-tags', 'page-templates', 'gutenberg', 'wp-cli', 'safe-mode', 'usage', ]; } /** * Get modules. * * Retrieve all the registered modules or a specific module. * * @since 2.0.0 * @access public * * @param string $module_name Module name. * * @return null|Module|Module[] All the registered modules or a specific module. */ public function get_modules( $module_name ) { if ( $module_name ) { if ( isset( $this->modules[ $module_name ] ) ) { return $this->modules[ $module_name ]; } return null; } return $this->modules; } /** * Get modules namespace prefix. * * Retrieve the modules namespace prefix. * * @since 2.0.0 * @access protected * * @return string Modules namespace prefix. */ protected function get_modules_namespace_prefix() { return 'Elementor'; } } core/editor/editor.php000066600000111474152142641170011000 0ustar00set_post_id( absint( $_REQUEST['post'] ) ); if ( ! $this->is_edit_mode( $this->post_id ) ) { return; } // BC: From 2.9.0, the editor shouldn't handle the global post / current document. // Use requested id and not the global in order to avoid conflicts with plugins that changes the global post. query_posts( [ 'p' => $this->post_id, 'post_type' => get_post_type( $this->post_id ), ] ); Plugin::$instance->db->switch_to_post( $this->post_id ); $document = Plugin::$instance->documents->get( $this->post_id ); Plugin::$instance->documents->switch_to_document( $document ); // Change mode to Builder Plugin::$instance->db->set_is_elementor_page( $this->post_id ); // End BC. Loading_Inspection_Manager::instance()->register_inspections(); // Send MIME Type header like WP admin-header. @header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) ); // Temp: Allow plugins to know that the editor route is ready. TODO: Remove on 2.7.3. define( 'ELEMENTOR_EDITOR_USE_ROUTER', true ); add_filter( 'show_admin_bar', '__return_false' ); // Remove all WordPress actions remove_all_actions( 'wp_head' ); remove_all_actions( 'wp_print_styles' ); remove_all_actions( 'wp_print_head_scripts' ); remove_all_actions( 'wp_footer' ); // Handle `wp_head` add_action( 'wp_head', 'wp_enqueue_scripts', 1 ); add_action( 'wp_head', 'wp_print_styles', 8 ); add_action( 'wp_head', 'wp_print_head_scripts', 9 ); add_action( 'wp_head', 'wp_site_icon' ); add_action( 'wp_head', [ $this, 'editor_head_trigger' ], 30 ); // Handle `wp_footer` add_action( 'wp_footer', 'wp_print_footer_scripts', 20 ); add_action( 'wp_footer', 'wp_auth_check_html', 30 ); add_action( 'wp_footer', [ $this, 'wp_footer' ] ); // Handle `wp_enqueue_scripts` remove_all_actions( 'wp_enqueue_scripts' ); // Also remove all scripts hooked into after_wp_tiny_mce. remove_all_actions( 'after_wp_tiny_mce' ); add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_scripts' ], 999999 ); add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_styles' ], 999999 ); // Setup default heartbeat options add_filter( 'heartbeat_settings', function( $settings ) { $settings['interval'] = 15; return $settings; } ); // Tell to WP Cache plugins do not cache this request. Utils::do_not_cache(); do_action( 'elementor/editor/init' ); $this->print_editor_template(); // From the action it's an empty string, from tests its `false` if ( false !== $die ) { die; } } /** * Retrieve post ID. * * Get the ID of the current post. * * @since 1.8.0 * @access public * * @return int Post ID. */ public function get_post_id() { return $this->post_id; } /** * Redirect to new URL. * * Used as a fallback function for the old URL structure of Elementor page * edit URL. * * Fired by `template_redirect` action. * * @since 1.6.0 * @access public */ public function redirect_to_new_url() { if ( ! isset( $_GET['elementor'] ) ) { return; } $document = Plugin::$instance->documents->get( get_the_ID() ); if ( ! $document ) { wp_die( __( 'Document not found.', 'elementor' ) ); } if ( ! $document->is_editable_by_current_user() || ! $document->is_built_with_elementor() ) { return; } wp_safe_redirect( $document->get_edit_url() ); die; } /** * Whether the edit mode is active. * * Used to determine whether we are in the edit mode. * * @since 1.0.0 * @access public * * @param int $post_id Optional. Post ID. Default is `null`, the current * post ID. * * @return bool Whether the edit mode is active. */ public function is_edit_mode( $post_id = null ) { if ( null !== $this->is_edit_mode ) { return $this->is_edit_mode; } if ( empty( $post_id ) ) { $post_id = $this->post_id; } $document = Plugin::$instance->documents->get( $post_id ); if ( ! $document || ! $document->is_editable_by_current_user() ) { return false; } /** @var Module ajax */ $ajax_data = Plugin::$instance->common->get_component( 'ajax' )->get_current_action_data(); if ( ! empty( $ajax_data ) && 'get_document_config' === $ajax_data['action'] ) { return true; } // Ajax request as Editor mode $actions = [ 'elementor', // Templates 'elementor_get_templates', 'elementor_save_template', 'elementor_get_template', 'elementor_delete_template', 'elementor_import_template', 'elementor_library_direct_actions', ]; if ( isset( $_REQUEST['action'] ) && in_array( $_REQUEST['action'], $actions ) ) { return true; } return false; } /** * Lock post. * * Mark the post as currently being edited by the current user. * * @since 1.0.0 * @access public * * @param int $post_id The ID of the post being edited. */ public function lock_post( $post_id ) { if ( ! function_exists( 'wp_set_post_lock' ) ) { require_once ABSPATH . 'wp-admin/includes/post.php'; } wp_set_post_lock( $post_id ); } /** * Get locked user. * * Check what user is currently editing the post. * * @since 1.0.0 * @access public * * @param int $post_id The ID of the post being edited. * * @return \WP_User|false User information or false if the post is not locked. */ public function get_locked_user( $post_id ) { if ( ! function_exists( 'wp_check_post_lock' ) ) { require_once ABSPATH . 'wp-admin/includes/post.php'; } $locked_user = wp_check_post_lock( $post_id ); if ( ! $locked_user ) { return false; } return get_user_by( 'id', $locked_user ); } /** * Print Editor Template. * * Include the wrapper template of the editor. * * @since 2.2.0 * @access public */ public function print_editor_template() { include ELEMENTOR_PATH . 'includes/editor-templates/editor-wrapper.php'; } /** * Enqueue scripts. * * Registers all the editor scripts and enqueues them. * * @since 1.0.0 * @access public */ public function enqueue_scripts() { remove_action( 'wp_enqueue_scripts', [ $this, __FUNCTION__ ], 999999 ); global $wp_styles, $wp_scripts; $plugin = Plugin::$instance; // Reset global variable $wp_styles = new \WP_Styles(); // WPCS: override ok. $wp_scripts = new \WP_Scripts(); // WPCS: override ok. $suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS ) ? '' : '.min'; wp_register_script( 'elementor-editor-modules', ELEMENTOR_ASSETS_URL . 'js/editor-modules' . $suffix . '.js', [ 'elementor-common-modules', ], ELEMENTOR_VERSION, true ); wp_register_script( 'elementor-editor-document', ELEMENTOR_ASSETS_URL . 'js/editor-document' . $suffix . '.js', [ 'elementor-common-modules', ], ELEMENTOR_VERSION, true ); // Hack for waypoint with editor mode. wp_register_script( 'elementor-waypoints', ELEMENTOR_ASSETS_URL . 'lib/waypoints/waypoints-for-editor.js', [ 'jquery', ], '4.0.2', true ); wp_register_script( 'perfect-scrollbar', ELEMENTOR_ASSETS_URL . 'lib/perfect-scrollbar/js/perfect-scrollbar' . $suffix . '.js', [], '1.4.0', true ); wp_register_script( 'jquery-easing', ELEMENTOR_ASSETS_URL . 'lib/jquery-easing/jquery-easing' . $suffix . '.js', [ 'jquery', ], '1.3.2', true ); wp_register_script( 'nprogress', ELEMENTOR_ASSETS_URL . 'lib/nprogress/nprogress' . $suffix . '.js', [], '0.2.0', true ); wp_register_script( 'tipsy', ELEMENTOR_ASSETS_URL . 'lib/tipsy/tipsy' . $suffix . '.js', [ 'jquery', ], '1.0.0', true ); wp_register_script( 'jquery-elementor-select2', ELEMENTOR_ASSETS_URL . 'lib/e-select2/js/e-select2.full' . $suffix . '.js', [ 'jquery', ], '4.0.6-rc.1', true ); wp_register_script( 'flatpickr', ELEMENTOR_ASSETS_URL . 'lib/flatpickr/flatpickr' . $suffix . '.js', [ 'jquery', ], '1.12.0', true ); wp_register_script( 'ace', 'https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.5/ace.js', [], '1.2.5', true ); wp_register_script( 'ace-language-tools', 'https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.5/ext-language_tools.js', [ 'ace', ], '1.2.5', true ); wp_register_script( 'jquery-hover-intent', ELEMENTOR_ASSETS_URL . 'lib/jquery-hover-intent/jquery-hover-intent' . $suffix . '.js', [], '1.0.0', true ); wp_register_script( 'nouislider', ELEMENTOR_ASSETS_URL . 'lib/nouislider/nouislider' . $suffix . '.js', [], '13.0.0', true ); wp_register_script( 'pickr', ELEMENTOR_ASSETS_URL . 'lib/pickr/pickr.min.js', [], '1.5.0', true ); wp_register_script( 'elementor-editor', ELEMENTOR_ASSETS_URL . 'js/editor' . $suffix . '.js', [ 'elementor-common', 'elementor-editor-modules', 'elementor-editor-document', 'wp-auth-check', 'jquery-ui-sortable', 'jquery-ui-resizable', 'perfect-scrollbar', 'nprogress', 'tipsy', 'imagesloaded', 'heartbeat', 'jquery-elementor-select2', 'flatpickr', 'ace', 'ace-language-tools', 'jquery-hover-intent', 'nouislider', 'pickr', ], ELEMENTOR_VERSION, true ); /** * Before editor enqueue scripts. * * Fires before Elementor editor scripts are enqueued. * * @since 1.0.0 */ do_action( 'elementor/editor/before_enqueue_scripts' ); // Tweak for WP Admin menu icons wp_print_styles( 'editor-buttons' ); $page_title_selector = get_option( 'elementor_page_title_selector' ); if ( empty( $page_title_selector ) ) { $page_title_selector = 'h1.entry-title'; } $settings = SettingsManager::get_settings_managers_config(); // Moved to document since 2.9.0. unset( $settings['page'] ); $document = Plugin::$instance->documents->get_doc_or_auto_save( $this->post_id ); $config = [ 'initial_document' => $document->get_config(), 'version' => ELEMENTOR_VERSION, 'home_url' => home_url(), 'autosave_interval' => AUTOSAVE_INTERVAL, 'tabs' => $plugin->controls_manager->get_tabs(), 'controls' => $plugin->controls_manager->get_controls_data(), 'elements' => $plugin->elements_manager->get_element_types_config(), 'schemes' => [ 'items' => $plugin->schemes_manager->get_registered_schemes_data(), 'enabled_schemes' => Schemes_Manager::get_enabled_schemes(), ], 'icons' => [ 'libraries' => Icons_Manager::get_icon_manager_tabs_config(), 'goProURL' => Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=icon-library&utm_campaign=gopro&utm_medium=wp-dash' ), ], 'fa4_to_fa5_mapping_url' => ELEMENTOR_ASSETS_URL . 'lib/font-awesome/migration/mapping.js', 'default_schemes' => $plugin->schemes_manager->get_schemes_defaults(), 'settings' => $settings, 'system_schemes' => $plugin->schemes_manager->get_system_schemes(), 'wp_editor' => $this->get_wp_editor_config(), 'settings_page_link' => Settings::get_url(), 'tools_page_link' => Tools::get_url(), 'elementor_site' => 'https://go.elementor.com/about-elementor/', 'docs_elementor_site' => 'https://go.elementor.com/docs/', 'help_the_content_url' => 'https://go.elementor.com/the-content-missing/', 'help_right_click_url' => 'https://go.elementor.com/meet-right-click/', 'help_flexbox_bc_url' => 'https://go.elementor.com/flexbox-layout-bc/', 'elementPromotionURL' => 'https://go.elementor.com/go-pro-%s', 'dynamicPromotionURL' => 'https://go.elementor.com/go-pro-dynamic-tag', 'additional_shapes' => Shapes::get_additional_shapes_for_config(), 'user' => [ 'restrictions' => $plugin->role_manager->get_user_restrictions_array(), 'is_administrator' => current_user_can( 'manage_options' ), 'introduction' => User::get_introduction_meta(), ], 'preview' => [ 'help_preview_error_url' => 'https://go.elementor.com/preview-not-loaded/', 'help_preview_http_error_url' => 'https://go.elementor.com/preview-not-loaded/#permissions', 'help_preview_http_error_500_url' => 'https://go.elementor.com/500-error/', 'debug_data' => Loading_Inspection_Manager::instance()->run_inspections(), ], 'locale' => get_locale(), 'rich_editing_enabled' => filter_var( get_user_meta( get_current_user_id(), 'rich_editing', true ), FILTER_VALIDATE_BOOLEAN ), 'page_title_selector' => $page_title_selector, 'tinymceHasCustomConfig' => class_exists( 'Tinymce_Advanced' ), 'inlineEditing' => Plugin::$instance->widgets_manager->get_inline_editing_config(), 'dynamicTags' => Plugin::$instance->dynamic_tags->get_config(), 'ui' => [ 'darkModeStylesheetURL' => ELEMENTOR_ASSETS_URL . 'css/editor-dark-mode' . $suffix . '.css', ], 'i18n' => [ 'elementor' => __( 'Elementor', 'elementor' ), 'edit' => __( 'Edit', 'elementor' ), 'delete' => __( 'Delete', 'elementor' ), 'cancel' => __( 'Cancel', 'elementor' ), 'clear' => __( 'Clear', 'elementor' ), 'done' => __( 'Done', 'elementor' ), 'got_it' => __( 'Got It', 'elementor' ), /* translators: %s: Element type. */ 'add_element' => __( 'Add %s', 'elementor' ), /* translators: %s: Element name. */ 'edit_element' => __( 'Edit %s', 'elementor' ), /* translators: %s: Element type. */ 'duplicate_element' => __( 'Duplicate %s', 'elementor' ), /* translators: %s: Element type. */ 'delete_element' => __( 'Delete %s', 'elementor' ), 'flexbox_attention_header' => __( 'Note: Flexbox Changes', 'elementor' ), 'flexbox_attention_message' => __( 'Elementor 2.5 introduces key changes to the layout using CSS Flexbox. Your existing pages might have been affected, please review your page before publishing.', 'elementor' ), 'add_picked_color' => __( 'Add Picked Color', 'elementor' ), 'saved_colors' => __( 'Saved Colors', 'elementor' ), 'drag_to_delete' => __( 'Drag To Delete', 'elementor' ), // Menu. 'about_elementor' => __( 'About Elementor', 'elementor' ), 'elementor_settings' => __( 'Dashboard Settings', 'elementor' ), 'global_colors' => __( 'Default Colors', 'elementor' ), 'global_fonts' => __( 'Default Fonts', 'elementor' ), 'global_style' => __( 'Global Style', 'elementor' ), 'global_settings' => __( 'Global Settings', 'elementor' ), 'preferences' => __( 'Preferences', 'elementor' ), 'settings' => __( 'Settings', 'elementor' ), 'more' => __( 'More', 'elementor' ), 'view_page' => __( 'View Page', 'elementor' ), 'exit_to_dashboard' => __( 'Exit To Dashboard', 'elementor' ), // Elements. 'inner_section' => __( 'Inner Section', 'elementor' ), // Control Order. 'asc' => __( 'Ascending order', 'elementor' ), 'desc' => __( 'Descending order', 'elementor' ), // Clear Page. 'clear_page' => __( 'Delete All Content', 'elementor' ), 'dialog_confirm_clear_page' => __( 'Attention: We are going to DELETE ALL CONTENT from this page. Are you sure you want to do that?', 'elementor' ), // Enable SVG uploads. 'enable_svg' => __( 'Enable SVG Uploads', 'elementor' ), 'dialog_confirm_enable_svg' => __( 'Before you enable SVG upload, note that SVG files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.', 'elementor' ), // Enable fontawesome 5 if needed. 'enable_fa5' => __( 'Elementor\'s New Icon Library', 'elementor' ), 'dialog_confirm_enable_fa5' => __( 'Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Upgrade".', 'elementor' ) . ' ' . __( 'Learn More', 'elementor' ) . '', // Panel Preview Mode. 'back_to_editor' => __( 'Show Panel', 'elementor' ), 'preview' => __( 'Hide Panel', 'elementor' ), // Inline Editing. 'type_here' => __( 'Type Here', 'elementor' ), // Library. 'an_error_occurred' => __( 'An error occurred', 'elementor' ), 'category' => __( 'Category', 'elementor' ), 'delete_template' => __( 'Delete Template', 'elementor' ), 'delete_template_confirm' => __( 'Are you sure you want to delete this template?', 'elementor' ), 'import_template_dialog_header' => __( 'Import Document Settings', 'elementor' ), 'import_template_dialog_message' => __( 'Do you want to also import the document settings of the template?', 'elementor' ), 'import_template_dialog_message_attention' => __( 'Attention: Importing may override previous settings.', 'elementor' ), 'library' => __( 'Library', 'elementor' ), 'no' => __( 'No', 'elementor' ), 'page' => __( 'Page', 'elementor' ), /* translators: %s: Template type. */ 'save_your_template' => __( 'Save Your %s to Library', 'elementor' ), 'save_your_template_description' => __( 'Your designs will be available for export and reuse on any page or website', 'elementor' ), 'section' => __( 'Section', 'elementor' ), 'templates_empty_message' => __( 'This is where your templates should be. Design it. Save it. Reuse it.', 'elementor' ), 'templates_empty_title' => __( 'Haven’t Saved Templates Yet?', 'elementor' ), 'templates_no_favorites_message' => __( 'You can mark any pre-designed template as a favorite.', 'elementor' ), 'templates_no_favorites_title' => __( 'No Favorite Templates', 'elementor' ), 'templates_no_results_message' => __( 'Please make sure your search is spelled correctly or try a different words.', 'elementor' ), 'templates_no_results_title' => __( 'No Results Found', 'elementor' ), 'templates_request_error' => __( 'The following error(s) occurred while processing the request:', 'elementor' ), 'yes' => __( 'Yes', 'elementor' ), 'blocks' => __( 'Blocks', 'elementor' ), 'pages' => __( 'Pages', 'elementor' ), 'my_templates' => __( 'My Templates', 'elementor' ), // Incompatible Device. 'device_incompatible_header' => __( 'Your browser isn\'t compatible', 'elementor' ), 'device_incompatible_message' => __( 'Your browser isn\'t compatible with all of Elementor\'s editing features. We recommend you switch to another browser like Chrome or Firefox.', 'elementor' ), 'proceed_anyway' => __( 'Proceed Anyway', 'elementor' ), // Preview not loaded. 'learn_more' => __( 'Learn More', 'elementor' ), 'preview_el_not_found_header' => __( 'Sorry, the content area was not found in your page.', 'elementor' ), 'preview_el_not_found_message' => __( 'You must call \'the_content\' function in the current template, in order for Elementor to work on this page.', 'elementor' ), // Gallery. 'delete_gallery' => __( 'Reset Gallery', 'elementor' ), 'dialog_confirm_gallery_delete' => __( 'Are you sure you want to reset this gallery?', 'elementor' ), /* translators: %s: The number of images. */ 'gallery_images_selected' => __( '%s Images Selected', 'elementor' ), 'gallery_no_images_selected' => __( 'No Images Selected', 'elementor' ), 'insert_media' => __( 'Insert Media', 'elementor' ), // Take Over. /* translators: %s: User name. */ 'dialog_user_taken_over' => __( '%s has taken over and is currently editing. Do you want to take over this page editing?', 'elementor' ), 'go_back' => __( 'Go Back', 'elementor' ), 'take_over' => __( 'Take Over', 'elementor' ), // Revisions. /* translators: %s: Template type. */ 'dialog_confirm_delete' => __( 'Are you sure you want to remove this %s?', 'elementor' ), // Saver. 'before_unload_alert' => __( 'Please note: All unsaved changes will be lost.', 'elementor' ), 'published' => __( 'Published', 'elementor' ), 'publish' => __( 'Publish', 'elementor' ), 'save' => __( 'Save', 'elementor' ), 'saved' => __( 'Saved', 'elementor' ), 'update' => __( 'Update', 'elementor' ), 'enable' => __( 'Enable', 'elementor' ), 'submit' => __( 'Submit', 'elementor' ), 'working_on_draft_notification' => __( 'This is just a draft. Play around and when you\'re done - click update.', 'elementor' ), 'keep_editing' => __( 'Keep Editing', 'elementor' ), 'have_a_look' => __( 'Have a look', 'elementor' ), 'view_all_revisions' => __( 'View All Revisions', 'elementor' ), 'dismiss' => __( 'Dismiss', 'elementor' ), 'saving_disabled' => __( 'Saving has been disabled until you’re reconnected.', 'elementor' ), // Ajax 'server_error' => __( 'Server Error', 'elementor' ), 'server_connection_lost' => __( 'Connection Lost', 'elementor' ), 'unknown_error' => __( 'Unknown Error', 'elementor' ), // Context Menu 'duplicate' => __( 'Duplicate', 'elementor' ), 'copy' => __( 'Copy', 'elementor' ), 'paste' => __( 'Paste', 'elementor' ), 'copy_style' => __( 'Copy Style', 'elementor' ), 'paste_style' => __( 'Paste Style', 'elementor' ), 'reset_style' => __( 'Reset Style', 'elementor' ), 'save_as_global' => __( 'Save as a Global', 'elementor' ), 'save_as_block' => __( 'Save as Template', 'elementor' ), 'new_column' => __( 'Add New Column', 'elementor' ), 'copy_all_content' => __( 'Copy All Content', 'elementor' ), 'delete_all_content' => __( 'Delete All Content', 'elementor' ), 'navigator' => __( 'Navigator', 'elementor' ), // Right Click Introduction 'meet_right_click_header' => __( 'Meet Right Click', 'elementor' ), 'meet_right_click_message' => __( 'Now you can access all editing actions using right click.', 'elementor' ), // Hotkeys screen 'keyboard_shortcuts' => __( 'Keyboard Shortcuts', 'elementor' ), // Deprecated Control 'deprecated_notice' => __( 'The %1$s widget has been deprecated since %2$s %3$s.', 'elementor' ), 'deprecated_notice_replacement' => __( 'It has been replaced by %1$s.', 'elementor' ), 'deprecated_notice_last' => __( 'Note that %1$s will be completely removed once %2$s %3$s is released.', 'elementor' ), //Preview Debug 'preview_debug_link_text' => __( 'Click here for preview debug', 'elementor' ), 'icon_library' => __( 'Icon Library', 'elementor' ), 'my_libraries' => __( 'My Libraries', 'elementor' ), 'upload' => __( 'Upload', 'elementor' ), 'icons_promotion' => __( 'Become a Pro user to upload unlimited font icon folders to your website.', 'elementor' ), 'go_pro' => __( 'Go Pro', 'elementor' ), 'custom_positioning' => __( 'Custom Positioning', 'elementor' ), 'element_promotion_dialog_header' => __( '%s Widget', 'elementor' ), 'element_promotion_dialog_message' => __( 'Use %s widget and dozens more pro features to extend your toolbox and build sites faster and better.', 'elementor' ), 'see_it_in_action' => __( 'See it in Action', 'elementor' ), 'dynamic_content' => __( 'Dynamic Content', 'elementor' ), 'dynamic_promotion_message' => __( 'Create more personalized and dynamic sites by populating data from various sources with dozens of dynamic tags to choose from.', 'elementor' ), 'available_in_pro_v29' => __( 'Available in Pro V2.9.', 'elementor' ), // TODO: Remove. 'autosave' => __( 'Autosave', 'elementor' ), 'elementor_docs' => __( 'Documentation', 'elementor' ), 'reload_page' => __( 'Reload Page', 'elementor' ), 'session_expired_header' => __( 'Timeout', 'elementor' ), 'session_expired_message' => __( 'Your session has expired. Please reload the page to continue editing.', 'elementor' ), 'soon' => __( 'Soon', 'elementor' ), 'unknown_value' => __( 'Unknown Value', 'elementor' ), ], ]; if ( ! Utils::has_pro() && current_user_can( 'manage_options' ) ) { $config['promotionWidgets'] = Api::get_promotion_widgets(); } $this->bc_move_document_filters(); /** * Localize editor settings. * * Filters the editor localized settings. * * @since 1.0.0 * * @param array $config Editor configuration. * @param int $post_id The ID of the current post being edited. */ $config = apply_filters( 'elementor/editor/localize_settings', $config ); Utils::print_js_config( 'elementor-editor', 'ElementorConfig', $config ); wp_enqueue_script( 'elementor-editor' ); $plugin->controls_manager->enqueue_control_scripts(); /** * After editor enqueue scripts. * * Fires after Elementor editor scripts are enqueued. * * @since 1.0.0 */ do_action( 'elementor/editor/after_enqueue_scripts' ); } /** * Enqueue styles. * * Registers all the editor styles and enqueues them. * * @since 1.0.0 * @access public */ public function enqueue_styles() { /** * Before editor enqueue styles. * * Fires before Elementor editor styles are enqueued. * * @since 1.0.0 */ do_action( 'elementor/editor/before_enqueue_styles' ); $suffix = Utils::is_script_debug() ? '' : '.min'; $direction_suffix = is_rtl() ? '-rtl' : ''; wp_register_style( 'font-awesome', ELEMENTOR_ASSETS_URL . 'lib/font-awesome/css/font-awesome' . $suffix . '.css', [], '4.7.0' ); wp_register_style( 'elementor-select2', ELEMENTOR_ASSETS_URL . 'lib/e-select2/css/e-select2' . $suffix . '.css', [], '4.0.6-rc.1' ); wp_register_style( 'google-font-roboto', 'https://fonts.googleapis.com/css?family=Roboto:300,400,500,700', [], ELEMENTOR_VERSION ); wp_register_style( 'flatpickr', ELEMENTOR_ASSETS_URL . 'lib/flatpickr/flatpickr' . $suffix . '.css', [], '1.12.0' ); wp_register_style( 'pickr', ELEMENTOR_ASSETS_URL . 'lib/pickr/themes/monolith.min.css', [], '1.5.0' ); wp_register_style( 'elementor-editor', ELEMENTOR_ASSETS_URL . 'css/editor' . $direction_suffix . $suffix . '.css', [ 'elementor-common', 'elementor-select2', 'elementor-icons', 'wp-auth-check', 'google-font-roboto', 'flatpickr', 'pickr', ], ELEMENTOR_VERSION ); wp_enqueue_style( 'elementor-editor' ); $ui_theme = SettingsManager::get_settings_managers( 'editorPreferences' )->get_model()->get_settings( 'ui_theme' ); if ( 'light' !== $ui_theme ) { $ui_theme_media_queries = 'all'; if ( 'auto' === $ui_theme ) { $ui_theme_media_queries = '(prefers-color-scheme: dark)'; } wp_enqueue_style( 'elementor-editor-dark-mode', ELEMENTOR_ASSETS_URL . 'css/editor-dark-mode' . $suffix . '.css', [ 'elementor-editor', ], ELEMENTOR_VERSION, $ui_theme_media_queries ); } if ( Responsive::has_custom_breakpoints() ) { $breakpoints = Responsive::get_breakpoints(); wp_add_inline_style( 'elementor-editor', '.elementor-device-tablet #elementor-preview-responsive-wrapper { width: ' . $breakpoints['md'] . 'px; }' ); } /** * After editor enqueue styles. * * Fires after Elementor editor styles are enqueued. * * @since 1.0.0 */ do_action( 'elementor/editor/after_enqueue_styles' ); } /** * Get WordPress editor config. * * Config the default WordPress editor with custom settings for Elementor use. * * @since 1.9.0 * @access private */ private function get_wp_editor_config() { // Remove all TinyMCE plugins. remove_all_filters( 'mce_buttons', 10 ); remove_all_filters( 'mce_external_plugins', 10 ); if ( ! class_exists( '\_WP_Editors', false ) ) { require ABSPATH . WPINC . '/class-wp-editor.php'; } // WordPress 4.8 and higher if ( method_exists( '\_WP_Editors', 'print_tinymce_scripts' ) ) { \_WP_Editors::print_default_editor_scripts(); \_WP_Editors::print_tinymce_scripts(); } ob_start(); wp_editor( '%%EDITORCONTENT%%', 'elementorwpeditor', [ 'editor_class' => 'elementor-wp-editor', 'editor_height' => 250, 'drag_drop_upload' => true, ] ); $config = ob_get_clean(); // Don't call \_WP_Editors methods again remove_action( 'admin_print_footer_scripts', [ '_WP_Editors', 'editor_js' ], 50 ); remove_action( 'admin_print_footer_scripts', [ '_WP_Editors', 'print_default_editor_scripts' ], 45 ); \_WP_Editors::editor_js(); return $config; } /** * Editor head trigger. * * Fires the 'elementor/editor/wp_head' action in the head tag in Elementor * editor. * * @since 1.0.0 * @access public */ public function editor_head_trigger() { /** * Elementor editor head. * * Fires on Elementor editor head tag. * * Used to prints scripts or any other data in the head tag. * * @since 1.0.0 */ do_action( 'elementor/editor/wp_head' ); } /** * Add editor template. * * Registers new editor templates. * * @since 1.0.0 * @deprecated 2.3.0 Use `Plugin::$instance->common->add_template()` * @access public * * @param string $template Can be either a link to template file or template * HTML content. * @param string $type Optional. Whether to handle the template as path * or text. Default is `path`. */ public function add_editor_template( $template, $type = 'path' ) { _deprecated_function( __METHOD__, '2.3.0', 'Plugin::$instance->common->add_template()' ); $common = Plugin::$instance->common; if ( $common ) { Plugin::$instance->common->add_template( $template, $type ); } } /** * WP footer. * * Prints Elementor editor with all the editor templates, and render controls, * widgets and content elements. * * Fired by `wp_footer` action. * * @since 1.0.0 * @access public */ public function wp_footer() { $plugin = Plugin::$instance; $plugin->controls_manager->render_controls(); $plugin->widgets_manager->render_widgets_content(); $plugin->elements_manager->render_elements_content(); $plugin->schemes_manager->print_schemes_templates(); $plugin->dynamic_tags->print_templates(); $this->init_editor_templates(); /** * Elementor editor footer. * * Fires on Elementor editor before closing the body tag. * * Used to prints scripts or any other HTML before closing the body tag. * * @since 1.0.0 */ do_action( 'elementor/editor/footer' ); } /** * Set edit mode. * * Used to update the edit mode. * * @since 1.0.0 * @access public * * @param bool $edit_mode Whether the edit mode is active. */ public function set_edit_mode( $edit_mode ) { $this->is_edit_mode = $edit_mode; } /** * Editor constructor. * * Initializing Elementor editor and redirect from old URL structure of * Elementor editor. * * @since 1.0.0 * @access public */ public function __construct() { $this->notice_bar = new Notice_Bar(); add_action( 'admin_action_elementor', [ $this, 'init' ] ); add_action( 'template_redirect', [ $this, 'redirect_to_new_url' ] ); // Handle autocomplete feature for URL control. add_filter( 'wp_link_query_args', [ $this, 'filter_wp_link_query_args' ] ); add_filter( 'wp_link_query', [ $this, 'filter_wp_link_query' ] ); } /** * @since 2.2.0 * @access public */ public function filter_wp_link_query_args( $query ) { $library_cpt_key = array_search( Source_Local::CPT, $query['post_type'], true ); if ( false !== $library_cpt_key ) { unset( $query['post_type'][ $library_cpt_key ] ); } return $query; } /** * @since 2.2.0 * @access public */ public function filter_wp_link_query( $results ) { if ( isset( $_POST['editor'] ) && 'elementor' === $_POST['editor'] ) { $post_type_object = get_post_type_object( 'post' ); $post_label = $post_type_object->labels->singular_name; foreach ( $results as & $result ) { if ( 'post' === get_post_type( $result['ID'] ) ) { $result['info'] = $post_label; } } } return $results; } /** * Create nonce. * * If the user has edit capabilities, it creates a cryptographic token to * give him access to Elementor editor. * * @since 1.8.1 * @since 1.8.7 The `$post_type` parameter was introduces. * @deprecated 2.3.0 Use `Plugin::$instance->common->get_component( 'ajax' )->create_nonce()` instead * @access public * * @param string $post_type The post type to check capabilities. * * @return null|string The nonce token, or `null` if the user has no edit * capabilities. */ public function create_nonce( $post_type ) { _deprecated_function( __METHOD__, '2.3.0', 'Plugin::$instance->common->get_component( \'ajax\' )->create_nonce()' ); /** @var Ajax $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); return $ajax->create_nonce(); } /** * Verify nonce. * * The user is given an amount of time to use the token, so therefore, since * the user ID and `$action` remain the same, the independent variable is * the time. * * @since 1.8.1 * @deprecated 2.3.0 * @access public * * @param string $nonce Nonce to verify. * * @return false|int If the nonce is invalid it returns `false`. If the * nonce is valid and generated between 0-12 hours ago it * returns `1`. If the nonce is valid and generated * between 12-24 hours ago it returns `2`. */ public function verify_nonce( $nonce ) { _deprecated_function( __METHOD__, '2.3.0', 'wp_verify_nonce()' ); return wp_verify_nonce( $nonce ); } /** * Verify request nonce. * * Whether the request nonce verified or not. * * @since 1.8.1 * @deprecated 2.3.0 Use `Plugin::$instance->common->get_component( 'ajax' )->verify_request_nonce()` instead * @access public * * @return bool True if request nonce verified, False otherwise. */ public function verify_request_nonce() { _deprecated_function( __METHOD__, '2.3.0', 'Plugin::$instance->common->get_component( \'ajax\' )->verify_request_nonce()' ); /** @var Ajax $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); return $ajax->verify_request_nonce(); } /** * Verify ajax nonce. * * Verify request nonce and send a JSON request, if not verified returns an * error. * * @since 1.9.0 * @deprecated 2.3.0 * @access public */ public function verify_ajax_nonce() { _deprecated_function( __METHOD__, '2.3.0' ); /** @var Ajax $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); if ( ! $ajax->verify_request_nonce() ) { wp_send_json_error( new \WP_Error( 'token_expired', 'Nonce token expired.' ) ); } } /** * Init editor templates. * * Initialize default elementor templates used in the editor panel. * * @since 1.7.0 * @access private */ private function init_editor_templates() { $template_names = [ 'global', 'panel', 'panel-elements', 'repeater', 'templates', 'navigator', 'hotkeys', ]; foreach ( $template_names as $template_name ) { Plugin::$instance->common->add_template( ELEMENTOR_PATH . "includes/editor-templates/$template_name.php" ); } } private function bc_move_document_filters() { global $wp_filter; $old_tag = 'elementor/editor/localize_settings'; $new_tag = 'elementor/document/config'; if ( ! has_filter( $old_tag ) ) { return; } foreach ( $wp_filter[ $old_tag ] as $priority => $filters ) { foreach ( $filters as $filter_id => $filter_args ) { if ( 2 === $filter_args['accepted_args'] ) { remove_filter( $old_tag, $filter_id, $priority ); add_filter( $new_tag, $filter_args['function'], $priority, 2 ); // TODO: Hard deprecation // _deprecated_hook( '`' . $old_tag . ` is no longer using post_id', '2.9.0', $new_tag' ); } } } } public function set_post_id( $post_id ) { $this->post_id = $post_id; } } core/editor/notice-bar.php000066600000003257152142641170011534 0ustar00get_install_time() > strtotime( '-30 days' ) ) { return []; } return [ 'muted_period' => 90, 'option_key' => '_elementor_editor_upgrade_notice_dismissed', 'message' => __( 'Love using Elementor? Learn how you can build better sites with Elementor Pro.', 'elementor' ), 'action_title' => __( 'Get Pro', 'elementor' ), 'action_url' => Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=editor-notice-bar&utm_campaign=gopro&utm_medium=wp-dash' ), ]; } final public function get_notice() { if ( ! current_user_can( 'manage_options' ) ) { return null; } $settings = $this->get_settings(); if ( empty( $settings['option_key'] ) ) { return null; } $dismissed_time = get_option( $settings['option_key'] ); if ( $dismissed_time ) { if ( $dismissed_time > strtotime( '-' . $settings['muted_period'] . ' days' ) ) { return null; } $this->set_notice_dismissed(); } return $settings; } public function __construct() { add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] ); } public function set_notice_dismissed() { update_option( $this->get_settings( 'option_key' ), time() ); } public function register_ajax_actions( Ajax $ajax ) { $ajax->register_ajax_action( 'notice_bar_dismiss', [ $this, 'set_notice_dismissed' ] ); } } core/document-types/post.php000066600000000766152142641170012172 0ustar00 [ 'title' => __( 'Single', 'elementor' ), 'active' => false, ], ] ); } /** * @since 2.0.0 * @access public */ public function get_css_wrapper_selector() { return 'body.elementor-page-' . $this->get_main_id(); } /** * @since 2.0.0 * @access protected */ protected function _register_controls() { parent::_register_controls(); self::register_hide_title_control( $this ); self::register_post_fields_control( $this ); self::register_style_controls( $this ); } /** * @since 2.0.0 * @access public * @static * @param Document $document */ public static function register_hide_title_control( $document ) { $page_title_selector = SettingsManager::get_settings_managers( 'general' )->get_model()->get_settings( 'elementor_page_title_selector' ); if ( ! $page_title_selector ) { $page_title_selector = 'h1.entry-title'; } $page_title_selector .= ', .elementor-page-title'; $document->start_injection( [ 'of' => 'post_status', 'fallback' => [ 'of' => 'post_title', ], ] ); $document->add_control( 'hide_title', [ 'label' => __( 'Hide Title', 'elementor' ), 'type' => Controls_Manager::SWITCHER, 'description' => sprintf( /* translators: %s: Setting page link */ __( 'Not working? You can set a different selector for the title in the Settings page.', 'elementor' ), Settings::get_url() . '#tab-style' ), 'selectors' => [ '{{WRAPPER}} ' . $page_title_selector => 'display: none', ], ] ); $document->end_injection(); } /** * @since 2.0.0 * @access public * @static * @param Document $document */ public static function register_style_controls( $document ) { $document->start_controls_section( 'section_page_style', [ 'label' => __( 'Body Style', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $document->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'background', 'fields_options' => [ 'image' => [ // Currently isn't supported. 'dynamic' => [ 'active' => false, ], ], ], ] ); $document->add_responsive_control( 'padding', [ 'label' => __( 'Padding', 'elementor' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', 'em', '%' ], 'selectors' => [ '{{WRAPPER}}' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}', ], ] ); $document->end_controls_section(); Plugin::$instance->controls_manager->add_custom_css_controls( $document ); } /** * @since 2.0.0 * @access public * @static * @param Document $document */ public static function register_post_fields_control( $document ) { $document->start_injection( [ 'of' => 'post_status', 'fallback' => [ 'of' => 'post_title', ], ] ); if ( post_type_supports( $document->post->post_type, 'excerpt' ) ) { $document->add_control( 'post_excerpt', [ 'label' => __( 'Excerpt', 'elementor' ), 'type' => Controls_Manager::TEXTAREA, 'default' => $document->post->post_excerpt, ] ); } if ( current_theme_supports( 'post-thumbnails' ) && post_type_supports( $document->post->post_type, 'thumbnail' ) ) { $document->add_control( 'post_featured_image', [ 'label' => __( 'Featured Image', 'elementor' ), 'type' => Controls_Manager::MEDIA, 'default' => [ 'id' => get_post_thumbnail_id(), 'url' => get_the_post_thumbnail_url( $document->post->ID ), ], ] ); } $document->end_injection(); } /** * @since 2.0.0 * @access public * * @param array $data * * @throws \Exception */ public function __construct( array $data = [] ) { if ( $data ) { $template = get_post_meta( $data['post_id'], '_wp_page_template', true ); if ( empty( $template ) ) { $template = 'default'; } $data['settings']['template'] = $template; } parent::__construct( $data ); } protected function get_remote_library_config() { $config = parent::get_remote_library_config(); $config['category'] = ''; $config['type'] = 'page'; $config['default_route'] = 'templates/pages'; return $config; } } core/document-types/page.php000066600000001030152142641170012102 0ustar00get_name(); $js_var = 'elementor' . str_replace( ' ', '', ucwords( str_replace( '-', ' ', $name ) ) ) . 'Config'; $config = $this->get_settings() + $this->get_components_config(); if ( ! $handle ) { $handle = 'elementor-' . $name; } Utils::print_js_config( $handle, $js_var, $config ); } /** * Get components config. * * Retrieves the app components settings. * * @since 2.3.0 * @access private * * @return array */ private function get_components_config() { $settings = []; foreach ( $this->get_components() as $id => $instance ) { $settings[ $id ] = $instance->get_settings(); } return $settings; } } core/base/db-upgrades-manager.php000066600000012304152142641170012733 0ustar00query_limit; } public function set_query_limit( $limit ) { $this->query_limit = $limit; } public function get_current_version() { if ( null === $this->current_version ) { $this->current_version = get_option( $this->get_version_option_name() ); } return $this->current_version; } public function should_upgrade() { $current_version = $this->get_current_version(); // It's a new install. if ( ! $current_version ) { $this->update_db_version(); return false; } return version_compare( $this->get_new_version(), $current_version, '>' ); } public function on_runner_start() { parent::on_runner_start(); define( 'IS_ELEMENTOR_UPGRADE', true ); } public function on_runner_complete( $did_tasks = false ) { $logger = Plugin::$instance->logger->get_logger(); $logger->info( 'Elementor data updater process has been completed.', [ 'meta' => [ 'plugin' => $this->get_plugin_label(), 'from' => $this->current_version, 'to' => $this->get_new_version(), ], ] ); Plugin::$instance->files_manager->clear_cache(); $this->update_db_version(); if ( $did_tasks ) { $this->add_flag( 'completed' ); } } public function admin_notice_start_upgrade() { $upgrade_link = $this->get_start_action_url(); $message = '

' . sprintf( __( '%s Your site database needs to be updated to the latest version.', 'elementor' ), $this->get_updater_label() ) . '

'; $message .= '

' . sprintf( '%s', $upgrade_link, __( 'Update Now', 'elementor' ) ) . '

'; echo '
' . $message . '
'; } public function admin_notice_upgrade_is_running() { $upgrade_link = $this->get_continue_action_url(); $message = '

' . sprintf( __( '%s Database update process is running in the background.', 'elementor' ), $this->get_updater_label() ) . '

'; $message .= '

' . __( 'Taking a while?', 'elementor' ) . '' . __( 'Click here to run it now', 'elementor' ) . '

'; echo '
' . $message . '
'; } public function admin_notice_upgrade_is_completed() { $this->delete_flag( 'completed' ); $message = '

' . sprintf( __( '%s The database update process is now complete. Thank you for updating to the latest version!', 'elementor' ), $this->get_updater_label() ) . '

'; echo '
' . $message . '
'; } /** * @access protected */ protected function start_run() { $updater = $this->get_task_runner(); if ( $updater->is_running() ) { return; } $upgrade_callbacks = $this->get_upgrade_callbacks(); if ( empty( $upgrade_callbacks ) ) { $this->on_runner_complete(); return; } foreach ( $upgrade_callbacks as $callback ) { $updater->push_to_queue( [ 'callback' => $callback, ] ); } $updater->save()->dispatch(); Plugin::$instance->logger->get_logger()->info( 'Elementor data updater process has been queued.', [ 'meta' => [ 'plugin' => $this->get_plugin_label(), 'from' => $this->current_version, 'to' => $this->get_new_version(), ], ] ); } protected function update_db_version() { update_option( $this->get_version_option_name(), $this->get_new_version() ); } public function get_upgrade_callbacks() { $prefix = '_v_'; $upgrades_class = $this->get_upgrades_class(); $upgrades_reflection = new \ReflectionClass( $upgrades_class ); $callbacks = []; foreach ( $upgrades_reflection->getMethods() as $method ) { $method_name = $method->getName(); if ( false === strpos( $method_name, $prefix ) ) { continue; } if ( ! preg_match_all( "/$prefix(\d+_\d+_\d+)/", $method_name, $matches ) ) { continue; } $method_version = str_replace( '_', '.', $matches[1][0] ); if ( ! version_compare( $method_version, $this->current_version, '>' ) ) { continue; } $callbacks[] = [ $upgrades_class, $method_name ]; } return $callbacks; } public function __construct() { // If upgrade is completed - show the notice only for admins. // Note: in this case `should_upgrade` returns false, because it's already upgraded. if ( is_admin() && current_user_can( 'update_plugins' ) && $this->get_flag( 'completed' ) ) { add_action( 'admin_notices', [ $this, 'admin_notice_upgrade_is_completed' ] ); } if ( ! $this->should_upgrade() ) { return; } $updater = $this->get_task_runner(); $this->start_run(); if ( $updater->is_running() && current_user_can( 'update_plugins' ) ) { add_action( 'admin_notices', [ $this, 'admin_notice_upgrade_is_running' ] ); } parent::__construct(); } } core/base/background-task.php000066600000021674152142641170012217 0ustar00get_current_item(); if ( empty( $item['total'] ) ) { $sql = preg_replace( '/^SELECT/', 'SELECT SQL_CALC_FOUND_ROWS', $sql ); } // Add offset & limit. $sql = preg_replace( '/;$/', '', $sql ); $sql .= ' LIMIT %d, %d;'; $results = $wpdb->get_col( $wpdb->prepare( $sql, $this->get_current_offset(), $this->get_limit() ) ); // WPCS: unprepared SQL OK. if ( ! empty( $results ) ) { $this->set_total(); } return $results; } public function should_run_again( $updated_rows ) { return count( $updated_rows ) === $this->get_limit(); } public function get_current_offset() { $limit = $this->get_limit(); return ( $this->current_item['iterate_num'] - 1 ) * $limit; } public function get_limit() { return $this->manager->get_query_limit(); } public function set_total() { global $wpdb; if ( empty( $this->current_item['total'] ) ) { $total_rows = $wpdb->get_var( 'SELECT FOUND_ROWS();' ); $total_iterates = ceil( $total_rows / $this->get_limit() ); $this->current_item['total'] = $total_iterates; } } /** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). */ protected function complete() { $this->manager->on_runner_complete( true ); parent::complete(); } public function continue_run() { // Used to fire an action added in WP_Background_Process::_construct() that calls WP_Background_Process::handle_cron_healthcheck(). // This method will make sure the database updates are executed even if cron is disabled. Nothing will happen if the updates are already running. do_action( $this->cron_hook_identifier ); } /** * @return mixed */ public function get_current_item() { return $this->current_item; } /** * Get batch. * * @return \stdClass Return the first batch from the queue. */ protected function get_batch() { $batch = parent::get_batch(); $batch->data = array_filter( (array) $batch->data ); return $batch; } /** * Handle cron healthcheck * * Restart the background process if not already running * and data exists in the queue. */ public function handle_cron_healthcheck() { if ( $this->is_process_running() ) { // Background process already running. return; } if ( $this->is_queue_empty() ) { // No data to process. $this->clear_scheduled_event(); return; } $this->handle(); } /** * Schedule fallback event. */ protected function schedule_event() { if ( ! wp_next_scheduled( $this->cron_hook_identifier ) ) { wp_schedule_event( time() + 10, $this->cron_interval_identifier, $this->cron_hook_identifier ); } } /** * Is the updater running? * * @return boolean */ public function is_running() { return false === $this->is_queue_empty(); } /** * See if the batch limit has been exceeded. * * @return bool */ protected function batch_limit_exceeded() { return $this->time_exceeded() || $this->memory_exceeded(); } /** * Handle. * * Pass each queue item to the task handler, while remaining * within server memory and time limit constraints. */ protected function handle() { $this->manager->on_runner_start(); $this->lock_process(); do { $batch = $this->get_batch(); foreach ( $batch->data as $key => $value ) { $task = $this->task( $value ); if ( false !== $task ) { $batch->data[ $key ] = $task; } else { unset( $batch->data[ $key ] ); } if ( $this->batch_limit_exceeded() ) { // Batch limits reached. break; } } // Update or delete current batch. if ( ! empty( $batch->data ) ) { $this->update( $batch->key, $batch->data ); } else { $this->delete( $batch->key ); } } while ( ! $this->batch_limit_exceeded() && ! $this->is_queue_empty() ); $this->unlock_process(); // Start next batch or complete process. if ( ! $this->is_queue_empty() ) { $this->dispatch(); } else { $this->complete(); } } /** * Use the protected `is_process_running` method as a public method. * @return bool */ public function is_process_locked() { return $this->is_process_running(); } public function handle_immediately( $callbacks ) { $this->manager->on_runner_start(); $this->lock_process(); foreach ( $callbacks as $callback ) { $item = [ 'callback' => $callback, ]; do { $item = $this->task( $item ); } while ( $item ); } $this->unlock_process(); } /** * Task * * Override this method to perform any actions required on each * queue item. Return the modified item for further processing * in the next pass through. Or, return false to remove the * item from the queue. * * @param array $item * * @return array|bool */ protected function task( $item ) { $result = false; if ( ! isset( $item['iterate_num'] ) ) { $item['iterate_num'] = 1; } $logger = Plugin::$instance->logger->get_logger(); $callback = $this->format_callback_log( $item ); if ( is_callable( $item['callback'] ) ) { $progress = ''; if ( 1 < $item['iterate_num'] ) { if ( empty( $item['total'] ) ) { $progress = sprintf( '(x%s)', $item['iterate_num'] ); } else { $percent = ceil( $item['iterate_num'] / ( $item['total'] / 100 ) ); $progress = sprintf( '(%s of %s, %s%%)', $item['iterate_num'], $item['total'], $percent ); } } $logger->info( sprintf( '%s Start %s', $callback, $progress ) ); $this->current_item = $item; $result = (bool) call_user_func( $item['callback'], $this ); // get back the updated item. $item = $this->current_item; $this->current_item = null; if ( $result ) { if ( empty( $item['total'] ) ) { $logger->info( sprintf( '%s callback needs to run again', $callback ) ); } elseif ( 1 === $item['iterate_num'] ) { $logger->info( sprintf( '%s callback needs to run more %d times', $callback, $item['total'] - $item['iterate_num'] ) ); } $item['iterate_num']++; } else { $logger->info( sprintf( '%s Finished', $callback ) ); } } else { $logger->notice( sprintf( 'Could not find %s callback', $callback ) ); } return $result ? $item : false; } /** * Schedule cron healthcheck. * * @param array $schedules Schedules. * @return array */ public function schedule_cron_healthcheck( $schedules ) { $interval = apply_filters( $this->identifier . '_cron_interval', 5 ); // Adds every 5 minutes to the existing schedules. $schedules[ $this->identifier . '_cron_interval' ] = array( 'interval' => MINUTE_IN_SECONDS * $interval, /* translators: %d: interval */ 'display' => sprintf( __( 'Every %d minutes', 'elementor' ), $interval ), ); return $schedules; } /** * See if the batch limit has been exceeded. * * @return bool */ public function is_memory_exceeded() { return $this->memory_exceeded(); } /** * Delete all batches. * * @return self */ public function delete_all_batches() { global $wpdb; $table = $wpdb->options; $column = 'option_name'; if ( is_multisite() ) { $table = $wpdb->sitemeta; $column = 'meta_key'; } $key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%'; $wpdb->query( $wpdb->prepare( "DELETE FROM {$table} WHERE {$column} LIKE %s", $key ) ); // @codingStandardsIgnoreLine. return $this; } /** * Kill process. * * Stop processing queue items, clear cronjob and delete all batches. */ public function kill_process() { if ( ! $this->is_queue_empty() ) { $this->delete_all_batches(); wp_clear_scheduled_hook( $this->cron_hook_identifier ); } } public function set_current_item( $item ) { $this->current_item = $item; } protected function format_callback_log( $item ) { return implode( '::', (array) $item['callback'] ); } /** * @var \Elementor\Core\Base\Background_Task_Manager */ protected $manager; public function __construct( $manager ) { $this->manager = $manager; // Uses unique prefix per blog so each blog has separate queue. $this->prefix = 'elementor_' . get_current_blog_id(); $this->action = $this->manager->get_action(); parent::__construct(); } } core/base/base-object.php000066600000005540152142641170011310 0ustar00ensure_settings(); return self::get_items( $this->settings, $setting ); } /** * Set settings. * * @since 2.3.0 * @access public * * @param array|string $key If key is an array, the settings are overwritten by that array. Otherwise, the * settings of the key will be set to the given `$value` param. * * @param mixed $value Optional. Default is null. */ final public function set_settings( $key, $value = null ) { $this->ensure_settings(); if ( is_array( $key ) ) { $this->settings = $key; } else { $this->settings[ $key ] = $value; } } /** * Delete setting. * * Deletes the settings array or a specific key of the settings array if `$key` is specified. * @since 2.3.0 * @access public * * @param string $key Optional. Default is null. */ public function delete_setting( $key = null ) { if ( $key ) { unset( $this->settings[ $key ] ); } else { $this->settings = []; } } /** * Get items. * * Utility method that receives an array with a needle and returns all the * items that match the needle. If needle is not defined the entire haystack * will be returned. * * @since 2.3.0 * @access protected * @static * * @param array $haystack An array of items. * @param string $needle Optional. Needle. Default is null. * * @return mixed The whole haystack or the needle from the haystack when requested. */ final protected static function get_items( array $haystack, $needle = null ) { if ( $needle ) { return isset( $haystack[ $needle ] ) ? $haystack[ $needle ] : null; } return $haystack; } /** * Get init settings. * * Used to define the default/initial settings of the object. Inheriting classes may implement this method to define * their own default/initial settings. * * @since 2.3.0 * @access protected * * @return array */ protected function get_init_settings() { return []; } /** * Ensure settings. * * Ensures that the `$settings` member is initialized * * @since 2.3.0 * @access private */ private function ensure_settings() { if ( null === $this->settings ) { $this->settings = $this->get_init_settings(); } } } core/base/module.php000066600000013767152142641170010431 0ustar00reflection ) { $this->reflection = new \ReflectionClass( $this ); } return $this->reflection; } /** * Add module component. * * Add new component to the current module. * * @since 1.7.0 * @access public * * @param string $id Component ID. * @param mixed $instance An instance of the component. */ public function add_component( $id, $instance ) { $this->components[ $id ] = $instance; } /** * @since 2.3.0 * @access public * @return Module[] */ public function get_components() { return $this->components; } /** * Get module component. * * Retrieve the module component. * * @since 1.7.0 * @access public * * @param string $id Component ID. * * @return mixed An instance of the component, or `false` if the component * doesn't exist. */ public function get_component( $id ) { if ( isset( $this->components[ $id ] ) ) { return $this->components[ $id ]; } return false; } /** * Get assets url. * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $file_extension * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * * @return string */ final protected function get_assets_url( $file_name, $file_extension, $relative_url = null, $add_min_suffix = 'default' ) { static $is_test_mode = null; if ( null === $is_test_mode ) { $is_test_mode = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS; } if ( ! $relative_url ) { $relative_url = $this->get_assets_relative_url() . $file_extension . '/'; } $url = $this->get_assets_base_url() . $relative_url . $file_name; if ( 'default' === $add_min_suffix ) { $add_min_suffix = ! $is_test_mode; } if ( $add_min_suffix ) { $url .= '.min'; } return $url . '.' . $file_extension; } /** * Get js assets url * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * * @return string */ final protected function get_js_assets_url( $file_name, $relative_url = null, $add_min_suffix = 'default' ) { return $this->get_assets_url( $file_name, 'js', $relative_url, $add_min_suffix ); } /** * Get css assets url * * @since 2.3.0 * @access protected * * @param string $file_name * @param string $relative_url Optional. Default is null. * @param string $add_min_suffix Optional. Default is 'default'. * @param bool $add_direction_suffix Optional. Default is `false` * * @return string */ final protected function get_css_assets_url( $file_name, $relative_url = null, $add_min_suffix = 'default', $add_direction_suffix = false ) { static $direction_suffix = null; if ( ! $direction_suffix ) { $direction_suffix = is_rtl() ? '-rtl' : ''; } if ( $add_direction_suffix ) { $file_name .= $direction_suffix; } return $this->get_assets_url( $file_name, 'css', $relative_url, $add_min_suffix ); } /** * Get assets base url * * @since 2.6.0 * @access protected * * @return string */ protected function get_assets_base_url() { return ELEMENTOR_URL; } /** * Get assets relative url * * @since 2.3.0 * @access protected * * @return string */ protected function get_assets_relative_url() { return 'assets/'; } } core/base/document.php000066600000070403152142641170010750 0ustar00elements_manager->get_categories(); } /** * Get properties. * * Retrieve the document properties. * * @since 2.0.0 * @access public * @static * * @return array Document properties. */ public static function get_properties() { return [ 'has_elements' => true, 'is_editable' => true, 'edit_capability' => '', 'show_in_finder' => true, 'show_on_admin_bar' => true, 'support_kit' => false, ]; } /** * @since 2.1.0 * @access public * @static */ public static function get_editor_panel_config() { return [ 'title' => static::get_title(), // JS Container title. 'widgets_settings' => [], 'elements_categories' => static::get_editor_panel_categories(), 'default_route' => 'panel/elements/categories', 'has_elements' => static::get_property( 'has_elements' ), 'support_kit' => static::get_property( 'support_kit' ), 'messages' => [ /* translators: %s: the document title. */ 'publish_notification' => sprintf( __( 'Hurray! Your %s is live.', 'elementor' ), static::get_title() ), ], ]; } /** * Get element title. * * Retrieve the element title. * * @since 2.0.0 * @access public * @static * * @return string Element title. */ public static function get_title() { return __( 'Document', 'elementor' ); } /** * Get property. * * Retrieve the document property. * * @since 2.0.0 * @access public * @static * * @param string $key The property key. * * @return mixed The property value. */ public static function get_property( $key ) { $id = static::get_class_full_name(); if ( ! isset( self::$properties[ $id ] ) ) { self::$properties[ $id ] = static::get_properties(); } return self::get_items( self::$properties[ $id ], $key ); } /** * @since 2.0.0 * @access public * @static */ public static function get_class_full_name() { return get_called_class(); } /** * @since 2.0.0 * @access public */ public function get_unique_name() { return $this->get_name() . '-' . $this->post->ID; } /** * @since 2.3.0 * @access public */ public function get_post_type_title() { $post_type_object = get_post_type_object( $this->post->post_type ); return $post_type_object->labels->singular_name; } /** * @since 2.0.12 * @deprecated 2.4.0 Use `Document::get_remote_library_config()` instead * @access public */ public function get_remote_library_type() { _deprecated_function( __METHOD__, '2.4.0', __CLASS__ . '::get_remote_library_config()' ); } /** * @since 2.0.0 * @access public */ public function get_main_id() { if ( ! $this->main_id ) { $post_id = $this->post->ID; $parent_post_id = wp_is_post_revision( $post_id ); if ( $parent_post_id ) { $post_id = $parent_post_id; } $this->main_id = $post_id; } return $this->main_id; } /** * @since 2.0.0 * @access public * * @param $data * * @throws \Exception If the widget was not found. * * @return string */ public function render_element( $data ) { // Start buffering ob_start(); /** @var Widget_Base $widget */ $widget = Plugin::$instance->elements_manager->create_element_instance( $data ); if ( ! $widget ) { throw new \Exception( 'Widget not found.' ); } $widget->render_content(); $render_html = ob_get_clean(); return $render_html; } /** * @since 2.0.0 * @access public */ public function get_main_post() { return get_post( $this->get_main_id() ); } /** * @since 2.0.6 * @deprecated 2.4.0 Use `Document::get_container_attributes()` instead * @access public */ public function get_container_classes() { _deprecated_function( __METHOD__, '2.4.0', __CLASS__ . '::get_container_attributes()' ); return ''; } public function get_container_attributes() { $id = $this->get_main_id(); $attributes = [ 'data-elementor-type' => $this->get_name(), 'data-elementor-id' => $id, 'class' => 'elementor elementor-' . $id, ]; $version_meta = $this->get_main_meta( '_elementor_version' ); if ( version_compare( $version_meta, '2.5.0', '<' ) ) { $attributes['class'] .= ' elementor-bc-flex-widget'; } if ( Plugin::$instance->preview->is_preview() ) { $attributes['data-elementor-title'] = static::get_title(); } else { $attributes['data-elementor-settings'] = wp_json_encode( $this->get_frontend_settings() ); } return $attributes; } /** * @since 2.0.0 * @access public */ public function get_wp_preview_url() { $main_post_id = $this->get_main_id(); $document = $this; // Ajax request from editor. if ( ! empty( $_POST['initial_document_id'] ) ) { $document = Plugin::$instance->documents->get( $_POST['initial_document_id'] ); } $url = get_preview_post_link( $document->get_main_id(), [ 'preview_id' => $main_post_id, 'preview_nonce' => wp_create_nonce( 'post_preview_' . $main_post_id ), ] ); /** * Document "WordPress preview" URL. * * Filters the WordPress preview URL. * * @since 2.0.0 * * @param string $url WordPress preview URL. * @param Document $this The document instance. */ $url = apply_filters( 'elementor/document/urls/wp_preview', $url, $this ); return $url; } /** * @since 2.0.0 * @access public */ public function get_exit_to_dashboard_url() { $url = get_edit_post_link( $this->get_main_id(), 'raw' ); /** * Document "exit to dashboard" URL. * * Filters the "Exit To Dashboard" URL. * * @since 2.0.0 * * @param string $url The exit URL * @param Document $this The document instance. */ $url = apply_filters( 'elementor/document/urls/exit_to_dashboard', $url, $this ); return $url; } /** * Get auto-saved post revision. * * Retrieve the auto-saved post revision that is newer than current post. * * @since 2.0.0 * @access public * * * @return bool|Document */ public function get_newer_autosave() { $autosave = $this->get_autosave(); // Detect if there exists an autosave newer than the post. if ( $autosave && mysql2date( 'U', $autosave->get_post()->post_modified_gmt, false ) > mysql2date( 'U', $this->post->post_modified_gmt, false ) ) { return $autosave; } return false; } /** * @since 2.0.0 * @access public */ public function is_autosave() { return wp_is_post_autosave( $this->post->ID ); } /** * @since 2.0.0 * @access public * * @param int $user_id * @param bool $create * * @return bool|Document */ public function get_autosave( $user_id = 0, $create = false ) { if ( ! $user_id ) { $user_id = get_current_user_id(); } $autosave_id = $this->get_autosave_id( $user_id ); if ( $autosave_id ) { $document = Plugin::$instance->documents->get( $autosave_id ); } elseif ( $create ) { $autosave_id = wp_create_post_autosave( [ 'post_ID' => $this->post->ID, 'post_type' => $this->post->post_type, 'post_title' => $this->post->post_title, 'post_excerpt' => $this->post->post_excerpt, // Hack to cause $autosave_is_different=true in `wp_create_post_autosave`. 'post_content' => '', 'post_modified' => current_time( 'mysql' ), ] ); Plugin::$instance->db->copy_elementor_meta( $this->post->ID, $autosave_id ); $document = Plugin::$instance->documents->get( $autosave_id ); $document->save_template_type(); } else { $document = false; } return $document; } /** * Add/Remove edit link in dashboard. * * Add or remove an edit link to the post/page action links on the post/pages list table. * * Fired by `post_row_actions` and `page_row_actions` filters. * * @access public * * @param array $actions An array of row action links. * * @return array An updated array of row action links. */ public function filter_admin_row_actions( $actions ) { if ( $this->is_built_with_elementor() && $this->is_editable_by_current_user() ) { $actions['edit_with_elementor'] = sprintf( '%2$s', $this->get_edit_url(), __( 'Edit with Elementor', 'elementor' ) ); } return $actions; } /** * @since 2.0.0 * @access public */ public function is_editable_by_current_user() { $edit_capability = static::get_property( 'edit_capability' ); if ( $edit_capability && ! current_user_can( $edit_capability ) ) { return false; } return self::get_property( 'is_editable' ) && User::is_current_user_can_edit( $this->get_main_id() ); } /** * @since 2.9.0 * @access protected */ protected function get_initial_config() { // Get document data *after* the scripts hook - so plugins can run compatibility before get data, but *before* enqueue the editor script - so elements can enqueue their own scripts that depended in editor script. $locked_user = Plugin::$instance->editor->get_locked_user( $this->get_main_id() ); if ( $locked_user ) { $locked_user = $locked_user->display_name; } $post_type_object = get_post_type_object( $this->get_main_post()->post_type ); $settings = SettingsManager::get_settings_managers_config(); $config = [ 'id' => $this->get_main_id(), 'type' => $this->get_name(), 'version' => $this->get_main_meta( '_elementor_version' ), 'settings' => $settings['page'], 'remoteLibrary' => $this->get_remote_library_config(), 'last_edited' => $this->get_last_edited(), 'panel' => static::get_editor_panel_config(), 'container' => 'body', 'post_type_title' => $this->get_post_type_title(), 'user' => [ 'can_publish' => current_user_can( $post_type_object->cap->publish_posts ), // Deprecated config since 2.9.0. 'locked' => $locked_user, ], 'urls' => [ 'exit_to_dashboard' => $this->get_exit_to_dashboard_url(), 'preview' => $this->get_preview_url(), 'wp_preview' => $this->get_wp_preview_url(), 'permalink' => $this->get_permalink(), 'have_a_look' => $this->get_have_a_look_url(), ], ]; if ( static::get_property( 'has_elements' ) ) { $config['elements'] = $this->get_elements_raw_data( null, true ); $config['widgets'] = Plugin::$instance->widgets_manager->get_widget_types_config(); } $additional_config = apply_filters( 'elementor/document/config', [], $this->get_main_id() ); if ( ! empty( $additional_config ) ) { $config = array_replace_recursive( $config, $additional_config ); } return $config; } /** * @since 2.0.0 * @access protected */ protected function _register_controls() { $this->register_document_controls(); /** * Register document controls. * * Fires after Elementor registers the document controls. * * @since 2.0.0 * * @param Document $this The document instance. */ do_action( 'elementor/documents/register_controls', $this ); } /** * @since 2.0.0 * @access public * * @param $data * * @return bool */ public function save( $data ) { if ( ! $this->is_editable_by_current_user() ) { return false; } /** * Before document save. * * Fires when document save starts on Elementor. * * @since 2.5.12 * * @param \Elementor\Core\Base\Document $this The current document. * @param $data. */ do_action( 'elementor/document/before_save', $this, $data ); if ( ! current_user_can( 'unfiltered_html' ) ) { $data = wp_kses_post_deep( $data ); } if ( ! empty( $data['settings'] ) ) { if ( isset( $data['settings']['post_status'] ) && DB::STATUS_AUTOSAVE === $data['settings']['post_status'] ) { if ( ! defined( 'DOING_AUTOSAVE' ) ) { define( 'DOING_AUTOSAVE', true ); } } $this->save_settings( $data['settings'] ); // Refresh post after save settings. $this->post = get_post( $this->post->ID ); } // Don't check is_empty, because an empty array should be saved. if ( isset( $data['elements'] ) && is_array( $data['elements'] ) ) { $this->save_elements( $data['elements'] ); } $this->save_template_type(); $this->save_version(); // Remove Post CSS $post_css = Post_CSS::create( $this->post->ID ); $post_css->delete(); /** * After document save. * * Fires when document save is complete. * * @since 2.5.12 * * @param \Elementor\Core\Base\Document $this The current document. * @param $data. */ do_action( 'elementor/document/after_save', $this, $data ); return true; } /** * Is built with Elementor. * * Check whether the post was built with Elementor. * * @since 2.0.0 * @access public * * @return bool Whether the post was built with Elementor. */ public function is_built_with_elementor() { return ! ! get_post_meta( $this->post->ID, '_elementor_edit_mode', true ); } /** * @since 2.0.0 * @access public * @static * * @return mixed */ public function get_edit_url() { $url = add_query_arg( [ 'post' => $this->get_main_id(), 'action' => 'elementor', ], admin_url( 'post.php' ) ); /** * Document edit url. * * Filters the document edit url. * * @since 2.0.0 * * @param string $url The edit url. * @param Document $this The document instance. */ $url = apply_filters( 'elementor/document/urls/edit', $url, $this ); return $url; } /** * @since 2.0.0 * @access public */ public function get_preview_url() { /** * Use a static var - to avoid change the `ver` parameter on every call. */ static $url; if ( empty( $url ) ) { add_filter( 'pre_option_permalink_structure', '__return_empty_string' ); $url = set_url_scheme( add_query_arg( [ 'elementor-preview' => $this->get_main_id(), 'ver' => time(), ], $this->get_permalink() ) ); remove_filter( 'pre_option_permalink_structure', '__return_empty_string' ); /** * Document preview URL. * * Filters the document preview URL. * * @since 2.0.0 * * @param string $url The preview URL. * @param Document $this The document instance. */ $url = apply_filters( 'elementor/document/urls/preview', $url, $this ); } return $url; } /** * @since 2.0.0 * @access public * * @param string $key * * @return array */ public function get_json_meta( $key ) { $meta = get_post_meta( $this->post->ID, $key, true ); if ( is_string( $meta ) && ! empty( $meta ) ) { $meta = json_decode( $meta, true ); } if ( empty( $meta ) ) { $meta = []; } return $meta; } /** * @since 2.0.0 * @access public * * @param null $data * @param bool $with_html_content * * @return array */ public function get_elements_raw_data( $data = null, $with_html_content = false ) { if ( ! static::get_property( 'has_elements' ) ) { return []; } if ( is_null( $data ) ) { $data = $this->get_elements_data(); } // Change the current documents, so widgets can use `documents->get_current` and other post data Plugin::$instance->documents->switch_to_document( $this ); $editor_data = []; foreach ( $data as $element_data ) { $element = Plugin::$instance->elements_manager->create_element_instance( $element_data ); if ( ! $element ) { continue; } $editor_data[] = $element->get_raw_data( $with_html_content ); } // End foreach(). Plugin::$instance->documents->restore_document(); return $editor_data; } /** * @since 2.0.0 * @access public * * @param string $status * * @return array */ public function get_elements_data( $status = DB::STATUS_PUBLISH ) { $elements = $this->get_json_meta( '_elementor_data' ); if ( DB::STATUS_DRAFT === $status ) { $autosave = $this->get_newer_autosave(); if ( is_object( $autosave ) ) { $autosave_elements = Plugin::$instance->documents ->get( $autosave->get_post()->ID ) ->get_json_meta( '_elementor_data' ); } } if ( Plugin::$instance->editor->is_edit_mode() ) { if ( empty( $elements ) && empty( $autosave_elements ) ) { // Convert to Elementor. $elements = $this->convert_to_elementor(); if ( $this->is_autosave() ) { Plugin::$instance->db->copy_elementor_meta( $this->post->post_parent, $this->post->ID ); } } } if ( ! empty( $autosave_elements ) ) { $elements = $autosave_elements; } return $elements; } /** * @since 2.3.0 * @access public */ public function convert_to_elementor() { $this->save( [] ); if ( empty( $this->post->post_content ) ) { return []; } // Check if it's only a shortcode. preg_match_all( '/' . get_shortcode_regex() . '/', $this->post->post_content, $matches, PREG_SET_ORDER ); if ( ! empty( $matches ) ) { foreach ( $matches as $shortcode ) { if ( trim( $this->post->post_content ) === $shortcode[0] ) { $widget_type = Plugin::$instance->widgets_manager->get_widget_types( 'shortcode' ); $settings = [ 'shortcode' => $this->post->post_content, ]; break; } } } if ( empty( $widget_type ) ) { $widget_type = Plugin::$instance->widgets_manager->get_widget_types( 'text-editor' ); $settings = [ 'editor' => $this->post->post_content, ]; } // TODO: Better coding to start template for editor return [ [ 'id' => Utils::generate_random_string(), 'elType' => 'section', 'elements' => [ [ 'id' => Utils::generate_random_string(), 'elType' => 'column', 'elements' => [ [ 'id' => Utils::generate_random_string(), 'elType' => $widget_type::get_type(), 'widgetType' => $widget_type->get_name(), 'settings' => $settings, ], ], ], ], ], ]; } /** * @since 2.1.3 * @access public */ public function print_elements_with_wrapper( $elements_data = null ) { if ( ! $elements_data ) { $elements_data = $this->get_elements_data(); } ?>
get_container_attributes() ); ?>>
print_elements( $elements_data ); ?>
sprintf( __( '%s Settings', 'elementor' ), static::get_title() ), ]; } /** * @since 2.0.0 * @access public */ public function get_post() { return $this->post; } /** * @since 2.0.0 * @access public */ public function get_permalink() { return get_permalink( $this->get_main_id() ); } /** * @since 2.0.8 * @access public */ public function get_content( $with_css = false ) { return Plugin::$instance->frontend->get_builder_content( $this->post->ID, $with_css ); } /** * @since 2.0.0 * @access public */ public function delete() { if ( 'revision' === $this->post->post_type ) { $deleted = wp_delete_post_revision( $this->post ); } else { $deleted = wp_delete_post( $this->post->ID ); } return $deleted && ! is_wp_error( $deleted ); } /** * Save editor elements. * * Save data from the editor to the database. * * @since 2.0.0 * @access protected * * @param array $elements */ protected function save_elements( $elements ) { $editor_data = $this->get_elements_raw_data( $elements ); // We need the `wp_slash` in order to avoid the unslashing during the `update_post_meta` $json_value = wp_slash( wp_json_encode( $editor_data ) ); // Don't use `update_post_meta` that can't handle `revision` post type $is_meta_updated = update_metadata( 'post', $this->post->ID, '_elementor_data', $json_value ); /** * Before saving data. * * Fires before Elementor saves data to the database. * * @since 1.0.0 * * @param string $status Post status. * @param int|bool $is_meta_updated Meta ID if the key didn't exist, true on successful update, false on failure. */ do_action( 'elementor/db/before_save', $this->post->post_status, $is_meta_updated ); Plugin::$instance->db->save_plain_text( $this->post->ID ); /** * After saving data. * * Fires after Elementor saves data to the database. * * @since 1.0.0 * * @param int $post_id The ID of the post. * @param array $editor_data Sanitize posted data. */ do_action( 'elementor/editor/after_save', $this->post->ID, $editor_data ); } /** * @since 2.0.0 * @access public * * @param int $user_id Optional. User ID. Default value is `0`. * * @return bool|int */ public function get_autosave_id( $user_id = 0 ) { if ( ! $user_id ) { $user_id = get_current_user_id(); } $autosave = Utils::get_post_autosave( $this->post->ID, $user_id ); if ( $autosave ) { return $autosave->ID; } return false; } public function save_version() { if ( ! defined( 'IS_ELEMENTOR_UPGRADE' ) ) { // Save per revision. $this->update_meta( '_elementor_version', ELEMENTOR_VERSION ); /** * Document version save. * * Fires when document version is saved on Elementor. * Will not fire during Elementor Upgrade. * * @since 2.5.12 * * @param \Elementor\Core\Base\Document $this The current document. * */ do_action( 'elementor/document/save_version', $this ); } } /** * @since 2.0.0 * @access public * @deprecated 2.2.0 Use `Document::save_template_type()`. */ public function save_type() { _deprecated_function( __METHOD__, '2.2.0', __CLASS__ . '::save_template_type()' ); $this->save_template_type(); } /** * @since 2.3.0 * @access public */ public function save_template_type() { return $this->update_main_meta( self::TYPE_META_KEY, $this->get_name() ); } /** * @since 2.3.0 * @access public */ public function get_template_type() { return $this->get_main_meta( self::TYPE_META_KEY ); } /** * @since 2.0.0 * @access public * * @param string $key Meta data key. * * @return mixed */ public function get_main_meta( $key ) { return get_post_meta( $this->get_main_id(), $key, true ); } /** * @since 2.0.4 * @access public * * @param string $key Meta data key. * @param string $value Meta data value. * * @return bool|int */ public function update_main_meta( $key, $value ) { return update_post_meta( $this->get_main_id(), $key, $value ); } /** * @since 2.0.4 * @access public * * @param string $key Meta data key. * @param string $value Optional. Meta data value. Default is an empty string. * * @return bool */ public function delete_main_meta( $key, $value = '' ) { return delete_post_meta( $this->get_main_id(), $key, $value ); } /** * @since 2.0.0 * @access public * * @param string $key Meta data key. * * @return mixed */ public function get_meta( $key ) { return get_post_meta( $this->post->ID, $key, true ); } /** * @since 2.0.0 * @access public * * @param string $key Meta data key. * @param mixed $value Meta data value. * * @return bool|int */ public function update_meta( $key, $value ) { // Use `update_metadata` in order to work also with revisions. return update_metadata( 'post', $this->post->ID, $key, $value ); } /** * @since 2.0.3 * @access public * * @param string $key Meta data key. * @param string $value Meta data value. * * @return bool */ public function delete_meta( $key, $value = '' ) { // Use `delete_metadata` in order to work also with revisions. return delete_metadata( 'post', $this->post->ID, $key, $value ); } /** * @since 2.0.0 * @access public */ public function get_last_edited() { $post = $this->post; $autosave_post = $this->get_autosave(); if ( $autosave_post ) { $post = $autosave_post->get_post(); } $date = date_i18n( _x( 'M j, H:i', 'revision date format', 'elementor' ), strtotime( $post->post_modified ) ); $display_name = get_the_author_meta( 'display_name', $post->post_author ); if ( $autosave_post || 'revision' === $post->post_type ) { /* translators: 1: Saving date, 2: Author display name */ $last_edited = sprintf( __( 'Draft saved on %1$s by %2$s', 'elementor' ), '', $display_name ); } else { /* translators: 1: Editing date, 2: Author display name */ $last_edited = sprintf( __( 'Last edited on %1$s by %2$s', 'elementor' ), '', $display_name ); } return $last_edited; } /** * @since 2.0.0 * @access public * * @param array $data * * @throws \Exception If the post does not exist. */ public function __construct( array $data = [] ) { if ( $data ) { if ( empty( $data['post_id'] ) ) { $this->post = new \WP_Post( (object) [] ); } else { $this->post = get_post( $data['post_id'] ); if ( ! $this->post ) { throw new \Exception( sprintf( 'Post ID #%s does not exist.', $data['post_id'] ), Exceptions::NOT_FOUND ); } } // Each Control_Stack is based on a unique ID. $data['id'] = $data['post_id']; if ( ! isset( $data['settings'] ) ) { $data['settings'] = []; } $saved_settings = get_post_meta( $this->post->ID, '_elementor_page_settings', true ); if ( ! empty( $saved_settings ) && is_array( $saved_settings ) ) { $data['settings'] += $saved_settings; } } parent::__construct( $data ); } protected function get_remote_library_config() { $config = [ 'type' => 'block', 'default_route' => 'templates/blocks', 'category' => $this->get_name(), 'autoImportSettings' => false, ]; return $config; } /** * @since 2.0.4 * @access protected * * @param $settings */ protected function save_settings( $settings ) { $page_settings_manager = SettingsManager::get_settings_managers( 'page' ); $page_settings_manager->ajax_before_save_settings( $settings, $this->post->ID ); $page_settings_manager->save_settings( $settings, $this->post->ID ); } /** * @since 2.1.3 * @access protected */ protected function print_elements( $elements_data ) { foreach ( $elements_data as $element_data ) { $element = Plugin::$instance->elements_manager->create_element_instance( $element_data ); if ( ! $element ) { continue; } $element->print_element(); } } protected function register_document_controls() { $this->start_controls_section( 'document_settings', [ 'label' => __( 'General Settings', 'elementor' ), 'tab' => Controls_Manager::TAB_SETTINGS, ] ); $this->add_control( 'post_title', [ 'label' => __( 'Title', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => $this->post->post_title, 'label_block' => true, 'separator' => 'none', ] ); $post_type_object = get_post_type_object( $this->post->post_type ); $can_publish = $post_type_object && current_user_can( $post_type_object->cap->publish_posts ); $is_published = DB::STATUS_PUBLISH === $this->post->post_status || DB::STATUS_PRIVATE === $this->post->post_status; if ( $is_published || $can_publish || ! Plugin::$instance->editor->is_edit_mode() ) { $statuses = $this->get_post_statuses(); if ( 'future' === $this->get_main_post()->post_status ) { $statuses['future'] = __( 'Future', 'elementor' ); } $this->add_control( 'post_status', [ 'label' => __( 'Status', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => $this->get_main_post()->post_status, 'options' => $statuses, ] ); } $this->end_controls_section(); } protected function get_post_statuses() { return get_post_statuses(); } protected function get_have_a_look_url() { return $this->get_permalink(); } } core/base/background-task-manager.php000066600000004744152142641170013626 0ustar00logger->get_logger(); $logger->info( $this->get_plugin_name() . '::' . $this->get_action() . ' Started' ); } public function on_runner_complete( $did_tasks = false ) { $logger = Plugin::$instance->logger->get_logger(); $logger->info( $this->get_plugin_name() . '::' . $this->get_action() . ' Completed' ); } public function get_task_runner() { if ( empty( $this->task_runner ) ) { $class_name = $this->get_task_runner_class(); $this->task_runner = new $class_name( $this ); } return $this->task_runner; } // TODO: Replace with a db settings system. protected function add_flag( $flag ) { add_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag, 1 ); } protected function get_flag( $flag ) { return get_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag ); } protected function delete_flag( $flag ) { delete_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag ); } protected function get_start_action_url() { return wp_nonce_url( add_query_arg( $this->get_action(), 'run' ), $this->get_action() . 'run' ); } protected function get_continue_action_url() { return wp_nonce_url( add_query_arg( $this->get_action(), 'continue' ), $this->get_action() . 'continue' ); } private function continue_run() { $runner = $this->get_task_runner(); $runner->continue_run(); } public function __construct() { if ( empty( $_GET[ $this->get_action() ] ) ) { return; } Plugin::$instance->init_common(); if ( 'run' === $_GET[ $this->get_action() ] && check_admin_referer( $this->get_action() . 'run' ) ) { $this->start_run(); } if ( 'continue' === $_GET[ $this->get_action() ] && check_admin_referer( $this->get_action() . 'continue' ) ) { $this->continue_run(); } wp_safe_redirect( remove_query_arg( [ $this->get_action(), '_wpnonce' ] ) ); die; } } modules/history/module.php000066600000004525152142641170011730 0ustar00 [ 'history' => __( 'History', 'elementor' ), 'template' => __( 'Template', 'elementor' ), 'added' => __( 'Added', 'elementor' ), 'removed' => __( 'Removed', 'elementor' ), 'edited' => __( 'Edited', 'elementor' ), 'moved' => __( 'Moved', 'elementor' ), 'pasted' => __( 'Pasted', 'elementor' ), 'editing_started' => __( 'Editing Started', 'elementor' ), 'style_pasted' => __( 'Style Pasted', 'elementor' ), 'style_reset' => __( 'Style Reset', 'elementor' ), 'settings_reset' => __( 'Settings Reset', 'elementor' ), 'enabled' => __( 'Enabled', 'elementor' ), 'disabled' => __( 'Disabled', 'elementor' ), 'all_content' => __( 'All Content', 'elementor' ), 'elements' => __( 'Elements', 'elementor' ), ], ] ); return $settings; } /** * @since 2.3.0 * @access public */ public function add_templates() { Plugin::$instance->common->add_template( __DIR__ . '/views/history-panel-template.php' ); Plugin::$instance->common->add_template( __DIR__ . '/views/revisions-panel-template.php' ); } /** * History module constructor. * * Initializing Elementor history module. * * @since 1.7.0 * @access public */ public function __construct() { add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] ); add_action( 'elementor/editor/init', [ $this, 'add_templates' ] ); } } modules/history/views/revisions-panel-template.php000066600000005207152142641170016525 0ustar00 modules/history/views/history-panel-template.php000066600000003322152142641170016201 0ustar00 modules/history/revisions-manager.php000066600000025461152142641170014076 0ustar00db->is_built_with_elementor( $post_id ) ) { $post_content .= ''; } return $post_content; } /** * @since 2.0.0 * @access public * @static */ public static function remove_temp_post_content() { global $post; if ( Plugin::$instance->db->is_built_with_elementor( $post->ID ) ) { $post->post_content = str_replace( '', '', $post->post_content ); } } /** * @since 1.7.0 * @access public * @static * * @param int $post_id * @param array $query_args * @param bool $parse_result * * @return array */ public static function get_revisions( $post_id = 0, $query_args = [], $parse_result = true ) { $post = get_post( $post_id ); if ( ! $post || empty( $post->ID ) ) { return []; } $revisions = []; $default_query_args = [ 'posts_per_page' => self::MAX_REVISIONS_TO_DISPLAY, 'meta_key' => '_elementor_data', ]; $query_args = array_merge( $default_query_args, $query_args ); $posts = wp_get_post_revisions( $post->ID, $query_args ); if ( ! wp_revisions_enabled( $post ) ) { $autosave = Utils::get_post_autosave( $post->ID ); if ( $autosave ) { if ( $parse_result ) { array_unshift( $posts, $autosave ); } else { array_unshift( $posts, $autosave->ID ); } } } if ( $parse_result ) { array_unshift( $posts, $post ); } else { array_unshift( $posts, $post->ID ); return $posts; } $current_time = current_time( 'timestamp' ); /** @var \WP_Post $revision */ foreach ( $posts as $revision ) { $date = date_i18n( _x( 'M j @ H:i', 'revision date format', 'elementor' ), strtotime( $revision->post_modified ) ); $human_time = human_time_diff( strtotime( $revision->post_modified ), $current_time ); if ( $revision->ID === $post->ID ) { $type = 'current'; } elseif ( false !== strpos( $revision->post_name, 'autosave' ) ) { $type = 'autosave'; } else { $type = 'revision'; } if ( ! isset( self::$authors[ $revision->post_author ] ) ) { self::$authors[ $revision->post_author ] = [ 'avatar' => get_avatar( $revision->post_author, 22 ), 'display_name' => get_the_author_meta( 'display_name', $revision->post_author ), ]; } $revisions[] = [ 'id' => $revision->ID, 'author' => self::$authors[ $revision->post_author ]['display_name'], 'timestamp' => strtotime( $revision->post_modified ), 'date' => sprintf( /* translators: 1: Human readable time difference, 2: Date */ __( '%1$s ago (%2$s)', 'elementor' ), $human_time, $date ), 'type' => $type, 'gravatar' => self::$authors[ $revision->post_author ]['avatar'], ]; } return $revisions; } /** * @since 1.9.2 * @access public * @static */ public static function update_autosave( $autosave_data ) { self::save_revision( $autosave_data['ID'] ); } /** * @since 1.7.0 * @access public * @static */ public static function save_revision( $revision_id ) { $parent_id = wp_is_post_revision( $revision_id ); if ( $parent_id ) { Plugin::$instance->db->safe_copy_elementor_meta( $parent_id, $revision_id ); } } /** * @since 1.7.0 * @access public * @static */ public static function restore_revision( $parent_id, $revision_id ) { $is_built_with_elementor = Plugin::$instance->db->is_built_with_elementor( $revision_id ); Plugin::$instance->db->set_is_elementor_page( $parent_id, $is_built_with_elementor ); if ( ! $is_built_with_elementor ) { return; } Plugin::$instance->db->copy_elementor_meta( $revision_id, $parent_id ); $post_css = Post_CSS::create( $parent_id ); $post_css->update(); } /** * @since 2.3.0 * @access public * @static * * @param $data * * @return array * @throws \Exception */ public static function ajax_get_revision_data( array $data ) { if ( ! isset( $data['id'] ) ) { throw new \Exception( 'You must set the revision ID.' ); } $revision = Plugin::$instance->documents->get( $data['id'] ); if ( ! $revision ) { throw new \Exception( 'Invalid revision.' ); } if ( ! current_user_can( 'edit_post', $revision->get_id() ) ) { throw new \Exception( __( 'Access denied.', 'elementor' ) ); } $revision_data = [ 'settings' => $revision->get_settings(), 'elements' => $revision->get_elements_data(), ]; return $revision_data; } /** * @since 1.7.0 * @access public * @static */ public static function add_revision_support_for_all_post_types() { $post_types = get_post_types_by_support( 'elementor' ); foreach ( $post_types as $post_type ) { add_post_type_support( $post_type, 'revisions' ); } } /** * @since 2.0.0 * @access public * @static * @param array $return_data * @param Document $document * * @return array */ public static function on_ajax_save_builder_data( $return_data, $document ) { $post_id = $document->get_main_id(); $latest_revisions = self::get_revisions( $post_id, [ 'posts_per_page' => 1, ] ); $all_revision_ids = self::get_revisions( $post_id, [ 'fields' => 'ids', ], false ); // Send revisions data only if has revisions. if ( ! empty( $latest_revisions ) ) { $current_revision_id = self::current_revision_id( $post_id ); $return_data = array_replace_recursive( $return_data, [ 'config' => [ 'document' => [ 'revisions' => [ 'current_id' => $current_revision_id, ], ], ], 'latest_revisions' => $latest_revisions, 'revisions_ids' => $all_revision_ids, ] ); } return $return_data; } /** * @since 1.7.0 * @access public * @static */ public static function db_before_save( $status, $has_changes ) { if ( $has_changes ) { self::handle_revision(); } } public static function document_config( $settings, $post_id ) { $settings['revisions'] = [ 'enabled' => ( $post_id && wp_revisions_enabled( get_post( $post_id ) ) ), 'current_id' => self::current_revision_id( $post_id ), ]; return $settings; } /** * Localize settings. * * Add new localized settings for the revisions manager. * * Fired by `elementor/editor/editor_settings` filter. * * @since 1.7.0 * @access public * @static */ public static function editor_settings( $settings ) { $settings = array_replace_recursive( $settings, [ 'i18n' => [ 'edit_draft' => __( 'Edit Draft', 'elementor' ), 'edit_published' => __( 'Edit Published', 'elementor' ), 'no_revisions_1' => __( 'Revision history lets you save your previous versions of your work, and restore them any time.', 'elementor' ), 'no_revisions_2' => __( 'Start designing your page and you\'ll be able to see the entire revision history here.', 'elementor' ), 'current' => __( 'Current Version', 'elementor' ), 'restore' => __( 'Restore', 'elementor' ), 'restore_auto_saved_data' => __( 'Restore Auto Saved Data', 'elementor' ), 'restore_auto_saved_data_message' => __( 'There is an autosave of this post that is more recent than the version below. You can restore the saved data fron the Revisions panel', 'elementor' ), 'revision' => __( 'Revision', 'elementor' ), 'revision_history' => __( 'Revision History', 'elementor' ), 'revisions_disabled_1' => __( 'It looks like the post revision feature is unavailable in your website.', 'elementor' ), 'revisions_disabled_2' => sprintf( /* translators: %s: Codex URL */ __( 'Learn more about WordPress revisions', 'elementor' ), 'https://codex.wordpress.org/Revisions#Revision_Options' ), ], ] ); return $settings; } public static function ajax_get_revisions() { return self::get_revisions(); } /** * @since 2.3.0 * @access public * @static */ public static function register_ajax_actions( Ajax $ajax ) { $ajax->register_ajax_action( 'get_revisions', [ __CLASS__, 'ajax_get_revisions' ] ); $ajax->register_ajax_action( 'get_revision_data', [ __CLASS__, 'ajax_get_revision_data' ] ); } /** * @since 1.7.0 * @access private * @static */ private static function register_actions() { add_action( 'wp_restore_post_revision', [ __CLASS__, 'restore_revision' ], 10, 2 ); add_action( 'init', [ __CLASS__, 'add_revision_support_for_all_post_types' ], 9999 ); add_filter( 'elementor/editor/localize_settings', [ __CLASS__, 'editor_settings' ] ); add_filter( 'elementor/document/config', [ __CLASS__, 'document_config' ], 10, 2 ); add_action( 'elementor/db/before_save', [ __CLASS__, 'db_before_save' ], 10, 2 ); add_action( '_wp_put_post_revision', [ __CLASS__, 'save_revision' ] ); add_action( 'wp_creating_autosave', [ __CLASS__, 'update_autosave' ] ); add_action( 'elementor/ajax/register_actions', [ __CLASS__, 'register_ajax_actions' ] ); // Hack to avoid delete the auto-save revision in WP editor. add_filter( 'edit_post_content', [ __CLASS__, 'avoid_delete_auto_save' ], 10, 2 ); add_action( 'edit_form_after_title', [ __CLASS__, 'remove_temp_post_content' ] ); if ( wp_doing_ajax() ) { add_filter( 'elementor/documents/ajax_save/return_data', [ __CLASS__, 'on_ajax_save_builder_data' ], 10, 2 ); } } /** * @since 1.9.0 * @access private * @static */ private static function current_revision_id( $post_id ) { $current_revision_id = $post_id; $autosave = Utils::get_post_autosave( $post_id ); if ( is_object( $autosave ) ) { $current_revision_id = $autosave->ID; } return $current_revision_id; } } modules/safe-mode/module.php000066600000036056152142641170012073 0ustar00register_ajax_action( 'enable_safe_mode', [ $this, 'ajax_enable_safe_mode' ] ); $ajax->register_ajax_action( 'disable_safe_mode', [ $this, 'disable_safe_mode' ] ); } /** * @param Tools $tools_page */ public function add_admin_button( $tools_page ) { $tools_page->add_fields( Settings::TAB_GENERAL, 'tools', [ 'safe_mode' => [ 'label' => __( 'Safe Mode', 'elementor' ), 'field_args' => [ 'type' => 'select', 'std' => $this->is_enabled(), 'options' => [ '' => __( 'Disable', 'elementor' ), 'global' => __( 'Enable', 'elementor' ), ], 'desc' => __( 'Safe Mode allows you to troubleshoot issues by only loading the editor, without loading the theme or any other plugin.', 'elementor' ), ], ], ] ); } public function on_update_safe_mode( $value ) { if ( 'yes' === $value || 'global' === $value ) { $this->enable_safe_mode(); } else { $this->disable_safe_mode(); } return $value; } public function ajax_enable_safe_mode( $data ) { // It will run `$this->>update_safe_mode`. update_option( 'elementor_safe_mode', 'yes' ); $document = Plugin::$instance->documents->get( $data['editor_post_id'] ); if ( $document ) { return add_query_arg( 'elementor-mode', 'safe', $document->get_edit_url() ); } return false; } public function enable_safe_mode() { if ( ! current_user_can( 'install_plugins' ) ) { return; } WP_Filesystem(); $this->update_allowed_plugins(); if ( ! is_dir( WPMU_PLUGIN_DIR ) ) { wp_mkdir_p( WPMU_PLUGIN_DIR ); add_option( 'elementor_safe_mode_created_mu_dir', true ); } if ( ! is_dir( WPMU_PLUGIN_DIR ) ) { wp_die( __( 'Cannot enable Safe Mode', 'elementor' ) ); } $results = copy_dir( __DIR__ . '/mu-plugin/', WPMU_PLUGIN_DIR ); if ( is_wp_error( $results ) ) { return; } $token = md5( wp_rand() ); // Only who own this key can use 'elementor-safe-mode'. update_option( self::OPTION_TOKEN, $token ); // Save for later use. setcookie( self::OPTION_TOKEN, $token, time() + HOUR_IN_SECONDS, COOKIEPATH ); } public function disable_safe_mode() { if ( ! current_user_can( 'install_plugins' ) ) { return; } $file_path = WP_CONTENT_DIR . '/mu-plugins/elementor-safe-mode.php'; if ( file_exists( $file_path ) ) { unlink( $file_path ); } if ( get_option( 'elementor_safe_mode_created_mu_dir' ) ) { // It will be removed only if it's empty and don't have other mu-plugins. @rmdir( WPMU_PLUGIN_DIR ); } delete_option( 'elementor_safe_mode' ); delete_option( 'elementor_safe_mode_allowed_plugins' ); delete_option( 'theme_mods_elementor-safe' ); delete_option( 'elementor_safe_mode_created_mu_dir' ); delete_option( self::OPTION_TOKEN ); setcookie( self::OPTION_TOKEN, '', 1 ); } public function filter_preview_url( $url ) { return add_query_arg( 'elementor-mode', 'safe', $url ); } public function filter_template() { return ELEMENTOR_PATH . 'modules/page-templates/templates/canvas.php'; } public function print_safe_mode_css() { ?> print_safe_mode_css(); ?>

  • Click here to troubleshoot', 'elementor' ), self::DOCS_HELPED_URL ); ?>
  • Click here to troubleshoot', 'elementor' ), self::DOCS_DIDNT_HELP_URL ); ?>
read more about this issue.', 'elementor' ), self::DOCS_MU_PLUGINS_URL ); ?>
is_allowed_post_type() ) { return; } echo $this->print_safe_mode_css(); ?> ' . __( 'Disable Safe Mode', 'elementor' ) . ''; return $actions; } public function on_deactivated_plugin( $plugin ) { if ( ELEMENTOR_PLUGIN_BASE === $plugin ) { $this->disable_safe_mode(); return; } $allowed_plugins = get_option( 'elementor_safe_mode_allowed_plugins', [] ); $plugin_key = array_search( $plugin, $allowed_plugins, true ); if ( $plugin_key ) { unset( $allowed_plugins[ $plugin_key ] ); update_option( 'elementor_safe_mode_allowed_plugins', $allowed_plugins ); } } public function update_allowed_plugins() { $allowed_plugins = [ 'elementor' => ELEMENTOR_PLUGIN_BASE, ]; if ( defined( 'ELEMENTOR_PRO_PLUGIN_BASE' ) ) { $allowed_plugins['elementor_pro'] = ELEMENTOR_PRO_PLUGIN_BASE; } if ( defined( 'WC_PLUGIN_BASENAME' ) ) { $allowed_plugins['woocommerce'] = WC_PLUGIN_BASENAME; } update_option( 'elementor_safe_mode_allowed_plugins', $allowed_plugins ); } public function __construct() { if ( current_user_can( 'install_plugins' ) ) { add_action( 'elementor/admin/after_create_settings/elementor-tools', [ $this, 'add_admin_button' ] ); } add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] ); $plugin_file = self::MU_PLUGIN_FILE_NAME; add_filter( "plugin_action_links_{$plugin_file}", [ $this, 'plugin_action_links' ] ); // Use pre_update, in order to catch cases that $value === $old_value and it not updated. add_filter( 'pre_update_option_elementor_safe_mode', [ $this, 'on_update_safe_mode' ], 10, 2 ); add_action( 'elementor/safe_mode/init', [ $this, 'run_safe_mode' ] ); add_action( 'elementor/editor/footer', [ $this, 'print_try_safe_mode' ] ); if ( $this->is_enabled() ) { add_action( 'activated_plugin', [ $this, 'update_allowed_plugins' ] ); add_action( 'deactivated_plugin', [ $this, 'on_deactivated_plugin' ] ); } } private function is_allowed_post_type() { $allowed_post_types = [ 'post', 'page', 'product', Source_Local::CPT, ]; $current_post_type = get_post_type( Plugin::$instance->editor->get_post_id() ); return in_array( $current_post_type, $allowed_post_types ); } } modules/safe-mode/mu-plugin/elementor-safe-mode.php000066600000007311152142641170016343 0ustar00 '' . __( 'Learn More', 'elementor' ) . '', ]; $plugin_meta = array_merge( $plugin_meta, $row_meta ); } return $plugin_meta; } public function __construct() { add_filter( 'plugin_row_meta', [ $this, 'plugin_row_meta' ], 10, 4 ); $enabled_type = $this->is_enabled(); if ( ! $enabled_type || ! $this->is_valid_token() ) { return; } if ( ! $this->is_requested() && 'global' !== $enabled_type ) { return; } if ( ! $this->is_editor() && ! $this->is_editor_preview() && ! $this->is_editor_ajax() ) { return; } $this->add_hooks(); } } new Safe_Mode(); modules/gutenberg/module.php000066600000007043152142641170012207 0ustar00 function( $request_value, $object ) { if ( ! User::is_current_user_can_edit( $object->ID ) ) { return false; } Plugin::$instance->db->set_is_elementor_page( $object->ID, false ); return true; }, ] ); } /** * @since 2.1.0 * @access public */ public function enqueue_assets() { $document = Plugin::$instance->documents->get( get_the_ID() ); if ( ! $document || ! $document->is_editable_by_current_user() ) { return; } $this->is_gutenberg_editor_active = true; $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min'; wp_enqueue_script( 'elementor-gutenberg', ELEMENTOR_ASSETS_URL . 'js/gutenberg' . $suffix . '.js', [ 'jquery' ], ELEMENTOR_VERSION, true ); $elementor_settings = [ 'isElementorMode' => $document->is_built_with_elementor(), 'editLink' => $document->get_edit_url(), ]; Utils::print_js_config( 'elementor-gutenberg', 'ElementorGutenbergSettings', $elementor_settings ); } /** * @since 2.1.0 * @access public */ public function print_admin_js_template() { if ( ! $this->is_gutenberg_editor_active ) { return; } ?> format( 'raw' ); switch ( $item->type ) { case self::LEVEL_WARNING: \WP_CLI::warning( $message ); break; case self::LEVEL_ERROR: \WP_CLI::error( $message, false ); break; default: \WP_CLI::log( $message ); break; } parent::save_log( $item ); } } modules/wp-cli/module.php000066600000002451152142641170011416 0ustar00register_logger( 'cli', 'Elementor\Modules\WpCli\Cli_Logger' ); $logger->set_default_logger( 'cli' ); } public function init_common() { Plugin::$instance->init_common(); } /** * * @since 2.1.0 * @access public */ public function __construct() { add_action( 'cli_init', [ $this, 'init_common' ] ); add_action( 'elementor/loggers/register', [ $this, 'register_cli_logger' ] ); \WP_CLI::add_command( 'elementor', '\Elementor\Modules\WpCli\Command' ); \WP_CLI::add_command( 'elementor update', '\Elementor\Modules\WpCli\Update' ); \WP_CLI::add_command( 'elementor library', '\Elementor\Modules\WpCli\Library' ); } } modules/wp-cli/command.php000066600000006737152142641170011562 0ustar00 $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); Plugin::$instance->files_manager->clear_cache(); \WP_CLI::success( 'Flushed the Elementor CSS Cache for site - ' . get_option( 'home' ) ); restore_current_blog(); } } else { Plugin::$instance->files_manager->clear_cache(); \WP_CLI::success( 'Flushed the Elementor CSS Cache' ); } } /** * Replace old URLs with new URLs in all Elementor pages. * * ## EXAMPLES * * 1. wp elementor replace-urls * - This will replace all URLs with the URL. * * @access public * @alias replace-urls */ public function replace_urls( $args, $assoc_args ) { if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set the `old` URL' ); } if ( empty( $args[1] ) ) { \WP_CLI::error( 'Please set the `new` URL' ); } try { $results = Utils::replace_urls( $args[0], $args[1] ); \WP_CLI::success( $results ); } catch ( \Exception $e ) { \WP_CLI::error( $e->getMessage() ); } } /** * Sync Elementor Library. * * ## EXAMPLES * * 1. wp elementor sync-library * - This will sync the library with Elementor cloud library. * * @since 2.1.0 * @access public * @alias sync-library */ public function sync_library( $args, $assoc_args ) { // TODO: // \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library sync' ); $data = Api::get_library_data( true ); if ( empty( $data ) ) { \WP_CLI::error( 'Cannot sync library.' ); } \WP_CLI::success( 'Library has been synced.' ); } /** * Import template files to the Library. * * ## EXAMPLES * * 1. wp elementor import-library * - This will import a file or a zip of multiple files to the library. * * @since 2.1.0 * @access public * @alias import-library */ public function import_library( $args, $assoc_args ) { // TODO: // \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library import' ); if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set file path.' ); } /** @var Source_Local $source */ $source = Plugin::$instance->templates_manager->get_source( 'local' ); $imported_items = $source->import_template( basename( $args[0] ), $args[0] ); if ( is_wp_error( $imported_items ) ) { \WP_CLI::error( $imported_items->get_error_message() ); } \WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' ); } } modules/wp-cli/update.php000066600000005154152142641170011416 0ustar00 $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); \WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) ); $this->do_db_upgrade( $assoc_args ); \WP_CLI::success( 'Done! - ' . get_option( 'home' ) ); restore_current_blog(); } } else { $this->do_db_upgrade( $assoc_args ); } } protected function get_update_db_manager_class() { return '\Elementor\Core\Upgrade\Manager'; } protected function do_db_upgrade( $assoc_args ) { $manager_class = $this->get_update_db_manager_class(); /** @var \Elementor\Core\Upgrade\Manager $manager */ $manager = new $manager_class(); $updater = $manager->get_task_runner(); if ( $updater->is_process_locked() && empty( $assoc_args['force'] ) ) { \WP_CLI::warning( 'Oops! Process is already running. Use --force to force run.' ); return; } if ( ! $manager->should_upgrade() ) { \WP_CLI::success( 'The DB is already updated!' ); return; } $callbacks = $manager->get_upgrade_callbacks(); $did_tasks = false; if ( ! empty( $callbacks ) ) { Plugin::$instance->logger->get_logger()->info( 'Update DB has been started', [ 'meta' => [ 'plugin' => $manager->get_plugin_label(), 'from' => $manager->get_current_version(), 'to' => $manager->get_new_version(), ], ] ); $updater->handle_immediately( $callbacks ); $did_tasks = true; } $manager->on_runner_complete( $did_tasks ); \WP_CLI::success( count( $callbacks ) . ' updates(s) has been applied.' ); } } modules/wp-cli/library.php000066600000010523152142641170011574 0ustar00 $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); \WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) ); $this->do_sync( isset( $assoc_args['force'] ) ); \WP_CLI::success( 'Done! - ' . get_option( 'home' ) ); restore_current_blog(); } } else { $this->do_sync( isset( $assoc_args['force'] ) ); \WP_CLI::success( 'Done!' ); } } /** * Import template files to the Library. * * ## EXAMPLES * * 1. wp elementor library import * - This will import a file or a zip of multiple files to the library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function import( $args ) { if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set file path.' ); } $file = $args[0]; /** @var Source_Local $source */ $source = Plugin::$instance->templates_manager->get_source( 'local' ); $imported_items = $source->import_template( basename( $file ), $file ); if ( is_wp_error( $imported_items ) ) { \WP_CLI::error( $imported_items->get_error_message() ); } \WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' ); } /** * Connect site to Elementor Library. * (Network is not supported) * * --user * The user to connect * * --token * A connect token from Elementor Account Dashboard. * * ## EXAMPLES * * 1. wp elementor library connect --user=admin --token= * - This will connect the admin to Elementor library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function connect( $args, $assoc_args ) { if ( ! get_current_user_id() ) { \WP_CLI::error( 'Please set user to connect (--user=).' ); } if ( empty( $assoc_args['token'] ) ) { \WP_CLI::error( 'Please set connect token.' ); } $_REQUEST['mode'] = 'cli'; $_REQUEST['token'] = $assoc_args['token']; $app = $this->get_library_app(); $app->action_authorize(); $app->action_get_token(); } /** * Disconnect site from Elementor Library. * * --user * The user to disconnect * * ## EXAMPLES * * 1. wp elementor library disconnect --user=admin * - This will disconnect the admin from Elementor library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function disconnect() { if ( ! get_current_user_id() ) { \WP_CLI::error( 'Please set user to connect (--user=).' ); } $_REQUEST['mode'] = 'cli'; $this->get_library_app()->action_disconnect(); } private function do_sync() { $data = Api::get_library_data( true ); if ( empty( $data ) ) { \WP_CLI::error( 'Cannot sync library.' ); } } /** * @return \Elementor\Core\Common\Modules\Connect\Apps\Library */ private function get_library_app() { $connect = Plugin::$instance->common->get_component( 'connect' ); $app = $connect->get_app( 'library' ); // Before init. if ( ! $app ) { $connect->init(); $app = $connect->get_app( 'library' ); } return $app; } } modules/usage/module.php000066600000036462152142641170011340 0ustar00 $elements ) { $doc_class = Plugin::$instance->documents->get_document_type( $doc_type ); if ( 'html' === $format && $doc_class ) { $doc_title = $doc_class::get_title(); } else { $doc_title = $doc_type; } $doc_count = $this->get_doc_type_count( $doc_class, $doc_type ); $tab_group = $doc_class::get_property( 'admin_tab_group' ); if ( 'html' === $format && $tab_group ) { $doc_title = ucwords( $tab_group ) . ' - ' . $doc_title; } // Replace element type with element title. foreach ( $elements as $element_type => $data ) { unset( $elements[ $element_type ] ); if ( in_array( $element_type, [ 'section', 'column' ], true ) ) { continue; } $widget_instance = Plugin::$instance->widgets_manager->get_widget_types( $element_type ); if ( 'html' === $format && $widget_instance ) { $widget_title = $widget_instance->get_title(); } else { $widget_title = $element_type; } $elements[ $widget_title ] = $data['count']; } // Sort elements by key. ksort( $elements ); $usage[ $doc_type ] = [ 'title' => $doc_title, 'elements' => $elements, 'count' => $doc_count, ]; // Sort usage by title. uasort( $usage, function( $a, $b ) { return ( $a['title'] > $b['title'] ); } ); // If title includes '-' will have lower priority. uasort( $usage, function( $a ) { return strpos( $a['title'], '-' ); } ); } return $usage; } /** * Before document Save. * * Called on elementor/document/before_save, remove document from global & set saving flag. * * @param Document $document * @param array $data new settings to save. */ public function before_document_save( $document, $data ) { $current_status = get_post_status( $document->get_post() ); $new_status = isset( $data['settings']['post_status'] ) ? $data['settings']['post_status'] : ''; if ( $current_status === $new_status ) { $this->remove_from_global( $document ); } $this->is_document_saving = true; } /** * After document save. * * Called on elementor/document/after_save, adds document to global & clear saving flag. * * @param Document $document */ public function after_document_save( $document ) { if ( DB::STATUS_PUBLISH === $document->get_post()->post_status || DB::STATUS_PRIVATE === $document->get_post()->post_status ) { $this->save_document_usage( $document ); } $this->is_document_saving = false; } /** * On status change. * * Called on transition_post_status. * * @param string $new_status * @param string $old_status * @param \WP_Post $post */ public function on_status_change( $new_status, $old_status, $post ) { if ( wp_is_post_autosave( $post ) ) { return; } // If it's from elementor editor, the usage should be saved via `before_document_save`/`after_document_save`. if ( $this->is_document_saving ) { return; } $document = Plugin::$instance->documents->get( $post->ID ); if ( ! $document ) { return; } $is_public_unpublish = 'publish' === $old_status && 'publish' !== $new_status; $is_private_unpublish = 'private' === $old_status && 'private' !== $new_status; if ( $is_public_unpublish || $is_private_unpublish ) { $this->remove_from_global( $document ); } $is_public_publish = 'publish' !== $old_status && 'publish' === $new_status; $is_private_publish = 'private' !== $old_status && 'private' === $new_status; if ( $is_public_publish || $is_private_publish ) { $this->save_document_usage( $document ); } } /** * On before delete post. * * Called on on_before_delete_post. * * @param int $post_id */ public function on_before_delete_post( $post_id ) { $document = Plugin::$instance->documents->get( $post_id ); if ( $document->get_id() !== $document->get_main_id() ) { return; } $this->remove_from_global( $document ); } /** * Add's tracking data. * * Called on elementor/tracker/send_tracking_data_params. * * @param array $params * * @return array */ public function add_tracking_data( $params ) { $params['usages']['elements'] = get_option( self::OPTION_NAME ); return $params; } /** * Recalculate usage. * * Recalculate usage for all elementor posts. * * @param int $limit * @param int $offset * * @return int */ public function recalc_usage( $limit = -1, $offset = 0 ) { // While requesting recalc_usage, data should be deleted. // if its in a batch the data should be deleted only on the first batch. if ( 0 === $offset ) { delete_option( self::OPTION_NAME ); } $post_types = get_post_types( array( 'public' => true ) ); $query = new \WP_Query( [ 'meta_key' => '_elementor_data', 'post_type' => $post_types, 'post_status' => [ 'publish', 'private' ], 'posts_per_page' => $limit, 'offset' => $offset, ] ); foreach ( $query->posts as $post ) { $document = Plugin::$instance->documents->get( $post->ID ); if ( ! $document ) { continue; } $this->after_document_save( $document ); } // Clear query memory before leave. wp_cache_flush(); return count( $query->posts ); } /** * Increase controls count. * * Increase controls count, for each element. * * @param array &$element_ref * @param string $tab * @param string $section * @param string $control * @param int $count */ private function increase_controls_count( &$element_ref, $tab, $section, $control, $count ) { if ( ! isset( $element_ref['controls'][ $tab ] ) ) { $element_ref['controls'][ $tab ] = []; } if ( ! isset( $element_ref['controls'][ $tab ][ $section ] ) ) { $element_ref['controls'][ $tab ][ $section ] = []; } if ( ! isset( $element_ref['controls'][ $tab ][ $section ][ $control ] ) ) { $element_ref['controls'][ $tab ][ $section ][ $control ] = 0; } $element_ref['controls'][ $tab ][ $section ][ $control ] += $count; } /** * Add Controls * * Add's controls to this element_ref, returns changed controls count. * * @param array $settings_controls * @param array $element_controls * @param array &$element_ref * * @return int ($changed_controls_count). */ private function add_controls( $settings_controls, $element_controls, &$element_ref ) { $changed_controls_count = 0; // Loop over all element settings. foreach ( $settings_controls as $control => $value ) { if ( empty( $element_controls[ $control ] ) ) { continue; } $control_config = $element_controls[ $control ]; if ( ! isset( $control_config['section'], $control_config['default'] ) ) { continue; } $tab = $control_config['tab']; $section = $control_config['section']; // If setting value is not the control default. if ( $value !== $control_config['default'] ) { $this->increase_controls_count( $element_ref, $tab, $section, $control, 1 ); $changed_controls_count++; } } return $changed_controls_count; } /** * Add general controls. * * Extract general controls to element ref, return clean `$settings_control`. * * @param array $settings_controls * @param array &$element_ref * * @return array ($settings_controls). */ private function add_general_controls( $settings_controls, &$element_ref ) { if ( ! empty( $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] ) ) { $settings_controls = array_merge( $settings_controls, $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] ); // Add dynamic count to controls under `general` tab. $this->increase_controls_count( $element_ref, self::GENERAL_TAB, Manager::DYNAMIC_SETTING_KEY, 'count', count( $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] ) ); } return $settings_controls; } /** * Add to global. * * Add's usage to global (update database). * * @param string $doc_name * @param array $doc_usage */ private function add_to_global( $doc_name, $doc_usage ) { $global_usage = get_option( self::OPTION_NAME, [] ); foreach ( $doc_usage as $element_type => $element_data ) { if ( ! isset( $global_usage[ $doc_name ] ) ) { $global_usage[ $doc_name ] = []; } if ( ! isset( $global_usage[ $doc_name ][ $element_type ] ) ) { $global_usage[ $doc_name ][ $element_type ] = [ 'count' => 0, 'controls' => [], ]; } $global_element_ref = &$global_usage[ $doc_name ][ $element_type ]; $global_element_ref['count'] += $element_data['count']; if ( empty( $element_data['controls'] ) ) { continue; } foreach ( $element_data['controls'] as $tab => $sections ) { foreach ( $sections as $section => $controls ) { foreach ( $controls as $control => $count ) { $this->increase_controls_count( $global_element_ref, $tab, $section, $control, $count ); } } } } update_option( self::OPTION_NAME, $global_usage, false ); } /** * Remove from global. * * Remove's usage from global (update database). * * @param Document $document */ private function remove_from_global( $document ) { $prev_usage = $document->get_meta( self::META_KEY ); if ( empty( $prev_usage ) ) { return; } $doc_name = $document->get_name(); $global_usage = get_option( self::OPTION_NAME, [] ); foreach ( $prev_usage as $element_type => $doc_value ) { if ( isset( $global_usage[ $doc_name ][ $element_type ]['count'] ) ) { $global_usage[ $doc_name ][ $element_type ]['count'] -= $prev_usage[ $element_type ]['count']; if ( 0 === $global_usage[ $doc_name ][ $element_type ]['count'] ) { unset( $global_usage[ $doc_name ][ $element_type ] ); if ( 0 === count( $global_usage[ $doc_name ] ) ) { unset( $global_usage[ $doc_name ] ); } continue; } foreach ( $prev_usage[ $element_type ]['controls'] as $tab => $sections ) { foreach ( $sections as $section => $controls ) { foreach ( $controls as $control => $count ) { if ( isset( $global_usage[ $doc_name ][ $element_type ]['controls'][ $tab ][ $section ][ $control ] ) ) { $section_ref = &$global_usage[ $doc_name ][ $element_type ]['controls'][ $tab ][ $section ]; $section_ref[ $control ] -= $count; if ( 0 === $section_ref[ $control ] ) { unset( $section_ref[ $control ] ); } } } } } } } update_option( self::OPTION_NAME, $global_usage, false ); $document->delete_meta( self::META_KEY ); } /** * Get elements usage. * * Get's the current elements usage by passed elements array parameter. * * @param array $elements * * @return array */ private function get_elements_usage( $elements ) { $usage = []; Plugin::$instance->db->iterate_data( $elements, function ( $element ) use ( &$usage ) { if ( empty( $element['widgetType'] ) ) { $type = $element['elType']; $element_instance = Plugin::$instance->elements_manager->get_element_types( $type ); } else { $type = $element['widgetType']; $element_instance = Plugin::$instance->widgets_manager->get_widget_types( $type ); } if ( ! isset( $usage[ $type ] ) ) { $usage[ $type ] = [ 'count' => 0, 'control_percent' => 0, 'controls' => [], ]; } $usage[ $type ]['count']++; if ( ! $element_instance ) { return $element; } $element_controls = $element_instance->get_controls(); if ( isset( $element['settings'] ) ) { $settings_controls = $element['settings']; $element_ref = &$usage[ $type ]; // Add dynamic values. $settings_controls = $this->add_general_controls( $settings_controls, $element_ref ); $changed_controls_count = $this->add_controls( $settings_controls, $element_controls, $element_ref ); $percent = $changed_controls_count / ( count( $element_controls ) / 100 ); $usage[ $type ] ['control_percent'] = (int) round( $percent ); } return $element; } ); return $usage; } /** * Save document usage. * * Save requested document usage, and update global. * * @param Document $document */ private function save_document_usage( Document $document ) { if ( ! $document::get_property( 'is_editable' ) && ! $document->is_built_with_elementor() ) { return; } // Get data manually to avoid conflict with `\Elementor\Core\Base\Document::get_elements_data... convert_to_elementor`. $data = $document->get_json_meta( '_elementor_data' ); if ( ! empty( $data ) ) { try { $usage = $this->get_elements_usage( $document->get_elements_raw_data( $data ) ); $document->update_meta( self::META_KEY, $usage ); $this->add_to_global( $document->get_name(), $usage ); } catch ( \Exception $exception ) { return; // Do nothing. }; } } /** * Add system info report. */ public function add_system_info_report() { System_Info::add_report( 'usage', [ 'file_name' => __DIR__ . '/usage-reporter.php', 'class_name' => __NAMESPACE__ . '\Usage_Reporter', ] ); } /** * Usage module constructor. * * Initializing Elementor usage module. * * @access public */ public function __construct() { add_action( 'transition_post_status', [ $this, 'on_status_change' ], 10, 3 ); add_action( 'before_delete_post', [ $this, 'on_before_delete_post' ] ); add_action( 'elementor/document/before_save', [ $this, 'before_document_save' ], 10, 2 ); add_action( 'elementor/document/after_save', [ $this, 'after_document_save' ] ); add_filter( 'elementor/tracker/send_tracking_data_params', [ $this, 'add_tracking_data' ] ); add_action( 'admin_init', [ $this, 'add_system_info_report' ], 50 ); } } modules/usage/usage-reporter.php000066600000004222152142641170013004 0ustar00_properties['format'] && empty( $_GET[ self::RECALC_ACTION ] ) ) { // phpcs:ignore -- nonce validation is not require here. $nonce = wp_create_nonce( self::RECALC_ACTION ); $url = add_query_arg( [ self::RECALC_ACTION => 1, '_wpnonce' => $nonce, ] ); $title .= 'Recalculate'; } return $title; } public function get_fields() { return [ 'usage' => '', ]; } public function get_usage() { /** @var Module $module */ $module = Module::instance(); if ( ! empty( $_GET[ self::RECALC_ACTION ] ) ) { if ( empty( $_GET['_wpnonce'] ) || ! wp_verify_nonce( $_GET['_wpnonce'], self::RECALC_ACTION ) ) { wp_die( 'Invalid Nonce', 'Invalid Nonce', [ 'back_link' => true, ] ); } $module->recalc_usage(); wp_safe_redirect( remove_query_arg( self::RECALC_ACTION ) ); die; } $usage = ''; foreach ( $module->get_formatted_usage() as $doc_type => $data ) { $usage .= '' . $data['title'] . ' ( ' . $data['count'] . ' )'; foreach ( $data['elements'] as $element => $count ) { $usage .= $element . ': ' . $count . PHP_EOL; } $usage .= ''; } return [ 'value' => $usage, ]; } public function get_raw_usage() { /** @var Module $module */ $module = Module::instance(); $usage = PHP_EOL; foreach ( $module->get_formatted_usage( 'raw' ) as $doc_type => $data ) { $usage .= "\t{$data['title']} : " . $data['count'] . PHP_EOL; foreach ( $data['elements'] as $element => $count ) { $usage .= "\t\t{$element} : {$count}" . PHP_EOL; } } return [ 'value' => $usage, ]; } } modules/system-info/helpers/model-helper.php000066600000003312152142641200015221 0ustar00 [], 'wordpress' => [], 'theme' => [], 'user' => [], 'plugins' => [], 'network_plugins' => [], 'mu_plugins' => [], ]; /** * Main system info page constructor. * * Initializing Elementor system info page. * * @since 2.9.0 * @access public */ public function __construct() { $this->add_actions(); } /** * Get default settings. * * Retrieve the default settings. Used to reset the report settings on * initialization. * * @since 2.9.0 * @access protected * * @return array Default settings. */ protected function get_init_settings() { $settings = []; $reporter_properties = Base::get_properties_keys(); array_push( $reporter_properties, 'category', 'name', 'class_name' ); $settings['reporter_properties'] = $reporter_properties; $settings['reportFilePrefix'] = ''; return $settings; } /** * Add actions. * * Register filters and actions for the main system info page. * * @since 2.9.0 * @access private */ private function add_actions() { add_action( 'admin_menu', [ $this, 'register_menu' ], 500 ); add_action( 'wp_ajax_elementor_system_info_download_file', [ $this, 'download_file' ] ); } /** * Register admin menu. * * Add new Elementor system info admin menu. * * Fired by `admin_menu` action. * * @since 2.9.0 * @access public */ public function register_menu() { $system_info_text = __( 'System Info', 'elementor' ); add_submenu_page( 'elementor', $system_info_text, $system_info_text, $this->capability, 'elementor-system-info', [ $this, 'display_page' ] ); } /** * Display page. * * Output the content for the main system info page. * * @since 2.9.0 * @access public */ public function display_page() { $reports_info = self::get_allowed_reports(); $reports = $this->load_reports( $reports_info, 'html' ); $raw_reports = $this->load_reports( $reports_info, 'raw' ); ?>

print_report( $reports, 'html' ); ?>


capability ) ) { wp_die( __( 'You don\'t have permissions to download this file', 'elementor' ) ); } $reports_info = self::get_allowed_reports(); $reports = $this->load_reports( $reports_info, 'raw' ); $domain = parse_url( site_url(), PHP_URL_HOST ); header( 'Content-Type: text/plain' ); header( 'Content-Disposition:attachment; filename=system-info-' . $domain . '-' . gmdate( 'd-m-Y' ) . '.txt' ); $this->print_report( $reports ); die; } /** * Get report class. * * Retrieve the class of the report for any given report type. * * @since 2.9.0 * @access public * * @param string $reporter_type The type of the report. * * @return string The class of the report. */ public function get_reporter_class( $reporter_type ) { return __NAMESPACE__ . '\Reporters\\' . ucfirst( $reporter_type ); } /** * Load reports. * * Retrieve the system info reports. * * @since 2.9.0 * @access public * * @param array $reports An array of system info reports. * @param string $format - possible values: 'raw' or empty string, meaning 'html' * * @return array An array of system info reports. */ public function load_reports( $reports, $format = '' ) { $result = []; foreach ( $reports as $report_name => $report_info ) { $reporter_params = [ 'name' => $report_name, 'format' => $format, ]; $reporter_params = array_merge( $reporter_params, $report_info ); $reporter = $this->create_reporter( $reporter_params ); if ( ! $reporter instanceof Base ) { continue; } $result[ $report_name ] = [ 'report' => $reporter->get_report( $format ), 'label' => $reporter->get_title(), ]; if ( ! empty( $report_info['sub'] ) ) { $result[ $report_name ]['sub'] = $this->load_reports( $report_info['sub'] ); } } return $result; } /** * Create a report. * * Register a new report that will be displayed in Elementor system info page. * * @param array $properties Report properties. * * @return \WP_Error|false|Base Base instance if the report was created, * False or WP_Error otherwise. *@since 2.9.0 * @access public * */ public function create_reporter( array $properties ) { $properties = Model_Helper::prepare_properties( $this->get_settings( 'reporter_properties' ), $properties ); $reporter_class = $properties['class_name'] ? $properties['class_name'] : $this->get_reporter_class( $properties['name'] ); $reporter = new $reporter_class( $properties ); if ( ! ( $reporter instanceof Base ) ) { return new \WP_Error( 'Each reporter must to be an instance or sub-instance of `Base` class.' ); } if ( ! $reporter->is_enabled() ) { return false; } return $reporter; } /** * Print report. * * Output the system info page reports using an output template. * * @since 2.9.0 * @access public * * @param array $reports An array of system info reports. * @param string $template Output type from the templates folder. Available * templates are `raw` and `html`. Default is `raw`. */ public function print_report( $reports, $template = 'raw' ) { static $tabs_count = 0; static $required_plugins_properties = [ 'Name', 'Version', 'URL', 'Author', ]; $template_path = __DIR__ . '/templates/' . $template . '.php'; require $template_path; } /** * Get allowed reports. * * Retrieve the available reports in Elementor system info page. * * @since 2.9.0 * @access public * @static * * @return array Available reports in Elementor system info page. */ public static function get_allowed_reports() { return self::$reports; } /** * Add report. * * Register a new report to Elementor system info page. * * @since 2.9.0 * @access public * @static * * @param string $report_name The name of the report. * @param array $report_info Report info. */ public static function add_report( $report_name, $report_info ) { self::$reports[ $report_name ] = $report_info; } } modules/system-info/templates/raw.php000066600000002723152142641200013776 0ustar00 $report ) : $indent = str_repeat( "\t", $tabs_count - 1 ); $is_plugins = in_array( $report_name, [ 'plugins', 'network_plugins', 'mu_plugins', ] ); if ( ! $is_plugins ) : echo PHP_EOL . $indent . '== ' . $report['label'] . ' =='; endif; echo PHP_EOL; foreach ( $report['report'] as $field_name => $field ) : $sub_indent = str_repeat( "\t", $tabs_count ); if ( $is_plugins ) { echo "== {$field['label']} ==" . PHP_EOL; foreach ( $field['value'] as $plugin_info ) : $plugin_properties = array_intersect_key( $plugin_info, $required_plugins_properties ); echo $sub_indent . $plugin_info['Name']; foreach ( $plugin_properties as $property_name => $property ) : echo PHP_EOL . "{$sub_indent}\t{$property_name}: {$property}"; endforeach; echo PHP_EOL . PHP_EOL; endforeach; } else { $label = $field['label']; if ( ! empty( $label ) ) { $label .= ': '; } echo "{$sub_indent}{$label}{$field['value']}" . PHP_EOL; } endforeach; if ( ! empty( $report['sub'] ) ) : $this->print_report( $report['sub'], $template, true ); endif; endforeach; $tabs_count--; modules/system-info/templates/html.php000066600000003631152142641200014150 0ustar00 $report ) : ?>
$field ) : if ( in_array( $report_name, [ 'plugins', 'network_plugins', 'mu_plugins' ], true ) ) { foreach ( $field['value'] as $plugin_info ) : ?> >
{$plugin_info['Name']}"; else : $plugin_name = $plugin_info['Name']; endif; if ( $plugin_info['Version'] ) : $plugin_name .= ' - ' . $plugin_info['Version']; endif; echo $plugin_name; ?> {$plugin_info['Author']}"; else : $author = $plugin_info['Author']; endif; echo "By $author"; endif; ?>
plugins ) { // Ensure get_plugins function is loaded if ( ! function_exists( 'get_plugins' ) ) { include ABSPATH . '/wp-admin/includes/plugin.php'; } $active_plugins = get_option( 'active_plugins' ); $this->plugins = array_intersect_key( get_plugins(), array_flip( $active_plugins ) ); } return $this->plugins; } /** * Get active plugins reporter title. * * Retrieve active plugins reporter title. * * @since 1.0.0 * @access public * * @return string Reporter title. */ public function get_title() { return 'Active Plugins'; } /** * Is enabled. * * Whether there are active plugins or not. * * @since 1.0.0 * @access public * * @return bool True if the site has active plugins, False otherwise. */ public function is_enabled() { return ! ! $this->get_plugins(); } /** * Get active plugins report fields. * * Retrieve the required fields for the active plugins report. * * @since 1.0.0 * @access public * * @return array Required report fields with field ID and field label. */ public function get_fields() { return [ 'active_plugins' => 'Active Plugins', ]; } /** * Get active plugins. * * Retrieve the sites active plugins. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The active plugins list. * } */ public function get_active_plugins() { return [ 'value' => $this->get_plugins(), ]; } } modules/system-info/reporters/theme.php000066600000011153152142641200014333 0ustar00 'Name', 'version' => 'Version', 'author' => 'Author', 'is_child_theme' => 'Child Theme', ]; if ( $this->get_parent_theme() ) { $parent_fields = [ 'parent_name' => 'Parent Theme Name', 'parent_version' => 'Parent Theme Version', 'parent_author' => 'Parent Theme Author', ]; $fields = array_merge( $fields, $parent_fields ); } return $fields; } /** * Get theme. * * Retrieve the theme. * * @since 1.0.0 * @access protected * * @return \WP_Theme WordPress theme object. */ protected function _get_theme() { if ( is_null( $this->theme ) ) { $this->theme = wp_get_theme(); } return $this->theme; } /** * Get parent theme. * * Retrieve the parent theme. * * @since 1.0.0 * @access protected * * @return \WP_Theme|false WordPress theme object, or false if the current theme is not a child theme. */ protected function get_parent_theme() { return $this->_get_theme()->parent(); } /** * Get theme name. * * Retrieve the theme name. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The theme name. * } */ public function get_name() { return [ 'value' => $this->_get_theme()->get( 'Name' ), ]; } /** * Get theme author. * * Retrieve the theme author. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The theme author. * } */ public function get_author() { return [ 'value' => $this->_get_theme()->get( 'Author' ), ]; } /** * Get theme version. * * Retrieve the theme version. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The theme version. * } */ public function get_version() { return [ 'value' => $this->_get_theme()->get( 'Version' ), ]; } /** * Is the theme is a child theme. * * Whether the theme is a child theme. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Yes if the theme is a child theme, No otherwise. * @type string $recommendation Theme source code modification recommendation. * } */ public function get_is_child_theme() { $is_child_theme = is_child_theme(); $result = [ 'value' => $is_child_theme ? 'Yes' : 'No', ]; if ( ! $is_child_theme ) { $result['recommendation'] = sprintf( /* translators: %s: Codex URL */ _x( 'If you want to modify the source code of your theme, we recommend using a child theme.', 'System Info', 'elementor' ), 'https://codex.wordpress.org/Child_Themes' ); } return $result; } /** * Get parent theme version. * * Retrieve the parent theme version. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The parent theme version. * } */ public function get_parent_version() { return [ 'value' => $this->get_parent_theme()->get( 'Version' ), ]; } /** * Get parent theme author. * * Retrieve the parent theme author. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The parent theme author. * } */ public function get_parent_author() { return [ 'value' => $this->get_parent_theme()->get( 'Author' ), ]; } /** * Get parent theme name. * * Retrieve the parent theme name. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The parent theme name. * } */ public function get_parent_name() { return [ 'value' => $this->get_parent_theme()->get( 'Name' ), ]; } } modules/system-info/reporters/server.php000066600000017276152142641200014553 0ustar00 'Operating System', 'software' => 'Software', 'mysql_version' => 'MySQL version', 'php_version' => 'PHP Version', 'php_max_input_vars' => 'PHP Max Input Vars', 'php_max_post_size' => 'PHP Max Post Size', 'gd_installed' => 'GD Installed', 'zip_installed' => 'ZIP Installed', 'write_permissions' => 'Write Permissions', 'elementor_library' => 'Elementor Library', ]; } /** * Get server operating system. * * Retrieve the server operating system. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Server operating system. * } */ public function get_os() { return [ 'value' => PHP_OS, ]; } /** * Get server software. * * Retrieve the server software. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Server software. * } */ public function get_software() { return [ 'value' => $_SERVER['SERVER_SOFTWARE'], ]; } /** * Get PHP version. * * Retrieve the PHP version. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value PHP version. * @type string $recommendation Minimum PHP version recommendation. * @type bool $warning Whether to display a warning. * } */ public function get_php_version() { $result = [ 'value' => PHP_VERSION, ]; if ( version_compare( $result['value'], '5.4', '<' ) ) { $result['recommendation'] = _x( 'We recommend to use php 5.4 or higher', 'System Info', 'elementor' ); $result['warning'] = true; } return $result; } /** * Get PHP `max_input_vars`. * * Retrieve the value of `max_input_vars` from `php.ini` configuration file. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value PHP `max_input_vars`. * } */ public function get_php_max_input_vars() { return [ 'value' => ini_get( 'max_input_vars' ), ]; } /** * Get PHP `post_max_size`. * * Retrieve the value of `post_max_size` from `php.ini` configuration file. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value PHP `post_max_size`. * } */ public function get_php_max_post_size() { return [ 'value' => ini_get( 'post_max_size' ), ]; } /** * Get GD installed. * * Whether the GD extension is installed. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Yes if the GD extension is installed, No otherwise. * @type bool $warning Whether to display a warning. True if the GD extension is installed, False otherwise. * } */ public function get_gd_installed() { $gd_installed = extension_loaded( 'gd' ); return [ 'value' => $gd_installed ? 'Yes' : 'No', 'warning' => ! $gd_installed, ]; } /** * Get ZIP installed. * * Whether the ZIP extension is installed. * * @since 2.1.0 * @access public * * @return array { * Report data. * * @type string $value Yes if the ZIP extension is installed, No otherwise. * @type bool $warning Whether to display a warning. True if the ZIP extension is installed, False otherwise. * } */ public function get_zip_installed() { $zip_installed = extension_loaded( 'zip' ); return [ 'value' => $zip_installed ? 'Yes' : 'No', 'warning' => ! $zip_installed, ]; } /** * Get MySQL version. * * Retrieve the MySQL version. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value MySQL version. * } */ public function get_mysql_version() { global $wpdb; $db_server_version = $wpdb->get_results( "SHOW VARIABLES WHERE `Variable_name` IN ( 'version_comment', 'innodb_version' )", OBJECT_K ); return [ 'value' => $db_server_version['version_comment']->Value . ' v' . $db_server_version['innodb_version']->Value, ]; } /** * Get write permissions. * * Check whether the required folders has writing permissions. * * @since 1.9.0 * @access public * * @return array { * Report data. * * @type string $value Writing permissions status. * @type bool $warning Whether to display a warning. True if some required * folders don't have writing permissions, False otherwise. * } */ public function get_write_permissions() { $paths_to_check = [ ABSPATH => 'WordPress root directory', ]; $write_problems = []; $wp_upload_dir = wp_upload_dir(); if ( $wp_upload_dir['error'] ) { $write_problems[] = 'WordPress root uploads directory'; } $elementor_uploads_path = $wp_upload_dir['basedir'] . '/elementor'; if ( is_dir( $elementor_uploads_path ) ) { $paths_to_check[ $elementor_uploads_path ] = 'Elementor uploads directory'; } $htaccess_file = ABSPATH . '/.htaccess'; if ( file_exists( $htaccess_file ) ) { $paths_to_check[ $htaccess_file ] = '.htaccess file'; } foreach ( $paths_to_check as $dir => $description ) { if ( ! is_writable( $dir ) ) { $write_problems[] = $description; } } if ( $write_problems ) { $value = 'There are some writing permissions issues with the following directories/files:' . "\n\t\t - "; $value .= implode( "\n\t\t - ", $write_problems ); } else { $value = 'All right'; } return [ 'value' => $value, 'warning' => ! ! $write_problems, ]; } /** * Check for elementor library connectivity. * * Check whether the remote elementor library is reachable. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The status of elementor library connectivity. * @type bool $warning Whether to display a warning. True if elementor * * library is not reachable, False otherwise. * } */ public function get_elementor_library() { $response = wp_remote_get( Api::$api_info_url, [ 'timeout' => 5, 'body' => [ // Which API version is used 'api_version' => ELEMENTOR_VERSION, // Which language to return 'site_lang' => get_bloginfo( 'language' ), ], ] ); if ( is_wp_error( $response ) ) { return [ 'value' => 'Not connected (' . $response->get_error_message() . ')', 'warning' => true, ]; } $http_response_code = wp_remote_retrieve_response_code( $response ); if ( 200 !== (int) $http_response_code ) { $error_msg = 'HTTP Error (' . $http_response_code . ')'; return [ 'value' => 'Not connected (' . $error_msg . ')', 'warning' => true, ]; } $info_data = json_decode( wp_remote_retrieve_body( $response ), true ); if ( empty( $info_data ) ) { return [ 'value' => 'Not connected (Returns invalid JSON)', 'warning' => true, ]; } return [ 'value' => 'Connected', ]; } } modules/system-info/reporters/wordpress.php000066600000013710152142641200015262 0ustar00 'Version', 'site_url' => 'Site URL', 'home_url' => 'Home URL', 'is_multisite' => 'WP Multisite', 'max_upload_size' => 'Max Upload Size', 'memory_limit' => 'Memory limit', 'permalink_structure' => 'Permalink Structure', 'language' => 'Language', 'timezone' => 'Timezone', 'admin_email' => 'Admin Email', 'debug_mode' => 'Debug Mode', ]; } /** * Get WordPress memory limit. * * Retrieve the WordPress memory limit. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress memory limit. * @type string $recommendation Recommendation memory limit. * @type bool $warning Whether to display a warning. True if the limit * is below the recommended 64M, False otherwise. * } */ public function get_memory_limit() { $result = [ 'value' => ini_get( 'memory_limit' ), ]; $min_recommended_memory = '64M'; $memory_limit_bytes = wp_convert_hr_to_bytes( $result['value'] ); $min_recommended_bytes = wp_convert_hr_to_bytes( $min_recommended_memory ); if ( $memory_limit_bytes < $min_recommended_bytes ) { $result['recommendation'] = sprintf( /* translators: 1: Minimum recommended_memory, 2: Codex URL */ _x( 'We recommend setting memory to at least %1$s. For more information, read about how to Increase memory allocated to PHP.', 'System Info', 'elementor' ), $min_recommended_memory, 'https://codex.wordpress.org/Editing_wp-config.php#Increasing_memory_allocated_to_PHP' ); $result['warning'] = true; } return $result; } /** * Get WordPress version. * * Retrieve the WordPress version. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress version. * } */ public function get_version() { return [ 'value' => get_bloginfo( 'version' ), ]; } /** * Is multisite. * * Whether multisite is enabled or not. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Yes if multisite is enabled, No otherwise. * } */ public function get_is_multisite() { return [ 'value' => is_multisite() ? 'Yes' : 'No', ]; } /** * Get site URL. * * Retrieve WordPress site URL. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress site URL. * } */ public function get_site_url() { return [ 'value' => get_site_url(), ]; } /** * Get home URL. * * Retrieve WordPress home URL. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress home URL. * } */ public function get_home_url() { return [ 'value' => get_home_url(), ]; } /** * Get permalink structure. * * Retrieve the permalink structure * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress permalink structure. * } */ public function get_permalink_structure() { global $wp_rewrite; $structure = $wp_rewrite->permalink_structure; if ( ! $structure ) { $structure = 'Plain'; } return [ 'value' => $structure, ]; } /** * Get site language. * * Retrieve the site language. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress site language. * } */ public function get_language() { return [ 'value' => get_bloginfo( 'language' ), ]; } /** * Get PHP `max_upload_size`. * * Retrieve the value of maximum upload file size defined in `php.ini` configuration file. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Maximum upload file size allowed. * } */ public function get_max_upload_size() { return [ 'value' => size_format( wp_max_upload_size() ), ]; } /** * Get WordPress timezone. * * Retrieve WordPress timezone. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress timezone. * } */ public function get_timezone() { $timezone = get_option( 'timezone_string' ); if ( ! $timezone ) { $timezone = get_option( 'gmt_offset' ); } return [ 'value' => $timezone, ]; } /** * Get WordPress administrator email. * * Retrieve WordPress administrator email. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value WordPress administrator email. * } */ public function get_admin_email() { return [ 'value' => get_option( 'admin_email' ), ]; } /** * Get debug mode. * * Whether WordPress debug mode is enabled or not. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value Active if debug mode is enabled, Inactive otherwise. * } */ public function get_debug_mode() { return [ 'value' => WP_DEBUG ? 'Active' : 'Inactive', ]; } } modules/system-info/reporters/user.php000066600000003535152142641200014214 0ustar00 'Role', 'locale' => 'WP Profile lang', 'agent' => 'User Agent', ]; } /** * Get user role. * * Retrieve the user role. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The user role. * } */ public function get_role() { $role = null; $current_user = wp_get_current_user(); if ( ! empty( $current_user->roles ) ) { $role = $current_user->roles[0]; } return [ 'value' => $role, ]; } /** * Get user profile language. * * Retrieve the user profile language. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value User profile language. * } */ public function get_locale() { return [ 'value' => get_locale(), ]; } /** * Get user agent. * * Retrieve user agent. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value HTTP user agent. * } */ public function get_agent() { return [ 'value' => esc_html( $_SERVER['HTTP_USER_AGENT'] ), ]; } } modules/system-info/reporters/base.php000066600000007722152142641200014152 0ustar00get_fields() as $field_name => $field_label ) { $method = 'get_' . $format . $field_name; if ( ! method_exists( $this, $method ) ) { $method = 'get_' . $field_name; //fallback: if ( ! method_exists( $this, $method ) ) { return new \WP_Error( sprintf( "Getter method for the field '%s' wasn't found in %s.", $field_name, get_called_class() ) ); } } $reporter_field = [ 'name' => $field_name, 'label' => $field_label, ]; $reporter_field = array_merge( $reporter_field, $this->$method() ); $result[ $field_name ] = $reporter_field; } return $result; } /** * Get properties keys. * * Retrieve the keys of the properties. * * @since 2.9.0 * @access public * @static * * @return array { * Property keys. * * @type string $name Property name. * @type string $fields Property fields. * } */ public static function get_properties_keys() { return [ 'name', 'format', 'fields', ]; } /** * Filter possible properties. * * Retrieve possible properties filtered by property keys. * * @since 2.9.0 * @access public * @static * * @param array $properties Properties to filter. * * @return array Possible properties filtered by property keys. */ final public static function filter_possible_properties( $properties ) { return Model_Helper::filter_possible_properties( self::get_properties_keys(), $properties ); } /** * Set properties. * * Add/update properties to the report. * * @since 2.9.0 * @access public * * @param array $key Property key. * @param array $value Optional. Property value. Default is `null`. */ final public function set_properties( $key, $value = null ) { if ( is_array( $key ) ) { $key = self::filter_possible_properties( $key ); foreach ( $key as $sub_key => $sub_value ) { $this->set_properties( $sub_key, $sub_value ); } return; } if ( ! in_array( $key, self::get_properties_keys(), true ) ) { return; } $this->_properties[ $key ] = $value; } /** * Reporter base constructor. * * Initializing the reporter base class. * * @since 2.9.0 * @access public * * @param array $properties Optional. Properties to filter. Default is `null`. */ public function __construct( $properties = null ) { $this->_properties = array_fill_keys( self::get_properties_keys(), null ); if ( $properties ) { $this->set_properties( $properties, null ); } } } modules/system-info/reporters/mu-plugins.php000066600000003651152142641200015335 0ustar00plugins ) { $this->plugins = get_mu_plugins(); } return $this->plugins; } /** * Is enabled. * * Whether there are must-use plugins or not. * * @since 1.0.0 * @access public * * @return bool True if the site has must-use plugins, False otherwise. */ public function is_enabled() { return ! ! $this->get_mu_plugins(); } /** * Get must-use plugins reporter title. * * Retrieve must-use plugins reporter title. * * @since 1.0.0 * @access public * * @return string Reporter title. */ public function get_title() { return 'Must-Use Plugins'; } /** * Get must-use plugins report fields. * * Retrieve the required fields for the must-use plugins report. * * @since 1.0.0 * @access public * * @return array Required report fields with field ID and field label. */ public function get_fields() { return [ 'must_use_plugins' => 'Must-Use Plugins', ]; } /** * Get must-use plugins. * * Retrieve the sites must-use plugins. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The must-use plugins list. * } */ public function get_must_use_plugins() { return [ 'value' => $this->get_mu_plugins(), ]; } } modules/system-info/reporters/network-plugins.php000066600000004264152142641200016406 0ustar00plugins ) { $active_plugins = get_site_option( 'active_sitewide_plugins' ); $this->plugins = array_intersect_key( get_plugins(), $active_plugins ); } return $this->plugins; } /** * Is enabled. * * Whether there are active network plugins or not. * * @since 1.0.0 * @access public * * @return bool True if the site has active network plugins, False otherwise. */ public function is_enabled() { if ( ! is_multisite() ) { return false; }; return ! ! $this->get_network_plugins(); } /** * Get network plugins report fields. * * Retrieve the required fields for the network plugins report. * * @since 1.0.0 * @access public * * @return array Required report fields with field ID and field label. */ public function get_fields() { return [ 'network_active_plugins' => 'Network Plugins', ]; } /** * Get active network plugins. * * Retrieve the sites active network plugins. * * @since 1.0.0 * @access public * * @return array { * Report data. * * @type string $value The active network plugins list. * } */ public function get_network_active_plugins() { return [ 'value' => $this->get_network_plugins(), ]; } } modules/library/documents/section.php000066600000001660152142641200014042 0ustar00get_main_id(); } /** * @since 2.0.0 * @access protected */ protected function _register_controls() { parent::_register_controls(); Post::register_hide_title_control( $this ); Post::register_style_controls( $this ); } protected function get_remote_library_config() { $config = parent::get_remote_library_config(); $config['type'] = 'page'; $config['default_route'] = 'templates/pages'; return $config; } } modules/library/documents/library-document.php000066600000003674152142641200015665 0ustar00 true, ]; return $config; } public function print_admin_column_type() { $admin_filter_url = admin_url( Source_Local::ADMIN_MENU_SLUG . '&elementor_library_type=' . $this->get_name() ); printf( '%s', $admin_filter_url, $this->get_title() ); } /** * Save document type. * * Set new/updated document type. * * @since 2.0.0 * @access public */ public function save_template_type() { parent::save_template_type(); wp_set_object_terms( $this->post->ID, $this->get_name(), self::TAXONOMY_TYPE_SLUG ); } } modules/library/module.php000066600000002105152142641200011655 0ustar00documents ->register_document_type( 'not-supported', Documents\Not_Supported::get_class_full_name() ) ->register_document_type( 'page', Documents\Page::get_class_full_name() ) ->register_document_type( 'section', Documents\Section::get_class_full_name() ); } } modules/dynamic-tags/module.php000066600000005570152142641200012602 0ustar00register_groups(); add_action( 'elementor/dynamic_tags/register_tags', [ $this, 'register_tags' ] ); } /** * Get module name. * * Retrieve the dynamic tags module name. * * @since 2.0.0 * @access public * * @return string Module name. */ public function get_name() { return 'dynamic_tags'; } /** * Get classes names. * * Retrieve the dynamic tag classes names. * * @since 2.0.0 * @access public * * @return array Tag dynamic tag classes names. */ public function get_tag_classes_names() { return []; } /** * Get groups. * * Retrieve the dynamic tag groups. * * @since 2.0.0 * @access public * * @return array Tag dynamic tag groups. */ public function get_groups() { return [ self::BASE_GROUP => [ 'title' => 'Base Tags', ], ]; } /** * Register groups. * * Add all the available tag groups. * * @since 2.0.0 * @access private */ private function register_groups() { foreach ( $this->get_groups() as $group_name => $group_settings ) { Plugin::$instance->dynamic_tags->register_group( $group_name, $group_settings ); } } /** * Register tags. * * Add all the available dynamic tags. * * @since 2.0.0 * @access public * * @param Manager $dynamic_tags */ public function register_tags( $dynamic_tags ) { foreach ( $this->get_tag_classes_names() as $tag_class ) { /** @var Tag $class_name */ $class_name = $this->get_reflection()->getNamespaceName() . '\Tags\\' . $tag_class; $dynamic_tags->register_tag( $class_name ); } } } modules/page-templates/module.php000066600000022623152142641200013130 0ustar00documents->get_doc_for_frontend( get_the_ID() ); if ( $document ) { $template_path = $this->get_template_path( $document->get_meta( '_wp_page_template' ) ); if ( $template_path ) { $template = $template_path; Plugin::$instance->inspector->add_log( 'Page Template', Plugin::$instance->inspector->parse_template_path( $template ), $document->get_edit_url() ); } } } return $template; } /** * Add WordPress templates. * * Adds Elementor templates to all the post types that support * Elementor. * * Fired by `init` action. * * @since 2.0.0 * @access public */ public function add_wp_templates_support() { $post_types = get_post_types_by_support( 'elementor' ); foreach ( $post_types as $post_type ) { add_filter( "theme_{$post_type}_templates", [ $this, 'add_page_templates' ], 10, 4 ); } } /** * Add page templates. * * Add the Elementor page templates to the theme templates. * * Fired by `theme_{$post_type}_templates` filter. * * @since 2.0.0 * @access public * @static * * @param array $page_templates Array of page templates. Keys are filenames, * checks are translated names. * * @param \WP_Theme $wp_theme * @param \WP_Post $post * * @return array Page templates. */ public function add_page_templates( $page_templates, $wp_theme, $post ) { if ( $post ) { // FIX ME: Gutenberg not send $post as WP_Post object, just the post ID. $post_id = ! empty( $post->ID ) ? $post->ID : $post; $document = Plugin::$instance->documents->get( $post_id ); if ( $document && ! $document::get_property( 'support_wp_page_templates' ) ) { return $page_templates; } } $page_templates = [ self::TEMPLATE_CANVAS => _x( 'Elementor Canvas', 'Page Template', 'elementor' ), self::TEMPLATE_HEADER_FOOTER => _x( 'Elementor Full Width', 'Page Template', 'elementor' ), ] + $page_templates; return $page_templates; } /** * Set print callback. * * Set the page template callback. * * @since 2.0.0 * @access public * * @param callable $callback */ public function set_print_callback( $callback ) { $this->print_callback = $callback; } /** * Print callback. * * Prints the page template content using WordPress loop. * * @since 2.0.0 * @access public */ public function print_callback() { while ( have_posts() ) : the_post(); the_content(); endwhile; } /** * Print content. * * Prints the page template content. * * @since 2.0.0 * @access public */ public function print_content() { if ( ! $this->print_callback ) { $this->print_callback = [ $this, 'print_callback' ]; } call_user_func( $this->print_callback ); } /** * Get page template path. * * Retrieve the path for any given page template. * * @since 2.0.0 * @access public * * @param string $page_template The page template name. * * @return string Page template path. */ public function get_template_path( $page_template ) { $template_path = ''; switch ( $page_template ) { case self::TEMPLATE_CANVAS: $template_path = __DIR__ . '/templates/canvas.php'; break; case self::TEMPLATE_HEADER_FOOTER: $template_path = __DIR__ . '/templates/header-footer.php'; break; } return $template_path; } /** * Register template control. * * Adds custom controls to any given document. * * Fired by `update_post_metadata` action. * * @since 2.0.0 * @access public * * @param Document $document The document instance. */ public function action_register_template_control( $document ) { if ( $document instanceof PageBase || $document instanceof LibraryPageDocument ) { $this->register_template_control( $document ); } } /** * Register template control. * * Adds custom controls to any given document. * * @since 2.0.0 * @access public * * @param Document $document The document instance. * @param string $control_id Optional. The control ID. Default is `template`. */ public function register_template_control( $document, $control_id = 'template' ) { if ( ! Utils::is_cpt_custom_templates_supported() ) { return; } require_once ABSPATH . '/wp-admin/includes/template.php'; $options = [ 'default' => __( 'Default', 'elementor' ), ]; $options += array_flip( get_page_templates( null, $document->get_main_post()->post_type ) ); $document->start_injection( [ 'of' => 'post_status', 'fallback' => [ 'of' => 'post_title', ], ] ); $document->add_control( $control_id, [ 'label' => __( 'Page Layout', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'default', 'options' => $options, ] ); $document->add_control( $control_id . '_default_description', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => __( 'Default Page Template from your theme', 'elementor' ), 'separator' => 'none', 'content_classes' => 'elementor-descriptor', 'condition' => [ $control_id => 'default', ], ] ); $document->add_control( $control_id . '_canvas_description', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => __( 'No header, no footer, just Elementor', 'elementor' ), 'separator' => 'none', 'content_classes' => 'elementor-descriptor', 'condition' => [ $control_id => self::TEMPLATE_CANVAS, ], ] ); $document->add_control( $control_id . '_header_footer_description', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => __( 'This template includes the header, full-width content and footer', 'elementor' ), 'separator' => 'none', 'content_classes' => 'elementor-descriptor', 'condition' => [ $control_id => self::TEMPLATE_HEADER_FOOTER, ], ] ); $document->end_injection(); } /** * Filter metadata update. * * Filters whether to update metadata of a specific type. * * Elementor don't allow WordPress to update the parent page template * during `wp_update_post`. * * Fired by `update_{$meta_type}_metadata` filter. * * @since 2.0.0 * @access public * * @param bool $check Whether to allow updating metadata for the given type. * @param int $object_id Object ID. * @param string $meta_key Meta key. * * @return bool Whether to allow updating metadata of a specific type. */ public function filter_update_meta( $check, $object_id, $meta_key ) { if ( '_wp_page_template' === $meta_key && Plugin::$instance->common ) { /** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */ $ajax = Plugin::$instance->common->get_component( 'ajax' ); $ajax_data = $ajax->get_current_action_data(); $is_autosave_action = $ajax_data && 'save_builder' === $ajax_data['action'] && DB::STATUS_AUTOSAVE === $ajax_data['data']['status']; // Don't allow WP to update the parent page template. // (during `wp_update_post` from page-settings or save_plain_text). if ( $is_autosave_action && ! wp_is_post_autosave( $object_id ) && DB::STATUS_DRAFT !== get_post_status( $object_id ) ) { $check = false; } } return $check; } /** * Support `wp_body_open` action, available since WordPress 5.2. * * @since 2.7.0 * @access public */ public static function body_open() { if ( function_exists( 'wp_body_open' ) ) { wp_body_open(); } else { do_action( 'wp_body_open' ); } } /** * Page templates module constructor. * * Initializing Elementor page templates module. * * @since 2.0.0 * @access public */ public function __construct() { add_action( 'init', [ $this, 'add_wp_templates_support' ] ); add_filter( 'template_include', [ $this, 'template_include' ], 11 /* After Plugins/WooCommerce */ ); add_action( 'elementor/documents/register_controls', [ $this, 'action_register_template_control' ] ); add_filter( 'update_post_metadata', [ $this, 'filter_update_meta' ], 10, 3 ); } } modules/page-templates/templates/canvas.php000066600000002336152142641200015113 0ustar00frontend->add_body_class( 'elementor-template-canvas' ); ?> > <?php echo wp_get_document_title(); ?> > modules_manager->get_modules( 'page-templates' )->print_content(); /** * After canvas page template content. * * Fires after the content of Elementor canvas page template. * * @since 1.0.0 */ do_action( 'elementor/page_templates/canvas/after_content' ); wp_footer(); ?> modules/page-templates/templates/header-footer.php000066600000001332152142641200016357 0ustar00frontend->add_body_class( 'elementor-template-full-width' ); get_header(); /** * Before Header-Footer page template content. * * Fires before the content of Elementor Header-Footer page template. * * @since 2.0.0 */ do_action( 'elementor/page_templates/header-footer/before_content' ); \Elementor\Plugin::$instance->modules_manager->get_modules( 'page-templates' )->print_content(); /** * After Header-Footer page template content. * * Fires after the content of Elementor Header-Footer page template. * * @since 2.0.0 */ do_action( 'elementor/page_templates/header-footer/after_content' ); get_footer();