commit cb26d2c0c4909dd48fe313aff7c18a00e98118c5
Author: naomi ' + etCore.text.modalTempContentCheck + '
tag, added to content in Text mode, when a new module is created
+ * includes/builder/scripts/builder.js
+- Pricing Table Module: Fixed some Custom CSS settings
+- Fullwidth Header Module: Added "Logo Title" and "Logo Image Alt Text" options
+ * includes/builder/main-modules.php
+- Updated some localization files
+ * lang/nl_NL.mo
+ * lang/nl_NL.po
+ * lang/it_IT.mo
+ * lang/it_IT.po
+ * lang/pl_PL.mo
+ * lang/pl_PL.po
+ * lang/fi.mo
+ * lang/fi.po
+ * includes/builder/languages/es_ES.mo
+ * includes/builder/languages/es_ES.po
+- Fixed the issue with Centered Inline Logo in IE
+- Bumped version number
+ * style.css
+
+version 2.4.4 ( updated 06-26-2015 )
+- Customizer: Fixed the issue with Footer Layout option, not working with localized text
+ * css/theme-customizer-controls-styles.css
+ * js/theme-customizer-controls.js
+- Customizer: Fixed the issue with light font variants, not being displayed properly in Live Preview
+ * epanel/google-fonts/et_google_fonts.js
+ * functions.php
+- Customizer: Fixed the issue with range slider tooltips, not being visible in Safari
+ * js/theme-customizer-controls.js
+- Fixed the issue with Customizer, not working properly if the Wordpress Address is different than Site Address
+ * functions.php
+- Fixed various formatting issues in WYSIWIG editor.
+ * includes/builder/scripts/builder.js
+- Fixed the issue with double quotes, disappearing in modules settings
+ * includes/builder/functions.php
+ * includes/builder/class-et-builder-element.php
+ * includes/builder/scripts/builder.js
+- Made transparent background for pagebuilder sections to be used on single pages only
+- Fixed some RTL layout issues
+ * js/custom.js
+ * rtl.css
+ * includes/builder/styles/style.css
+- Removed unneeded space at the top of the site on mobile, when 'Fixed Navigation' option is disabled in ePanel
+ * functions.php
+ * style.css
+- Fullwidth Portfolio: Fixed the issue with resizing on the page with Blog module
+ * js/custom.js
+ * includes/builder/main-modules.php
+- Login Module: Fixed the issue with "Log out" link, not being displayed for logged in users
+- Fullwidth Header Module: Buttons and Logo image now show up, even if Title and/or Subheading is not set
+- Map / Fullwidth Map Module: Fixed the issue with Custom CSS settings, not being applied on frontend
+- Blog Module: Changed blog module output to not show post content if it also has a blog module enabled
+ * includes/builder/main-modules.php
+- Mega menu width is 100% in centered inline logo header style now
+- Fixed the issue with modules visibility inside rows and fullwidth section with parallax background
+- Blurb Module: Fixed Blurb image incorrect display in Firefox
+- Bumped version number
+ * style.css
+
+version 2.4.3 ( updated 06-22-2015 )
+- Fixed the issue with CSS parallax section, not working after the Map module
+ * js/custom.js
+ * style.css
+- Fixed the Accent Color conflict with some Advanced color settings
+- Updated the Project taxonomy labels for better readability
+ * functions.php
+- Fixed the issue with submenus, being visible at all times
+- Fixed custom dropdown animation in Safari
+- Fixed dropdown menu, not working in Safari with "Hide menu until scroll" option enabled
+- Fixed animation glitch in header when using "expand" animation in Firefox
+- Fixed the issue with mobile sub-menu links, not working with flip animation
+ * style.css
+- Fullwidth Header Module: Fixed the issue with header content alignment when no image is selected
+ * includes/builder/main-modules.php
+ * style.css
+- Customizer: Fixed the issue with primary menu background option preview
+ * js/theme-customizer.js
+- Page Builder: Fixed the issue with modules alignment
+ * includes/builder/styles/style.css
+- Contact Form Module: Fixed the issue with custom button icon
+ * includes/builder/main-modules.php
+- Fixed some issues with Global Modules, not being in sync in some cases
+ * includes/builder/class-et-builder-element.php
+- Fullwidth Header Module: Added 'Text Max Width' setting
+ * includes/builder/main-modules.php
+- Bumped version number
+ * style.css
+
+version 2.4.2 ( updated 06-18-2015 )
+- Fixed the issue with image module animation when default animation selected
+
+version 2.4.1 ( updated 06-18-2015 )
+- Blog module: Fixed the issue with with stretched images in Safari
+- Fixed mega menu styling issues
+- Fixed the issue with Search bar, not visible in Safari
+- Fixed fullwidth search field position
+ * style.css
+- Fixed modules initialization on frontend
+ * functions.php
+ * includes/builder/framework.php
+- Fixed the issue with Customizer, returning back to the homepage automatically on the page with Fullwidth Portfolio module
+- Accordion Module: Fixed the issue with toggles, being opened at the same time, when a user was clicking fast.
+ * js/custom.js
+- Updated "Masonry Blog" to "Blog Grid" to match Builder verbiage
+- Updated "Full Width Slider" to "Fullwidth Slider" to match builder verbiage
+ * functions.php
+ * js/theme-customizer.js
+- Added tooltips to the Builder module icons for better usability
+ * includes/builder/functions.php
+- Fixed some visual issues with TinyMCE editor buttons in Page Builder
+ * includes/builder/styles/style.css
+- Shop Module: Fixed sort functionality
+ * includes/builder/main-modules.php
+- Fixed some issues with items, dragged to Global Sections and Rows
+ * includes/builder/scripts/builder.js
+- Fixed the issue with default module settings values, being added to custom css on pages.
+ * includes/builder/class-et-builder-element.php
+ * includes/builder/main-modules.php
+- Map Modules: Fixed main map preview
+ * includes/builder/main-modules.php
+
+version 2.4 ( updated 06-17-2015 )
+* All files changed/updated
+- Made Divi fully fluid ( all Module are percentage based now )
+- Added Divi Library and ability to save modules, rows and sections
+- Added ability to create global modules, rows and sections and sync their content
+- Added Settings for Rows
+- Added "Change Column Structure" option for Rows
+- Added Gutter width options for the entire website and for single rows
+- Added Width option for the entire website and for single rows
+- Added Advanced options and Custom CSS options to all modules.
+- Added New options into Theme Customizer and updated existing options
+ * All existing sections of customizer have been updated with new settings
+ * Added Buttons settings
+ * Added Blog settings
+ * Added Mobile styles settings
+ * Added new font options for varius areas of website and modules
+ * Added section height and row height options
+ * Added Footer layout option
+ * Some more various options
+- Added new header options
+ * Header height
+ * Fixed header height
+ * "Centered inline logo" header style
+ * "Hide Navigation Until Scroll" option
+ * Various font options for navigation
+ * Dropdown menu animation
+ * Some more various options
+- Added Module Customizer to configure General settings for every module
+- Added "Code" Module
+- Added "Fullwidth Code" Module
+- Added "Post Title" Module
+- Added "Fullwidth Post Title" Module
+- Added "Fullwidth Image" Module
+- Improved the Page Builder appearance
+- Improved all modules css code
+- Added Page Builder for posts
+- Added fullscreen option into the Fullwidth Header module
+- Moved Divi options from the Appearance menu into its own "Divi" menu
+- Reworked the Divi search bar in the header
+- Fixed the issue with pagination in Blog module when offset is defined
+- Improved Builder code and made it easier to add new custom modules
+- Various bug fixes and code improvements
+
+version 2.3.2 ( updated 04-23-2015 )
+- Fixed the issue with Aweber, breaking Page Builder on some servers, when no settings were defined
+ * functions.php
+- Added minor security hardening
+ * epanel/custom_functions.php
+ * et-pagebuilder/et-pagebuilder.php
+ * functions.php
+- Bumped version number
+ * style.css
+
+version 2.3.1 ( updated 02-19-2015 )
+- Fixed some issues with Aweber functionality
+ * functions.php
+- Fixed the issue with "Search" text, not recognized in localization files
+ * header.php
+- Fixed the issue with secondary navigation items, not visible on mobile devices
+ * js/custom.js
+- Fullwidth Module: Fixed the issue with mobile menu background color
+ * js/custom.js
+ * style.css
+- Updated localization files
+ * lang/da_DK.mo
+ * lang/da_DK.po
+ * lang/fr_FR.mo
+ * lang/fr_FR.po
+ * lang/it_IT.mo
+ * lang/it_IT.po
+ * lang/nl_NL.mo
+ * lang/nl_NL.po
+- Improved compatibility with child themes, created before the previous version of the theme ( 2.3 )
+ * epanel/custom_functions.php
+- Renamed Portuguese localizaton files
+ * lang/pt_BR.mo
+ * lang/pt_BR.po
+- Bumped version number
+ * style.css
+
+version 2.3 ( updated 02-12-2015 )
+- The theme has been translated into the following languages:
+ * Arabic
+ * Bulgarian
+ * Chinese
+ * Czech
+ * Danish
+ * Dutch
+ * Finnish
+ * French
+ * German
+ * Greek
+ * Hebrew
+ * Hungarian
+ * Indonesian
+ * Italian
+ * Japanese
+ * Korean
+ * Malay
+ * Norwegian
+ * Polish
+ * Portuguese
+ * Romanian
+ * Russian
+ * Serbian
+ * Slovak
+ * Spanish
+ * Swedish
+ * Tagalog
+ * Thai
+ * Turkish
+ * Ukranian
+ * Vietnamese
+- Fixed character encoding in layouts code
+ * et-pagebuilder/layouts/layouts.php
+- Added missing text domains for translations
+- Added Offset Number option to the Blog Module
+- Removed text color option from Blog Module grid view and set dark text color as default
+ * et-pagebuilder/et-pagebuilder.php
+ * functions.php
+- Fixed the issue with video slides in fullscreen mode
+- Adjusted styling of mobile menu and search icon on mobile devices
+- Fixed the issue with parallax effect, when CSS and True Parallax sliders were used on the same page
+- Fixed Audio module Volume Bar Height
+ * style.css
+- Fixed the issue with "NaN" value in the counter module
+- Fixed the issue with videos, breaking counters on a page
+- Clicking the logo always refresh a page properly now
+- Fixed the issue with parallax, not resizing with learn more content and toggle modules
+- Fixed the issue with multiple fullwidth mobile menus, not working properly on a page
+- Fixed the issue where mobile menu does not close after an anchor link is clicked
+ * js/custom.js
+- Fixed the issue with date, saved with double slashes
+ * epanel/core_functions.php
+ * epanel/options_divi.php
+ * functions.php
+- Fixed non-English slugs, breaking the filterable portfolio
+ * functions.php
+- Added sub-menu direction option and styling to Fullwidth Menu module
+- Added an option to allow background videos to not pause when audio is played
+ * et-pagebuilder/et-pagebuilder.php
+ * functions.php
+ * js/custom.js
+- Improved video background functionality
+ * js/custom.js
+ * style.css
+- Added support for webm format in video module
+ * et-pagebuilder/et-pagebuilder.php
+ * functions.php
+- Updated image uploader in ePanel
+ * epanel/core_functions.php
+ * epanel/js/custom_uploader.js
+ * epanel/options_divi.php
+- Fullwidth menus now use classes in place of ids to pass HTML validation
+ * functions.php
+ * style.css
+- Fixed styling for password protected posts, pages and projects
+ * functions.php
+ * js/theme-customizer.js
+ * style.css
+- Removed focus styling in ePanel
+ * epanel/css/panel.css
+- Fixed the issue with responsive shortcodes, not working correctly
+ * epanel/shortcodes/css/shortcodes_responsive.css
+- Fixed fonts preview in Customizer
+ * epanel/google-fonts/et_google_fonts.js
+- Fixed the issue with Video player, not shown for video posts using self hosted videos
+ * functions.php
+ * style.css
+- Fixed the issue with Aweber, breaking the page builder if no API options are set in ePanel
+- Fixed FeedBurner form html code in the Subscribe Module
+ * functions.php
+- Fixed the issue with Media Library images Grayed Out in "Upload image" modal window
+ * et-pagebuilder/css/jquery-ui-1.10.4.custom.css
+- Inner Shadow option works in sections with CSS parallax now
+ * functions.php
+- Switched the footer RSS link from the comments feed to the main feed
+ * includes/social_icons.php
+- Fixed fullwidth modules styling issues in the "Insert Module" modal box
+ * et-pagebuilder/css/style.css
+- Added localization to all strings in the theme
+- The theme is now compatible with Right-to-Left Languages
+- Code improvements
+
+version 2.2 ( updated 11-06-2014 )
+- 2 New Modules: Video and Video Slider
+ * et-pagebuilder/css/style.css
+ * et-pagebuilder/et-pagebuilder.php
+ * et-pagebuilder/js/admin.js
+ * functions.php
+ * js/custom.js
+ * style.css
+ * Renamed fonts:
+ * et-pagebuilder/fonts/etbuilder_v2_2.eot
+ * et-pagebuilder/fonts/etbuilder_v2_2.svg
+ * et-pagebuilder/fonts/etbuilder_v2_2.ttf
+ * et-pagebuilder/fonts/etbuilder_v2_2.woff
+- Renamed Team Member module to Person Module
+ * et-pagebuilder/et-pagebuilder.php
+ * et-pagebuilder/js/admin.js
+- Added login_post scheme variable to login form module ( Fixes issues with Login module on WP Engine )
+ * functions.php
+- Removed all "fuzzy" translations from localization files
+ * lang/de_DE.mo
+ * lang/de_DE.po
+ * lang/en_US.mo
+ * lang/en_US.po
+ * lang/ru_RU.mo
+ * lang/ru_RU.po
+- Fixed bug that would make countdown timer days negative when event has passed
+- Fixed the issue with Number Counter decimal values, rounded on scroll event
+ * js/custom.js
+- Increased z-index on Scroll To Top button to display it to ensure it's always displayed on top of all elements
+- Bumped version number
+ * style.css
+
+version 2.1.4 ( updated 09-02-2014 )
+- Fixed MailChimp API file name
+ * includes/subscription/mailchimp/mailchimp.php
+- Bumped version number
+ * style.css
+
+version 2.1.3 ( updated 09-01-2014 )
+- Date Option: Fixed the issue with slashes not being saved properly in ePanel
+ * epanel/core_functions.php
+- Subscribe Module: Fixed the issues with Aweber and MailChimp. Added ajax loader icon.
+ * functions.php
+ * includes/subscription/mailchimp
+ * js/custom.js
+ * style.css
+- Fixed the issue with WYSIWIG editor visibility, when default editor gets activated
+ * et-pagebuilder/js/admin.js
+- Fixed some issues with contact form, placed below the portfolio module
+- Fixed the issue with warning message, appearing when the account wasn't configured in ePanel
+ * functions.php
+- Bumped version number
+ * style.css
+
+version 2.1.2 ( updated 07-24-2014 )
+- Fixed the issue with wrong theme number value detected, if a child theme is being used
+ * functions.php
+- Bumped version number
+ * style.css
+
+version 2.1.1 ( updated 07-23-2014 )
+- Fixed the issue with ul and ol elements styling in Page Builder layouts
+- Bumped version number
+ * style.css
+
+version 2.1 ( updated 07-22-2014 )
+- Added "Back to top" button
+- Added Side Navigation on single pages
+- Fixed the issue with button arrow position in Chrome
+- Don't show page builder code on search results page
+- WYSIWIG mode in Page Builder is now saved, it defaulted to Visual before
+- Gallery module: Fixed the issue with "Random Order" option
+- Fixed 1/4 column slider appearance
+- Fixed html list appearance on index page
+- Fixed the issue with Firefox not saving the layout if modules were moved
+- Fixed the issue with double quotes, used in Page Builder settings
+- Modified Page Builder elements to be responsive
+- Added transparent background option to Sections
+- Added Close button to the Specialty Section Modal window
+- Image Module: Added Title Text option
+- Added smooth scrolling for internal links
+- Subscribe Module: Integrated Mailchimp 2.0 API
+- Added the option to enable smooth scrolling
+- Image module: Added "Remove space below the image" option
+- Filterable Portfolio: Fixed animation issues in Firefox
+- Fixed Widget Area Select ( dropdown ) styling issues
+- Added the option to enable/disable background-size: cover for "body"
+- Circle Counter: Added limit to the number field
+- Circle Counter: Fixed the issue with lazy loading animation
+- Disabled the Lazy Loading effect on mobile devices to improve usability
+- Filterable Portfolio: Fixed the animation in FF browser
+- Pagination: Added localization for Previous and Next links
+- Fixed the issue with scrolling to the top of window, when the user clones a section or a row
+- Fixed "Menu displayed behind the embedded videos in IE" issue
+- Users shouldn't create sidebars with certain names. Added a note to the Widgets page.
+- Fixed Woocommerce notification bar appearance
+- Fixed the issue with separator in postmeta
+- Fixed "Link color" option in the Customizer
+- Added sidebar on WooCommerce category pages
+- Fixed some styling issues on the category page
+- Section Module: Fixed Background Color option description
+- Blog Module: Fixed the width of posts in 4/4 column
+- Comments are now visible on pages, where they have been disabled, if there is at least 1 comment on the page
+- Map Module: Fixed the issue with custom ID/Class settings
+- Blurbs Module: Fixed settings description
+- Fixed the issue with inactive secondary menu items on mobile devices
+- Fixed the issue with lightbox on pages with several gallery modules. Lightbox scrolls through the images from a single gallery now.
+- Slider Module: Added parallax option
+- Fixed the issue with jumping image in the slider module
+- Pricing Table Module: Fixed layout issues
+- Fixed the issue with jumping slides during transitions
+- Secondary navigation: Added email link
+- Map Module: Added mouse zoom option
+- Fixed mega menu width on iPad
+- Filterable Portfolio Module: Now it displays only selected categories, not all the categories selected projects assigned to.
+- Blog Module: Added option to display the read more button if "Show Excerpts" option is selected
+- Login Module: Fixed the module appearance for logged in users
+- Map Module: Centered infowindow above the pin
+- Fixed the issue with module settings window visibility. It's not hidden below the Wordpress menu anymore.
+- Project Page: Fixed the issue with the space on top of the page
+- Fixed the issue with the search field display
+- Fixed the fullscreen editor visibility issues
+- Portfolio Module: Fixed portfolio layout issues
+- Renamed icon font files to fix the issue with cache
+- Accordion module: Fixed some animation glitches
+- Countdown Module: Fixed issues in Safari and IE
+- Fixed fonts options in the Customizer
+- Fixed the issue with content visible on some password protected posts pages
+
+List of modified files:
+* epanel/google-fonts/et_google_fonts.js
+* epanel/options_divi.php
+* et-pagebuilder/css/style.css
+* et-pagebuilder/et-pagebuilder.php
+* et-pagebuilder/fonts/etbuilder.eot
+* et-pagebuilder/fonts/etbuilder.svg
+* et-pagebuilder/fonts/etbuilder.ttf
+* et-pagebuilder/fonts/etbuilder.woff
+* et-pagebuilder/fonts/etbuilder_v2.eot
+* et-pagebuilder/fonts/etbuilder_v2.svg
+* et-pagebuilder/fonts/etbuilder_v2.ttf
+* et-pagebuilder/fonts/etbuilder_v2.woff
+* et-pagebuilder/js/admin.js
+* et-pagebuilder/js/widgets.js
+* fonts/ETmodules.eot
+* fonts/ETmodules.svg
+* fonts/ETmodules.ttf
+* fonts/ETmodules.woff
+* fonts/ETmodules_v2.eot
+* fonts/ETmodules_v2.svg
+* fonts/ETmodules_v2.ttf
+* fonts/ETmodules_v2.woff
+* footer.php
+* functions.php
+* header.php
+* includes/subscription/mailchimp/MCAPI.class.php
+* includes/subscription/mailchimp/Mailchimp.php
+* includes/subscription/mailchimp/Mailchimp/Campaigns.php
+* includes/subscription/mailchimp/Mailchimp/Conversations.php
+* includes/subscription/mailchimp/Mailchimp/Ecomm.php
+* includes/subscription/mailchimp/Mailchimp/Exceptions.php
+* includes/subscription/mailchimp/Mailchimp/Folders.php
+* includes/subscription/mailchimp/Mailchimp/Gallery.php
+* includes/subscription/mailchimp/Mailchimp/Goal.php
+* includes/subscription/mailchimp/Mailchimp/Helper.php
+* includes/subscription/mailchimp/Mailchimp/Lists.php
+* includes/subscription/mailchimp/Mailchimp/Mobile.php
+* includes/subscription/mailchimp/Mailchimp/Neapolitan.php
+* includes/subscription/mailchimp/Mailchimp/Reports.php
+* includes/subscription/mailchimp/Mailchimp/Templates.php
+* includes/subscription/mailchimp/Mailchimp/Users.php
+* includes/subscription/mailchimp/Mailchimp/Vip.php
+* index.php
+* js/custom.js
+* js/smoothscroll.js
+* js/theme-customizer.js
+* lang/de_DE.mo
+* lang/de_DE.po
+* lang/en_US.mo
+* lang/en_US.po
+* lang/ru_RU.mo
+* lang/ru_RU.po
+* page.php
+* single-project.php
+* single.php
+* style.css
+
+version 2.0 ( updated 05-21-2014 )
+* All files changed/updated
+- Added many options to WordPress Customizer
+- Added lightbox to images
+- Added real parallax effect
+- More elements utilize accent color setting
+- Added Aweber and Feedburner integrations for Subscribe module
+- Added post formats support
+ - Video
+ - Audio
+ - Quote
+ - Gallery
+ - Link
+- New Header Options
+ - Added vertical navigation option
+ - Added optional secondary header menu
+ - Added boxed layout option
+ - Added centered main menu option
+- Pagebuilder Updates
+ - New specialty sections
+ - Added many new pre-made layouts
+ - Added clone module functionality
+- Updated Modules
+ - Blurb
+ - Testimonials
+- Added New Modules
+ - Gallery
+ - Audio
+ - Login
+ - Filterable Portfolio
+ - Circle Counter
+ - Number Counter
+ - Accordion
+ - Team Member
+ - Countdown Timer
+ - Social Media Follow
+ - Map
+ - Fullwidth Map
+ - Fullwidth Menu
+ - Fullwidth Portfolio
+- Fixed the issue with jumping backround image in sliders
+- Many bug fixes and CSS improvements
+- Bumped version number
+
+
+version 1.9.1 ( updated 04-21-2014 )
+- Fixed Page Builder issues in IE9 and IE10
+ * et-pagebuilder/js/admin.js
+- Bumped version number
+ * style.css
+
+version 1.9 ( updated 04-17-2014 )
+- Corrected js files version number
+ * et-pagebuilder/et-pagebuilder.php
+- Bumped version number
+ * style.css
+
+version 1.8 ( updated 04-15-2014 )
+- The theme is compatible with WordPress 3.9 now
+ * et-pagebuilder/js/admin.js
+ * et-pagebuilder/css/style.css
+
+version 1.7 ( updated 03-06-2014 )
+- Fixed the issue with Blog and Portfolio modules pagination on static frontpage
+- Fixed the issue with video background in a section, overlaying any content within the section
+ * functions.php
+- Fixed mega menu styling at 960 breakpoint
+- Adjusted slider arrow positioning at small sizes
+- Improved readability of slider text
+- Fixed slider padding issue at mobile breakpoint
+- Consolidated header styles
+- Adjusted newsletter styling for added consistency
+- Changed Blurb & Toggle headings for improved hierarchy
+- Adjusted WooCommerce headings for added consistency
+- Adjusted portfolio headings for added consistency
+- Styled the search widget
+- Bumped version number
+ * style.css
+
+version 1.6 ( updated 02-26-2014 )
+- Added the slide link to heading in the Slider module
+- Fixed the issue with the separator symbol, appearing in the wrong place, when some items are disabled in the post info section.
+- Fixed validation errors in slider and section modules
+- Added "New Message From 'Site Name' - 'Contact Form Title'" to the email title field
+ * functions.php
+- Fixed the issue with resizing of images that have the x symbol between width and height values in the filename
+- Fixed the issue with .jpeg images and uppercase extensions in cached files
+- The theme doesn't strip slashes from custom css now, when saving the option to the database
+- Removed buzz shortcode ( Google retired Buzz )
+- Fixed ePanel SEO home options not appearing on static front page
+- Better compatibility with WordPress SEO and All In One SEO Pack plugins. ePanel SEO is disabled if these plugins are active now.
+ * epanel/core_functions.php
+ * epanel/custom_functions.php
+ * epanel/shortcodes/shortcodes.php
+- Disabled lazy loading animations on mobile devices
+- 'Slide Text Color' option affects navigation arrows and controls color now in the Slider Module
+ * js/custom.js
+ * style.css
+- Fixed the issue with "Disable Top Menu Links" option in ePanel
+ * js/custom.js
+- Fixed WooCommerce styling issues
+- Fixed the issue with post content, visible in tiled blog posts at 320 breakpoint
+- Fixed the issue with Portfolio module images not visible in IE8
+- Fixed the issue with mediaelementjs videos not displaying correctly in full-screen mode in IE10 and IE11
+- Fixed tiled blog post styling in 1/4 column at 480 and 320 breakpoints
+- Fixed Contact form module styling at 768px breakpoint
+- Bumped version number
+ * style.css
+
+version 1.5 ( updated 02-18-2014 )
+- Fixed 'Your theme has bundled outdated copies of WooCommerce template files' warning message
+ * functions.php
+ * deleted woocommerce folder
+- Fixed Review form styling
+- Bumped version number
+ * style.css
+
+version 1.4 ( updated 02-11-2014 )
+- Fixed WooCommerce Sidebar Error
+- Added Anti Aliasing
+- Fixed the issue with megamenu dropdown links visibility
+- Fixed Counters animation in Firefox
+- Fixed a typo in Porfolio module title
+- Fixed 'multiple sliders on one page' issues
+- Fixed the issue with hidden checkboxes and radio elements
+
+List of modified files:
+* style.css
+* js/custom.js
+* et-pagebuilder/et-pagebuilder.php
+* functions.php
+
+version 1.3 ( updated 01-14-2014 )
+- Fixed the issue with multiple categories selected in the Portfolio module
+- Fixed the issue with the Contact Form module, not using the Email setting
+- Fixed the issue with the More Tag in the Blog module
+- Added 'Fixed Navigation Bar' option
+- Added 'Automatic slider animation' option
+- Added id and class options to modules. Defined et-hide-mobile class, it can be used to hide the module on mobile devices.
+- Fixed validation issues with Contact form and top menu
+- Fixed Color Schemes options not saving in the Customizer
+- Fixed Text Orientation in the Blurb module
+- Fixed the issue with Footer Widget Areas not styled in the Sidebar module
+- Fixed the issue with dropdown menu not showing in Safari and iPad in landscape mode
+- Removed Cropping from standard blog posts featured images
+- Slider arrows are shown at all times on mobile devices now
+- Added 'Image Vertical Alignment' option to the Slider module
+- Added localization for the Subscribe Module
+- Added link to the Blurb module image
+- Added 'open in a new window' option to the Image module
+- Added 'Text orientation' option to the Fullwidth Header module
+- Applied fitVids jQuery plugin to all videos
+- Added 'No Animation' option to Image and Blurb modules
+- Fixed 'Bottom To Top' animation
+- Fixed Pricing tables columns structure in 1/3, 2/3, 1/4, 1/2 columns
+- Removed cropping from the main product image
+- Removed default iOS form elements styling
+- Fixed Calendar widget styling
+- Fixed video embedding issues
+- Fixed the issue with sub menu, displayed behind embedded videos
+- Fixed 1/3 and 1/4 tab modules display on mobile breakpoints
+- Fixed 3.8 admin bar front-end styling on mobile devices
+- Fixed Products pages styling
+- Fixed Blog module styling in 1/4 column
+- Fixed pagination styling for blog/shop/portfolio pages
+- Fixed the issue with Slide Video not displaying in Firefox
+- Fixed slider description text width at mobile sizes
+- Fixed pricing table styling at 768px breakpoint
+- Fixed 1/3 and 1/4 column styling at 768px breakpoint
+- Fixed shop module styling at 768px breakpoint
+- Fixed slider module youtube videos size for all columns
+- Fixed the issue with pagination on search pages
+
+List of modified files:
+* epanel/options_divi.php
+* epanel/post_thumbnails_divi.php
+* et-pagebuilder/et-pagebuilder.php
+* functions.php
+* header.php
+* includes/functions/sidebars.php
+* index.php
+* js/custom.js
+* lang/de_DE.mo
+* lang/de_DE.po
+* lang/en_US.mo
+* lang/en_US.po
+* lang/ru_RU.mo
+* lang/ru_RU.po
+* page.php
+* single.php
+* style.css
+
+version 1.2 ( updated 12-23-2013 )
+- Now you can update Elegant Themes in the Dashboard: https://www.elegantthemes.com/members-area/documentation.html#updater
+ * epanel/custom_functions.php
+- Bumped version number
+ * style.css
+
+version 1.1 ( updated 12-11-2013 )
+- Fixed errors with the theme on some servers
+ * et-pagebuilder/et-pagebuilder.php
+- Fixed issues with saving layouts with no modules
+ * et-pagebuilder/js/admin.js
+- Fixed Search Icon bug in Firefox
+ * style.css
+- Fixed the issue with flashing image in the slider with video preloader
+ * functions.php
+ * js/custom.js
+
+version 1.0
+
+- initial release
diff --git a/comments.php b/comments.php
new file mode 100644
index 0000000..e96d819
--- /dev/null
+++ b/comments.php
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+" + descheading + "
" + desctext + "
' + this.text.browserSupport + '
', false, 3000, '#et-core-portability-import'); + + $this.enableActions(); + + return; + } + + if (!$this.validateImportFile(file)) { + return; + } + + $this.addProgressBar( $this.text.importing ); + + // Export Backup if set. + if ( $this.instance( '[name="et-core-portability-import-backup"]' ).is( ':checked' ) && ! noBackup ) { + $this.export( true ); + + $( $this ).on( 'exported', function() { + $this.import( true ); + } ); + + return; + } + + var includeGlobalPresets = $this.instance('[name="et-core-portability-import-include-global-presets"]').is(':checked'); + + $this.ajaxAction( { + action: 'et_core_portability_import', + file: file, + include_global_presets: includeGlobalPresets, + nonce: $this.nonces.import + }, function( response ) { + etCore.modalContent( '', false, 3000, '#et-core-portability-import' ); + $this.toggleCancel(); + + $( document ).delay( 3000 ).queue( function() { + etCore.modalContent( '', false, false, '#et-core-portability-import' ); + + $( this ).dequeue().delay( 2000 ).queue( function() { + // Save post content for individual content. + if ( 'undefined' !== typeof response.data.postContent ) { + var save = $( '#save-action #save-post' ); + + if ( save.length === 0 ) { + save = $( '#publishing-action input[type="submit"]' ); + } + + if ( 'undefined' !== typeof window.tinyMCE && window.tinyMCE.get( 'content' ) && ! window.tinyMCE.get( 'content' ).isHidden() ) { + var editor = window.tinyMCE.get( 'content' ); + + editor.setContent(response.data.postContent.trim(), { format: 'html' }); + } else { + $('#content').val(response.data.postContent.trim()); + } + + save.trigger( 'click' ); + + window.onbeforeunload = function() { + $( 'body' ).fadeOut( 500 ); + } + } else { + $( 'body' ).fadeOut( 500, function() { + // Remove confirmation popup before relocation. + $( window ).off( 'beforeunload' ); + + window.location = window.location.href.replace(/reset\=true\&|\&reset\=true/,''); + } ) + } + } ); + } ); + }, true ); + }, + + export: function( backup ) { + var $this = this, + progressBarMessages = backup ? $this.text.backuping : $this.text.exporting; + + $this.save( function() { + var posts = {}, + content = false; + + // Include selected posts. + if ( $this.instance( '[name="et-core-portability-posts"]' ).is( ':checked' ) ) { + $( '#posts-filter [name="post[]"]:checked:enabled' ).each( function() { + posts[this.id] = this.value; + } ); + + // do not proceed and display error message if no Items selected + if ( $.isEmptyObject( posts ) ) { + etCore.modalContent( '' + $this.text.maxSizeExceeded + '
', false, true, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + + $this.enableActions(); + + return; + } + // Memory size set on server is exhausted. + else if ( 'string' === typeof response && response.toLowerCase().indexOf( 'memory size' ) >= 0 ) { + etCore.modalContent( '' + $this.text.memoryExhausted + '
', false, true, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + + $this.enableActions(); + + return; + } + // Paginate. + else if ( 'undefined' !== typeof response.page ) { + var progress = Math.ceil( ( response.page * 100 ) / response.total_pages ); + + if ( $this.cancelled ) { + return; + } + + $this.toggleCancel( true ); + + $this.ajaxAction( $.extend( data, { + page: parseInt( response.page ) + 1, + timestamp: response.timestamp, + file: null, + } ), callback, false ); + + $this.instance( '.et-core-progress-bar' ) + .width( progress + '%' ) + .text( progress + '%' ); + + $this.instance( '.et-core-progress-subtext span' ).text( Math.ceil( ( ( response.total_pages - response.page ) * 6 ) / 60 ) ); + + return; + } else if ( 'undefined' !== typeof response.data && 'undefined' !== typeof response.data.message ) { + etCore.modalContent( '' + $this.text[response.data.message] + '
', false, 3000, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + + $this.enableActions(); + + return; + } + + // Timestamp when AJAX response is received + var ajax_returned_timestamp = new Date().getTime(); + + // Animate Progresss Bar + var animateCoreProgressBar = function( DOMHighResTimeStamp ) { + // Check has been performed for 3s and progress bar DOM still can't be found, consider it fail to avoid infinite loop + var current_timestamp = new Date().getTime(); + if ((current_timestamp - ajax_returned_timestamp) > 3000) { + $this.enableActions(); + etCore.modalContent( '', false, 3000, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + return; + } + + // Check if core progress DOM exists + if ($this.instance( '.et-core-progress' ).length ) { + $this.instance( '.et-core-progress' ) + .removeClass( 'et-core-progress-striped' ) + .find( '.et-core-progress-bar' ).width( '100%' ) + .text( '100%' ) + .delay( 1000 ) + .queue( function() { + + $this.enableActions(); + + if ( 'undefined' === typeof response.data || ( 'undefined' !== typeof response.data && ! response.data.timestamp ) ) { + etCore.modalContent( '', false, 3000, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + return; + } + + $( this ).dequeue(); + + callback( response ); + } ); + } else { + // Recheck on the next animation frame + window.requestAnimationFrame(animateCoreProgressBar); + } + } + animateCoreProgressBar(); + } + }; + + if ( fileSupport ) { + var fileSize = Math.ceil( ( data.file.size / ( 1024 * 1024 ) ).toFixed( 2 ) ), + formData = new FormData(); + + /** + * Max size set on server is exceeded. + * + * 0 indicating "unlimited" according to php specs + * https://www.php.net/manual/en/ini.core.php#ini.post-max-size + **/ + if ( + ( 0 > $this.postMaxSize && fileSize >= $this.postMaxSize ) + || ( 0 > $this.uploadMaxSize && fileSize >= $this.uploadMaxSize ) + ) { + etCore.modalContent( '' + $this.text.maxSizeExceeded + '
', false, true, '#' + $this.instance( '.ui-tabs-panel:visible' ).attr( 'id' ) ); + + $this.enableActions(); + + return; + } + + $.each( ajax.data, function( name, value ) { + formData.append( name, value); + } ); + + ajax = $.extend( ajax, { + data: formData, + processData: false, + contentType : false, + } ); + } + + $.ajax( ajax ); + }, + + // This function should be overwritten for options portability type to make sure data are saved before exporting. + save: function( callback ) { + if ( 'undefined' !== typeof wp && 'undefined' !== typeof wp.customize ) { + var saveCallback = function() { + callback(); + wp.customize.unbind( 'saved', saveCallback ); + } + + $('#save').trigger('click'); + + wp.customize.bind( 'saved', saveCallback ); + } else { + // Add a slight delay for animation purposes. + setTimeout( function() { + callback(); + }, 1000 ) + } + }, + + addProgressBar: function( message ) { + etCore.modalContent( '' . $annotation . '';
+ }
+ }
+
+ // Get the upgrade notice for the new plugin version.
+ if ( isset( $plugin_data->update->upgrade_notice ) ) {
+ $upgrade_notice = '
' . wp_strip_all_tags( $plugin_data->update->upgrade_notice );
+ } else {
+ $upgrade_notice = '';
+ }
+
+ $details_url = self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '§ion=changelog&TB_iframe=true&width=640&height=662' );
+ $details = sprintf(
+ '%3$s',
+ esc_url( $details_url ),
+ /* translators: 1: Plugin name, 2: Version number. */
+ esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $plugin_name, $plugin_data->update->new_version ) ),
+ /* translators: %s: Plugin version. */
+ sprintf( __( 'View version %s details.' ), $plugin_data->update->new_version )
+ );
+
+ $checkbox_id = 'checkbox_' . md5( $plugin_name );
+
+ // Plugin template properties. There is no compatible_wp property passed here.
+ $plugin_processed[ $plugin_file ] = array(
+ 'plugin_file' => esc_attr( $plugin_file ),
+ 'name' => esc_attr( $plugin_name ),
+ 'checkbox_id' => esc_attr( 'checkbox_' . md5( $plugin_name ) ),
+ 'icon' => et_core_intentionally_unescaped( $icon, 'html' ),
+ 'version' => esc_attr( $plugin_version ),
+ 'new_version' => esc_attr( $plugin_data->update->new_version ),
+ 'compatible_php' => $compatible_php,
+ 'compat' => et_core_intentionally_unescaped( $compat, 'html' ),
+ 'upgrade_notice' => et_core_intentionally_unescaped( $upgrade_notice, 'html' ),
+ 'details' => et_core_intentionally_unescaped( $details, 'html' ),
+ );
+ }
+
+ return $plugin_processed;
+ }
+
+ /**
+ * Get themes data for Update Core page.
+ *
+ * @since 4.7.0
+ *
+ * @return array
+ */
+ public function get_update_core_themes_data() {
+ $theme_updates = get_theme_updates();
+ $theme_processed = array();
+
+ // Bail early if there is no theme updates.
+ if ( empty( $theme_updates ) ) {
+ return array();
+ }
+
+ foreach ( $theme_updates as $stylesheet => $theme ) {
+ // a. Check compatibility.
+ $requires_wp = et_()->array_get( $theme->update, 'requires', null );
+ $requires_php = et_()->array_get( $theme->update, 'requires_php', null );
+ $compatible_wp = is_wp_version_compatible( $requires_wp );
+ $compatible_php = is_php_version_compatible( $requires_php );
+
+ // b. Process compatibility warning text.
+ $compat = '';
+
+ if ( ! $compatible_wp && ! $compatible_php ) {
+ $compat .= '
' . __( 'This update doesn’t work with your versions of WordPress and PHP.' ) . ' ';
+ if ( current_user_can( 'update_core' ) && current_user_can( 'update_php' ) ) {
+ $compat .= sprintf(
+ /* translators: 1: URL to WordPress Updates screen, 2: URL to Update PHP page. */
+ __( 'Please update WordPress, and then learn more about updating PHP.' ),
+ esc_url( self_admin_url( 'update-core.php' ) ),
+ esc_url( wp_get_update_php_url() )
+ );
+
+ $annotation = wp_get_update_php_annotation();
+
+ if ( $annotation ) {
+ $compat .= '
' . $annotation . ''; + } + } elseif ( current_user_can( 'update_core' ) ) { + $compat .= sprintf( + /* translators: %s: URL to WordPress Updates screen. */ + __( 'Please update WordPress.' ), + esc_url( self_admin_url( 'update-core.php' ) ) + ); + } elseif ( current_user_can( 'update_php' ) ) { + $compat .= sprintf( + /* translators: %s: URL to Update PHP page. */ + __( 'Learn more about updating PHP.' ), + esc_url( wp_get_update_php_url() ) + ); + + $annotation = wp_get_update_php_annotation(); + + if ( $annotation ) { + $compat .= '
' . $annotation . '';
+ }
+ }
+ } elseif ( ! $compatible_wp ) {
+ $compat .= '
' . __( 'This update doesn’t work with your version of WordPress.' ) . ' ';
+ if ( current_user_can( 'update_core' ) ) {
+ $compat .= sprintf(
+ /* translators: %s: URL to WordPress Updates screen. */
+ __( 'Please update WordPress.' ),
+ esc_url( self_admin_url( 'update-core.php' ) )
+ );
+ }
+ } elseif ( ! $compatible_php ) {
+ $compat .= '
' . __( 'This update doesn’t work with your version of PHP.' ) . ' ';
+ if ( current_user_can( 'update_php' ) ) {
+ $compat .= sprintf(
+ /* translators: %s: URL to Update PHP page. */
+ __( 'Learn more about updating PHP.' ),
+ esc_url( wp_get_update_php_url() )
+ );
+
+ $annotation = wp_get_update_php_annotation();
+
+ if ( $annotation ) {
+ $compat .= '
' . $annotation . '';
+ }
+ }
+ }
+
+ // Theme template properties.
+ $theme_processed[ $stylesheet ] = array(
+ 'stylesheet' => esc_attr( $stylesheet ),
+ 'name' => esc_attr( $theme->display( 'Name' ) ),
+ 'checkbox_id' => esc_attr( 'checkbox_' . md5( $theme->get( 'Name' ) ) ),
+ 'screenshot' => esc_url( $theme->get_screenshot() ),
+ 'version' => esc_attr( $theme->display( 'Version' ) ),
+ 'new_version' => esc_attr( et_()->array_get( $theme->update, 'new_version', '' ) ),
+ 'compatible_wp' => $compatible_wp,
+ 'compatible_php' => $compatible_php,
+ 'compat' => et_core_esc_previously( $compat ),
+ );
+ }
+
+ return $theme_processed;
+ }
+
+ /**
+ * Enqueue compatibility warning scripts and its local data.
+ *
+ * @since 4.7.0
+ */
+ public function enqueue_scripts() {
+ global $pagenow, $wp_customize;
+
+ // Bail early if the current page is not one of the allowed pages.
+ $allowed_pages = array(
+ 'update-core.php',
+ 'customize.php',
+ 'themes.php',
+ );
+
+ if ( ! in_array( $pagenow, $allowed_pages, true ) ) {
+ return;
+ }
+
+ // Enqueue main scripts.
+ wp_enqueue_script( 'et_compatibility_warning_script', ET_CORE_URL . 'admin/js/compatibility-warning.js', array( 'jquery' ), ET_CORE_VERSION, true );
+
+ $compatibility_warning = array();
+
+ if ( 'update-core.php' === $pagenow ) {
+ $compatibility_warning['update_core_data'] = array(
+ 'plugins' => self::get_update_core_plugins_data(),
+ 'themes' => self::get_update_core_themes_data(),
+ );
+ } elseif ( 'themes.php' === $pagenow ) {
+ $compatibility_warning['manage_themes_data'] = true;
+ } elseif ( 'customize.php' === $pagenow ) {
+ // Ensure style.css file exist.
+ $theme_root = $wp_customize->theme()->theme_root;
+ $theme_slug = $wp_customize->theme()->stylesheet;
+ $theme_file = "{$theme_root}/{$theme_slug}/style.css";
+
+ // Get WP & PHP compatibility info.
+ $theme_headers = array();
+
+ if ( file_exists( $theme_file ) ) {
+ $theme_headers = get_file_data(
+ $theme_file,
+ array(
+ 'RequiresWP' => 'Requires at least',
+ 'RequiresPHP' => 'Requires PHP',
+ ),
+ 'theme'
+ );
+ }
+
+ $requires_wp = et_()->array_get( $theme_headers, 'RequiresWP', false );
+ $requires_php = et_()->array_get( $theme_headers, 'RequiresPHP', false );
+
+ // Theme Customizer - Used for disable publish button.
+ $compatibility_warning['customizer_data'] = array(
+ 'compatible_wp' => is_wp_version_compatible( $requires_wp ),
+ 'compatible_php' => is_php_version_compatible( $requires_php ),
+ 'disabled_text' => esc_html_x( 'Cannot Activate', 'theme' ),
+ );
+ }
+
+ wp_localize_script( 'et_compatibility_warning_script', 'et_compatibility_warning', $compatibility_warning );
+ }
+
+ /**
+ * Overrides table body of plugin updates section.
+ *
+ * The structure is backported from WP 5.5 without any modification.
+ *
+ * @see {list_plugin_updates()} of WP 5.5
+ *
+ * @since 4.7.0
+ */
+ public function overrides_update_core_plugins_table_body() {
+ // Bail early if there is no plugin updates.
+ if ( empty( get_plugin_updates() ) ) {
+ return;
+ }
+ ?>
+
+
+
+
+
+
+
+ response ) && is_array( $update_plugins->response ) ) {
+ foreach ( $update_plugins->response as $plugin_file => $plugin ) {
+ $requires_php = isset( $plugin->requires_php ) ? $plugin->requires_php : null;
+ $compatible_php = is_php_version_compatible( $requires_php );
+
+ // Bail early if the package empty or already compatible with current PHP version.
+ if ( empty( $plugin->package ) || $compatible_php ) {
+ continue;
+ }
+
+ // Need to remove default action before we can replace it with the new one.
+ remove_action( "after_plugin_row_$plugin_file", 'wp_plugin_update_row', 10, 2 );
+ add_action( "after_plugin_row_$plugin_file", array( $this, 'plugin_update_row_compatibility_error' ), 10, 2 );
+ }
+ }
+ }
+
+ /**
+ * Display plugin update row with error compatibility.
+ *
+ * @see {wp_plugin_update_row()} of WP 5.5
+ *
+ * @since 4.7.0
+ *
+ * @param string $file Plugin basename.
+ * @param array $plugin_data Plugin information.
+ */
+ public function plugin_update_row_compatibility_error( $file, $plugin_data ) {
+ if ( ! is_network_admin() && is_multisite() ) {
+ return;
+ }
+
+ $update_plugins = get_site_transient( 'update_plugins' );
+
+ if ( ! isset( $update_plugins->response[ $file ] ) ) {
+ return;
+ }
+
+ // a. Plugin response.
+ $response = $update_plugins->response[ $file ];
+
+ // b. Plugin name.
+ $plugins_allowedtags = array(
+ 'a' => array(
+ 'href' => array(),
+ 'title' => array(),
+ ),
+ 'abbr' => array( 'title' => array() ),
+ 'acronym' => array( 'title' => array() ),
+ 'code' => array(),
+ 'em' => array(),
+ 'strong' => array(),
+ );
+
+ $plugin_name = wp_kses( $plugin_data['Name'], $plugins_allowedtags );
+
+ // c. Details URL.
+ $details_url = self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $response->slug . '§ion=changelog&TB_iframe=true&width=600&height=800' );
+
+ // d. Active class.
+ if ( is_network_admin() ) {
+ $active_class = is_plugin_active_for_network( $file ) ? ' active' : '';
+ } else {
+ $active_class = is_plugin_active( $file ) ? ' active' : '';
+ }
+
+ /**
+ * Column count.
+ *
+ * @var WP_Plugins_List_Table $wp_list_table
+ */
+ $wp_list_table = _get_list_table(
+ 'WP_Plugins_List_Table',
+ array(
+ 'screen' => get_current_screen(),
+ )
+ );
+
+ // f. Error text.
+ $update_php_notation = wp_get_update_php_annotation();
+
+ $error_text = sprintf(
+ /* translators: 1: Plugin name, 2: Details URL, 3: Additional link attributes, 4: Version number 5: URL to Update PHP page. */
+ __( 'There is a new version of %1$s available, but it doesn’t work with your version of PHP. View version %4$s details or learn more about updating PHP. %6$s' ),
+ $plugin_name,
+ esc_url( $details_url ),
+ sprintf(
+ 'class="thickbox open-plugin-details-modal" aria-label="%s"',
+ /* translators: 1: Plugin name, 2: Version number. */
+ esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $plugin_name, $response->new_version ) )
+ ),
+ esc_attr( $response->new_version ),
+ esc_url( wp_get_update_php_url() ), // #5
+ ! empty( $update_php_notation ) ? sprintf( __( '
%s' ), $update_php_notation ) : ''
+ );
+
+ printf(
+ /* translators: 1: Active class, 2: Update slug, 3: Slug, 4: Plugin file, 5: Column count. */
+ '
' . sprintf( + __( 'Learn more about updating PHP.' ), + esc_url( wp_get_update_php_url() ) + ); + + $annotation = wp_get_update_php_annotation(); + + if ( $annotation ) { + $php_update_message .= '
' . $annotation . ''; + } + + // Decide whether current plugin is compatible and should be activated or not. + $result = true; + + if ( ! $compatible_wp && ! $compatible_php ) { + $result = new WP_Error( + 'plugin_wp_php_incompatible', + '
' . sprintf( + /* translators: 1: Current WordPress version, 2: Current PHP version, 3: Plugin name, 4: Required WordPress version, 5: Required PHP version. */ + _x( 'Error: Current versions of WordPress (%1$s) and PHP (%2$s) do not meet minimum requirements for %3$s. The plugin requires WordPress %4$s and PHP %5$s.', 'plugin' ), + get_bloginfo( 'version' ), + phpversion(), + $plugin_headers['Name'], + $requirements['requires'], + $requirements['requires_php'] + ) . $php_update_message . '
' + ); + } elseif ( ! $compatible_php ) { + $result = new WP_Error( + 'plugin_php_incompatible', + '' . sprintf( + /* translators: 1: Current PHP version, 2: Plugin name, 3: Required PHP version. */ + _x( 'Error: Current PHP version (%1$s) does not meet minimum requirements for %2$s. The plugin requires PHP %3$s.', 'plugin' ), + phpversion(), + $plugin_headers['Name'], + $requirements['requires_php'] + ) . $php_update_message . '
' + ); + } elseif ( ! $compatible_wp ) { + $result = new WP_Error( + 'plugin_wp_incompatible', + '' . sprintf( + /* translators: 1: Current WordPress version, 2: Plugin name, 3: Required WordPress version. */ + _x( 'Error: Current WordPress version (%1$s) does not meet minimum requirements for %2$s. The plugin requires WordPress %3$s.', 'plugin' ), + get_bloginfo( 'version' ), + $plugin_headers['Name'], + $requirements['requires'] + ) . '
' + ); + } + + if ( is_wp_error( $result ) ) { + wp_die( $result ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Can't call et_core_intentionally_unescaped function because it's fired during plugin activation hook. + } + } + } + +endif; diff --git a/core/components/HTTPInterface.php b/core/components/HTTPInterface.php new file mode 100644 index 0000000..680eba9 --- /dev/null +++ b/core/components/HTTPInterface.php @@ -0,0 +1,463 @@ +URL = esc_url_raw( $url ); + $this->METHOD = $method; + $this->BODY = $body; + $this->IS_AUTH = $is_auth; + $this->OWNER = $owner; + $this->data_format = null; + $this->JSON_BODY = $is_json_body; + $this->SSL_VERIFY = $ssl_verify; + + $this->_set_user_agent(); + $this->prepare_args(); + } + + /** + * Only include necessary properties when printing this object using {@link var_dump}. + * + * @return array + */ + public function __debugInfo() { + return array( + 'ARGS' => $this->ARGS, + 'URL' => $this->URL, + 'METHOD' => $this->METHOD, + 'BODY' => $this->BODY, + 'IS_AUTH' => $this->IS_AUTH, + 'IS_JSON_BODY' => $this->JSON_BODY, + 'OWNER' => $this->OWNER, + ); + } + + /** + * Sets the user agent string. + */ + private function _set_user_agent() { + global $wp_version; + $owner = $this->OWNER; + $version = 'bloom' === $owner ? $GLOBALS['et_bloom']->plugin_version : ET_CORE_VERSION; + + if ( 'builder' === $owner ) { + $owner = 'Divi Builder'; + } + + if ( '' === $owner ) { + $this->OWNER = $owner = 'ET_Core'; + + } else { + $owner = ucfirst( $owner ); + } + + $this->USER_AGENT = "WordPress/{$wp_version}; {$owner}/{$version}; " . esc_url_raw( get_bloginfo( 'url' ) ); + } + + /** + * Prepares the request arguments (to be passed to wp_remote_*()) + */ + public function prepare_args() { + $this->ARGS = array( + 'blocking' => $this->BLOCKING, + 'body' => $this->BODY, + 'cookies' => $this->COOKIES, + 'headers' => $this->HEADERS, + 'method' => $this->METHOD, + 'sslverify' => $this->SSL_VERIFY, + 'user-agent' => $this->USER_AGENT, + 'timeout' => 30, + ); + } +} + +/** + * Simple object to hold HTTP response details. + * + * @since 1.1.0 + * + * @package ET\Core\HTTP + */ +class ET_Core_HTTPResponse { + + /** + * @var array + */ + public $COOKIES; + + /** + * @var string|array + */ + public $DATA; + + /** + * @var bool + */ + public $ERROR = false; + + /** + * The error message if `self::$ERROR` is `true`. + * + * @var string + */ + public $ERROR_MESSAGE; + + /** + * @var array + */ + public $HEADERS; + + /** + * @var array|WP_Error + */ + public $RAW_RESPONSE; + + /** + * @var ET_Core_HTTPRequest + */ + public $REQUEST; + + /** + * The response's HTTP status code. + * + * @var int + */ + public $STATUS_CODE; + + /** + * @var string + */ + public $STATUS_MESSAGE; + + /** + * ET_Core_HTTP_Response constructor. + * + * @param ET_Core_HTTPRequest $request + * @param array|WP_Error $response + */ + public function __construct( $request, $response ) { + $this->REQUEST = $request; + $this->RAW_RESPONSE = $response; + + $this->_parse_response(); + } + + /** + * Parse response and save relevant details. + */ + private function _parse_response() { + if ( is_wp_error( $this->RAW_RESPONSE ) ) { + $this->ERROR = true; + $this->ERROR_MESSAGE = $this->RAW_RESPONSE->get_error_message(); + $this->STATUS_CODE = $this->RAW_RESPONSE->get_error_code(); + $this->STATUS_MESSAGE = $this->ERROR_MESSAGE; + return; + } + + $this->DATA = $this->RAW_RESPONSE['body']; + $this->HEADERS = $this->RAW_RESPONSE['headers']; + $this->COOKIES = $this->RAW_RESPONSE['cookies']; + $this->STATUS_CODE = $this->RAW_RESPONSE['response']['code']; + $this->STATUS_MESSAGE = $this->RAW_RESPONSE['response']['message']; + + if ( $this->STATUS_CODE >= 400 ) { + $this->ERROR = true; + $this->ERROR_MESSAGE = $this->STATUS_MESSAGE; + } + } + + /** + * Only include necessary properties when printing this object using {@link var_dump}. + * + * @return array + */ + public function __debugInfo() { + return array( + 'STATUS_CODE' => $this->STATUS_CODE, + 'STATUS_MESSAGE' => $this->STATUS_MESSAGE, + 'ERROR' => $this->ERROR, + 'ERROR_MESSAGE' => $this->ERROR_MESSAGE, + 'DATA' => $this->DATA, + ); + } + + /** + * Only include necessary properties when serializing this object for + * storage in the WP Transient Cache. + * + * @return array + */ + public function __sleep() { + return array( 'ERROR', 'ERROR_MESSAGE', 'STATUS_CODE', 'STATUS_MESSAGE', 'DATA' ); + } +} + + +/** + * High level, generic, wrapper for making HTTP requests. It uses WordPress HTTP API under-the-hood. + * + * @since 1.1.0 + * + * @package ET\Core\HTTP + */ +class ET_Core_HTTPInterface { + /** + * How much time responses are cached (in seconds). + * + * @since 1.1.0 + * @var int + */ + protected $cache_timeout; + + /** + * @var ET_Core_HTTPRequest + */ + public $request; + + /** + * @var ET_Core_HTTPResponse + */ + public $response; + + /** + * ET_Core_API_HTTP_Interface constructor. + * + * @since 1.1.0 + * + * @param string $owner The name of the theme/plugin that created this class instance. Default: 'ET_Core'. + * @param array $request_details Array of config values for the request. Optional. + * @param bool $json Whether or not json responses are expected to be received. Default is `true`. + */ + public function __construct( $owner = 'ET_Core', $request_details = array(), $json = true ) { + $this->expects_json = $json; + $this->cache_timeout = 15 * MINUTE_IN_SECONDS; + $this->owner = $owner; + + if ( ! empty( $request_details ) ) { + list( $url, $method, $is_auth, $body ) = $request_details; + $this->prepare_request( $url, $method, $is_auth, $body ); + } + } + + /** + * Only include necessary properties when printing this object using {@link var_dump}. + * + * @return array + */ + public function __debugInfo() { + return array( + 'REQUEST' => $this->request, + 'RESPONSE' => $this->response, + ); + } + + /** + * Only include necessary properties when serializing this object for + * storage in the WP Transient Cache. + * + * @return array + */ + public function __sleep() { + return array( 'request', 'response' ); + } + + /** + * Creates an identifier key for a request based on the URL and body content. + * + * @internal + * @since 1.1.0 + * + * @param string $url The request URL. + * @param string|string[] $body The request body. + * + * @return string + */ + protected static function _get_cache_key_for_request( $url, $body ) { + if ( is_array( $body ) ) { + $url .= json_encode( $body ); + + } else if ( ! empty( $body ) ) { + $url .= $body; + } + + return 'et-core-http-response-' . md5( $url ); + } + + /** + * Writes request/response info to the error log for failed requests. + * + * @internal + * @since 1.1.0 + */ + protected function _log_failed_request() { + $details = print_r( $this, true ); + $class_name = get_class( $this ); + $msg_part = "{$class_name} ERROR :: Remote request failed...\n\n"; + $msg = "{$msg_part}Details: {$details}"; + + $max_len = @ini_get( 'log_errors_max_len' ); + + @ini_set( 'log_errors_max_len', 0 ); + + ET_Core_Logger::error( $msg ); + + if ( $max_len ) { + @ini_set( 'log_errors_max_len', $max_len ); + } + } + + /** + * Prepares request to send JSON data. + */ + protected function _setup_json_request() { + $this->request->HEADERS['Accept'] = 'application/json'; + + if ( $this->request->JSON_BODY ) { + $this->request->HEADERS['Content-Type'] = 'application/json'; + + $is_json = is_string( $this->request->BODY ) && in_array( $this->request->BODY[0], array( '[', '{' ) ); + + if ( $is_json || null === $this->request->BODY ) { + return; + } + + $this->request->BODY = json_encode( $this->request->BODY ); + } + } + + /** + * Performs a remote HTTP request. Responses are cached for {@see self::$cache_timeout} seconds using + * the {@link https://goo.gl/c0FSMH WP Transients API}. + * + * @since 1.1.0 + */ + public function make_remote_request() { + $response = null; + + if ( $this->expects_json && ! isset( $this->request->HEADERS['Content-Type'] ) ) { + $this->_setup_json_request(); + } + + // Make sure we include any changes made after request object was instantiated. + $this->request->prepare_args(); + + if ( 'POST' === $this->request->METHOD ) { + $response = wp_remote_post( $this->request->URL, $this->request->ARGS ); + + } else if ( 'GET' === $this->request->METHOD && null === $this->request->data_format ) { + $response = wp_remote_get( $this->request->URL, $this->request->ARGS ); + + } else if ( 'GET' === $this->request->METHOD && null !== $this->request->data_format ) { + // WordPress sends data as query args for GET and HEAD requests and provides no way + // to alter that behavior. Thus, we need to monkey patch it for now. See the mp'd class + // for more details. + require_once 'lib/WPHttp.php'; + $wp_http = new ET_Core_LIB_WPHttp(); + $this->request->ARGS['data_format'] = $this->request->data_format; + $response = $wp_http->request( $this->request->URL, $this->request->ARGS ); + + } else if ( 'PUT' === $this->request->METHOD ) { + $this->request->ARGS['method'] = 'PUT'; + $response = wp_remote_request( $this->request->URL, $this->request->ARGS ); + } + + $this->response = $response = new ET_Core_HTTPResponse( $this->request, $response ); + + if ( $response->ERROR || defined( 'ET_DEBUG' ) ) { + $this->_log_failed_request(); + } + + if ( $this->expects_json ) { + $response->DATA = json_decode( $response->DATA, true ); + } + + $this->request->COMPLETE = true; + } + + /** + * Replaces the current request object with a new instance. + * + * @param string $url + * @param string $method + * @param bool $is_auth + * @param mixed? $body + * @param bool $json_body + * @param bool $ssl_verify + */ + public function prepare_request( $url, $method = 'GET', $is_auth = false, $body = null, $json_body = false, $ssl_verify = true ) { + $this->request = new ET_Core_HTTPRequest( $url, $method, $this->owner, $is_auth, $body, $json_body, $ssl_verify ); + } +} diff --git a/core/components/Logger.php b/core/components/Logger.php new file mode 100644 index 0000000..d142b33 --- /dev/null +++ b/core/components/Logger.php @@ -0,0 +1,153 @@ + 0 && ! isset( $backtrace[ $bt_index ] ) ) { + $bt_index--; + } + + // We need two stacks to get all the data we need so let's go down one more + $bt_index--; + } + + $stack = $backtrace[ $bt_index ]; + $file = self::$_->array_get( $stack, 'file', '%3$s
%2$s
', + $report, + esc_html__( 'Congratulations, all system checks have passed. Your hosting configuration is compatible with Divi.', 'et-core' ), + 'et-system-status' + ); + } + + return $report; + } + + /** + * Convert size string with "shorthand byte" notation to raw byte value for comparisons. + * + * @since 3.20 + * + * @param string $size + * + * @return int size in bytes + */ + protected function get_size_in_bytes( $size = '' ) { + // Capture the denomination and convert to uppercase, then do math to it + switch ( strtoupper( substr( $size, -1 ) ) ) { + // Terabytes + case 'T': + return (int) $size * 1099511627776; + // Gigabytes + case 'G': + return (int) $size * 1073741824; + // Megabytes + case 'M': + return (int) $size * 1048576; + // Kilobytes + case 'K': + return (int) $size * 1024; + default: + return (int) $size; + } + } + + /** + * Convert size string with "shorthand byte" notation to raw byte value for comparisons. + * + * @since 3.20 + * + * @param int $bytes + * @param int $precision + * + * @return string size in "shorthand byte" notation + */ + protected function get_size_in_shorthand( $bytes = 0, $precision = 2 ) { + $units = array( ' bytes', 'KB', 'MB', 'GB', 'TB' ); + $i = 0; + + while ( $bytes > 1024 ) { + $bytes /= 1024; + $i++; + } + + return round( $bytes, $precision ) . $units[ $i ]; + } + + /** + * Size comparisons between two values using a variety of calculation methods. + * + * @since 3.20.2 + * + * @param string|int|float $a Our value to compare against + * @param string|int|float $b Server value being compared + * @param string $type Comparison type + * + * @return bool Whether the second value is equal to or greater than the first + */ + protected function value_is_at_least( $a, $b, $type = 'size' ) { + switch ( $type ) { + case 'truthy_falsy': + return $this->value_is_falsy( $a ) === $this->value_is_falsy( $b ); + case 'version': + return (float) $a <= (float) $b; + case 'seconds': + return (int) $a <= (int) $b; + case 'size': + default: + return $this->get_size_in_bytes( $a ) <= $this->get_size_in_bytes( $b ); + } + } + + /** + * Check value against a collection of "falsy" values + * + * @since 3.23 + * + * @param string|int|float $a Value to compare against + * + * @return bool Whether the second value is equal to or greater than the first + */ + protected function value_is_falsy( $a ) { + // Accept falsy strings regardless of case (e.g. 'off', 'Off', 'OFF', 'oFf') + if ( is_string( $a ) ) { + $a = strtolower( $a ); + } + + return in_array( $a, array( false, 'false', 0, '0', 'off' ), true ); + } + + /** + * SUPPORT CENTER :: REMOTE ACCESS + */ + + /** + * Add Support Center options to the Role Editor screen + * + * @see ET_Core_SupportCenter::current_user_can() + * + * @since 3.20 + * + * @param $all_role_options + * + * @return array + */ + public function support_user_add_role_options( $all_role_options ) { + + $all_role_options['support_center'] = array( + 'section_title' => esc_attr__( 'Support Center', 'et-core' ), + 'options' => array( + 'et_support_center' => array( + 'name' => esc_attr__( 'Divi Support Center Page', 'et-core' ), + ), + 'et_support_center_system' => array( + 'name' => esc_attr__( 'System Status', 'et-core' ), + ), + 'et_support_center_remote_access' => array( + 'name' => esc_attr__( 'Remote Access', 'et-core' ), + ), + 'et_support_center_documentation' => array( + 'name' => esc_attr__( 'Divi Documentation & Help', 'et-core' ), + ), + 'et_support_center_safe_mode' => array( + 'name' => esc_attr__( 'Safe Mode', 'et-core' ), + ), + 'et_support_center_logs' => array( + 'name' => esc_attr__( 'Logs', 'et-core' ), + ), + ), + ); + + return $all_role_options; + } + + /** + * Add third party capabilities to Remote Access roles + * + * @return array Capabilities to add to the Remote Access user roles. + */ + public function support_user_extra_caps_standard( $extra_capabilities = array() ) { + // The Events Calendar (if active on the site) + if ( class_exists( 'Tribe__Events__Main' ) ) { + $the_events_calendar = array( + // Events + 'edit_tribe_event' => 1, + 'read_tribe_event' => 1, + 'delete_tribe_event' => 1, + 'delete_tribe_events' => 1, + 'edit_tribe_events' => 1, + 'edit_others_tribe_events' => 1, + 'delete_others_tribe_events' => 1, + 'publish_tribe_events' => 1, + 'edit_published_tribe_events' => 1, + 'delete_published_tribe_events' => 1, + 'delete_private_tribe_events' => 1, + 'edit_private_tribe_events' => 1, + 'read_private_tribe_events' => 1, + // Venues + 'edit_tribe_venue' => 1, + 'read_tribe_venue' => 1, + 'delete_tribe_venue' => 1, + 'delete_tribe_venues' => 1, + 'edit_tribe_venues' => 1, + 'edit_others_tribe_venues' => 1, + 'delete_others_tribe_venues' => 1, + 'publish_tribe_venues' => 1, + 'edit_published_tribe_venues' => 1, + 'delete_published_tribe_venues' => 1, + 'delete_private_tribe_venues' => 1, + 'edit_private_tribe_venues' => 1, + 'read_private_tribe_venues' => 1, + // Organizers + 'edit_tribe_organizer' => 1, + 'read_tribe_organizer' => 1, + 'delete_tribe_organizer' => 1, + 'delete_tribe_organizers' => 1, + 'edit_tribe_organizers' => 1, + 'edit_others_tribe_organizers' => 1, + 'delete_others_tribe_organizers' => 1, + 'publish_tribe_organizers' => 1, + 'edit_published_tribe_organizers' => 1, + 'delete_published_tribe_organizers' => 1, + 'delete_private_tribe_organizers' => 1, + 'edit_private_tribe_organizers' => 1, + 'read_private_tribe_organizers' => 1, + ); + + $extra_capabilities = array_merge( $extra_capabilities, $the_events_calendar ); + } + + return $extra_capabilities; + } + + /** + * Add third party capabilities to the *Elevated* Remote Access role only + * + * @return array Capabilities to add to the Elevated Remote Access user role. + */ + public function support_user_extra_caps_elevated() { + $extra_capabilities = array(); + + return $extra_capabilities; + } + + /** + * Create the Divi Support user (if it doesn't already exist) + * + * @since 3.20 + * + * @return void|WP_Error + */ + public function support_user_maybe_create_user() { + if ( username_exists( $this->support_user_account_name ) ) { + return; + } + + // Define user roles that will be used to control ET Support User permissions + $this->support_user_create_roles(); + + $token = $this->support_user_generate_token(); + + $password = $this->support_user_generate_password( $token ); + + if ( is_wp_error( $password ) ) { + return $password; + } + + $user_id = wp_insert_user( array( + 'user_login' => $this->support_user_account_name, + 'user_pass' => $password, + 'first_name' => 'Elegant Themes', + 'last_name' => 'Support', + 'display_name' => 'Elegant Themes Support', + 'role' => 'et_support', + ) ); + + if ( is_wp_error( $user_id ) ) { + return $user_id; + } + + $account_settings = array( + 'date_created' => time(), + 'token' => $token, + ); + + update_option( $this->support_user_options_name, $account_settings ); + + // update options variable + $this->support_user_get_options(); + + $this->support_user_init_cron_delete_account(); + } + + /** + * Define both Standard and Elevated roles for the Divi Support user + * + * @since 3.22 Added filters to extend the list of capabilities for the ET Support User + * @since 3.20 + */ + public function support_user_create_roles() { + // Make sure old versions of these roles do not exist + $this->support_user_remove_roles(); + + // Divi Support :: Standard + $standard_capabilities = array( + 'assign_product_terms' => true, + 'delete_pages' => true, + 'delete_posts' => true, + 'delete_private_pages' => true, + 'delete_private_posts' => true, + 'delete_private_products' => true, + 'delete_product' => true, + 'delete_product_terms' => true, + 'delete_products' => true, + 'delete_published_pages' => true, + 'delete_published_posts' => true, + 'delete_published_products' => true, + 'edit_dashboard' => true, + 'edit_files' => true, + 'edit_others_pages' => true, + 'edit_others_posts' => true, + 'edit_others_products' => true, + 'edit_pages' => true, + 'edit_posts' => true, + 'edit_private_pages' => true, + 'edit_private_posts' => true, + 'edit_private_products' => true, + 'edit_product' => true, + 'edit_product_terms' => true, + 'edit_products' => true, + 'edit_published_pages' => true, + 'edit_published_posts' => true, + 'edit_published_products' => true, + 'edit_theme_options' => true, + 'list_users' => true, + 'manage_categories' => true, + 'manage_links' => true, + 'manage_options' => true, + 'manage_product_terms' => true, + 'moderate_comments' => true, + 'publish_pages' => true, + 'publish_posts' => true, + 'publish_products' => true, + 'read' => true, + 'read_private_pages' => true, + 'read_private_posts' => true, + 'read_private_products' => true, + 'read_product' => true, + 'unfiltered_html' => true, + 'upload_files' => true, + // Divi + 'ab_testing' => true, + 'add_library' => true, + 'disable_module' => true, + 'divi_builder_control' => true, + 'divi_library' => true, + 'edit_borders' => true, + 'edit_buttons' => true, + 'edit_colors' => true, + 'edit_configuration' => true, + 'edit_content' => true, + 'edit_global_library' => true, + 'edit_layout' => true, + 'export' => true, + 'lock_module' => true, + 'page_options' => true, + 'portability' => true, + 'read_dynamic_content_custom_fields' => true, + 'save_library' => true, + 'use_visual_builder' => true, + 'theme_builder' => true, + // WooCommerce Capabilities + 'manage_woocommerce' => true, + ); + + // Divi Support :: Elevated + $elevated_capabilities = array_merge( $standard_capabilities, array( + 'activate_plugins' => true, + 'delete_plugins' => true, + 'delete_themes' => true, + 'edit_plugins' => true, + 'edit_themes' => true, + 'install_plugins' => true, + 'install_themes' => true, + 'switch_themes' => true, + 'update_plugins' => true, + 'update_themes' => true, + ) ); + + // Filters to allow other code to extend the list of capabilities + $additional_standard = apply_filters( 'add_et_support_standard_capabilities', array() ); + $additional_elevated = apply_filters( 'add_et_support_elevated_capabilities', array() ); + + // Apply filter capabilities to our definitions + $standard_capabilities = array_merge( $additional_standard, $standard_capabilities ); + // Just like Elevated gets all of Standard's capabilities, it also inherits Standard's filter caps + $elevated_capabilities = array_merge( $additional_standard, $additional_elevated, $elevated_capabilities ); + + // Create the standard ET Support role + add_role( 'et_support', 'ET Support', $standard_capabilities ); + $et_support_role = get_role( 'et_support' ); + foreach ( $standard_capabilities as $cap ) { + $et_support_role->add_cap( $cap ); + } + // Create the elevated ET Support role + add_role( 'et_support_elevated', 'ET Support - Elevated', $elevated_capabilities ); + $et_support_elevated_role = get_role( 'et_support_elevated' ); + foreach ( $elevated_capabilities as $cap ) { + $et_support_elevated_role->add_cap( $cap ); + } + } + + /** + * Remove our Standard and Elevated Support roles + * + * @since 3.20 + */ + public function support_user_remove_roles() { + // Divi Support :: Standard + remove_role( 'et_support' ); + + // Divi Support :: Elevated + remove_role( 'et_support_elevated' ); + } + + /** + * Set the ET Support User's role + * + * @since 3.20 + * + * @param string $role + */ + public function support_user_set_role( $role = '' ) { + // Get the Divi Support User object + $support_user = new WP_User( $this->support_user_account_name ); + + // Set the new Role + switch ( $role ) { + case 'et_support': + $support_user->set_role( 'et_support' ); + break; + case 'et_support_elevated': + $support_user->set_role( 'et_support_elevated' ); + break; + case '': + default: + $support_user->set_role( '' ); + } + } + + /** + * Ensure the `unfiltered_html` capability is added to the ET Support roles in Multisite + * + * @since 3.22 + * + * @param array $caps An array of capabilities. + * @param string $cap The capability being requested. + * @param int $user_id The current user's ID. + * + * @return array Modified array of user capabilities. + */ + function support_user_map_meta_cap( $caps, $cap, $user_id ) { + + if ( ! $this->is_support_user( $user_id ) ) { + return $caps; + } + + // This user is in an ET Support user role, so add the capability + if ( 'unfiltered_html' === $cap ) { + $caps = array( 'unfiltered_html' ); + } + + return $caps; + } + + /** + * Remove KSES filters on ET Support User's content + * + * @since 3.22 + */ + function support_user_kses_remove_filters() { + if ( $this->is_support_user() ) { + kses_remove_filters(); + } + } + + /** + * Clear "Delete Account" cron hook + * + * @since 3.20 + * + * @return void + */ + public function support_user_clear_delete_cron() { + wp_clear_scheduled_hook( $this->support_user_cron_name ); + } + + /** + * Delete the support account if it's expired or the expiration date is not set + * + * @since 3.20 + * + * @return void + */ + public function support_user_cron_maybe_delete_account() { + if ( ! username_exists( $this->support_user_account_name ) ) { + return; + } + + if ( isset( $this->support_user_options['date_created'] ) ) { + $this->support_user_maybe_delete_expired_account(); + } else { + // if the expiration date isn't set, delete the account anyway + $this->support_user_delete_account(); + } + } + + /** + * Schedule account removal check + * + * @since 3.20 + * + * @return void + */ + public function support_user_init_cron_delete_account() { + $this->support_user_clear_delete_cron(); + + wp_schedule_event( time(), 'hourly', $this->support_user_cron_name ); + } + + /** + * Get plugin options + * + * @since 3.20 + * + * @return void + */ + public function support_user_get_options() { + $this->support_user_options = get_option( $this->support_user_options_name ); + } + + /** + * Generate random token + * + * @since 3.20 + * + * @param integer $length Token Length + * @param bool $include_symbols Whether to include special characters (or just stick to alphanumeric) + * + * @return string $token Generated token + */ + public function support_user_generate_token( $length = 17, $include_symbols = true ) { + $alphanum = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; + $symbols = '!@$^*()-=+'; + $token = substr( str_shuffle( $include_symbols ? $alphanum . $symbols : $alphanum ), 0, $length ); + + return $token; + } + + /** + * Generate password from token + * + * @since 3.20 + * + * @param string $token Token + * + * @return string|WP_Error Generated password if successful, WP Error object otherwise + */ + public function support_user_generate_password( $token ) { + global $wp_version; + + $salt = ''; + + /** @see ET_Core_SupportCenter::maybe_set_site_id() */ + $site_id = get_option( 'et_support_site_id' ); + + if ( empty( $site_id ) ) { + return false; + } + + // Site ID must be a string + if ( ! is_string( $site_id ) ) { + return false; + } + + $et_license = $this->get_et_license(); + + if ( ! $et_license ) { + return false; + } + + $send_to_api = array( + 'action' => 'get_salt', + 'site_id' => esc_attr( $site_id ), + 'username' => esc_attr( $et_license['username'] ), + 'api_key' => esc_attr( $et_license['api_key'] ), + 'site_url' => esc_url( home_url( '/' ) ), + 'login_url' => 'https://www.elegantthemes.com/members-area/admin/token/' + . '?url=' . urlencode( wp_login_url() ) + . '&token=' . urlencode( $token . '|' . $site_id ), + ); + + $support_user_options = array( + 'timeout' => 30, + 'body' => $send_to_api, + 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ), + ); + + $request = wp_remote_post( + 'https://www.elegantthemes.com/api/token.php', + $support_user_options + ); + + // Early exit if we don't get a good HTTP response from the API server + if ( 200 !== intval( wp_remote_retrieve_response_code( $request ) ) ) { + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: HTTP error in API response', + 'et-core' + ) + ); + } + + // Early exit and pass along WP_Error report if the server response is an error + if ( is_wp_error( $request ) ) { + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: WordPress Error in API response', + 'et-core' + ) + ); + } + + // Otherwise the response is good - let's load it and continue + $response = unserialize( wp_remote_retrieve_body( $request ) ); + + // If the API returns an error, we will return and log the accompanying message + $response_is_error = array_key_exists( 'error', $response ); + $response_has_error_message = array_key_exists( 'message', $response ); + + if ( $response_is_error && $response_has_error_message ) { + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: ' . $response['message'], + 'et-core' + ) + ); + } + + // If we get an "Incorrect Token" response, delete the generated Site ID from database + $response_is_token_error = array_key_exists( 'incorrect_token', $response ); + + if ( $response_is_token_error && ! empty( $response['incorrect_token'] ) ) { + delete_option( 'et_support_site_id' ); + + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: Incorrect Token. Please, try again.', + 'et-core' + ) + ); + } + + // If we get a normal-looking response, but it doesn't contain the salt we need + if ( empty( $response['salt'] ) ) { + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: The API response was missing required data.', + 'et-core' + ) + ); + } + + // We have the salt; let's clean it and make sure we can use it + $salt = sanitize_text_field( $response['salt'] ); + + if ( empty( $salt ) ) { + return new WP_Error( + 'et_remote_access', + esc_html__( + 'Elegant Themes API Error: The API responded, but the response was empty.', + 'et-core' + ) + ); + } + + // Generate the password using the token we were initially passed & the salt from the API + $password = hash( 'sha256', $token . $salt ); + + return $password; + } + + /** + * Delete the account if it's expired + * + * @since 3.20 + * + * @return void + */ + public function support_user_maybe_delete_expired_account() { + if ( empty( $this->support_user_options['date_created'] ) ) { + return; + } + + $expiration_date_unix = strtotime( $this->support_user_expiration_time, $this->support_user_options['date_created'] ); + + // Delete the user account if the expiration date is in the past + if ( time() >= $expiration_date_unix ) { + $this->support_user_delete_account(); + } + + return; + } + + /** + * Delete support account and the plugin options ( token, expiration date ) + * + * @since 3.20 + * + * @return string | WP_Error Confirmation message on success, WP_Error on failure + */ + public function support_user_delete_account() { + if ( defined( 'DOING_CRON' ) ) { + require_once( ABSPATH . 'wp-admin/includes/user.php' ); + } + + if ( ! username_exists( $this->support_user_account_name ) ) { + return new WP_Error( 'get_user_data', esc_html__( 'Support account doesn\'t exist.', 'et-core' ) ); + } + + $support_account_data = get_user_by( 'login', $this->support_user_account_name ); + + if ( $support_account_data ) { + $support_account_id = $support_account_data->ID; + + if ( + ( is_multisite() && ! wpmu_delete_user( $support_account_id ) ) + || ( ! is_multisite() && ! wp_delete_user( $support_account_id ) ) + ) { + return new WP_Error( 'delete_user', esc_html__( 'Support account hasn\'t been removed. Try to regenerate token again.', 'et-core' ) ); + } + + delete_option( $this->support_user_options_name ); + } else { + return new WP_Error( 'get_user_data', esc_html__( 'Cannot get the support account data. Try to regenerate token again.', 'et-core' ) ); + } + + $this->support_user_remove_roles(); + + $this->support_user_remove_site_id(); + + $this->support_user_clear_delete_cron(); + + // update options variable + $this->support_user_get_options(); + + new WP_Error( 'get_user_data', esc_html__( 'Token has been deleted successfully.', 'et-core' ) ); + + return esc_html__( 'Token has been deleted successfully. ', 'et-core' ); + } + + /** + * Maybe delete support account and the plugin options when switching themes + * + * If a theme change is one of: + * - [Divi/Extra] > [Divi/Extra] child theme + * - [Divi/Extra] child theme > [Divi/Extra] child theme + * - [Divi/Extra] child theme > [Divi/Extra] + * ...then we won't change the state of the Remote Access toggle. + * + * @since 3.23 + * + * @return string | WP_Error Confirmation message on success, WP_Error on failure + */ + public function maybe_deactivate_on_theme_switch() { + // Don't do anything if the user isn't logged in + if ( ! is_user_logged_in() ) { + return; + } + + // Don't do anything if the parent theme's name matches the parent of this Support Center instance + if ( get_option( 'template' ) === $this->parent_nicename ) { + return; + } + + // Leaving Divi/Extra environment; deactivate Support Center + $this->support_user_delete_account(); + $this->unlist_support_center(); + $this->support_center_capabilities_teardown(); + } + + /** + * Is this user the ET Support User? + * + * @since 3.22 + * + * @param int|null $user_id Pass a User ID to check. We'll get the current user's ID otherwise. + * + * @return bool Returns whether this user is the ET Support User. + */ + function is_support_user( $user_id = null ) { + $user_id = $user_id ? (int) $user_id : get_current_user_id(); + if ( ! $user_id ) { + return false; + } + + $user = get_userdata( $user_id ); + + if ( ! is_object( $user ) || ! property_exists( $user, 'roles' ) ) { + return false; + } + + // Gather this user's associated role(s). + $user_roles = (array) $user->roles; + $user_is_support = false; + + // First, check the username. + if ( ! $this->support_user_account_name === $user->user_login ) { + return $user_is_support; + } + + // Determine whether this user has the ET Support User role. + if ( in_array( 'et_support', $user_roles, true ) ) { + $user_is_support = true; + } + if ( in_array( 'et_support_elevated', $user_roles, true ) ) { + $user_is_support = true; + } + + return $user_is_support; + } + + /** + * Delete support account and the plugin options ( token, expiration date ) + * + * @since 3.20 + * + * @return void + */ + public function unlist_support_center() { + delete_option( 'et_support_center_installed' ); + } + + /** + * + */ + public function support_user_remove_site_id() { + $site_id = get_option( 'et_support_site_id' ); + + if ( empty( $site_id ) ) { + return; + } + + // Site ID must be a string + if ( ! is_string( $site_id ) ) { + return; + } + + $et_license = $this->get_et_license(); + + if ( ! $et_license ) { + return; + } + + $send_to_api = array( + 'action' => 'remove_site_id', + 'site_id' => esc_attr( $site_id ), + 'username' => esc_attr( $et_license['username'] ), + 'api_key' => esc_attr( $et_license['api_key'] ), + 'site_url' => esc_url( home_url( '/' ) ), + ); + + $settings = array( + 'timeout' => 30, + 'body' => $send_to_api, + ); + + $request = wp_remote_post( 'https://www.elegantthemes.com/api/token.php', $settings ); + + if ( is_wp_error( $request ) ) { + wp_remote_post( 'https://cdn.elegantthemes.com/api/token.php', $settings ); + } + } + + function support_user_update_via_ajax() { + // Verify nonce + et_core_security_check( 'manage_options', 'support_center', 'nonce' ); + + // Get POST data + $support_update = sanitize_text_field( $_POST['support_update'] ); + + $response = array(); + + // Update option(s) + if ( 'activate' === $support_update ) { + $maybe_create_user = $this->support_user_maybe_create_user(); + // Only activate if we have a User ID and Password + if ( ! is_wp_error( $maybe_create_user ) ) { + $this->support_user_set_role( 'et_support' ); + $account_settings = get_option( $this->support_user_options_name ); + $site_id = get_option( 'et_support_site_id' ); + $response['expiry'] = strtotime( + date( + 'Y-m-d H:i:s ', + $this->support_user_options['date_created'] + ) . $this->support_user_expiration_time + ); + $response['token'] = ''; + if ( ! empty( $site_id ) && is_string( $site_id ) ) { + $response['token'] = $account_settings['token'] . '|' . $site_id; + } + $response['message'] = esc_html__( + 'ET Support User role has been activated.', + 'et-core' + ); + } else { + et_error( $maybe_create_user->get_error_message() ); + $response['error'] = $maybe_create_user->get_error_message(); + } + } + if ( 'elevate' === $support_update ) { + $this->support_user_set_role( 'et_support_elevated' ); + $response['message'] = esc_html__( + 'ET Support User role has been elevated.', + 'et-core' + ); + } + if ( 'deactivate' === $support_update ) { + $this->support_user_set_role( '' ); + $this->support_user_delete_account(); + $this->support_user_clear_delete_cron(); + $response['message'] = esc_html__( + 'ET Support User role has been deactivated.', + 'et-core' + ); + } + + // `echo` data to return + if ( isset( $response ) ) { + echo json_encode( $response ); + } + + // `die` when we're done + wp_die(); + } + + /** + * SUPPORT CENTER :: SAFE MODE + */ + + /** + * ET Product Allowlist + * + * @since 3.28 + * + * @param string $product Potential ET product name that we want to confirm is on the list. + * + * @return string|false If the product is on our list, we return the "nice name" we have for it. Otherwise, we return FALSE. + */ + protected function is_allowlisted_product( $product = '' ) { + switch ( $product ) { + case 'divi_builder_plugin': + case 'divi_theme': + case 'extra_theme': + case 'monarch_plugin': + case 'bloom_plugin': + return $this->get_parent_nicename( $product ); + break; + default: + return false; + } + } + + /** + * Safe Mode: Set session cookie to temporarily disable Plugins + * + * @since 3.20 + * + * @return void + */ + function safe_mode_update_via_ajax() { + et_core_security_check( 'manage_options', 'support_center', 'nonce' ); + + $response = array(); + + // Get POST data + $support_update = sanitize_text_field( $_POST['support_update'] ); + + // Update option(s) + if ( 'activate' === $support_update ) { + // Check the ET product that is activating Safe Mode + $safe_mode_activator = sanitize_key( $_POST['product'] ); + + // Confirm that this is a allowlisted product + $allowlisted_product = $this->is_allowlisted_product( $safe_mode_activator ); + + if ( ! $allowlisted_product ) { + // Send a failure code and exit the function + header( "HTTP/1.0 403 Forbidden" ); + print 'Bad or malformed ET product name.'; + wp_die(); + } + + $this->toggle_safe_mode( true, $safe_mode_activator ); + $response['message'] = esc_html__( 'ET Safe Mode has been activated.', 'et-core' ); + } + if ( 'deactivate' === $support_update ) { + $this->toggle_safe_mode( false ); + $response['message'] = esc_html__( 'ET Safe Mode has been deactivated.', 'et-core' ); + } + + $this->set_safe_mode_cookie(); + + // `echo` data to return + if ( isset( $response ) ) { + echo json_encode( $response ); + } + + // `die` when we're done + wp_die(); + } + + /** + * Toggle Safe Mode + * + * @since 3.20 + * + * @param bool $activate TRUE if enabling Safe Mode, FALSE if disabling Safe mode. + * @param string $product Name of ET product that is activating Safe Mode (@see ET_Core_SupportCenter::get_parent_nicename()). + */ + public function toggle_safe_mode( $activate = true, $product = '' ) { + $activate = (bool) $activate; + $user_id = get_current_user_id(); + $allowlisted_product = $this->is_allowlisted_product( $product ); + + // Only proceed with an activation request if it comes from a allowlisted product + if ( $activate && ! $allowlisted_product ) { + return; + } + + update_user_meta( $user_id, '_et_support_center_safe_mode', $activate ? 'on' : 'off' ); + update_user_meta( $user_id, '_et_support_center_safe_mode_product', $activate ? sanitize_text_field( $allowlisted_product ) : '' ); + + $activate ? $this->maybe_add_mu_autoloader() : $this->maybe_remove_mu_autoloader(); + + /** + * Fires when safe mode is toggled on or off. + * + * @since 3.25.4 + * + * @param bool $state True if toggled on, false if toggled off. + */ + do_action( 'et_support_center_toggle_safe_mode', $activate ); + } + + /** + * Set Safe Mode Cookie + * + * @since 3.20 + * + * @return void + */ + function set_safe_mode_cookie() { + if ( et_core_is_safe_mode_active() ) { + // This random string ensures old cookies aren't used to view the site in Safe Mode + $passport = md5( rand() ); + + update_option( 'et-support-center-safe-mode-verify', $passport ); + setcookie( 'et-support-center-safe-mode', $passport, time() + DAY_IN_SECONDS, SITECOOKIEPATH, false, is_ssl() ); + } else { + // Force-expire the cookie + setcookie( 'et-support-center-safe-mode', '', 1, SITECOOKIEPATH, false, is_ssl() ); + } + } + + /** + * Render modal that intercepts plugin activation/deactivation + * + * @since 3.20 + * + * @return void + */ + public function render_safe_mode_block_restricted() { + if ( ! et_core_is_safe_mode_active() ) { + return; + } + + // Get the name of the ET product that activated Safe Mode + $safe_mode_activator = get_user_meta( get_current_user_id(), '_et_support_center_safe_mode_product', true ); + $verified_activator = $this->is_allowlisted_product( $safe_mode_activator ); + + ?> + + is_allowlisted_product( $safe_mode_activator ); + + print sprintf( '%3$s', + 'et-safe-mode-indicator', + esc_url( get_admin_url( null, 'admin.php?page=et_support_center#et_card_safe_mode' ) ), + esc_html__( sprintf( 'Turn Off %1$s Safe Mode', $verified_activator ), 'et-core' ) + ); + + print sprintf( '', + 'et-ajax-saving', + esc_url( $this->local_path . 'admin/images/ajax-loader.gif' ), + 'loading' + ); + } + } + + /** + * Prints the admin page for Support Center + * + * @since 3.20 + */ + public function add_support_center() { + + $is_current_user_et_support = 0; + if ( in_array( 'et_support', wp_get_current_user()->roles ) ) { + $is_current_user_et_support = 1; + } + if ( in_array( 'et_support_elevated', wp_get_current_user()->roles ) ) { + $is_current_user_et_support = 2; + } + + // Conditionally Display Divi Hosting Card + $this->maybe_display_divi_hosting_card(); + ?> +Enabling Remote Access will give the Elegant Themes support team limited access to your WordPress Dashboard. If requested, you can also enable full admin privileges. Remote Access should only be turned on if requested by the Elegant Themes support team. Remote Access is automatically disabled after 4 days.
', 'et-core' ); + + $support_account = $this->get_et_support_user(); + + $is_et_support_user_active = 0; + + $has_et_license = $this->get_et_license(); + + if ( ! $has_et_license ) { + + $card_content .= sprintf( + '%2$s
Enabling Safe Mode will temporarily disable features and plugins that may be causing problems with your Elegant Themes product. This includes all Plugins, Child Themes, and Custom Code added to your integration areas. These items are only disabled for your current user session so your visitors will not be disrupted. Enabling Safe Mode makes it easy to figure out what is causing problems on your website by identifying or eliminating third party plugins and code as potential causes.
', 'et-core' ); + $error_message = ''; + $safe_mode_active = ( et_core_is_safe_mode_active() ) ? ' et_pb_on_state' : ' et_pb_off_state'; + $plugins_list = array(); + $plugins_output = ''; + + $has_mu_plugins_dir = wp_mkdir_p( WPMU_PLUGIN_DIR ) && wp_is_writable( WPMU_PLUGIN_DIR ); + $can_create_mu_plugins_dir = wp_is_writable( WP_CONTENT_DIR ) && ! wp_mkdir_p( WPMU_PLUGIN_DIR ); + + if ( $has_mu_plugins_dir || $can_create_mu_plugins_dir ) { + // Gather list of plugins that will be temporarily deactivated in Safe Mode + $all_plugins = get_plugins(); + $active_plugins = get_option( 'active_plugins' ); + + foreach ( $active_plugins as $plugin ) { + // Verify this 'active' plugin actually exists in the plugins directory + if ( ! in_array( $plugin, array_keys( $all_plugins ) ) ) { + continue; + } + + // If it's not in our allowlist, add it to the list of plugins we'll disable + if ( ! in_array( $plugin, $this->safe_mode_plugins_allowlist ) ) { + $plugins_list[] = 'Plugins cannot be disabled because your wp-content
directory has inconsistent file permissions. Click here for more information.
%1$s
If you have WP_DEBUG_LOG enabled, WordPress related errors will be archived in a log file. For your convenience, we have aggregated the contents of this log file so that you and the Elegant Themes support team can view it easily. The file cannot be edited here.
'; + + if ( isset( $wp_debug_log['error'] ) ) { + $card_content .= '%1$s
+{$message}"; + } + + /** + * Check if we need to force update options removal in case a customer clicked on "Check Again" button + * in the notification area. + */ + function maybe_force_update_requests() { + if ( wp_doing_ajax() ) { + return; + } + + if ( empty( $_GET['et_action'] ) || 'update_account_details' !== $_GET['et_action'] ) { + return; + } + + if ( empty( $_GET['et_update_account_details_nonce'] ) || ! wp_verify_nonce( $_GET['et_update_account_details_nonce'], 'et_update_account_details' ) + ) { + return; + } + + $this->force_update_requests(); + } + + function replace_theme_update_notification( $themes_array ) { + if ( empty( $themes_array ) ) { + return $themes_array; + } + + if ( empty( $this->all_et_products_domains['theme'] ) ) { + return $themes_array; + } + + foreach ( $themes_array as $id => $theme_data ) { + // replace default error message with custom message for ET themes. + if ( + in_array( $id, $this->all_et_products_domains['theme'] ) + && false !== strpos( $theme_data['update'], 'Automatic update is unavailable for this theme' ) + ) { + $themes_array[ $id ]['update'] = sprintf( + '
%1$s
%2$s
%1$s
', $message ); + } + + if ( empty( $output ) ) { + return; + } + + $dashboard_url = add_query_arg( 'et_action', 'update_account_details', admin_url( 'update-core.php' ) ); + + printf( + '+ ' . et_get_safe_localization( sprintf( + __( 'You\'re currently rolled back to Version %1$s from Version %2$s.', 'et-core' ), + esc_html( $this->_get_latest_installed_version() ), + esc_html( $this->_get_previous_installed_version() ) + ) ) . ' +
++ ' . et_get_safe_localization( sprintf( + __( 'Update to the latest version to unlock the full power of %1$s. Learn more here.', 'et-core' ), + esc_html( $this->product_name ), + esc_url( $this->_get_update_documentation_url() ) + ) ) . ' +
+ '; + + wp_send_json_error( array( + 'errorCode' => 'et_unknown', + 'error' => $error, + ), 400 ); + } + + $success = $this->rollback(); + + if ( is_wp_error( $success ) ) { + $error = $success->get_error_message(); + if ( $success->get_error_code() === 'et_version_rollback_blocklisted' ) { + $error = ' ++ ' . et_get_safe_localization( sprintf( + __( 'For privacy and security reasons, you cannot rollback to Version %1$s.', 'et-core' ), + esc_html( $this->_get_previous_installed_version() ) + ) ) . ' +
++ + ' . esc_html__( 'Learn more here.', 'et-core' ) . ' + +
+ '; + } + + wp_send_json_error( array( + 'errorIsUnrecoverable' => in_array( $success->get_error_code(), array( 'et_version_rollback_not_available', 'et_version_rollback_blocklisted' ) ), + 'errorCode' => $success->get_error_code(), + 'error' => $error, + ), 400 ); + } + + wp_send_json_success(); + } + + /** + * Execute a version rollback. + * + * @since 3.10 + * + * @return bool|WP_Error + */ + public function rollback() { + // Load versions before rollback so they are not affected. + $previous_version = $this->_get_previous_installed_version(); + $latest_version = $this->_get_latest_installed_version(); + + $api = new ET_Core_API_ElegantThemes( $this->api_username, $this->api_key ); + $available = $api->is_product_available( $this->product_name, $previous_version ); + + if ( is_wp_error( $available ) ) { + $major_minor = implode( '.', array_slice( explode( '.', $previous_version ), 0, 2 ) ); + + if ( $major_minor . '.0' === $previous_version ) { + // Skip the trailing 0 in the version number and retry. + $previous_version = $major_minor; + $available = $api->is_product_available( $this->product_name, $previous_version ); + } + + if ( is_wp_error( $available ) ) { + return $available; + } + } + + $download_url = $api->get_download_url( $this->product_name, $previous_version ); + + // Buffer and discard output as upgrader classes still output content even if the upgrader skin is silent. + $buffer_started = ob_start(); + $result = $this->_install_theme( $download_url ); + if ( $buffer_started ) { + ob_end_clean(); + } + + if ( is_wp_error( $result ) ) { + return $result; + } + + if ( true !== $result ) { + return new WP_Error( 'et_unknown', esc_html__( 'An unknown error has occurred. Please try again later.', 'et-core' ) ); + } + + /** + * Fires after successful product version rollback. + * + * @since 3.26 + * + * @param string $product_short_name - The short name of the product rolling back. + * @param string $rollback_from_version - The product version rolling back from. + * @param string $rollback_to_version - The product version rolling back to. + */ + do_action( 'et_after_version_rollback', $this->product_shortname, $latest_version, $previous_version ); + + // Swap version numbers after a successful rollback. + $this->_set_previous_installed_version( $latest_version ); + $this->_set_latest_installed_version( $previous_version ); + } + + /** + * Install a theme overwriting it if it already exists. + * Copied from Theme_Upgrader::install() due to lack of control over the clear_desination argument. + * + * @see Theme_Upgrader::install() @ WordPress 4.9.4 + * + * @since 3.10 + * + * @param string $package + * + * @return bool|WP_Error + */ + protected function _install_theme( $package ) { + require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' ); + $upgrader = new Theme_Upgrader( new ET_Core_LIB_SilentThemeUpgraderSkin() ); + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( array(), $defaults ); + + $upgrader->init(); + $upgrader->install_strings(); + + add_filter('upgrader_source_selection', array( $upgrader, 'check_package' ) ); + add_filter('upgrader_post_install', array( $upgrader, 'check_parent_theme_filter' ), 10, 3 ); + if ( $parsed_args['clear_update_cache'] ) { + // Clear cache so wp_update_themes() knows about the new theme. + add_action( 'upgrader_process_complete', 'wp_clean_themes_cache', 9, 0 ); + } + + $upgrader->run( array( + 'package' => $package, + 'destination' => get_theme_root(), + 'clear_destination' => true, // Overwrite theme. + 'clear_working' => true, + 'hook_extra' => array( + 'type' => 'theme', + 'action' => 'install', + ), + ) ); + + remove_action( 'upgrader_process_complete', 'wp_clean_themes_cache', 9 ); + remove_filter( 'upgrader_source_selection', array( $upgrader, 'check_package' ) ); + remove_filter( 'upgrader_post_install', array( $upgrader, 'check_parent_theme_filter' ) ); + + if ( ! $upgrader->result || is_wp_error( $upgrader->result ) ) { + return $upgrader->result; + } + + // Refresh the Theme Update information. + wp_clean_themes_cache( $parsed_args['clear_update_cache'] ); + + return true; + } + + /** + * Get update documentation url for the product. + * + * @since 3.10 + * + * @return string + */ + protected function _get_update_documentation_url() { + return "https://www.elegantthemes.com/documentation/{$this->product_shortname}/update-{$this->product_shortname}/"; + } + + /** + * Return ePanel option. + * + * @since 3.10 + * + * @return array + */ + public function get_epanel_option() { + return array( + 'name' => esc_html__( 'Version Rollback', 'et-core' ), + 'id' => 'et_version_rollback', + 'type' => 'callback_function', + 'function_name' => array( $this, 'render_epanel_option' ), + 'desc' => et_get_safe_localization( __( 'If you recently updated to a new version and are experiencing problems, you can easily roll back to the previously-installed version. We always recommend using the latest version and testing updates on a staging site. However, if you run into problems after updating you always have the option to roll back.', 'et-core' ) ), + ); + } + + /** + * Render ePanel option. + * + * @since 3.10 + * + * @return void + */ + public function render_epanel_option() { + $previous = $this->_get_previous_installed_version(); + $modal_renderer = array( $this, 'render_epanel_no_previous_version_modal' ); + + if ( ! empty( $previous ) ) { + $modal_renderer = array( $this, 'render_epanel_confirm_rollback_modal' ); + + if ( $this->_is_rolled_back() ) { + $modal_renderer = array( $this, 'render_epanel_already_rolled_back_modal' ); + } + } + + add_action( 'admin_footer', $modal_renderer ); + ?> + + + + _get_ajax_action(); + $url = add_query_arg( array( + 'action' => $action, + 'nonce' => wp_create_nonce( $action ), + ), admin_url( 'admin-ajax.php' ) ); + ?> + + + + _get_previous_installed_version(); + $latest_installed_version = $this->_get_latest_installed_version(); + + // Get the theme version since the files may have changed but + // we are still executing old code from memory. + $theme_version = et_get_theme_version(); + + if ( $latest_installed_version === $theme_version ) { + return; + } + + if ( empty( $latest_installed_version ) ) { + $latest_installed_version = $theme_version; + } + + if ( version_compare( $theme_version, $latest_installed_version, '!=') ) { + $previous_installed_version = $latest_installed_version; + $latest_installed_version = $theme_version; + } + + /** + * Fires after new version number is updated. + * + * @since 4.10.0 + */ + do_action( 'et_store_before_new_version_update' ); + + $this->_set_previous_installed_version( $previous_installed_version ); + $this->_set_latest_installed_version( $latest_installed_version ); + + /** + * Fires after new version number is updated. + * + * @since 4.10.0 + */ + do_action( 'et_store_after_new_version_update' ); + } + +} +endif; diff --git a/core/components/api/ElegantThemes.php b/core/components/api/ElegantThemes.php new file mode 100644 index 0000000..a2a547f --- /dev/null +++ b/core/components/api/ElegantThemes.php @@ -0,0 +1,248 @@ +username = sanitize_text_field( $username ); + $this->api_key = sanitize_text_field( $api_key ); + } + + /** + * Decorate a payload array with common data. + * + * @since 3.10 + * + * @param array $payload + * + * @return array + */ + protected function _get_decorated_payload( $payload ) { + if ( ! isset( $payload['username'] ) ) { + $payload['username'] = $this->username; + } + + if ( ! isset( $payload['api_key'] ) ) { + $payload['api_key'] = $this->api_key; + } + + return $payload; + } + + /** + * Decorate request options array with common options. + * + * @since 3.10 + * + * @param array $options + * + * @return array + */ + protected function _get_decorated_request_options( $options = array() ) { + global $wp_version; + + $options = array_merge( array( + 'timeout' => 30, + 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ), + ), $options ); + + return $options; + } + + /** + * Parse a response from the API. + * + * @since 3.10 + * + * @param array|WP_Error $response + * + * @return object|WP_Error + */ + protected function _parse_response( $response ) { + if ( is_wp_error( $response ) ) { + return $response; + } + + $response_body = trim( wp_remote_retrieve_body( $response ) ); + + if ( '' === $response_body ) { + return new WP_Error( 'et_unknown', esc_html__( 'An unknown error has occurred. Please try again later.', 'et-core' ) ); + } + + $credentials_errors = array( + 'Username is not set.', + 'Subscription is not active', + ); + + if ( in_array( $response_body, $credentials_errors ) ) { + return new WP_Error( 'et_invalid_api_credentials', esc_html__( 'Invalid Username and/or API Key provided.', 'et-core' ) ); + } + + return maybe_unserialize( $response_body ); + } + + /** + * Get the full API endpoint. + * + * @since 3.10 + * + * @param string $endpoint "api" or "api_downloads" + * + * @return string + */ + protected function _get_endpoint( $endpoint = 'api' ) { + $allowed_endpoints = array( 'api', 'api_downloads' ); + $suffix = '.php'; + + if ( ! in_array( $endpoint, $allowed_endpoints ) ) { + $endpoint = $allowed_endpoints[0]; + } + + return esc_url_raw( $this->api_url . $endpoint . $suffix ); + } + + /** + * Submit a GET request to the API. + * + * @since 3.10 + * + * @param array $payload + * @param string $endpoint + * + * @return object|WP_Error + */ + protected function _get( $payload, $endpoint = 'api' ) { + $payload = $this->_get_decorated_payload( $payload ); + $options = $this->_get_decorated_request_options(); + $url = esc_url_raw( add_query_arg( $payload, $this->_get_endpoint( $endpoint ) ) ); + + $response = wp_remote_get( $url, $options ); + + return $this->_parse_response( $response ); + } + + /** + * Submit a POST request to the API. + * + * @since 3.10 + * + * @param array $payload + * @param string $endpoint + * + * @return object|WP_Error + */ + protected function _post( $payload, $endpoint = 'api' ) { + $payload = $this->_get_decorated_payload( $payload ); + $options = $this->_get_decorated_request_options( array( + 'body' => $payload, + ) ); + + $response = wp_remote_post( $this->_get_endpoint( $endpoint ), $options ); + + return $this->_parse_response( $response ); + } + + /** + * Check if a product is available. + * + * @since 3.10 + * + * @param string $product_name + * @param string $version + * + * @return bool|WP_Error + */ + public function is_product_available( $product_name, $version ) { + $response = $this->_get( array( + 'api_update' => 1, + 'action' => 'check_version_status', + 'product' => $product_name, + 'version' => $version, + ) ); + + if ( is_wp_error( $response ) ) { + return $response; + } + + if ( ! is_array( $response ) ) { + return new WP_Error( 'et_unknown', esc_html__( 'An unexpected response was received from the version server. Please try again later.', 'et-core' ) ); + } + + switch ( $response['status'] ) { + case 'not_available': + return new WP_Error( 'et_version_rollback_not_available', sprintf( + esc_html__( 'The previously used version of %1$s does not support version rollback.', 'et-core' ), + esc_html( $product_name ) + ) ); + + case 'blocklisted': + return new WP_Error( 'et_version_rollback_blocklisted', et_get_safe_localization( sprintf( + __( 'For privacy and security reasons, you cannot rollback to Version %1$s.', 'et-core' ), + esc_html( $version ) + ) ) ); + + case 'available': + return true; + } + + return new WP_Error( 'et_unknown', esc_html__( 'An unknown error has occurred. Please try again later.', 'et-core' ) ); + } + + /** + * Get a product download url for a specific version, if available. + * + * @since 3.10 + * + * @param string $product_name + * @param string $version + * + * @return string|WP_Error + */ + public function get_download_url( $product_name, $version ) { + $payload = $this->_get_decorated_payload( array( + 'api_update' => 1, + 'theme' => $product_name, + 'version' => $version, + ) ); + return esc_url_raw( add_query_arg( $payload, $this->_get_endpoint( 'api_downloads' ) ) ); + } +} +endif; diff --git a/core/components/api/OAuthHelper.php b/core/components/api/OAuthHelper.php new file mode 100644 index 0000000..1f16ac5 --- /dev/null +++ b/core/components/api/OAuthHelper.php @@ -0,0 +1,295 @@ +_initialize( $data, $urls ); + + $this->sha1_method = new ET_Core_LIB_OAuthHMACSHA1(); + $this->consumer = new ET_Core_LIB_OAuthConsumer( $this->consumer_key, $this->consumer_secret ); + + if ( '' !== $this->access_token && '' !== $this->access_token_secret ) { + $this->token = new ET_Core_LIB_OAuthToken( $this->access_token, $this->access_token_secret ); + } else if ( empty( $this->access_token ) && ! empty( $this->access_token_secret ) ) { + $this->bearer = "Bearer {$this->access_token_secret}"; + } + } + + /** + * @internal + * + * @param array $data {@see self::__construct()} + * @param array $urls {@see self::__construct()} + */ + private function _initialize( $data, $urls ) { + $this->consumer_key = isset( $data['consumer_key'] ) ? $data['consumer_key'] : ''; + $this->consumer_secret = isset( $data['consumer_secret'] ) ? $data['consumer_secret'] : ''; + $this->access_token = isset( $data['access_key'] ) ? $data['access_key'] : ''; + $this->access_token_secret = isset( $data['access_secret'] ) ? $data['access_secret'] : ''; + + $this->REQUEST_TOKEN_URL = $urls['request_token_url']; + $this->AUTHORIZATION_URL = $urls['authorization_url']; + $this->ACCESS_TOKEN_URL = $urls['access_token_url']; + $this->REDIRECT_URL = isset( $urls['redirect_url'] ) ? $urls['redirect_url'] : ''; + } + + protected function _get_oauth2_parameters( $args ) { + et_core_nonce_verified_previously(); + + return wp_parse_args( $args, array( + 'grant_type' => 'authorization_code', + 'code' => sanitize_text_field( $_GET['code'] ), + 'client_id' => $this->consumer_key, + 'client_secret' => $this->consumer_secret, + 'redirect_uri' => $this->REDIRECT_URL, + ) ); + } + + /** + * @param \ET_Core_HTTPRequest $request + * + * @return \ET_Core_HTTPRequest + */ + protected function _prepare_oauth_request( $request ) { + $parameters = array(); + + if ( is_array( $request->BODY ) && $request->BODY && ! $request->JSON_BODY ) { + $parameters = $request->BODY; + } + + $oauth_request = ET_Core_LIB_OAuthRequest::from_consumer_and_token( + $this->consumer, + $this->token, + $request->METHOD, + $request->URL, + $parameters + ); + + $oauth_request->sign_request( $this->sha1_method, $this->consumer, $this->token ); + + if ( 'GET' === $request->METHOD ) { + $request->URL = $oauth_request->to_url(); + } else if ( 'POST' === $request->METHOD ) { + $request->URL = $request->JSON_BODY ? $oauth_request->to_url() : $oauth_request->get_normalized_http_url(); + $request->BODY = $request->JSON_BODY ? json_encode( $request->BODY ) : $oauth_request->to_post_data(); + } + + return $request; + } + + /** + * @param \ET_Core_HTTPRequest $request + * + * @return \ET_Core_HTTPRequest + */ + protected function _prepare_oauth2_request( $request ) { + if ( null !== $this->bearer ) { + $request->HEADERS['Authorization'] = $this->bearer; + } + + if ( $request->JSON_BODY ) { + return $request; + } + + if ( is_array( $request->BODY ) && ! array_key_exists( 'code', $request->BODY ) ) { + $request->URL = add_query_arg( $request->BODY, $request->URL ); + $request->BODY = null; + } + + return $request; + } + + /** + * Finish the OAuth2 authorization process if needed. + */ + public static function finish_oauth2_authorization() { + et_core_nonce_verified_previously(); + + if ( ! isset( $_GET['state'] ) || 0 !== strpos( $_GET['state'], 'ET_Core' ) ) { + return; + } + + list( $_, $name, $account, $nonce ) = explode( '|', sanitize_text_field( rawurldecode( $_GET['state'] ) ) ); + + if ( ! $name || ! $account || ! $nonce ) { + return; + } + + $_GET['nonce'] = $nonce; + + et_core_security_check( 'manage_options', 'et_core_api_service_oauth2', 'nonce', '_GET' ); + + $providers = et_core_api_email_providers(); + + if ( ! $providers->account_exists( $name, $account ) ) { + et_core_die(); + } + + if ( ! $provider = $providers->get( $name, $account, 'ET_Core' ) ) { + et_core_die(); + } + + $result = $provider->fetch_subscriber_lists(); + + // Display the authorization results + echo et_core_esc_previously( ET_Bloom::generate_modal_warning( $result ) ); + } + + /** + * Prepare a request for an access token. + * + * @param array $args { + * For OAuth 1.0 & 1.0a: + * + * @type string $verifier OAuth verifier token. Optional. + * + * For OAuth 2.0: + * + * @type string $code The code returned when the user was redirected back to their dashboard. + * @type string $grant_type The desired grant type, as per the OAuth 2.0 spec. + * @type string $redirect_uri The redirect URL from the original authorization request. + * } + * + * @return ET_Core_HTTPRequest + */ + public function prepare_access_token_request( $args = array() ) { + et_core_nonce_verified_previously(); + $oauth2 = ! empty( $_GET['code'] ); + $request = new ET_Core_HTTPRequest( $this->ACCESS_TOKEN_URL, 'POST', '', true ); + $request->BODY = $oauth2 ? $this->_get_oauth2_parameters( $args ) : $args; + + return $this->prepare_oauth_request( $request, $oauth2 ); + } + + /** + * Prepare an OAuth 1.0a or 2.0 request. + * + * @param ET_Core_HTTPRequest $request + * @param bool $oauth2 + * + * @return \ET_Core_HTTPRequest + */ + function prepare_oauth_request( $request, $oauth2 = false ) { + return $oauth2 ? $this->_prepare_oauth2_request( $request ) : $this->_prepare_oauth_request( $request ); + } + + /** + * Process a response to an OAuth access token request and retrieve the access token if auth was successful. + * + * @param \ET_Core_HTTPResponse $response + */ + public function process_authentication_response( $response, $json = true ) { + if ( $response->ERROR ) { + return; + } + + $response = $json ? $response->DATA : wp_parse_args( $response->DATA ); + + // Salesforce returns an `instance_url` data in the auth response. + if ( isset( $response['instance_url'] ) ) { + $this->INSTANCE_URL = esc_url( $response['instance_url'] ); // @phpcs:ignore ET.Sniffs.ValidVariableName.UsedPropertyNotSnakeCase -- Use uppercase to be consistent with existing code. + } + + if ( isset( $response['oauth_token'], $response['oauth_token_secret'] ) ) { + // OAuth 1.0a + $token = sanitize_text_field( $response['oauth_token'] ); + $secret = sanitize_text_field( $response['oauth_token_secret'] ); + $this->token = new ET_Core_LIB_OAuthToken( $token, $secret ); + } elseif ( isset( $response['access_token'] ) ) { + // OAuth 2.0 + $this->token = new ET_Core_LIB_OAuthToken( '', sanitize_text_field( $response['access_token'] ) ); + if ( isset( $response['refresh_token'] ) ) { + $this->token->refresh_token = sanitize_text_field( $response['refresh_token'] ); + } + } + } +} diff --git a/core/components/api/README.md b/core/components/api/README.md new file mode 100644 index 0000000..38613e5 --- /dev/null +++ b/core/components/api/README.md @@ -0,0 +1,17 @@ +## Core API Component Group +This directory contains components that facilitate interacting with 3rd-party REST APIs. + +### What's Inside +|File|Name|Description| +|:--------|:----------|:----------| +|**email**|**ET_Core_API_Email**|Email marketing service providers| +|**social**|**ET_Core_API_Social**|Social networks| +|Service.php|ET_Core_API_Service|Base class for all API components| +|OAuthHelper.php|ET_Core_API_OAuthHelper|Handles OAuth authorization flow| + +> ***Note:*** Component groups are in **bold**. + +### Class Hierarchy ++ +
\ No newline at end of file diff --git a/core/components/api/Service.php b/core/components/api/Service.php new file mode 100644 index 0000000..81f4cfa --- /dev/null +++ b/core/components/api/Service.php @@ -0,0 +1,546 @@ +request} + * + * @since 1.1.0 + * @var \ET_Core_HTTPRequest? + */ + public $request; + + /** + * Convenience accessor for {@link self::http->response} + * + * @since 1.1.0 + * @var \ET_Core_HTTPResponse? + */ + public $response; + + /** + * For services that return JSON responses, this is the top-level/root key for the returned data. + * + * @since 1.1.0 + * @var string + */ + public $response_data_key; + + /** + * The service type (email, social, etc). + * + * @since 1.1.0 + * @var string + */ + public $service_type; + + /** + * The slug for this service (not shown in the UI). + * + * @since 1.1.0 + * @var string + */ + public $slug; + + /** + * Whether or not the service uses OAuth. + * + * @since 1.1.0 + * @var bool + */ + public $uses_oauth; + + /** + * ET_Core_API_Service constructor. + * + * @since 1.1.0 + * + * @param string $owner {@see self::owner} + * @param string $account_name The name of the service account that the instance will provide access to. + * @param string $api_key The api key for the account. Optional (can be set after instantiation). + */ + public function __construct( $owner = 'ET_Core', $account_name = '', $api_key = '' ) { + $this->account_name = str_replace( '.', '', sanitize_text_field( $account_name ) ); + $this->owner = sanitize_text_field( $owner ); + $this->account_fields = $this->get_account_fields(); + + $this->data = $this->_get_data(); + $this->data_keys = $this->get_data_keymap(); + $this->oauth_verifier = ''; + + $this->http = new ET_Core_HTTPInterface( $this->owner ); + + self::$_ = $this->data_utils = new ET_Core_Data_Utils(); + + $this->FAILURE_MESSAGE = esc_html__( 'API request failed, please try again.', 'et_core' ); + $this->API_KEY_REQUIRED = esc_html__( 'API request failed. API Key is required.', 'et_core' ); + + if ( '' !== $api_key ) { + $this->data['api_key'] = sanitize_text_field( $api_key ); + $this->save_data(); + } + + if ( $this->uses_oauth && $this->is_authenticated() ) { + $this->_initialize_oauth_helper(); + } + } + + /** + * Generates a HTTP Basic Auth header and adds it to the current request object. Uses the value + * of {@link self::http_auth} to determine the correct values to use for the username and password. + */ + protected function _add_http_auth_header_to_request() { + $username_key = $this->http_auth['username']; + $password_key = $this->http_auth['password']; + + $username = isset( $this->data[ $username_key ] ) ? $this->data[ $username_key ] : $username_key; + $password = isset( $this->data[ $password_key ] ) ? $this->data[ $password_key ] : $password_key; + + $this->request->HEADERS['Authorization'] = 'Basic ' . base64_encode( "{$username}:{$password}" ); + } + + /** + * Exchange a request/verifier token for an access token. This is the last step in the OAuth authorization process. + * If successful, the access token will be saved and used for future calls to the API. + * + * @return bool Whether or not authentication was successful. + */ + private function _do_oauth_access_token_request() { + if ( ! $this->_initialize_oauth_helper() ) { + return false; + } + + $args = array(); + + if ( '' !== $this->oauth_verifier ) { + $args['oauth_verifier'] = $this->oauth_verifier; + } + + $this->request = $this->http->request = $this->OAuth_Helper->prepare_access_token_request( $args ); + + $this->request->HEADERS['Content-Type'] = 'application/x-www-form-urlencoded'; + + $this->http->make_remote_request(); + $this->response = $this->http->response; + + if ( $this->response->ERROR ) { + return false; + } + + $this->OAuth_Helper->process_authentication_response( $this->response, $this->http->expects_json ); + + if ( null === $this->OAuth_Helper->token ) { + return false; + } + + $this->data['access_key'] = $this->OAuth_Helper->token->key; + $this->data['access_secret'] = $this->OAuth_Helper->token->secret; + $this->data['is_authorized'] = true; + + if ( ! empty( $this->OAuth_Helper->token->refresh_token ) ) { + $this->data['refresh_token'] = $this->OAuth_Helper->token->refresh_token; + } + + // If there an `instance_url` returned from the auth response, save it. + // Salesforce API should use this URL instead of the `login_url` provided by user. + if ( ! empty( $this->OAuth_Helper->INSTANCE_URL ) ) { // @phpcs:ignore ET.Sniffs.ValidVariableName.UsedPropertyNotSnakeCase -- No need to change the prop name. + $this->data['instance_url'] = $this->OAuth_Helper->INSTANCE_URL; // @phpcs:ignore ET.Sniffs.ValidVariableName.UsedPropertyNotSnakeCase -- No need to change the prop name. + } + + return true; + } + + /** + * The service's private data. + * + * @see self::$_data + * @internal + * @since 1.1.0 + * + * @return array + */ + protected function _get_data() { + return (array) get_option( "et_core_api_{$this->service_type}_options" ); + } + + /** + * Initializes {@link self::OAuth_Helper} + * + * @return bool `true` if successful, `false` otherwise. + */ + protected function _initialize_oauth_helper() { + if ( null !== $this->OAuth_Helper ) { + return true; + } + + $urls = array( + 'access_token_url' => $this->ACCESS_TOKEN_URL, + 'request_token_url' => $this->REQUEST_TOKEN_URL, + 'authorization_url' => $this->AUTHORIZATION_URL, + 'redirect_url' => $this->REDIRECT_URL, + ); + + $this->OAuth_Helper = new ET_Core_API_OAuthHelper( $this->data, $urls, $this->owner ); + + return null !== $this->OAuth_Helper; + } + + /** + * Returns the currently known custom fields for this service. + * + * @return array + */ + protected function _get_custom_fields() { + return empty( $this->data['custom_fields'] ) ? array() : $this->data['custom_fields']; + } + + /** + * Initiate OAuth Authorization Flow + * + * @return array|bool + */ + public function authenticate() { + et_core_nonce_verified_previously(); + + if ( '1.0a' === $this->oauth_version || ( '2.0' === $this->oauth_version && ! empty( $_GET['code'] ) ) ) { + $authenticated = $this->_do_oauth_access_token_request(); + + if ( $authenticated ) { + $this->save_data(); + return true; + } + } elseif ( '2.0' === $this->oauth_version ) { + $nonce = wp_create_nonce( 'et_core_api_service_oauth2' ); + $args = array( + 'client_id' => $this->data['api_key'], + 'response_type' => 'code', + 'state' => rawurlencode( "ET_Core|{$this->slug}|{$this->account_name}|{$nonce}" ), + 'redirect_uri' => $this->REDIRECT_URL, // @phpcs:ignore -- No need to change the class property + ); + + $this->save_data(); + + return array( 'redirect_url' => add_query_arg( $args, $this->AUTHORIZATION_URL ) ); + } + + return false; + } + + /** + * Remove the service account from the database. This cannot be undone. The instance + * will no longer be usable after a call to this method. + * + * @since 1.1.0 + */ + abstract public function delete(); + + /** + * Get the form fields to show in the WP Dashboard for this service's accounts. + * + * @since 1.1.0 + * + * @return array + */ + abstract public function get_account_fields(); + + /** + * Get an array that maps our data keys to those returned by the 3rd-party service's API. + * + * @since 1.1.0 + * + * @param array $keymap A mapping of our data key addresses to those of the service, organized by type/category. + * + * @return array[] { + * + * @type array $key_type { + * + * @type string $our_key_address The corresponding key address on the service. + * ... + * } + * ... + * } + */ + abstract public function get_data_keymap( $keymap = array() ); + + /** + * Get error message for a response that has an ERROR status. If possible the provider's + * error message will be returned. Otherwise the HTTP error status description will be returned. + * + * @return string + */ + public function get_error_message() { + if ( ! empty( $this->data_keys['error'] ) ) { + $data = $this->transform_data_to_our_format( $this->response->DATA, 'error' ); + return isset( $data['error_message'] ) ? $data['error_message'] : ''; + } + + return $this->response->ERROR_MESSAGE; + } + + /** + * Whether or not the current account has been authenticated with the service's API. + * + * @return bool + */ + public function is_authenticated() { + return isset( $this->data['is_authorized'] ) && in_array( $this->data['is_authorized'], array( true, 'true' ) ); + } + + /** + * Makes a remote request using the current {@link self::http->request}. Automatically + * handles custom headers and OAuth when applicable. + */ + public function make_remote_request() { + if ( ! empty( $this->custom_headers ) ) { + $this->http->request->HEADERS = array_merge( $this->http->request->HEADERS, $this->custom_headers ); + } + + if ( $this->uses_oauth ) { + $oauth2 = '2.0' === $this->oauth_version; + $this->http->request = $this->OAuth_Helper->prepare_oauth_request( $this->http->request, $oauth2 ); + } else if ( $this->http_auth ) { + $this->_add_http_auth_header_to_request(); + } + + $this->request = $this->http->request; + + $this->http->make_remote_request(); + + $this->response = $this->http->response; + } + + /** + * Convenience accessor for {@link self::http->prepare_request()} + * + * @param string $url + * @param string $method + * @param bool $is_auth + * @param mixed $body + * @param bool $json_body + * @param bool $ssl_verify + */ + public function prepare_request( $url, $method = 'GET', $is_auth = false, $body = null, $json_body = false, $ssl_verify = true ) { + $this->http->prepare_request( $url, $method, $is_auth, $body, $json_body, $ssl_verify ); + $this->request = $this->http->request; + } + + /** + * Save this service's data to the database. + * + * @return mixed + */ + abstract public function save_data(); + + /** + * Set the account name for the instance. Changing the accounts name affects the + * value of {@link self::data}. + * + * @param string $name + */ + abstract public function set_account_name( $name ); + + /** + * Transforms an array from our data format to that of the service provider. + * + * @param array $data The data to be transformed. + * @param string $key_type The type of data. This corresponds to the key_type in {@link self::data_keys}. + * @param array $exclude_keys Keys that should be excluded from the transformed data. + * + * @return array + */ + public function transform_data_to_our_format( $data, $key_type, $exclude_keys = array() ) { + if ( ! isset( $this->data_keys[ $key_type ] ) ) { + return array(); + } + + return self::$_->array_transform( $data, $this->data_keys[ $key_type ], '<-', $exclude_keys ); + } + + /** + * Transforms an array from the service provider's data format to our data format. + * + * @param array $data The data to be transformed. + * @param string $key_type The type of data. This corresponds to the key_type in {@link self::data_keys}. + * @param array $exclude_keys Keys that should be excluded from the transformed data. + * + * @return array + */ + public function transform_data_to_provider_format( $data, $key_type, $exclude_keys = array() ) { + if ( ! isset( $this->data_keys[ $key_type ] ) ) { + return array(); + } + + return self::$_->array_transform( $data, $this->data_keys[ $key_type ], '->', $exclude_keys ); + } +} diff --git a/core/components/api/email/ActiveCampaign.php b/core/components/api/email/ActiveCampaign.php new file mode 100644 index 0000000..c421316 --- /dev/null +++ b/core/components/api/email/ActiveCampaign.php @@ -0,0 +1,316 @@ + array( + 'field_id' => '%phone%', + 'hidden' => false, + 'name' => 'Phone', + 'type' => 'input', + ), + '%customer_acct_name%' => array( + 'field_id' => '%customer_acct_name%', + 'hidden' => false, + 'name' => 'Account', + 'type' => 'input', + ), + ); + + foreach ( $list['fields'] as $field ) { + $field = $this->transform_data_to_our_format( $field, 'custom_field' ); + $field_id = $field['field_id']; + $type = $field['type']; + + $field['type'] = self::$_->array_get( $this->data_keys, "custom_field_type.{$type}", 'text' ); + + if ( isset( $field['options'] ) ) { + $options = array(); + + foreach ( $field['options'] as $option ) { + $option = $this->transform_data_to_our_format( $option, 'custom_field_option' ); + $id = $option['id']; + + $options[ $id ] = $option['name']; + } + + $field['options'] = $options; + } + + $fields[ $field_id ] = $field; + } + + return $fields; + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields = $args['custom_fields']; + + unset( $args['custom_fields'] ); + + foreach ( $fields as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + + if ( 'checkbox' === $this->data['custom_fields'][ $field_id ]['type'] ) { + $value = implode( '||', $value ); + $value = "||{$value}||"; + } else { + $value = array_pop( $value ); + } + } + + // Check if the custom field is an ActiveCampaign general field, + // it should be posted as dedicated param instead of `field[{$field_id},0]` param. + if ( preg_match( '/%(.*)%/', $field_id, $matches ) ) { + self::$_->array_set( $args, $matches[1], $value ); + } else { + self::$_->array_set( $args, "field[{$field_id},0]", $value ); + } + } + + return $args; + } + + /** + * Returns the requests URL for the account assigned to this class instance. + * + * @return string + */ + protected function _get_requests_url() { + $base_url = untrailingslashit( $this->data['api_url'] ); + + return "{$base_url}/admin/api.php"; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'API Key', 'et_core' ), + ), + 'api_url' => array( + 'label' => esc_html__( 'API URL', 'et_core' ), + 'apply_password_mask' => false, + ), + 'form_id' => array( + 'label' => esc_html__( 'Form ID', 'et_core' ), + 'not_required' => true, + 'apply_password_mask' => false, + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'id', + 'name' => 'name', + 'subscribers_count' => 'subscriber_count', + ), + 'subscriber' => array( + 'email' => 'email', + 'last_name' => 'last_name', + 'name' => 'first_name', + 'custom_fields' => 'custom_fields', + ), + 'error' => array( + 'error_message' => 'result_message', + ), + 'custom_field' => array( + 'field_id' => 'id', + 'name' => 'title', + 'type' => 'type', + 'hidden' => '!visible', + 'options' => 'options', + ), + 'custom_field_option' => array( + 'id' => 'value', + 'name' => 'name', + ), + 'custom_field_type' => array( + // Us <=> Them + 'checkbox' => 'checkbox', + 'radio' => 'radio', + 'textarea' => 'textarea', + 'hidden' => 'hidden', + // Us => Them + 'select' => 'dropdown', + 'input' => 'text', + // Them => Us + 'dropdown' => 'select', + 'text' => 'input', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) || empty( $this->data['api_url'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $query_args = array( + 'api_key' => $this->data['api_key'], + 'api_action' => 'list_list', + 'api_output' => 'json', + 'ids' => 'all', + 'full' => '1', + 'global_fields' => '1', + ); + + $request_url = add_query_arg( $query_args, $this->_get_requests_url() ); + $request_url = esc_url_raw( $request_url, array( 'https' ) ); + + $this->prepare_request( $request_url ); + $this->request->HEADERS['Content-Type'] = 'application/x-www-form-urlencoded'; + + parent::fetch_subscriber_lists(); + + if ( $this->response->ERROR ) { + return $this->get_error_message(); + } + + $lists = array(); + + foreach ( $this->response->DATA as $key => $list_data ) { + if ( ! is_numeric( $key ) ) { + continue; + } + + if ( ! empty( $list_data ) ) { + $lists[] = $list_data; + } + } + + $this->data['lists'] = $this->_process_subscriber_lists( $lists ); + $this->data['custom_fields'] = $this->_fetch_custom_fields( '', array_shift( $this->response->DATA ) ); + $this->data['is_authorized'] = 'true'; + + $this->save_data(); + + et_debug($this->data); + + return 'success'; + } + + /** + * Get ActiveCampaign subscriber info by email. + * + * @param string $email + * + * @return array + */ + public function get_subscriber( $email ) { + $query_args = array( + 'api_key' => $this->data['api_key'], + 'api_action' => 'subscriber_view_email', + 'api_output' => 'json', + 'email' => $email, + ); + + // Build request URL. This action only accept GET method. + $request_url = add_query_arg( $query_args, $this->_get_requests_url() ); + $request_url = esc_url_raw( $request_url, array( 'https' ) ); + + // Prepare and send the request. + $this->prepare_request( $request_url ); + $this->request->HEADERS['Content-Type'] = 'application/x-www-form-urlencoded'; + $this->make_remote_request(); + + // Ensure no error happen and it's included in one of the lists. + $list_id = self::$_->array_get( $this->response->DATA, 'listid', false ); + $result_code = self::$_->array_get( $this->response->DATA, 'result_code', false ); + if ( $this->response->ERROR || ! $list_id || ! $result_code ) { + return false; + } + + return $this->response->DATA; + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url= '' ) { + // Ensure to skip subscribe action if current email already subscribed. + $subscriber_data = $this->get_subscriber( $args['email'] ); + $subscriber_lists = self::$_->array_get( $subscriber_data, 'lists', array() ); + $subscriber_list = self::$_->array_get( $subscriber_lists, $args['list_id'], false ); + if ( $subscriber_list ) { + return 'success'; + } + + $list_id_key = 'p[' . $args['list_id'] . ']'; + $status_key = 'status[' . $args['list_id'] . ']'; + $responders_key = 'instantresponders[' . $args['list_id'] . ']'; + $list_id = $args['list_id']; + + $args = $this->transform_data_to_provider_format( $args, 'subscriber', array( 'list_id' ) ); + $args = $this->_process_custom_fields( $args ); + + $query_args = array( + 'api_key' => $this->data['api_key'], + 'api_action' => 'contact_sync', + 'api_output' => 'json', + ); + + $url = esc_url_raw( add_query_arg( $query_args, $this->_get_requests_url() ) ); + + $args[ $list_id_key ] = $list_id; + $args[ $status_key ] = 1; + $args[ $responders_key ] = 1; + + if ( ! empty( $this->data['form_id'] ) ) { + $args['form'] = (int) $this->data['form_id']; + } + + $this->prepare_request( $url, 'POST', false, $args ); + $this->request->HEADERS['Content-Type'] = 'application/x-www-form-urlencoded'; + + return parent::subscribe( $args, $url ); + } +} diff --git a/core/components/api/email/Aweber.php b/core/components/api/email/Aweber.php new file mode 100644 index 0000000..41ccbdb --- /dev/null +++ b/core/components/api/email/Aweber.php @@ -0,0 +1,255 @@ +accounts_url = "{$this->BASE_URL}/accounts"; + } + + protected function _fetch_custom_fields( $list_id = '', $list = array() ) { + $this->prepare_request( $list['custom_fields_collection_link'] ); + + return parent::_fetch_custom_fields( $list_id, $list ); + } + + protected function _get_lists_collection_url() { + $this->prepare_request( $this->accounts_url ); + $this->make_remote_request(); + $url = ''; + + if ( ! $this->response->ERROR && ! empty( $this->response->DATA['entries'][0]['lists_collection_link'] ) ) { + $url = $this->response->DATA['entries'][0]['lists_collection_link']; + } + + return $url; + } + + protected static function _parse_ID( $ID ) { + $values = explode( '|', $ID ); + + return ( count( $values ) === 6 ) ? $values : null; + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields = $args['custom_fields']; + + unset( $args['custom_fields'] ); + + foreach ( $fields as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + + if ( count( $value ) > 1 ) { + $value = implode( ',', $value ); + } else { + $value = array_pop( $value ); + } + } + + $list_id = $args['list_id']; + $field_name = self::$_->array_get( $this->data, "lists.{$list_id}.custom_fields.{$field_id}.name" ); + + self::$_->array_set( $args, "custom_fields.{$field_name}", $value ); + } + + return $args; + } + + /** + * Uses the app's authorization code to get an access token + */ + public function authenticate() { + if ( empty( $this->data['api_key'] ) ) { + return false; + } + + $key_parts = self::_parse_ID( $this->data['api_key'] ); + + if ( null === $key_parts ) { + return false; + } + + list( $consumer_key, $consumer_secret, $request_token, $request_secret, $verifier ) = $key_parts; + + if ( ! $verifier ) { + return false; + } + + $this->data['consumer_key'] = $consumer_key; + $this->data['consumer_secret'] = $consumer_secret; + $this->data['access_key'] = $request_token; + $this->data['access_secret'] = $request_secret; + $this->oauth_verifier = $verifier; + + // AWeber returns oauth access key in url query format :face_with_rolling_eyes: + $this->http->expects_json = false; + + return parent::authenticate(); + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'Authorization Code', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_error_message() { + $error_message = parent::get_error_message(); + + return preg_replace('/https.*/m', '', $error_message ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'id', + 'name' => 'name', + 'subscribers_count' => 'total_subscribers', + ), + 'subscriber' => array( + 'name' => 'name', + 'email' => 'email', + 'ad_tracking' => 'ad_tracking', + 'custom_fields' => 'custom_fields', + ), + 'error' => array( + 'error_message' => 'error.message', + ), + 'custom_field' => array( + 'field_id' => 'id', + 'name' => 'name', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + $needs_to_authenticate = ! $this->is_authenticated() || ! $this->_initialize_oauth_helper(); + + if ( $needs_to_authenticate && ! $this->authenticate() ) { + if ( empty( $this->response->DATA ) ) { + return ''; + } + + $this->response->DATA = json_decode( $this->response->DATA, true ); + return $this->get_error_message(); + } + + $this->http->expects_json = true; + $this->LISTS_URL = $this->_get_lists_collection_url(); + + if ( empty( $this->LISTS_URL ) ) { + return ''; + } + + $this->response_data_key = 'entries'; + + return parent::fetch_subscriber_lists(); + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $lists_url = $this->_get_lists_collection_url(); + $url = "{$lists_url}/{$args['list_id']}/subscribers"; + $ip_address = 'true' === self::$_->array_get( $args, 'ip_address', 'true' ); + + $params = $this->_process_custom_fields( $args ); + $params = $this->transform_data_to_provider_format( $params, 'subscriber' ); + $params = array_merge( $params, array( + 'ws.op' => 'create', + 'ip_address' => $ip_address ? et_core_get_ip_address() : '0.0.0.0', + 'misc_notes' => $this->SUBSCRIBED_VIA, + ) ); + + // There is a bug in AWeber some characters not encoded properly on AWeber side when sending data in x-www-form-urlencoded format so use json instead + $this->prepare_request( $url, 'POST', false, $params, true ); + $this->request->HEADERS['Content-Type'] = 'application/json'; + + return parent::subscribe( $params, $url ); + } +} diff --git a/core/components/api/email/CampaignMonitor.php b/core/components/api/email/CampaignMonitor.php new file mode 100644 index 0000000..0782869 --- /dev/null +++ b/core/components/api/email/CampaignMonitor.php @@ -0,0 +1,271 @@ + 'api_key', + 'password' => '-', + ); + + /** + * @inheritDoc + */ + public $name = 'CampaignMonitor'; + + /** + * @inheritDoc + */ + public $name_field_only = true; + + /** + * @inheritDoc + */ + public $slug = 'campaign_monitor'; + + /** + * @inheritDoc + * @internal If true, oauth endpoints properties must also be defined. + */ + public $uses_oauth = false; + + public function __construct( $owner, $account_name, $api_key = '' ) { + parent::__construct( $owner, $account_name, $api_key ); + + $this->http_auth['password'] = $owner; + } + + protected function _fetch_custom_fields( $list_id = '', $list = array() ) { + $this->prepare_request( "{$this->BASE_URL}/lists/{$list_id}/customfields.json" ); + $this->make_remote_request(); + + $result = array(); + + if ( $this->response->ERROR ) { + et_debug( $this->get_error_message() ); + + return $result; + } + + foreach ( $this->response->DATA as &$custom_field ) { + $custom_field = $this->transform_data_to_our_format( $custom_field, 'custom_field' ); + $custom_field['field_id'] = ltrim( rtrim( $custom_field['field_id'], ']' ), '[' ); + } + + $fields = array(); + + foreach ( $this->response->DATA as $field ) { + $field_id = $field['field_id']; + $type = self::$_->array_get( $field, 'type', 'any' ); + + $field['type'] = self::$_->array_get( $this->data_keys, "custom_field_type.{$type}", 'any' ); + + $fields[ $field_id ] = $field; + } + + return $fields; + } + + protected function _get_clients() { + $url = "{$this->BASE_URL}/clients.json"; + + $this->prepare_request( $url ); + $this->make_remote_request(); + + if ( $this->response->ERROR ) { + return $this->get_error_message(); + } + + return (array) $this->response->DATA; + } + + protected function _get_subscriber_counts() { + $subscriber_lists = $this->_process_subscriber_lists( $this->response->DATA ); + $with_counts = array(); + + foreach ( $subscriber_lists as $subscriber_list ) { + $list_id = $subscriber_list['list_id']; + $with_counts[ $list_id ] = $subscriber_list; + $url = "{$this->BASE_URL}/lists/{$list_id}/stats.json"; + + $this->prepare_request( $url ); + $this->make_remote_request(); + + if ( $this->response->ERROR ) { + continue; + } + + if ( isset( $this->response->DATA['TotalActiveSubscribers'] ) ) { + $with_counts[ $list_id ]['subscribers_count'] = $this->response->DATA['TotalActiveSubscribers']; + } else { + $with_counts[ $list_id ]['subscribers_count'] = 0; + } + + usleep( 500000 ); // 0.5 seconds + } + + return $with_counts; + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields_unprocessed = $args['custom_fields']; + + unset( $args['custom_fields'] ); + + $fields = array(); + + foreach ( $fields_unprocessed as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox) + foreach ( $value as $selected_option ) { + $fields[] = array( + 'Key' => $field_id, + 'Value' => $selected_option, + ); + } + } else { + $fields[] = array( + 'Key' => $field_id, + 'Value' => $value, + ); + } + } + + $args['CustomFields'] = $fields; + + return $args; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'API Key', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'ListID', + 'name' => 'Name', + 'subscribers_count' => 'TotalActiveSubscribers', + ), + 'subscriber' => array( + 'name' => 'Name', + 'email' => 'EmailAddress', + 'custom_fields' => 'custom_fields', + ), + 'error' => array( + 'error_message' => 'Message', + ), + 'custom_field' => array( + 'field_id' => 'Key', + 'name' => 'FieldName', + 'type' => 'DataType', + 'options' => 'FieldOptions', + ), + 'custom_field_type' => array( + // Us => Them + 'input' => 'Text', + 'select' => 'MultiSelectOne', + 'checkbox' => 'MultiSelectMany', + // Them => Us + 'Text' => 'input', + 'Number' => 'input', + 'Date' => 'input', + 'MultiSelectOne' => 'select', + 'MultiSelectMany' => 'checkbox', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $clients = $this->_get_clients(); + $lists = array(); + + if ( ! is_array( $clients ) ) { + // Request failed with an error, return the error message. + return $clients; + } + + foreach ( $clients as $client_info ) { + if ( empty( $client_info['ClientID'] ) ) { + continue; + } + + $url = "{$this->BASE_URL}/clients/{$client_info['ClientID']}/lists.json"; + + $this->prepare_request( $url ); + + parent::fetch_subscriber_lists(); + + if ( $this->response->ERROR ) { + return $this->get_error_message(); + } + + if ( isset( $this->response->DATA ) ) { + $with_counts = $this->_get_subscriber_counts(); + $lists = $lists + $with_counts; + $this->data['is_authorized'] = true; + + $this->save_data(); + } + } + + if ( empty( $this->data['lists'] ) || ! empty( $lists ) ) { + $this->data['lists'] = $lists; + $this->save_data(); + } + + return $this->is_authenticated() ? 'success' : $this->FAILURE_MESSAGE; + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $url = "{$this->BASE_URL}/subscribers/{$args['list_id']}.json"; + $params = $this->transform_data_to_provider_format( $args, 'subscriber' ); + $params = $this->_process_custom_fields( $params ); + + $params['CustomFields'][] = array( 'Key' => 'Note', 'Value' => $this->SUBSCRIBED_VIA ); + + $this->prepare_request( $url, 'POST', false, $params, true ); + + return parent::subscribe( $params, $url ); + } +} diff --git a/core/components/api/email/ConstantContact.php b/core/components/api/email/ConstantContact.php new file mode 100644 index 0000000..c1f9166 --- /dev/null +++ b/core/components/api/email/ConstantContact.php @@ -0,0 +1,255 @@ +_maybe_set_custom_headers(); + } + + protected function _create_subscriber_data_array( $args ) { + return $this->transform_data_to_provider_format( $args, 'subscriber' ); + } + + protected function _fetch_custom_fields( $list_id = '', $list = array() ) { + $fields = array(); + + foreach ( range( 1, 15 ) as $i ) { + $fields["custom_field_{$i}"] = array( + 'field_id' => "custom_field_{$i}", + 'name' => "custom_field_{$i}", + 'type' => 'any', + ); + } + + return $fields; + } + + protected function _get_list_from_subscriber( $subscriber, $list_id ) { + if ( ! isset( $subscriber['lists'] ) ) { + return false; + } + + foreach ( $subscriber['lists'] as &$list ) { + if ( $list['id'] === $list_id ) { + return $list; + } + } + + return false; + } + + protected function _maybe_set_custom_headers() { + if ( empty( $this->custom_headers ) && isset( $this->data['token'] ) ) { + $this->custom_headers = array( + 'Authorization' => 'Bearer ' . sanitize_text_field( $this->data['token'] ), + ); + } + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields = $args['custom_fields']; + $processed_fields = array(); + + unset( $args['custom_fields'], $this->_subscriber['custom_fields_unprocessed'] ); + + foreach ( $fields as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + + if ( count( $value ) > 1 ) { + $value = implode( ',', $value ); + } else { + $value = array_pop( $value ); + } + } + + $processed_fields[] = array( + 'name' => $field_id, + 'value' => $value, + ); + } + + if ( isset( $this->_subscriber['custom_fields'] ) ) { + $processed_fields = array_merge( $processed_fields, $this->_subscriber['custom_fields'] ); + } + + $this->_subscriber['custom_fields'] = array_unique( $processed_fields, SORT_REGULAR ); + + return $args; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'API Key', 'et_core' ), + ), + 'token' => array( + 'label' => esc_html__( 'Access Token', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'id', + 'name' => 'name', + 'subscribers_count' => 'contact_count', + ), + 'subscriber' => array( + 'name' => 'first_name', + 'last_name' => 'last_name', + 'email' => 'email_addresses.[0].email_address', + 'list_id' => 'lists.[0].id', + 'custom_fields' => 'custom_fields_unprocessed', + ), + 'error' => array( + 'error_message' => '[0].error_message', + ), + 'custom_field' => array( + 'field_id' => 'name', + 'name' => 'name', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + public function get_subscriber( $email ) { + $url = add_query_arg( 'email', $email, $this->SUBSCRIBERS_URL ); + + $this->prepare_request( $url, 'GET', false ); + $this->make_remote_request(); + + if ( $this->response->ERROR || ! isset( $this->response->DATA['results'] ) ) { + return array(); + } + + return $this->response->DATA['results']; + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) || empty( $this->data['token'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $this->_maybe_set_custom_headers(); + + $this->response_data_key = false; + + $this->LISTS_URL = add_query_arg( 'api_key', $this->data['api_key'], $this->LISTS_URL ); + + return parent::fetch_subscriber_lists(); + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $this->SUBSCRIBERS_URL = add_query_arg( 'api_key', $this->data['api_key'], $this->SUBSCRIBERS_URL ); + $result = null; + $args['list_id'] = (string) $args['list_id']; + + $subscriber = $this->get_subscriber( $args['email'] ); + $subscriber = $subscriber ? $subscriber[0] : $subscriber; + + $query_args = array( 'api_key' => $this->data['api_key'], 'action_by' => 'ACTION_BY_VISITOR' ); + + if ( $subscriber ) { + if ( $list = $this->_get_list_from_subscriber( $subscriber, $args['list_id'] ) ) { + $result = 'success'; + } else { + $subscriber['lists'][] = array( 'id' => $args['list_id'] ); + + $this->_subscriber = &$subscriber; + + $args = $this->_process_custom_fields( $args ); + + $url = add_query_arg( $query_args, "{$this->SUBSCRIBE_URL}/{$subscriber['id']}" ); + + $this->prepare_request( $url, 'PUT', false, $subscriber, true ); + } + + } else { + $url = add_query_arg( $query_args, $this->SUBSCRIBE_URL ); + $subscriber = $this->_create_subscriber_data_array( $args ); + + $this->_subscriber = &$subscriber; + + $args = $this->_process_custom_fields( $args ); + + $this->prepare_request( $url, 'POST', false, $subscriber, true ); + } + + if ( 'success' !== $result ) { + $result = parent::subscribe( $args, $this->SUBSCRIBE_URL ); + } + + return $result; + } +} diff --git a/core/components/api/email/ConvertKit.php b/core/components/api/email/ConvertKit.php new file mode 100644 index 0000000..5fcc733 --- /dev/null +++ b/core/components/api/email/ConvertKit.php @@ -0,0 +1,224 @@ +LISTS_URL = "{$this->BASE_URL}/forms"; + } + + protected function _fetch_custom_fields( $list_id = '', $list = array() ) { + $this->response_data_key = 'custom_fields'; + + $this->prepare_request( $this->_generate_url_for_request( "{$this->BASE_URL}/custom_fields" ) ); + + return parent::_fetch_custom_fields( $list_id, $list ); + } + + /** + * Generates the URL for adding subscribers. + * + * @param $list_id + * + * @since 1.1.0 + * + * @return string + */ + protected function _get_subscribe_url( $list_id ) { + return "{$this->LISTS_URL}/{$list_id}/subscribe"; + } + + protected function _get_subscriber_counts( $forms ) { + $result = array(); + + foreach ( (array) $forms as $form_info ) { + $url = $this->_generate_url_for_request( "{$this->LISTS_URL}/{$form_info['id']}/subscriptions", true ); + + $this->prepare_request( $url ); + $this->make_remote_request(); + + if ( $this->response->ERROR || ! isset( $this->response->DATA['total_subscriptions'] ) ) { + continue; + } + + $form_info['total_subscriptions'] = $this->response->DATA['total_subscriptions']; + + $result[] = $form_info; + } + + return $result; + } + + /** + * Adds default args for all API requests to given url. + * + * @since 1.1.0 + * + * @param string $url + * @param bool $with_secret + * + * @return string + */ + protected function _generate_url_for_request( $url, $with_secret = false ) { + $key = $with_secret ? $this->data['api_secret'] : $this->data['api_key']; + $key_type = $with_secret ? 'api_secret' : 'api_key'; + + return esc_url_raw( add_query_arg( $key_type, $key, $url ) ); + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields = $args['custom_fields']; + + unset( $args['custom_fields'] ); + + foreach ( $fields as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + + if ( count( $value ) > 1 ) { + $value = implode( ',', $value ); + } else { + $value = array_pop( $value ); + } + } + + self::$_->array_set( $args, "fields.{$field_id}", $value ); + } + + return $args; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'API Key', 'et_core' ), + ), + 'api_secret' => array( + 'label' => esc_html__( 'API Secret', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'id', + 'name' => 'name', + 'subscribers_count' => 'total_subscriptions', + ), + 'subscriber' => array( + 'email' => 'email', + 'name' => 'first_name', + 'custom_fields' => 'custom_fields', + ), + 'error' => array( + 'error_message' => 'message', + ), + 'custom_field' => array( + 'field_id' => 'key', + 'name' => 'label', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $url = $this->_generate_url_for_request( $this->LISTS_URL ); + $result = 'success'; + + $this->response_data_key = ''; + + $this->prepare_request( $url ); + parent::fetch_subscriber_lists(); + + if ( ! $this->response->ERROR && ! empty( $this->response->DATA['forms'] ) ) { + $with_subscriber_counts = $this->_get_subscriber_counts( $this->response->DATA['forms'] ); + $this->data['lists'] = $this->_process_subscriber_lists( $with_subscriber_counts ); + $this->data['is_authorized'] = 'true'; + $this->data['custom_fields'] = $this->_fetch_custom_fields( '', array_shift( $this->response->DATA['forms'] ) ); + + $this->save_data(); + } else if ( $this->response->ERROR ) { + $result = $this->get_error_message(); + } + + return $result; + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $url = $this->_generate_url_for_request( $this->_get_subscribe_url( $args['list_id'] ) ); + $params = $this->transform_data_to_provider_format( $args, 'subscriber' ); + $params = $this->_process_custom_fields( $params ); + $params['fields']['notes'] = $this->SUBSCRIBED_VIA; + + $this->prepare_request( $url, 'POST', false, $params ); + + return parent::subscribe( $params, $url ); + } +} diff --git a/core/components/api/email/Emma.php b/core/components/api/email/Emma.php new file mode 100644 index 0000000..ab781f4 --- /dev/null +++ b/core/components/api/email/Emma.php @@ -0,0 +1,167 @@ + 'api_key', + 'password' => 'private_api_key', + ); + + /** + * @inheritDoc + */ + public $name = 'Emma'; + + /** + * @inheritDoc + */ + public $slug = 'emma'; + + protected function _fetch_custom_fields( $list_id = '', $list = array() ) { + $this->response_data_key = false; + + $this->prepare_request( $this->_get_custom_fields_url() ); + + return parent::_fetch_custom_fields( $list_id, $list ); + } + + protected function _get_custom_fields_url() { + return "https://api.e2ma.net/{$this->data['user_id']}/fields?group_types=all"; + } + + protected function _get_lists_url() { + return "https://api.e2ma.net/{$this->data['user_id']}/groups?group_types=all"; + } + + protected function _get_subscribe_url() { + return "https://api.e2ma.net/{$this->data['user_id']}/members/signup"; + } + + protected function _process_custom_fields( $args ) { + if ( ! isset( $args['custom_fields'] ) ) { + return $args; + } + + $fields = $args['custom_fields']; + + unset( $args['custom_fields'] ); + + foreach ( $fields as $field_id => $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + } + + self::$_->array_set( $args, "fields.{$field_id}", $value ); + } + + return $args; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'Public API Key', 'et_core' ), + ), + 'private_api_key' => array( + 'label' => esc_html__( 'Private API Key', 'et_core' ), + ), + 'user_id' => array( + 'label' => esc_html__( 'Account ID', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'name' => 'group_name', + 'list_id' => 'member_group_id', + 'subscribers_count' => 'active_count', + ), + 'subscriber' => array( + 'email' => 'email', + 'name' => 'fields.first_name', + 'last_name' => 'fields.last_name', + 'list_id' => '@group_ids', + 'custom_fields' => 'custom_fields', + ), + 'custom_field' => array( + 'field_id' => 'shortcut_name', + 'name' => 'display_name', + 'options' => 'options', + 'type' => 'widget_type', + ), + 'custom_field_type' => array( + // Us <=> Them + 'radio' => 'radio', + // Us => Them + 'select' => 'select one', + 'text' => 'long', + 'checkbox' => 'check_multiple', + // Them => Us + 'text' => 'input', + 'long' => 'text', + 'check_multiple' => 'checkbox', + 'select one' => 'select', + ), + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $this->LISTS_URL = $this->_get_lists_url(); + $this->response_data_key = false; + + return parent::fetch_subscriber_lists(); + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $url = $this->_get_subscribe_url(); + $this->response_data_key = 'member_id'; + + $args = $this->transform_data_to_provider_format( $args, 'subscriber' ); + $args = $this->_process_custom_fields( $args ); + + $this->prepare_request( $url, 'POST', false, $args, true ); + + return parent::subscribe( $args, $url ); + } +} diff --git a/core/components/api/email/Feedblitz.php b/core/components/api/email/Feedblitz.php new file mode 100644 index 0000000..f5a2fb9 --- /dev/null +++ b/core/components/api/email/Feedblitz.php @@ -0,0 +1,172 @@ + $value ) { + if ( is_array( $value ) && $value ) { + // This is a multiple choice field (eg. checkbox, radio, select) + $value = array_values( $value ); + + if ( count( $value ) > 1 ) { + $value = implode( ',', $value ); + } else { + $value = array_pop( $value ); + } + } + + self::$_->array_set( $args, $field_id, rawurlencode( $value ) ); + } + + return $args; + } + + /** + * @inheritDoc + */ + public function get_account_fields() { + return array( + 'api_key' => array( + 'label' => esc_html__( 'API Key', 'et_core' ), + ), + ); + } + + /** + * @inheritDoc + */ + public function get_data_keymap( $keymap = array() ) { + $keymap = array( + 'list' => array( + 'list_id' => 'id', + 'name' => 'name', + 'subscribers_count' => 'subscribersummary.subscribers', + ), + 'subscriber' => array( + 'list_id' => 'listid', + 'email' => 'email', + 'name' => 'FirstName', + 'last_name' => 'LastName', + 'custom_fields' => 'custom_fields', + ), + 'error' => array( + 'error_message' => 'rsp.err.@attributes.msg', + ) + ); + + return parent::get_data_keymap( $keymap ); + } + + /** + * @inheritDoc + */ + public function fetch_subscriber_lists() { + if ( empty( $this->data['api_key'] ) ) { + return $this->API_KEY_REQUIRED; + } + + $this->http->expects_json = false; + $this->response_data_key = false; + $this->LISTS_URL = add_query_arg( 'key', $this->data['api_key'], $this->LISTS_URL ); + + parent::fetch_subscriber_lists(); + + $response = $this->data_utils->process_xmlrpc_response( $this->response->DATA, true ); + $response = $this->data_utils->xml_to_array( $response ); + + if ( $this->response->ERROR || ! empty( $response['rsp']['err']['@attributes']['msg'] ) ) { + return $this->get_error_message(); + } + + $this->data['lists'] = $this->_process_subscriber_lists( $response['syndications']['syndication'] ); + $this->data['is_authorized'] = true; + + $this->save_data(); + + return 'success'; + } + + /** + * @inheritDoc + */ + public function subscribe( $args, $url = '' ) { + $query_args = array( + 'email' => rawurlencode( $args['email'] ), + 'name' => empty( $args['name'] ) ? '' : rawurlencode( $args['name'] ), + 'last_name' => empty( $args['last_name'] ) ? '' : rawurlencode( $args['last_name'] ), + 'custom_fields' => $args['custom_fields'], + 'list_id' => $args['list_id'], + ); + + $query = $this->transform_data_to_provider_format( $query_args, 'subscriber' ); + $query = $this->_process_custom_fields( $query ); + $query['key'] = rawurlencode( $this->data['api_key'] ); + $url = add_query_arg( $query, "{$this->SUBSCRIBE_URL}?SimpleApiSubscribe" ); + + $this->prepare_request( $url, 'GET', false, null, false, false ); + $this->make_remote_request(); + + $response = $this->data_utils->process_xmlrpc_response( $this->response->DATA, true ); + $response = $this->data_utils->xml_to_array( $response ); + + if ( $this->response->ERROR || ! empty( $response['rsp']['err']['@attributes']['msg'] ) ) { + return $this->get_error_message(); + } + + if ( ! empty( $response['rsp']['success']['@attributes']['msg'] ) ) { + return $response['rsp']['success']['@attributes']['msg']; + } + + return 'success'; + } +} diff --git a/core/components/api/email/Fields.php b/core/components/api/email/Fields.php new file mode 100644 index 0000000..a55321e --- /dev/null +++ b/core/components/api/email/Fields.php @@ -0,0 +1,436 @@ +names_by_slug( 'all', 'custom_fields' ) ); + $custom_fields_data = self::$_providers->custom_fields_data(); + $fields = array(); + + if ( 'bloom' === self::$owner ) { + $fields = array( + 'use_custom_fields' => array( + 'label' => esc_html__( 'Use Custom Fields', 'et_core' ), + 'type' => 'yes_no_button', + 'options' => array( + 'on' => esc_html__( 'Yes', 'et_core' ), + 'off' => esc_html__( 'No', 'et_core' ), + ), + 'default' => 'off', + 'show_if' => array( + 'email_provider' => $custom_fields_support, + ), + 'allow_dynamic' => array_keys( self::$_providers->names_by_slug( 'all', 'dynamic_custom_fields' ) ), + 'description' => esc_html__( 'Enable this option to use custom fields in your opt-in form.', 'et_core' ), + ), + 'custom_fields' => array( + 'type' => 'sortable_list', + 'label' => '', + 'default' => '[]', + ), + 'editing_field' => array( + 'type' => 'skip', + 'default' => 'off', + ), + ); + } + + foreach ( $custom_fields_data as $provider => $accounts ) { + foreach ( $accounts as $account => $lists ) { + $account_name = str_replace( ' ', '', strtolower( $account ) ); + $key = "predefined_field_{$provider}_{$account_name}"; + + if ( isset( $lists['custom_fields'] ) ) { + // Custom fields are per account + $fields[ $key ] = self::_predefined_custom_field_select( $lists['custom_fields'], $provider, $account ); + continue; + } + + foreach ( $lists as $list_id => $custom_fields ) { + // Custom fields are per list + $key = "predefined_field_{$provider}_{$account_name}_{$list_id}"; + $fields[ $key ] = self::_predefined_custom_field_select( $custom_fields, $provider, $account, $list_id ); + } + } + } + + $labels = array( + 'link_url' => esc_html__( 'Link URL', 'et_core' ), + 'link_text' => esc_html__( 'Link Text', 'et_core' ), + 'link_cancel' => esc_html__( 'Discard Changes', 'et_core' ), + 'link_save' => esc_html__( 'Save Changes', 'et_core' ), + 'link_settings' => esc_html__( 'Option Link', 'et_core' ), + ); + + $fields = array_merge( $fields, array( + 'predefined_field' => array( + 'type' => 'skip', + 'default' => 'none', + ), + 'field_id' => array( + 'label' => esc_html__( 'ID', 'et_core' ), + 'type' => 'text', + 'default' => '', // <--- Intentional + 'description' => esc_html__( 'Define a unique ID for this field. You should use only English characters without special characters or spaces.', 'et_core' ), + 'toggle_slug' => 'main_content', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + ), + 'field_title' => array( + 'label' => esc_html__( 'Name', 'et_core' ), + 'type' => 'text', + 'description' => esc_html__( 'Set the label that will appear above this field in the opt-in form.', 'et_core' ), + 'toggle_slug' => 'main_content', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => array( 'getresponse', 'sendinblue', 'constant_contact', 'fluentcrm' ), + ), + ), + 'field_type' => array( + 'label' => esc_html__( 'Type', 'et_core' ), + 'type' => 'select', + 'default' => 'none', + 'option_category' => 'basic_option', + 'options' => array( + 'none' => esc_html__( 'Choose a field type...', 'et_core' ), + 'input' => esc_html__( 'Input Field', 'et_core' ), + 'email' => esc_html__( 'Email Field', 'et_core' ), + 'text' => esc_html__( 'Textarea', 'et_core' ), + 'checkbox' => esc_html__( 'Checkboxes', 'et_core' ), + 'radio' => esc_html__( 'Radio Buttons', 'et_core' ), + 'select' => esc_html__( 'Select Dropdown', 'et_core' ), + ), + 'description' => esc_html__( 'Choose the type of field', 'et_core' ), + 'toggle_slug' => 'field_options', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => self::$_any_custom_field_type_support, + ), + ), + 'checkbox_checked' => array( + 'label' => esc_html__( 'Checked By Default', 'et_core' ), + 'description' => esc_html__( 'If enabled, the check mark will be automatically selected for the visitor. They can still deselect it.', 'et_core' ), + 'type' => 'hidden', + 'option_category' => 'layout', + 'default' => 'off', + 'toggle_slug' => 'field_options', + 'show_if' => array( + 'field_type' => 'checkbox', + ), + ), + 'checkbox_options' => array( + 'label' => esc_html__( 'Options', 'et_core' ), + 'type' => 'sortable_list', + 'checkbox' => true, + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => self::$_any_custom_field_type_support, + ), + 'show_if' => array( + 'field_type' => 'checkbox', + ), + 'right_actions' => 'move|link|copy|delete', + 'right_actions_readonly' => 'move|link', + 'labels' => $labels, + ), + 'radio_options' => array( + 'label' => esc_html__( 'Options', 'et_core' ), + 'type' => 'sortable_list', + 'radio' => true, + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => self::$_any_custom_field_type_support, + ), + 'show_if' => array( + 'field_type' => 'radio', + ), + 'right_actions' => 'move|link|copy|delete', + 'right_actions_readonly' => 'move|link', + 'labels' => $labels, + ), + 'select_options' => array( + 'label' => esc_html__( 'Options', 'et_core' ), + 'type' => 'sortable_list', + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => self::$_any_custom_field_type_support, + ), + 'show_if' => array( + 'field_type' => 'select', + ), + 'right_actions' => 'move|copy|delete', + 'right_actions_readonly' => 'move', + ), + 'min_length' => array( + 'label' => esc_html__( 'Minimum Length', 'et_core' ), + 'description' => esc_html__( 'Leave at 0 to remove restriction', 'et_core' ), + 'type' => 'range', + 'default' => '0', + 'unitless' => true, + 'range_settings' => array( + 'min' => '0', + 'max' => '255', + 'step' => '1', + ), + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'show_if' => array( + 'field_type' => 'input', + ), + ), + 'max_length' => array( + 'label' => esc_html__( 'Maximum Length', 'et_core' ), + 'description' => esc_html__( 'Leave at 0 to remove restriction', 'et_core' ), + 'type' => 'range', + 'default' => '0', + 'unitless' => true, + 'range_settings' => array( + 'min' => '0', + 'max' => '255', + 'step' => '1', + ), + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'show_if' => array( + 'field_type' => 'input', + ), + ), + 'allowed_symbols' => array( + 'label' => esc_html__( 'Allowed Symbols', 'et_core' ), + 'description' => esc_html__( 'You can validate certain types of information by disallowing certain symbols. Symbols added here will prevent the form from being submitted if added by the user.', 'et_core' ), + 'type' => 'select', + 'default' => 'all', + 'options' => array( + 'all' => esc_html__( 'All', 'et_core' ), + 'letters' => esc_html__( 'Letters Only (A-Z)', 'et_core' ), + 'numbers' => esc_html__( 'Numbers Only (0-9)', 'et_core' ), + 'alphanumeric' => esc_html__( 'Alphanumeric Only (A-Z, 0-9)', 'et_core' ), + ), + 'option_category' => 'basic_option', + 'toggle_slug' => 'field_options', + 'show_if' => array( + 'field_type' => 'input', + ), + ), + 'required_mark' => array( + 'label' => esc_html__( 'Required Field', 'et_core' ), + 'type' => 'yes_no_button', + 'option_category' => 'configuration', + 'default' => 'on', + 'options' => array( + 'on' => esc_html__( 'Yes', 'et_core' ), + 'off' => esc_html__( 'No', 'et_core' ), + ), + 'description' => esc_html__( 'Define whether the field should be required or optional', 'et_core' ), + 'toggle_slug' => 'field_options', + 'show_if_not' => array( + 'email_provider' => 'getresponse', + ), + ), + 'hidden' => array( + 'label' => esc_html__( 'Hidden Field', 'et_core' ), + 'type' => 'yes_no_button', + 'option_category' => 'configuration', + 'default' => 'off', + 'options' => array( + 'on' => esc_html__( 'Yes', 'et_core' ), + 'off' => esc_html__( 'No', 'et_core' ), + ), + 'description' => esc_html__( 'Define whether or not the field should be visible.', 'et_core' ), + 'toggle_slug' => 'field_options', + 'readonly_if' => array( + $readonly_dependency => self::$_predefined_custom_field_support, + ), + 'readonly_if_not' => array( + $readonly_dependency => self::$_any_custom_field_type_support, + ), + ), + 'fullwidth_field' => array( + 'label' => esc_html__( 'Make Fullwidth', 'et_core' ), + 'type' => 'yes_no_button', + 'option_category' => 'layout', + 'options' => array( + 'on' => esc_html__( 'Yes', 'et_core' ), + 'off' => esc_html__( 'No', 'et_core' ), + ), + 'tab_slug' => 'advanced', + 'toggle_slug' => 'layout', + 'description' => esc_html__( 'If enabled, the field will take 100% of the width of the form, otherwise it will take 50%', 'et_core' ), + 'default' => array( 'parent:layout', array( + 'left_right' => 'on', + 'right_left' => 'on', + 'top_bottom' => 'off', + 'bottom_top' => 'off', + )), + ), + ) ); + + if ( 'builder' === self::$owner ) { + $fields = array_merge( $fields, array( + 'field_background_color' => array( + 'label' => esc_html__( 'Field Background Color', 'et_core' ), + 'description' => esc_html__( "Pick a color to fill the module's input fields.", 'et_core' ), + 'type' => 'color-alpha', + 'custom_color' => true, + 'toggle_slug' => 'form_field', + 'tab_slug' => 'advanced', + ), + 'conditional_logic' => array( + 'label' => esc_html__( 'Enable', 'et_core' ), + 'type' => 'yes_no_button', + 'option_category' => 'layout', + 'default' => 'off', + 'options' => array( + 'on' => esc_html__( 'Yes', 'et_core' ), + 'off' => esc_html__( 'No', 'et_core' ), + ), + 'description' => et_get_safe_localization( __( "Enabling conditional logic makes this field only visible when any or all of the rules below are fulfilled`. + * @param string $after Markup to output after the annotation. Default `
`. + */ +function wp_update_php_annotation( $before = '', $after = '
' ) { + $annotation = wp_get_update_php_annotation(); + + if ( $annotation ) { + echo et_core_intentionally_unescaped( $before . $annotation . $after, 'html' ); + } +} +endif; + +if ( ! function_exists( 'is_wp_version_compatible' ) ) : +/** + * Checks compatibility with the current WordPress version. + * + * @since 5.2.0 + * + * @param string $required Minimum required WordPress version. + * @return bool True if required version is compatible or empty, false if not. + */ +function is_wp_version_compatible( $required ) { + return empty( $required ) || version_compare( get_bloginfo( 'version' ), $required, '>=' ); +} +endif; + +if ( ! function_exists( 'is_php_version_compatible' ) ) : +/** + * Checks compatibility with the current PHP version. + * + * @since 5.2.0 + * + * @param string $required Minimum required PHP version. + * @return bool True if required version is compatible or empty, false if not. + */ +function is_php_version_compatible( $required ) { + return empty( $required ) || version_compare( phpversion(), $required, '>=' ); +} +endif; + +if ( ! function_exists( 'wp_body_open' ) ) : + /** + * Fire the wp_body_open action. + * + * See {@see 'wp_body_open'}. + * + * @since 5.2.0 + */ + function wp_body_open() { + /** + * Triggered after the opening body tag. + * + * @since 5.2.0 + */ + do_action( 'wp_body_open' ); + } +endif; diff --git a/css/dynamic-assets/back_to_top.css b/css/dynamic-assets/back_to_top.css new file mode 100644 index 0000000..f41f528 --- /dev/null +++ b/css/dynamic-assets/back_to_top.css @@ -0,0 +1,2 @@ +.et_pb_scroll_top.et-pb-icon{text-align:center;background:rgba(0,0,0,0.4);text-decoration:none;position:fixed;z-index:99999;bottom:125px;right:0px;-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px;display:none;cursor:pointer;font-size:30px;padding:5px;color:#fff}.et_pb_scroll_top:before{content:'2'}.et_pb_scroll_top.et-visible{opacity:1;-webkit-animation:fadeInRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_scroll_top.et-hidden{opacity:0;-webkit-animation:fadeOutRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}} + diff --git a/css/dynamic-assets/boxed_layout.css b/css/dynamic-assets/boxed_layout.css new file mode 100644 index 0000000..4ac3a33 --- /dev/null +++ b/css/dynamic-assets/boxed_layout.css @@ -0,0 +1,2 @@ +body.et_non_fixed_nav.et_transparent_nav.et_boxed_layout #page-container,body.et_fixed_nav.et_boxed_layout #page-container{padding-top:80px}body.et_fixed_nav.et_boxed_layout.et-tb #page-container,body.et_fixed_nav.et_boxed_layout.et-tb-has-header #page-container{padding-top:0 !important}.et_boxed_layout #page-container{-webkit-box-shadow:0 0 10px 0 rgba(0,0,0,0.2);box-shadow:0 0 10px 0 rgba(0,0,0,0.2)}.et_boxed_layout #page-container,.et_boxed_layout.et_non_fixed_nav.et_transparent_nav #page-container #top-header,.et_non_fixed_nav.et_transparent_nav.et_boxed_layout #page-container #main-header,.et_fixed_nav.et_boxed_layout #page-container #top-header,.et_fixed_nav.et_boxed_layout #page-container #main-header,.et_boxed_layout #page-container .container,.et_boxed_layout #page-container .et_pb_row,.et_boxed_layout.et_pb_pagebuilder_layout.single.et_full_width_page #page-container .et_pb_row,.et_boxed_layout.et_pb_pagebuilder_layout.single.et_full_width_portfolio_page #page-container .et_pb_row,.et_boxed_layout.et_pb_pagebuilder_layout.single #page-container .et_pb_row{width:90%;max-width:1200px;margin:auto}.et_boxed_layout.et_vertical_nav #page-container{max-width:1425px}.et_boxed_layout.et_vertical_nav #page-container #top-header{width:auto;max-width:none}.et_boxed_layout.et_vertical_right.et_vertical_fixed #main-header{opacity:0}.et_boxed_layout.et_vertical_right.et_vertical_fixed #page-container #main-header.et_vertical_menu_set{opacity:1;-webkit-transition:opacity 0.4s ease-in-out;transition:opacity 0.4s ease-in-out} + diff --git a/css/dynamic-assets/centered_header.css b/css/dynamic-assets/centered_header.css new file mode 100644 index 0000000..c7d22f0 --- /dev/null +++ b/css/dynamic-assets/centered_header.css @@ -0,0 +1,2 @@ +.et_header_style_centered #main-header .container{text-align:center;height:inherit}.et_header_style_centered #main-header div#et-top-navigation{bottom:0;position:relative;width:100%}.et_header_style_centered #logo,.et_header_style_centered #et-top-navigation,.et_header_style_centered nav#top-menu-nav,.et_header_style_centered #top-menu{float:none}.et_header_style_centered #logo{max-height:64%}.et_header_style_centered #main-header .logo_container{height:100px;padding:0}.et_header_style_centered header#main-header.et-fixed-header .logo_container{height:70px}.et_header_style_centered #et_top_search{float:none;display:inline-block !important}.et_header_style_centered #et_search_icon:before{left:3px;top:-13px}.et_header_style_centered nav#top-menu-nav{display:inline-block}.et_header_style_centered #top-menu>li>a{padding-bottom:2em}.et_header_style_centered #et-top-navigation .et-cart-info{float:none}.et_header_style_centered .et-search-form input,.et_header_style_centered span.et_close_search_field{top:60%}@media all and (min-width: 981px){.et_header_style_centered.et_hide_primary_logo #main-header:not(.et-fixed-header) .logo_container,.et_header_style_centered.et_hide_fixed_logo #main-header.et-fixed-header .logo_container{height:0;opacity:0;padding:0}.et_header_style_centered .et-fixed-header .et-search-form{top:21px}.et_header_style_centered .et-fixed-header #et_search_icon:before{margin-top:0}}@media all and (max-width: 980px){.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_secondary_nav_enabled.et_header_style_centered #page-container,.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_header_style_centered #page-container,.et_fixed_nav.et_show_nav.et_secondary_nav_enabled.et_header_style_centered #page-container,.et_fixed_nav.et_show_nav.et_header_style_centered #page-container{padding-top:136px}.et_header_style_centered #main-header{padding:20px 0}.et_header_style_centered nav#top-menu-nav{display:none}.et_header_style_centered #logo{max-height:60px}.et_header_style_centered header#main-header .logo_container{height:auto;max-height:100px;padding:0}.et_header_style_centered #et_top_search{display:none !important}.et_header_style_centered .et_search_outer{display:none}.et_header_style_centered .et_menu_container .mobile_menu_bar{opacity:1}.et_header_style_centered #et_mobile_nav_menu{float:none;position:relative;margin-top:20px}.et_header_style_centered #main-header .mobile_nav{display:block;text-align:left;background-color:rgba(0,0,0,0.05);border-radius:5px;padding:5px 10px}.et_header_style_centered .mobile_nav .select_page{display:inline-block;color:#666;font-size:14px}.et_header_style_centered .et_menu_container .mobile_menu_bar{position:absolute;right:5px;top:2px}.et_header_style_centered .et_mobile_menu{top:53px}.et_header_style_centered #et-top-navigation .et-cart-info{display:none}} + diff --git a/css/dynamic-assets/color_scheme_green.css b/css/dynamic-assets/color_scheme_green.css new file mode 100644 index 0000000..124358e --- /dev/null +++ b/css/dynamic-assets/color_scheme_green.css @@ -0,0 +1,2 @@ +.et_color_scheme_green a{color:#7cc68d}.et_color_scheme_green .et_pb_counter_amount,.et_color_scheme_green .et_pb_featured_table .et_pb_pricing_heading,.et_color_scheme_green #top-header{background:#7cc68d !important}.et_color_scheme_green #et_search_icon:hover,.et_color_scheme_green .mobile_menu_bar:before,.et_color_scheme_green .et_pb_sum,.et_color_scheme_green .et_pb_pricing li a,.et_color_scheme_green .et_pb_pricing_table_button,.et_color_scheme_green .comment-reply-link,.et_color_scheme_green .form-submit .et_pb_button,.et_color_scheme_green .et_pb_bg_layout_light .et_pb_newsletter_button,.et_color_scheme_green .et_pb_contact_submit,.et_color_scheme_green .et_password_protected_form .et_submit_button,.et_color_scheme_green .et_pb_bg_layout_light .et_pb_more_button,.et_color_scheme_green .et_pb_bg_layout_light .et_pb_promo_button,.et_color_scheme_green .et_overlay:before,.et_color_scheme_green .entry-summary p.price ins,.et_color_scheme_green #top-menu li.current-menu-ancestor>a,.et_color_scheme_green #top-menu li.current-menu-item>a,.et_color_scheme_green .bottom-nav li.current-menu-item>a{color:#7cc68d}.et_color_scheme_green .et-search-form,.et_color_scheme_green .nav li ul,.et_color_scheme_green .et_mobile_menu,.et_color_scheme_green .et_pb_pricing li:before{border-color:#7cc68d}.et_color_scheme_green .et-cart-info,.et_color_scheme_green .et-social-icon a:hover,.et_color_scheme_green .et_pb_promo_button,.et_color_scheme_green .et_pb_more_button,.et_color_scheme_green .et_pb_slide_description .et_pb_slide_title a,.et_color_scheme_green .et-pb-slider-arrows a,.et_color_scheme_green .et_audio_content a,.et_color_scheme_green .et_link_content a,.et_color_scheme_green .et_pb_newsletter_button{color:inherit !important}.et_color_scheme_green.woocommerce a.button.alt,.et_color_scheme_green.woocommerce-page a.button.alt,.et_color_scheme_green.woocommerce button.button.alt,.et_color_scheme_green.woocommerce button.button.alt.disabled,.et_color_scheme_green.woocommerce-page button.button.alt,.et_color_scheme_green.woocommerce-page button.button.alt.disabled,.et_color_scheme_green.woocommerce input.button.alt,.et_color_scheme_green.woocommerce-page input.button.alt,.et_color_scheme_green.woocommerce #respond input#submit.alt,.et_color_scheme_green.woocommerce-page #respond input#submit.alt,.et_color_scheme_green.woocommerce #content input.button.alt,.et_color_scheme_green.woocommerce-page #content input.button.alt,.et_color_scheme_green.woocommerce a.button,.et_color_scheme_green.woocommerce-page a.button,.et_color_scheme_green.woocommerce button.button,.et_color_scheme_green.woocommerce-page button.button,.et_color_scheme_green.woocommerce input.button,.et_color_scheme_green.woocommerce-page input.button,.et_color_scheme_green.woocommerce #respond input#submit,.et_color_scheme_green.woocommerce-page #respond input#submit,.et_color_scheme_green.woocommerce #content input.button,.et_color_scheme_green.woocommerce-page #content input.button,.et_color_scheme_green .woocommerce-message,.et_color_scheme_green .woocommerce-error,.et_color_scheme_green .woocommerce-info{background:#7cc68d !important}.et_color_scheme_green.woocommerce div.product span.price,.et_color_scheme_green.woocommerce-page div.product span.price,.et_color_scheme_green.woocommerce #content div.product span.price,.et_color_scheme_green.woocommerce-page #content div.product span.price,.et_color_scheme_green.woocommerce div.product p.price,.et_color_scheme_green.woocommerce-page div.product p.price,.et_color_scheme_green.woocommerce #content div.product p.price,.et_color_scheme_green.woocommerce-page #content div.product p.price{color:#7cc68d}.et_color_scheme_green.woocommerce .star-rating span:before,.et_color_scheme_green.woocommerce-page .star-rating span:before{color:#7cc68d !important}.et_color_scheme_green .footer-widget h4,.et_color_scheme_green #main-footer .widget_block h1,.et_color_scheme_green #main-footer .widget_block h2,.et_color_scheme_green #main-footer .widget_block h3,.et_color_scheme_green #main-footer .widget_block h4,.et_color_scheme_green #main-footer .widget_block h5,.et_color_scheme_green #main-footer .widget_block h6{color:#7cc68d}.et_color_scheme_green .footer-widget li:before{border-color:#7cc68d} + diff --git a/css/dynamic-assets/color_scheme_orange.css b/css/dynamic-assets/color_scheme_orange.css new file mode 100644 index 0000000..cda2c6d --- /dev/null +++ b/css/dynamic-assets/color_scheme_orange.css @@ -0,0 +1,2 @@ +.et_color_scheme_orange a{color:#edb059}.et_color_scheme_orange .et_pb_counter_amount,.et_color_scheme_orange .et_pb_featured_table .et_pb_pricing_heading,.et_color_scheme_orange #top-header{background:#edb059 !important}.et_color_scheme_orange #et_search_icon:hover,.et_color_scheme_orange .mobile_menu_bar:before,.et_color_scheme_orange .et_pb_sum,.et_color_scheme_orange .et_pb_pricing li a,.et_color_scheme_orange .et_pb_pricing_table_button,.et_color_scheme_orange .comment-reply-link,.et_color_scheme_orange .form-submit .et_pb_button,.et_color_scheme_orange .et_pb_bg_layout_light .et_pb_newsletter_button,.et_color_scheme_orange .et_pb_contact_submit,.et_color_scheme_orange .et_password_protected_form .et_submit_button,.et_color_scheme_orange .et_pb_bg_layout_light .et_pb_more_button,.et_color_scheme_orange .et_pb_bg_layout_light .et_pb_promo_button,.et_color_scheme_orange .et_overlay:before,.et_color_scheme_orange .entry-summary p.price ins,.et_color_scheme_orange #top-menu li.current-menu-ancestor>a,.et_color_scheme_orange #top-menu li.current-menu-item>a,.et_color_scheme_orange .bottom-nav li.current-menu-item>a{color:#edb059}.et_color_scheme_orange .et-search-form,.et_color_scheme_orange .nav li ul,.et_color_scheme_orange .et_mobile_menu,.et_color_scheme_orange .et_pb_pricing li:before{border-color:#edb059}.et_color_scheme_orange .et-cart-info,.et_color_scheme_orange .et-social-icon a:hover,.et_color_scheme_orange .et_pb_promo_button,.et_color_scheme_orange .et_pb_more_button,.et_color_scheme_orange .et_pb_slide_description .et_pb_slide_title a,.et_color_scheme_orange .et-pb-slider-arrows a,.et_color_scheme_orange .et_audio_content a,.et_color_scheme_orange .et_link_content a,.et_color_scheme_orange .et_pb_newsletter_button{color:inherit !important}.et_color_scheme_orange.woocommerce a.button.alt,.et_color_scheme_orange.woocommerce-page a.button.alt,.et_color_scheme_orange.woocommerce button.button.alt,.et_color_scheme_orange.woocommerce button.button.alt.disabled,.et_color_scheme_orange.woocommerce-page button.button.alt,.et_color_scheme_orange.woocommerce-page button.button.alt.disabled,.et_color_scheme_orange.woocommerce input.button.alt,.et_color_scheme_orange.woocommerce-page input.button.alt,.et_color_scheme_orange.woocommerce #respond input#submit.alt,.et_color_scheme_orange.woocommerce-page #respond input#submit.alt,.et_color_scheme_orange.woocommerce #content input.button.alt,.et_color_scheme_orange.woocommerce-page #content input.button.alt,.et_color_scheme_orange.woocommerce a.button,.et_color_scheme_orange.woocommerce-page a.button,.et_color_scheme_orange.woocommerce button.button,.et_color_scheme_orange.woocommerce-page button.button,.et_color_scheme_orange.woocommerce input.button,.et_color_scheme_orange.woocommerce-page input.button,.et_color_scheme_orange.woocommerce #respond input#submit,.et_color_scheme_orange.woocommerce-page #respond input#submit,.et_color_scheme_orange.woocommerce #content input.button,.et_color_scheme_orange.woocommerce-page #content input.button,.et_color_scheme_orange .woocommerce-message,.et_color_scheme_orange .woocommerce-error,.et_color_scheme_orange .woocommerce-info{background:#edb059 !important}.et_color_scheme_orange.woocommerce div.product span.price,.et_color_scheme_orange.woocommerce-page div.product span.price,.et_color_scheme_orange.woocommerce #content div.product span.price,.et_color_scheme_orange.woocommerce-page #content div.product span.price,.et_color_scheme_orange.woocommerce div.product p.price,.et_color_scheme_orange.woocommerce-page div.product p.price,.et_color_scheme_orange.woocommerce #content div.product p.price,.et_color_scheme_orange.woocommerce-page #content div.product p.price{color:#edb059}.et_color_scheme_orange .woocommerce .star-rating span:before,.et_color_scheme_orange .woocommerce-page .star-rating span:before{color:#edb059 !important}.et_color_scheme_orange .footer-widget h4,.et_color_scheme_orange #main-footer .widget_block h1,.et_color_scheme_orange #main-footer .widget_block h2,.et_color_scheme_orange #main-footer .widget_block h3,.et_color_scheme_orange #main-footer .widget_block h4,.et_color_scheme_orange #main-footer .widget_block h5,.et_color_scheme_orange #main-footer .widget_block h6{color:#edb059}.et_color_scheme_orange .footer-widget li:before{color:#edb059} + diff --git a/css/dynamic-assets/color_scheme_pink.css b/css/dynamic-assets/color_scheme_pink.css new file mode 100644 index 0000000..35c86f7 --- /dev/null +++ b/css/dynamic-assets/color_scheme_pink.css @@ -0,0 +1,2 @@ +.et_color_scheme_pink a{color:#c37cc6}.et_color_scheme_pink .et_pb_counter_amount,.et_color_scheme_pink .et_pb_featured_table .et_pb_pricing_heading,.et_color_scheme_pink #top-header{background:#c37cc6 !important}.et_color_scheme_pink #et_search_icon:hover,.et_color_scheme_pink .mobile_menu_bar:before,.et_color_scheme_pink .et_pb_sum,.et_color_scheme_pink .et_pb_pricing li a,.et_color_scheme_pink .et_pb_pricing_table_button,.et_color_scheme_pink .comment-reply-link,.et_color_scheme_pink .form-submit .et_pb_button,.et_color_scheme_pink .et_pb_bg_layout_light .et_pb_newsletter_button,.et_color_scheme_pink .et_pb_contact_submit,.et_color_scheme_pink .et_password_protected_form .et_submit_button,.et_color_scheme_pink .et_pb_bg_layout_light .et_pb_more_button,.et_color_scheme_pink .et_pb_bg_layout_light .et_pb_promo_button,.et_color_scheme_pink .et_overlay:before,.et_color_scheme_pink .entry-summary p.price ins,.et_color_scheme_pink #top-menu li.current-menu-ancestor>a,.et_color_scheme_pink #top-menu li.current-menu-item>a,.et_color_scheme_pink .bottom-nav li.current-menu-item>a{color:#c37cc6}.et_color_scheme_pink .et-search-form,.et_color_scheme_pink .nav li ul,.et_color_scheme_pink .et_mobile_menu,.et_color_scheme_pink .et_pb_pricing li:before{border-color:#c37cc6}.et_color_scheme_pink .et-cart-info,.et_color_scheme_pink .et-social-icon a:hover,.et_color_scheme_pink .et_pb_promo_button,.et_color_scheme_pink .et_pb_more_button,.et_color_scheme_pink .et_pb_slide_description .et_pb_slide_title a,.et_color_scheme_pink .et-pb-slider-arrows a,.et_color_scheme_pink .et_audio_content a,.et_color_scheme_pink .et_link_content a,.et_color_scheme_pink .et_pb_newsletter_button{color:inherit !important}.et_color_scheme_pink.woocommerce a.button.alt,.et_color_scheme_pink.woocommerce-page a.button.alt,.et_color_scheme_pink.woocommerce button.button.alt,.et_color_scheme_pink.woocommerce button.button.alt.disabled,.et_color_scheme_pink.woocommerce-page button.button.alt,.et_color_scheme_pink.woocommerce-page button.button.alt.disabled,.et_color_scheme_pink.woocommerce input.button.alt,.et_color_scheme_pink.woocommerce-page input.button.alt,.et_color_scheme_pink.woocommerce #respond input#submit.alt,.et_color_scheme_pink.woocommerce-page #respond input#submit.alt,.et_color_scheme_pink.woocommerce #content input.button.alt,.et_color_scheme_pink.woocommerce-page #content input.button.alt,.et_color_scheme_pink.woocommerce a.button,.et_color_scheme_pink.woocommerce-page a.button,.et_color_scheme_pink.woocommerce button.button,.et_color_scheme_pink.woocommerce-page button.button,.et_color_scheme_pink.woocommerce input.button,.et_color_scheme_pink.woocommerce-page input.button,.et_color_scheme_pink.woocommerce #respond input#submit,.et_color_scheme_pink.woocommerce-page #respond input#submit,.et_color_scheme_pink.woocommerce #content input.button,.et_color_scheme_pink.woocommerce-page #content input.button,.et_color_scheme_pink .woocommerce-message,.et_color_scheme_pink .woocommerce-error,.et_color_scheme_pink .woocommerce-info{background:#c37cc6 !important}.et_color_scheme_pink.woocommerce div.product span.price,.et_color_scheme_pink.woocommerce-page div.product span.price,.et_color_scheme_pink.woocommerce #content div.product span.price,.et_color_scheme_pink.woocommerce-page #content div.product span.price,.et_color_scheme_pink.woocommerce div.product p.price,.et_color_scheme_pink.woocommerce-page div.product p.price,.et_color_scheme_pink.woocommerce #content div.product p.price,.et_color_scheme_pink.woocommerce-page #content div.product p.price{color:#c37cc6}.et_color_scheme_pink.woocommerce .star-rating span:before,.et_color_scheme_pink.woocommerce-page .star-rating span:before{color:#c37cc6 !important}.et_color_scheme_pink .footer-widget h4,.et_color_scheme_pink #main-footer .widget_block h1,.et_color_scheme_pink #main-footer .widget_block h2,.et_color_scheme_pink #main-footer .widget_block h3,.et_color_scheme_pink #main-footer .widget_block h4,.et_color_scheme_pink #main-footer .widget_block h5,.et_color_scheme_pink #main-footer .widget_block h6{color:#c37cc6}.et_color_scheme_pink .footer-widget li:before{border-color:#c37cc6} + diff --git a/css/dynamic-assets/color_scheme_red.css b/css/dynamic-assets/color_scheme_red.css new file mode 100644 index 0000000..932437f --- /dev/null +++ b/css/dynamic-assets/color_scheme_red.css @@ -0,0 +1,2 @@ +.et_color_scheme_red a{color:#cd5c5c}.et_color_scheme_red .et_pb_counter_amount,.et_color_scheme_red .et_pb_featured_table .et_pb_pricing_heading,.et_color_scheme_red #top-header{background:#cd5c5c !important}.et_color_scheme_red #et_search_icon:hover,.et_color_scheme_red .mobile_menu_bar:before,.et_color_scheme_red .et_pb_sum,.et_color_scheme_red .et_pb_pricing li a,.et_color_scheme_red .et_pb_pricing_table_button,.et_color_scheme_red .comment-reply-link,.et_color_scheme_red .form-submit .et_pb_button,.et_color_scheme_red .et_pb_bg_layout_light .et_pb_newsletter_button,.et_color_scheme_red .et_pb_contact_submit,.et_color_scheme_red .et_password_protected_form .et_submit_button,.et_color_scheme_red .et_pb_bg_layout_light .et_pb_more_button,.et_color_scheme_red .et_pb_bg_layout_light .et_pb_promo_button,.et_color_scheme_red .et_overlay:before,.et_color_scheme_red .entry-summary p.price ins,.et_color_scheme_red #top-menu li.current-menu-ancestor>a,.et_color_scheme_red #top-menu li.current-menu-item>a,.et_color_scheme_red .bottom-nav li.current-menu-item>a{color:#cd5c5c}.et_color_scheme_red .et-search-form,.et_color_scheme_red .nav li ul,.et_color_scheme_red .et_mobile_menu,.et_color_scheme_red .et_pb_pricing li:before{border-color:#cd5c5c}.et_color_scheme_red .et-cart-info,.et_color_scheme_red .et-social-icon a:hover,.et_color_scheme_red .et_pb_promo_button,.et_color_scheme_red .et_pb_more_button,.et_color_scheme_red .et_pb_slide_description .et_pb_slide_title a,.et_color_scheme_red .et-pb-slider-arrows a,.et_color_scheme_red .et_audio_content a,.et_color_scheme_red .et_link_content a,.et_color_scheme_red .et_pb_newsletter_button{color:inherit !important}.et_color_scheme_red.woocommerce a.button.alt,.et_color_scheme_red.woocommerce-page a.button.alt,.et_color_scheme_red.woocommerce button.button.alt,.et_color_scheme_red.woocommerce button.button.alt.disabled,.et_color_scheme_red.woocommerce-page button.button.alt,.et_color_scheme_red.woocommerce-page button.button.alt.disabled,.et_color_scheme_red.woocommerce input.button.alt,.et_color_scheme_red.woocommerce-page input.button.alt,.et_color_scheme_red.woocommerce #respond input#submit.alt,.et_color_scheme_red.woocommerce-page #respond input#submit.alt,.et_color_scheme_red.woocommerce #content input.button.alt,.et_color_scheme_red.woocommerce-page #content input.button.alt,.et_color_scheme_red.woocommerce a.button,.et_color_scheme_red.woocommerce-page a.button,.et_color_scheme_red.woocommerce button.button,.et_color_scheme_red.woocommerce-page button.button,.et_color_scheme_red.woocommerce input.button,.et_color_scheme_red.woocommerce-page input.button,.et_color_scheme_red.woocommerce #respond input#submit,.et_color_scheme_red.woocommerce-page #respond input#submit,.et_color_scheme_red.woocommerce #content input.button,.et_color_scheme_red.woocommerce-page #content input.button,.et_color_scheme_red .woocommerce-message,.et_color_scheme_red .woocommerce-error,.et_color_scheme_red .woocommerce-info{background:#cd5c5c !important}.et_color_scheme_red.woocommerce div.product span.price,.et_color_scheme_red.woocommerce-page div.product span.price,.et_color_scheme_red.woocommerce #content div.product span.price,.et_color_scheme_red.woocommerce-page #content div.product span.price,.et_color_scheme_red.woocommerce div.product p.price,.et_color_scheme_red.woocommerce-page div.product p.price,.et_color_scheme_red.woocommerce #content div.product p.price,.et_color_scheme_red.woocommerce-page #content div.product p.price{color:#cd5c5c}.et_color_scheme_red .woocommerce .star-rating span:before,.et_color_scheme_red .woocommerce-page .star-rating span:before{color:#cd5c5c !important}.et_color_scheme_red .footer-widget h4,.et_color_scheme_red #main-footer .widget_block h1,.et_color_scheme_red #main-footer .widget_block h2,.et_color_scheme_red #main-footer .widget_block h3,.et_color_scheme_red #main-footer .widget_block h4,.et_color_scheme_red #main-footer .widget_block h5,.et_color_scheme_red #main-footer .widget_block h6{color:#cd5c5c}.et_color_scheme_red .footer-widget li:before{color:#cd5c5c} + diff --git a/css/dynamic-assets/comments.css b/css/dynamic-assets/comments.css new file mode 100644 index 0000000..eca043e --- /dev/null +++ b/css/dynamic-assets/comments.css @@ -0,0 +1,2 @@ +.comment-reply-link{color:#2EA3F2}.comment-reply-link:hover{background:rgba(0,0,0,0.05)}.comment-reply-link:hover:after{opacity:1;margin-left:0}.comment-content ul{list-style-type:disc;padding:0 0 23px 1em;line-height:26px}.comment-content ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px 0;line-height:26px}.comment-content ul li ul,.comment-content ul li ol{padding:2px 0px 2px 20px}.comment-content ol li ul,.comment-content ol li ol{padding:2px 0px 2px 35px}ol.commentlist,.comment .children{list-style:none !important;line-height:1.7em !important;padding:0 !important}.comment-content ul{padding:0 0 23px 16px !important;line-height:26px !important}.comment-content ol{line-height:26px !important}@media print{#respond{display:none}} + diff --git a/css/dynamic-assets/footer.css b/css/dynamic-assets/footer.css new file mode 100644 index 0000000..d6d4a5d --- /dev/null +++ b/css/dynamic-assets/footer.css @@ -0,0 +1,2 @@ +.footer-widget h4,#main-footer .widget_block h1,#main-footer .widget_block h2,#main-footer .widget_block h3,#main-footer .widget_block h4,#main-footer .widget_block h5,#main-footer .widget_block h6{color:#2EA3F2}.footer-widget li:before{border-color:#2EA3F2}.bottom-nav li.current-menu-item>a{color:#2EA3F2}#main-footer{background-color:#222222}#footer-widgets{padding:6% 0 0}.footer-widget{float:left;color:#fff}.last{margin-right:0}.footer-widget .fwidget:last-child{margin-bottom:0 !important}#footer-widgets .footer-widget li{padding-left:14px;position:relative}#footer-widgets .footer-widget li:before{border-radius:3px;border-style:solid;border-width:3px;content:"";left:0;position:absolute;top:9px}#footer-widgets .footer-widget li a{color:#fff;text-decoration:none}#footer-widgets .footer-widget li a:hover{color:rgba(255,255,255,0.7)}.footer-widget .widget_adsensewidget ins{min-width:160px}#footer-bottom{background-color:#1f1f1f;background-color:rgba(0,0,0,0.32);padding:15px 0 5px}#footer-bottom a{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#footer-info{text-align:left;color:#666;padding-bottom:10px;float:left}#footer-info a{font-weight:700;color:#666}#footer-info a:hover{opacity:.7}#et-footer-nav{background-color:rgba(255,255,255,0.05)}.bottom-nav{padding:15px 0}.bottom-nav li{font-weight:600;display:inline-block;font-size:14px;padding-right:22px}.bottom-nav a{color:#bbb;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.bottom-nav a:hover{opacity:.7}@media all and (max-width: 980px){.footer-widget:nth-child(n){width:46.25% !important;margin:0 7.5% 7.5% 0 !important}.et_pb_footer_columns1 .footer-widget{width:100% !important;margin:0 7.5% 7.5% 0 !important}#footer-widgets .footer-widget .fwidget{margin-bottom:16.21%}.et_pb_gutters1 .footer-widget:nth-child(n){width:50% !important;margin:0 !important}.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0}#footer-widgets{padding:8% 0}#footer-widgets .footer-widget:nth-child(2n){margin-right:0 !important}#footer-widgets .footer-widget:nth-last-child(-n+2){margin-bottom:0 !important}.bottom-nav{text-align:center}#footer-info{float:none;text-align:center}}@media all and (max-width: 767px){#footer-widgets .footer-widget,.et_pb_gutters1 #footer-widgets .footer-widget{width:100% !important;margin-right:0 !important}#footer-widgets .footer-widget:nth-child(n),#footer-widgets .footer-widget .fwidget{margin-bottom:9.5% !important}.et_pb_gutters1 #footer-widgets .footer-widget:nth-child(n),.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0 !important}#footer-widgets{padding:10% 0}#footer-widgets .footer-widget .fwidget:last-child{margin-bottom:0 !important}#footer-widgets .footer-widget:last-child{margin-bottom:0 !important}}@media all and (max-width: 479px){#footer-widgets .footer-widget:nth-child(n),.footer-widget .fwidget{margin-bottom:11.5% !important}#footer-widgets .footer-widget.last{margin-bottom:0 !important}.et_pb_gutters1 #footer-widgets .footer-widget:nth-child(n),.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0 !important}#footer-widgets{padding:12% 0}} + diff --git a/css/dynamic-assets/fullscreen_header.css b/css/dynamic-assets/fullscreen_header.css new file mode 100644 index 0000000..544f481 --- /dev/null +++ b/css/dynamic-assets/fullscreen_header.css @@ -0,0 +1,2 @@ +.et_header_style_fullscreen .et_slide_in_menu_container .et_mobile_menu li a{font-size:30px}.et_header_style_fullscreen .et_slide_in_menu_container,.et_header_style_fullscreen .et_slide_in_menu_container input.et-search-field,.et_header_style_fullscreen .et_slide_in_menu_container a,.et_header_style_fullscreen .et_slide_in_menu_container #et-info span,.et_header_style_fullscreen .et_slide_menu_top ul.et-social-icons a,.et_header_style_fullscreen .et_slide_menu_top span{font-size:18px}.et_header_style_fullscreen .et_slide_in_menu_container .et-search-field::-moz-placeholder{font-size:18px}.et_header_style_fullscreen .et_slide_in_menu_container .et-search-field::-webkit-input-placeholder{font-size:18px}.et_header_style_fullscreen .et_slide_in_menu_container .et-search-field:-ms-input-placeholder{font-size:18px}.et_header_style_fullscreen .mobile_menu_bar.et_toggle_fullscreen_menu{display:block}.et_header_style_fullscreen .et_pb_fullscreen_nav_container{display:table;width:100%;vertical-align:middle;height:100%}.et_header_style_fullscreen.et_pb_no_top_bar_fullscreen .et_slide_in_menu_container{padding-top:0}.et_header_style_fullscreen .et_slide_in_menu_container{padding-top:70px;right:0 !important;width:100%;position:fixed;top:0;opacity:0;display:block !important;visibility:hidden;overflow-x:hidden;-webkit-transition:1s ease-in-out, padding-top 0s;transition:1s ease-in-out, padding-top 0s}.et-has-admin-bar .et_header_style_fullscreen .et_slide_in_menu_container{top:32px}.et_header_style_fullscreen .et_slide_in_menu_container.et_pb_fullscreen_menu_opened{opacity:0.95;visibility:visible}.et_header_style_fullscreen .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu{position:absolute;right:30px;top:34px;z-index:999999;cursor:pointer}.et_header_style_fullscreen .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu:before{content:"\4d"}.et_header_style_fullscreen .et_slide_menu_top{padding:35px;position:absolute;top:0;width:100%;z-index:99999;text-align:center}.et_header_style_fullscreen .et_pb_top_menu_inner{position:relative;display:inline-block}.et_header_style_fullscreen .et_slide_menu_top a,.et_header_style_fullscreen .et_slide_menu_top,.et_header_style_fullscreen .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu:before,.et_header_style_fullscreen .et_slide_menu_top button#searchsubmit_header:before{color:#fff}.et_header_style_fullscreen input::-moz-placeholder{color:#fff}.et_header_style_fullscreen input::-webkit-input-placeholder{color:#fff}.et_header_style_fullscreen input:-ms-input-placeholder{color:#fff}.et_header_style_fullscreen div#et-info,.et_header_style_fullscreen ul.et-social-icons,.et_header_style_fullscreen a.et-cart-info{margin-right:30px}.et_header_style_fullscreen div#et-info{float:left !important;width:auto;margin-top:7px;display:inline-block}.et_header_style_fullscreen div#et-info span{margin-right:15px}.et_header_style_fullscreen .et_slide_menu_top .et-search-form{min-width:140px;width:140px !important;display:inline-block;margin-top:0 !important;margin-bottom:-10px;background:none !important;border:1px solid #fff;border-radius:3px}.et_header_style_centered a.et-cart-info,.et_header_style_split a.et-cart-info,.et_header_style_fullscreen a.et-cart-info{float:none !important;vertical-align:middle}.et_header_style_fullscreen .et_slide_menu_top ul.et-social-icons{float:none !important;display:inline-block}.et_header_style_fullscreen .et_slide_menu_top ul.et-social-icons li{margin-right:0}.et_header_style_fullscreen #mobile_menu_slide .menu-item-has-children{margin-right:-31px}.et_header_style_fullscreen ul#mobile_menu_slide{text-align:center;position:relative;width:auto;display:table-cell !important;height:100%;vertical-align:middle;padding:0}.et_header_style_fullscreen .et_pb_fullscreen_nav_container .et_mobile_menu{opacity:0;visibility:hidden;-webkit-transition:1s ease-in-out;transition:1s ease-in-out}.et_pb_fullscreen_menu_opened .et_pb_fullscreen_nav_container .et_mobile_menu{opacity:1;visibility:visible}.et_header_style_fullscreen .et_pb_fullscreen_nav_container .et_mobile_menu li{padding-left:0 !important;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:0.3s ease-in-out;transition:0.3s ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}.et_header_style_fullscreen .et_slide_in_menu_container #mobile_menu_slide a{margin-right:0;display:inline-block}.et_header_style_fullscreen .et_slide_in_menu_container span.et_mobile_menu_arrow{right:auto;padding-right:10px;position:relative}.et_header_style_fullscreen .et_slide_in_menu_container #mobile_menu_slide .et_mobile_menu_arrow:before{top:0;right:0;position:relative}.et_pb_fullscreen_menu_animated .et_mobile_menu li{-webkit-transform:scale(1);transform:scale(1)}.et_pb_fullscreen_menu_opened .et_mobile_menu li{opacity:1}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(1){-webkit-transition-delay:0.1s;transition-delay:0.1s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(2){-webkit-transition-delay:0.2s;transition-delay:0.2s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(3){-webkit-transition-delay:0.3s;transition-delay:0.3s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(4){-webkit-transition-delay:0.4s;transition-delay:0.4s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(5){-webkit-transition-delay:0.5s;transition-delay:0.5s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(6){-webkit-transition-delay:0.6s;transition-delay:0.6s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(7){-webkit-transition-delay:0.7s;transition-delay:0.7s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(8){-webkit-transition-delay:0.8s;transition-delay:0.8s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(9){-webkit-transition-delay:0.9s;transition-delay:0.9s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(10){-webkit-transition-delay:1s;transition-delay:1s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(11){-webkit-transition-delay:1.1s;transition-delay:1.1s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(12){-webkit-transition-delay:1.2s;transition-delay:1.2s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(13){-webkit-transition-delay:1.3s;transition-delay:1.3s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(14){-webkit-transition-delay:1.4s;transition-delay:1.4s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(15){-webkit-transition-delay:1.5s;transition-delay:1.5s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(16){-webkit-transition-delay:1.6s;transition-delay:1.6s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(17){-webkit-transition-delay:1.7s;transition-delay:1.7s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(18){-webkit-transition-delay:1.8s;transition-delay:1.8s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(19){-webkit-transition-delay:1.9s;transition-delay:1.9s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(20){-webkit-transition-delay:2s;transition-delay:2s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(21){-webkit-transition-delay:2.1s;transition-delay:2.1s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(22){-webkit-transition-delay:2.2s;transition-delay:2.2s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(23){-webkit-transition-delay:2.3s;transition-delay:2.3s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(24){-webkit-transition-delay:2.4s;transition-delay:2.4s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(25){-webkit-transition-delay:2.5s;transition-delay:2.5s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(26){-webkit-transition-delay:2.6s;transition-delay:2.6s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(27){-webkit-transition-delay:2.7s;transition-delay:2.7s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(28){-webkit-transition-delay:2.8s;transition-delay:2.8s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(29){-webkit-transition-delay:2.9s;transition-delay:2.9s}.et_pb_fullscreen_menu_opened .et_mobile_menu li:nth-child(30){-webkit-transition-delay:3s;transition-delay:3s}.et_header_style_fullscreen .et-fixed-header #et-top-navigation,.et_header_style_fullscreen div#et_mobile_nav_menu,.et_header_style_fullscreen .et_slide_menu_top .clear{padding:11px 0 !important}.et_header_style_fullscreen #et_top_search,.et_header_style_slide #top-header,.et_header_style_fullscreen #top-header{display:none !important}.et_header_style_fullscreen.et_fullwidth_nav .et-search-form{right:0 !important}.et_header_style_fullscreen div#et_mobile_nav_menu{right:0 !important}.et_header_style_fullscreen #top-menu-nav{display:none}.et_header_style_fullscreen #et-top-navigation a.et-cart-info{display:none}@media all and (min-width: 981px){.et_header_style_fullscreen #et-top-navigation{padding:24px 0 24px 0 !important}.et_header_style_fullscreen #et-top-navigation .et_toggle_fullscreen_menu{padding-bottom:0}.et_header_style_fullscreen div#et-info{margin-top:0}}@media all and (max-width: 767px){.et_header_style_fullscreen div#et-info{position:relative;float:none !important;margin-top:15px}.et_header_style_fullscreen #et-info a{display:inline-block;line-height:0}.et_header_style_fullscreen .et_slide_menu_top .et-search-form{display:block !important;width:100% !important;max-width:100% !important;margin-top:10px !important;margin-bottom:10px !important}.et_header_style_fullscreen .et_slide_in_menu_container{padding-top:140px}.et_header_style_fullscreen .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu{top:28px}.et_hide_search_icon.et_header_style_fullscreen .et_slide_menu_top .et-search-form{display:none !important}} + diff --git a/css/dynamic-assets/gutters1_footer.css b/css/dynamic-assets/gutters1_footer.css new file mode 100644 index 0000000..0bfaf85 --- /dev/null +++ b/css/dynamic-assets/gutters1_footer.css @@ -0,0 +1,2 @@ +@media all and (min-width: 981px){.et_pb_gutters1 .footer-widget{margin-right:0;margin-bottom:0}.et_pb_gutters1 .footer-widget:last-child{margin-right:0}.et_pb_gutters1.et_pb_footer_columns6 .footer-widget{width:16.667%}.et_pb_gutters1.et_pb_footer_columns6 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns5 .footer-widget{width:20%}.et_pb_gutters1.et_pb_footer_columns5 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns4 .footer-widget{width:25%}.et_pb_gutters1.et_pb_footer_columns4 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns3 .footer-widget{width:33.333%}.et_pb_gutters1.et_pb_footer_columns3 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns2 .footer-widget{width:50%}.et_pb_gutters1.et_pb_footer_columns2 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns1 .footer-widget{width:100%}.et_pb_gutters1.et_pb_footer_columns1 .footer-widget .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1){width:75%;clear:both}.et_pb_gutters1.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2){width:25%}.et_pb_gutters1.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1){width:25%;clear:both}.et_pb_gutters1.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2){width:75%}.et_pb_gutters1.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1){width:66.667%}.et_pb_gutters1.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2){width:33.333%}.et_pb_gutters1.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1){width:33.333%}.et_pb_gutters1.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2){width:66.667%}.et_pb_gutters1.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2){width:25%}.et_pb_gutters1.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3){width:50%}.et_pb_gutters1.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child{width:50%}.et_pb_gutters1.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:25%}.et_pb_gutters1.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2){width:20%}.et_pb_gutters1.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3){width:60%}.et_pb_gutters1.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child{width:60%}.et_pb_gutters1.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:20%}.et_pb_gutters1.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1){width:60%}.et_pb_gutters1.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){width:40%}.et_pb_gutters1.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1){width:40%}.et_pb_gutters1.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2){width:60%}.et_pb_gutters1.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child{width:50%}.et_pb_gutters1.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)){width:16.667%}.et_pb_gutters1.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3){width:16.667%}.et_pb_gutters1.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4){width:50%}.et_pb_gutters1.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:25%}.et_pb_gutters1.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2){width:50%}.et_pb_gutters1.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:20%}.et_pb_gutters1.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:0}.et_pb_gutters1.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2){width:60%}.et_pb_gutters1.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:0}} + diff --git a/css/dynamic-assets/gutters2_footer.css b/css/dynamic-assets/gutters2_footer.css new file mode 100644 index 0000000..4b674c0 --- /dev/null +++ b/css/dynamic-assets/gutters2_footer.css @@ -0,0 +1,2 @@ +@media all and (min-width: 981px){.et_pb_gutters2 .footer-widget{margin-right:3%;margin-bottom:3%}.et_pb_gutters2 .footer-widget:last-child{margin-right:0}.et_pb_gutters2.et_pb_footer_columns6 .footer-widget{width:14.167%}.et_pb_gutters2.et_pb_footer_columns6 .footer-widget .fwidget{margin-bottom:21.176%}.et_pb_gutters2.et_pb_footer_columns5 .footer-widget{width:17.6%}.et_pb_gutters2.et_pb_footer_columns5 .footer-widget .fwidget{margin-bottom:17.045%}.et_pb_gutters2.et_pb_footer_columns4 .footer-widget{width:22.75%}.et_pb_gutters2.et_pb_footer_columns4 .footer-widget .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns3 .footer-widget{width:31.333%}.et_pb_gutters2.et_pb_footer_columns3 .footer-widget .fwidget{margin-bottom:9.574%}.et_pb_gutters2.et_pb_footer_columns2 .footer-widget{width:48.5%}.et_pb_gutters2.et_pb_footer_columns2 .footer-widget .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns1 .footer-widget{width:100%}.et_pb_gutters2.et_pb_footer_columns1 .footer-widget .fwidget{margin-bottom:3%}.et_pb_gutters2.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1){width:74.25%;clear:both}.et_pb_gutters2.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:4.04%}.et_pb_gutters2.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2){width:22.75%}.et_pb_gutters2.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1){width:22.75%;clear:both}.et_pb_gutters2.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2){width:74.25%}.et_pb_gutters2.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:4.04%}.et_pb_gutters2.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1){width:65.667%}.et_pb_gutters2.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:4.569%}.et_pb_gutters2.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2){width:31.333%}.et_pb_gutters2.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:9.574%}.et_pb_gutters2.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1){width:31.333%}.et_pb_gutters2.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:9.574%}.et_pb_gutters2.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2){width:65.667%}.et_pb_gutters2.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:4.569%}.et_pb_gutters2.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2){width:22.75%}.et_pb_gutters2.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3){width:48.5%}.et_pb_gutters2.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3) .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child{width:48.5%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:22.75%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2){width:17.6%}.et_pb_gutters2.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:17.045%}.et_pb_gutters2.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3){width:58.8%}.et_pb_gutters2.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3) .fwidget{margin-bottom:5.102%}.et_pb_gutters2.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child{width:58.8%}.et_pb_gutters2.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child .fwidget{margin-bottom:5.102%}.et_pb_gutters2.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:17.6%}.et_pb_gutters2.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:17.045%}.et_pb_gutters2.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1){width:58.8%}.et_pb_gutters2.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:5.102%}.et_pb_gutters2.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){width:38.2%}.et_pb_gutters2.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:7.853%}.et_pb_gutters2.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1){width:38.2%}.et_pb_gutters2.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:7.853%}.et_pb_gutters2.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2){width:58.8%}.et_pb_gutters2.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:5.102%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child{width:48.5%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)){width:14.167%}.et_pb_gutters2.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)) .fwidget{margin-bottom:21.176%}.et_pb_gutters2.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3){width:14.167%}.et_pb_gutters2.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3) .fwidget{margin-bottom:21.176%}.et_pb_gutters2.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4){width:48.5%}.et_pb_gutters2.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4) .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:22.75%}.et_pb_gutters2.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:13.187%}.et_pb_gutters2.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2){width:48.5%}.et_pb_gutters2.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:6.186%}.et_pb_gutters2.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:17.6%}.et_pb_gutters2.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:17.045%}.et_pb_gutters2.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2){width:58.8%}.et_pb_gutters2.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:5.102%}} + diff --git a/css/dynamic-assets/gutters3_footer.css b/css/dynamic-assets/gutters3_footer.css new file mode 100644 index 0000000..fd7e5fc --- /dev/null +++ b/css/dynamic-assets/gutters3_footer.css @@ -0,0 +1,2 @@ +@media all and (min-width: 981px){.et_pb_gutters3 .footer-widget{margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3 .footer-widget:last-child{margin-right:0}.et_pb_gutters3.et_pb_footer_columns6 .footer-widget{width:12.083%}.et_pb_gutters3.et_pb_footer_columns6 .footer-widget .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns5 .footer-widget{width:15.6%}.et_pb_gutters3.et_pb_footer_columns5 .footer-widget .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns4 .footer-widget{width:20.875%}.et_pb_gutters3.et_pb_footer_columns4 .footer-widget .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns3 .footer-widget{width:29.667%}.et_pb_gutters3.et_pb_footer_columns3 .footer-widget .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns2 .footer-widget{width:47.25%}.et_pb_gutters3.et_pb_footer_columns2 .footer-widget .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns1 .footer-widget{width:100%}.et_pb_gutters3.et_pb_footer_columns1 .footer-widget .fwidget{margin-bottom:5.5%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1){width:73.625%;clear:both}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:7.47%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1){width:20.875%;clear:both}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2){width:73.625%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:7.47%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1){width:64.833%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:8.483%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2){width:29.667%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1){width:29.667%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2){width:64.833%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:8.483%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child{width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child{width:57.8%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){width:36.7%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:14.986%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1){width:36.7%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:14.986%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child{width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)){width:12.083%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)) .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3){width:12.083%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3) .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:9.516%}} + diff --git a/css/dynamic-assets/gutters4_footer.css b/css/dynamic-assets/gutters4_footer.css new file mode 100644 index 0000000..536db20 --- /dev/null +++ b/css/dynamic-assets/gutters4_footer.css @@ -0,0 +1,2 @@ +@media all and (min-width: 981px){.et_pb_gutters4 .footer-widget{margin-right:8%;margin-bottom:8%}.et_pb_gutters4 .footer-widget:last-child{margin-right:0}.et_pb_gutters4.et_pb_footer_columns6 .footer-widget{width:10%}.et_pb_gutters4.et_pb_footer_columns6 .footer-widget .fwidget{margin-bottom:80%}.et_pb_gutters4.et_pb_footer_columns5 .footer-widget{width:13.6%}.et_pb_gutters4.et_pb_footer_columns5 .footer-widget .fwidget{margin-bottom:58.824%}.et_pb_gutters4.et_pb_footer_columns4 .footer-widget{width:19%}.et_pb_gutters4.et_pb_footer_columns4 .footer-widget .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns3 .footer-widget{width:28%}.et_pb_gutters4.et_pb_footer_columns3 .footer-widget .fwidget{margin-bottom:28.571%}.et_pb_gutters4.et_pb_footer_columns2 .footer-widget{width:46%}.et_pb_gutters4.et_pb_footer_columns2 .footer-widget .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns1 .footer-widget{width:100%}.et_pb_gutters4.et_pb_footer_columns1 .footer-widget .fwidget{margin-bottom:8%}.et_pb_gutters4.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1){width:73%;clear:both}.et_pb_gutters4.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:10.959%}.et_pb_gutters4.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2){width:19%}.et_pb_gutters4.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1){width:19%;clear:both}.et_pb_gutters4.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2){width:73%}.et_pb_gutters4.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:10.959%}.et_pb_gutters4.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1){width:64%}.et_pb_gutters4.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:12.5%}.et_pb_gutters4.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2){width:28%}.et_pb_gutters4.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:28.571%}.et_pb_gutters4.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1){width:28%}.et_pb_gutters4.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:28.571%}.et_pb_gutters4.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2){width:64%}.et_pb_gutters4.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:12.5%}.et_pb_gutters4.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2){width:19%}.et_pb_gutters4.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3){width:46%}.et_pb_gutters4.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3) .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child{width:46%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:19%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2){width:13.6%}.et_pb_gutters4.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:58.824%}.et_pb_gutters4.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3){width:56.8%}.et_pb_gutters4.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3) .fwidget{margin-bottom:14.085%}.et_pb_gutters4.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child{width:56.8%}.et_pb_gutters4.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child .fwidget{margin-bottom:14.085%}.et_pb_gutters4.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:13.6%}.et_pb_gutters4.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:58.824%}.et_pb_gutters4.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1){width:56.8%}.et_pb_gutters4.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:14.085%}.et_pb_gutters4.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){width:35.2%}.et_pb_gutters4.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:22.727%}.et_pb_gutters4.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1){width:35.2%}.et_pb_gutters4.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:22.727%}.et_pb_gutters4.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2){width:56.8%}.et_pb_gutters4.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:14.085%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child{width:46%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)){width:10%}.et_pb_gutters4.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)) .fwidget{margin-bottom:80%}.et_pb_gutters4.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3){width:10%}.et_pb_gutters4.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3) .fwidget{margin-bottom:80%}.et_pb_gutters4.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4){width:46%}.et_pb_gutters4.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4) .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:19%}.et_pb_gutters4.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:42.105%}.et_pb_gutters4.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2){width:46%}.et_pb_gutters4.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:17.391%}.et_pb_gutters4.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:13.6%}.et_pb_gutters4.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:58.824%}.et_pb_gutters4.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2){width:56.8%}.et_pb_gutters4.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:14.085%}} + diff --git a/css/dynamic-assets/header.css b/css/dynamic-assets/header.css new file mode 100644 index 0000000..6b373dd --- /dev/null +++ b/css/dynamic-assets/header.css @@ -0,0 +1,2 @@ +#et-secondary-menu li,#top-menu li{word-wrap:break-word}.nav li ul,.et_mobile_menu{border-color:#2EA3F2}.mobile_menu_bar:before,.mobile_menu_bar:after,#top-menu li.current-menu-ancestor>a,#top-menu li.current-menu-item>a{color:#2EA3F2}#main-header{-webkit-transition:background-color 0.4s, color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, color 0.4s, transform 0.4s, opacity 0.4s ease-in-out;transition:background-color 0.4s, color 0.4s, transform 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s}#main-header.et-disabled-animations *{-webkit-transition-duration:0s !important;transition-duration:0s !important}.container{text-align:left;position:relative}.et_fixed_nav.et_show_nav #page-container{padding-top:80px}.et_fixed_nav.et_show_nav.et-tb #page-container,.et_fixed_nav.et_show_nav.et-tb-has-header #page-container{padding-top:0 !important}.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container{padding-top:111px}.et_fixed_nav.et_show_nav.et_secondary_nav_enabled.et_header_style_centered #page-container{padding-top:177px}.et_fixed_nav.et_show_nav.et_header_style_centered #page-container{padding-top:147px}.et_fixed_nav #main-header{position:fixed}.et_header_style_left #et-top-navigation{padding-top:33px}.et_header_style_left #et-top-navigation nav>ul>li>a{padding-bottom:33px}.et_header_style_left .logo_container{position:absolute;height:100%;width:100%}.et_header_style_left #et-top-navigation .mobile_menu_bar{padding-bottom:24px}.et_hide_search_icon #et_top_search{display:none !important}#logo{width:auto;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out;margin-bottom:0;max-height:54%;display:inline-block;float:none;vertical-align:middle;-webkit-transform:translate3d(0, 0, 0)}.et_pb_svg_logo #logo{height:54%}.logo_container{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}span.logo_helper{display:inline-block;height:100%;vertical-align:middle;width:0}.safari .centered-inline-logo-wrap{-webkit-transform:translate3d(0, 0, 0);-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#et-define-logo-wrap img{width:100%}.gecko #et-define-logo-wrap.svg-logo{position:relative !important}#top-menu-nav,#top-menu{line-height:0}#et-top-navigation{font-weight:600}.et_fixed_nav #et-top-navigation{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et-cart-info span:before{content:"\e07a";margin-right:10px;position:relative}nav#top-menu-nav,#top-menu,nav.et-menu-nav,.et-menu{float:left}#top-menu li{display:inline-block;font-size:14px;padding-right:22px}#top-menu>li:last-child{padding-right:0}.et_fullwidth_nav.et_non_fixed_nav.et_header_style_left #top-menu>li:last-child>ul.sub-menu{right:0}#top-menu a{color:rgba(0,0,0,0.6);text-decoration:none;display:block;position:relative;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#top-menu-nav>ul>li>a:hover{opacity:0.7;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#et_search_icon:before{content:"\55";font-size:17px;left:0;position:absolute;top:-3px}#et_search_icon:hover{cursor:pointer}#et_top_search{float:right;margin:3px 0 0 22px;position:relative;display:block;width:18px}#et_top_search.et_search_opened{position:absolute;width:100%}.et-search-form{top:0;bottom:0;right:0;position:absolute;z-index:1000;width:100%}.et-search-form input{width:90%;border:none;color:#333;position:absolute;top:0;bottom:0;right:30px;margin:auto;background:transparent}.et-search-form .et-search-field::-ms-clear{width:0;height:0;display:none}.et_search_form_container{-webkit-animation:none;animation:none;-o-animation:none}.container.et_search_form_container{position:relative;opacity:0;height:1px}.container.et_search_form_container.et_pb_search_visible{z-index:999;-webkit-animation:fadeInTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_search_visible.et_pb_no_animation{opacity:1}.et_pb_search_form_hidden{-webkit-animation:fadeOutTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}span.et_close_search_field{display:block;width:30px;height:30px;z-index:99999;position:absolute;right:0;cursor:pointer;top:0;bottom:0;margin:auto}span.et_close_search_field:after{font-family:'ETmodules';content:'\4d';speak:none;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-size:32px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.container.et_menu_container{z-index:99}.container.et_search_form_container.et_pb_search_form_hidden{z-index:1 !important}.et_search_outer{width:100%;overflow:hidden;position:absolute;top:0}.container.et_pb_menu_hidden{z-index:-1}form.et-search-form{background:rgba(0,0,0,0) !important}input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}.et-cart-info{color:inherit}#et-top-navigation .et-cart-info{float:left;margin:-2px 0 0 22px;font-size:16px}#et-top-navigation{float:right}#top-menu li li{padding:0 20px;margin:0}#top-menu li li a{padding:6px 20px;width:200px}.nav li.et-touch-hover>ul{opacity:1;visibility:visible}#top-menu .menu-item-has-children>a:first-child:after,#et-secondary-nav .menu-item-has-children>a:first-child:after{font-family:'ETmodules';content:"3";font-size:16px;position:absolute;right:0;top:0;font-weight:800}#top-menu .menu-item-has-children>a:first-child,#et-secondary-nav .menu-item-has-children>a:first-child{padding-right:20px}#top-menu li .menu-item-has-children>a:first-child{padding-right:40px}#top-menu li .menu-item-has-children>a:first-child:after{right:20px;top:6px}#top-menu li.mega-menu{position:inherit}#top-menu li.mega-menu>ul{padding:30px 20px;position:absolute !important;width:100%;left:0 !important}#top-menu li.mega-menu ul li{margin:0;float:left !important;display:block !important;padding:0 !important}#top-menu li.mega-menu>ul>li:nth-of-type(4n){clear:right}#top-menu li.mega-menu>ul>li:nth-of-type(4n+1){clear:left}#top-menu li.mega-menu ul li li{width:100%}#top-menu li.mega-menu li>ul{-webkit-animation:none !important;animation:none !important;padding:0px;border:none;left:auto;top:auto;width:90% !important;position:relative;-webkit-box-shadow:none;box-shadow:none}#top-menu li.mega-menu li ul{visibility:visible;opacity:1;display:none}#top-menu li.mega-menu.et-hover li ul{display:block}#top-menu li.mega-menu.et-hover>ul{opacity:1 !important;visibility:visible !important}#top-menu li.mega-menu>ul>li>a{width:90%;padding:0 20px 10px}#top-menu li.mega-menu>ul>li>a:first-child{padding-top:0 !important;font-weight:bold;border-bottom:1px solid rgba(0,0,0,0.03)}#top-menu li.mega-menu>ul>li>a:first-child:hover{background-color:transparent !important}#top-menu li.mega-menu li>a{width:100%}#top-menu li.mega-menu.mega-menu-parent li li,#top-menu li.mega-menu.mega-menu-parent li>a{width:100% !important}#top-menu li.mega-menu.mega-menu-parent li>.sub-menu{float:left;width:100% !important}#top-menu li.mega-menu>ul>li{width:25%;margin:0}#top-menu li.mega-menu.mega-menu-parent-3>ul>li{width:33.33%}#top-menu li.mega-menu.mega-menu-parent-2>ul>li{width:50%}#top-menu li.mega-menu.mega-menu-parent-1>ul>li{width:100%}#top-menu li.mega-menu .menu-item-has-children>a:first-child:after{display:none}#top-menu li.mega-menu>ul>li>ul>li{width:100%;margin:0}#et_mobile_nav_menu{float:right;display:none}.mobile_menu_bar{position:relative;display:block;line-height:0}.mobile_menu_bar:before,.et_toggle_slide_menu:after{content:"\61";font-size:32px;left:0;position:relative;top:0;cursor:pointer}.mobile_nav .select_page{display:none}.et_pb_menu_hidden #top-menu,.et_pb_menu_hidden #et_search_icon:before,.et_pb_menu_hidden .et-cart-info{opacity:0;-webkit-animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_visible #top-menu,.et_pb_menu_visible #et_search_icon:before,.et_pb_menu_visible .et-cart-info{z-index:99;opacity:1;-webkit-animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_hidden #top-menu,.et_pb_menu_hidden #et_search_icon:before,.et_pb_menu_hidden .mobile_menu_bar{opacity:0;-webkit-animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_visible #top-menu,.et_pb_menu_visible #et_search_icon:before,.et_pb_menu_visible .mobile_menu_bar{z-index:99;opacity:1;-webkit-animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_no_animation #top-menu,.et_pb_no_animation #et_search_icon:before,.et_pb_no_animation .mobile_menu_bar,.et_pb_no_animation.et_search_form_container{animation:none !important;-o-animation:none !important;-webkit-animation:none !important;-moz-animation:none !important}body.admin-bar.et_fixed_nav #main-header{top:32px}body.et-wp-pre-3_8.admin-bar.et_fixed_nav #main-header{top:28px}body.et_fixed_nav.et_secondary_nav_enabled #main-header{top:30px}body.admin-bar.et_fixed_nav.et_secondary_nav_enabled #main-header{top:63px}@media all and (min-width: 981px){.et_hide_primary_logo #main-header:not(.et-fixed-header) .logo_container,.et_hide_fixed_logo #main-header.et-fixed-header .logo_container{height:0;opacity:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et_hide_primary_logo #main-header:not(.et-fixed-header) .centered-inline-logo-wrap,.et_hide_fixed_logo #main-header.et-fixed-header .centered-inline-logo-wrap{height:0;opacity:0;padding:0}.et-animated-content#page-container{-webkit-transition:margin-top 0.4s ease-in-out;transition:margin-top 0.4s ease-in-out}.et_hide_nav #page-container{-webkit-transition:none;transition:none}.et_fullwidth_nav .et-search-form,.et_fullwidth_nav .et_close_search_field{right:30px}#main-header.et-fixed-header{-webkit-box-shadow:0 0 7px rgba(0,0,0,0.1) !important;box-shadow:0 0 7px rgba(0,0,0,0.1) !important}.et_header_style_left .et-fixed-header #et-top-navigation{padding-top:20px}.et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li>a{padding-bottom:20px}.et_hide_nav.et_fixed_nav #main-header{opacity:0}.et_hide_nav.et_fixed_nav .et-fixed-header#main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}.et_hide_nav .centered-inline-logo-wrap,.et_hide_nav.et_fixed_nav #main-header,.et_hide_nav.et_fixed_nav #main-header,.et_hide_nav .centered-inline-logo-wrap{-webkit-transition-duration:.7s;transition-duration:.7s}.et_hide_nav #page-container{padding-top:0 !important}.et_primary_nav_dropdown_animation_fade #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_fade #et-secondary-nav li:hover>ul{-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.et_primary_nav_dropdown_animation_slide #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_slide #et-secondary-nav li:hover>ul{-webkit-animation:fadeLeft .4s ease-in-out;animation:fadeLeft .4s ease-in-out}.et_primary_nav_dropdown_animation_expand #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_expand #et-secondary-nav li:hover>ul{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-animation:Grow .4s ease-in-out;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_primary_nav_dropdown_animation_flip #et-top-navigation ul li ul li:hover>ul,.et_secondary_nav_dropdown_animation_flip #et-secondary-nav ul li:hover>ul{-webkit-animation:flipInX .6s ease-in-out;animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_primary_nav_dropdown_animation_flip #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_flip #et-secondary-nav li:hover>ul{-webkit-animation:flipInY .6s ease-in-out;animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_fullwidth_nav #main-header .container{width:100%;max-width:100%;padding-right:30px;padding-left:30px}.et_non_fixed_nav.et_fullwidth_nav.et_header_style_left #main-header .container{padding-left:0}.et_non_fixed_nav.et_fullwidth_nav.et_header_style_left .logo_container{padding-left:30px}}@media all and (max-width: 980px){.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_fixed_nav.et_show_nav #page-container{padding-top:80px}.et_fixed_nav.et_show_nav.et-tb #page-container,.et_fixed_nav.et_show_nav.et-tb-has-header #page-container{padding-top:0 !important}.et_non_fixed_nav #page-container{padding-top:0}.et_fixed_nav.et_secondary_nav_only_menu.admin-bar #main-header{top:32px !important}.et_hide_mobile_logo #main-header .logo_container{display:none;opacity:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#top-menu{display:none}.et_hide_nav.et_fixed_nav #main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}#et-top-navigation{margin-right:0;-webkit-transition:none;transition:none}.et_fixed_nav #main-header{position:absolute}.et_header_style_left .et-fixed-header #et-top-navigation,.et_header_style_left #et-top-navigation{padding-top:24px;display:block}.et_fixed_nav #main-header{-webkit-transition:none;transition:none}.et_fixed_nav_temp #main-header{top:0 !important}#logo,.logo_container,#main-header,.container{-webkit-transition:none;transition:none}.et_header_style_left #logo{max-width:50%}#et_top_search{margin:0 35px 0 0;float:left}#et_search_icon:before{top:7px}.et_header_style_left .et-search-form{width:50% !important;max-width:50% !important}#et_mobile_nav_menu{display:block}#et-top-navigation .et-cart-info{margin-top:5px}}@media screen and (max-width: 782px){body.admin-bar.et_fixed_nav #main-header{top:46px}}@media all and (max-width: 767px){#et-top-navigation{margin-right:0}body.admin-bar.et_fixed_nav #main-header{top:46px}}@media all and (max-width: 479px){#et-top-navigation{margin-right:0}}@media print{#top-header,#main-header{position:relative !important;top:auto !important;right:auto !important;bottom:auto !important;left:auto !important}} + diff --git a/css/dynamic-assets/pagebuilder_posts.css b/css/dynamic-assets/pagebuilder_posts.css new file mode 100644 index 0000000..a6bc1a6 --- /dev/null +++ b/css/dynamic-assets/pagebuilder_posts.css @@ -0,0 +1,2 @@ +.et_pb_pagebuilder_layout.single.et_full_width_page:not(.et-tb-has-body) #main-content .container{width:100%;max-width:100%;padding-top:0}.et_pb_pagebuilder_layout.single.et_full_width_page:not(.et-tb-has-body) .et_post_meta_wrapper{width:80%;max-width:1080px;margin:auto;padding-top:6%}.et_pb_pagebuilder_layout.single.et_full_width_page:not(.et-tb-has-body) .et_post_meta_wrapper:last-of-type{padding-top:0}.et_pb_pagebuilder_layout.single-post:not(.et-tb-has-body) #main-content .et_pb_row{width:100%}.et_pb_pagebuilder_layout.single-post:not(.et-tb-has-body) #main-content .et_pb_with_background .et_pb_row{width:80%}.et_pb_pagebuilder_layout.single.et_full_width_page:not(.et-tb-has-body) #main-content .et_pb_row{width:80%}.et_pb_pagebuilder_layout .entry-content,.et_pb_pagebuilder_layout .et_pb_post .entry-content{margin-bottom:0 !important;padding-top:0}.single-project.et_pb_pagebuilder_layout .nav-single{width:80%;max-width:1080px;margin:10px auto} + diff --git a/css/dynamic-assets/project.css b/css/dynamic-assets/project.css new file mode 100644 index 0000000..1acc2e8 --- /dev/null +++ b/css/dynamic-assets/project.css @@ -0,0 +1,2 @@ +.et_full_width_portfolio_page #main-content .container:before{display:none}.single-project #left-area{padding-bottom:50px}.et_main_title{padding-bottom:12px}.et_main_title h1{display:inline-block;padding-right:2px}.et_main_title .et_project_categories{font-size:14px}.et_main_title .et_project_categories a{text-decoration:none;color:#666}.project .entry-content{padding-top:30px}.et_project_meta_title{display:block;font-weight:700;color:#333}.et_project_meta{margin:23px 0 14px;border-top:1px solid #e2e2e2;padding:15px 0 39px;border-bottom:1px solid #e2e2e2}.et_project_meta p{padding-bottom:15px}.et_project_meta p a{text-decoration:none;color:#666}.single .et_pb_post{margin-bottom:27px}.single .et_pb_post.et_pb_no_comments_section{padding-bottom:0;margin-bottom:0}.et_pb_pagebuilder_layout .project .entry-content{padding-top:0}.single .et_pb_post.project.type-project{margin-bottom:0}.et_full_width_portfolio_page .et_project_meta{margin-bottom:0;float:left;width:21%;margin-top:0;border-bottom:none}.et_full_width_portfolio_page .entry-content{margin-bottom:43px}.et_full_width_portfolio_page .nav-single{border-top:1px solid #e2e2e2;padding-top:13px}.entry-content .et_pb_member_social_links{list-style-type:none !important;margin-top:20px;padding:0}@media all and (min-width: 981px){.et_full_width_portfolio_page #left-area{float:left;width:70% !important;margin-right:9%}}@media all and (max-width: 980px){.et_full_width_portfolio_page .et_project_meta{float:none;width:100%;margin-top:-20px}} + diff --git a/css/dynamic-assets/rtl.css b/css/dynamic-assets/rtl.css new file mode 100644 index 0000000..c34dd6d --- /dev/null +++ b/css/dynamic-assets/rtl.css @@ -0,0 +1,2 @@ +body{direction:rtl;unicode-bidi:embed}.container{text-align:right}ul.et_pb_side_nav li.side_nav_item,.et-social-icons{float:left}#top-menu>li:last-child{padding-right:22px}#et-secondary-nav li:first-child{margin-right:0}#et-secondary-nav>li:last-child{margin-right:15px}#top-menu li{text-align:right}.rtl #top-menu .menu-item-has-children>a:first-child{padding-left:40px;padding-right:20px}#top-menu li.mega-menu ul li{float:right !important}#top-menu li.mega-menu>ul>li:nth-of-type(4n){clear:left}#top-menu li.mega-menu>ul>li:nth-of-type(4n+1){clear:right}#sidebar .et_pb_widget,.bottom-nav,.et_pb_post,#left-area{text-align:right}#footer-info{float:right}.et-social-icons li:last-child{margin-left:0}#top-menu>li:first-child,.bottom-nav li:first-child{padding-right:0}.widget_search #searchsubmit{right:auto;left:0}.et_pb_counter_amount{float:right;text-align:left;padding:1px 1px 1px 3%}blockquote{border-right:5px solid;padding-right:20px;padding-left:0;border-left:0}.et_pb_text_align_right{text-align:right !important}.et-pb-controllers a{margin-right:0;margin-left:10px}.et_pb_slide_with_image .et_pb_slide_description{text-align:right}.et_pb_slide_with_image .et_pb_slide_image{left:0}.et_pb_tabs_controls li{float:right;border-left:1px solid #d9d9d9;border-right:none}.et_pb_toggle_title:before{right:inherit;left:0}.et_pb_toggle h5.et_pb_toggle_title{padding:0 0 0 30px}#footer-widgets .footer-widget li{text-align:right;padding:0 14px 10px 0}#footer-widgets .footer-widget li:before{left:inherit;right:0}.et_pb_filterable_portfolio .et_pb_portfolio_filters ul{float:right}.comment_avatar{left:auto;right:0}.comment_area .comment-reply-link{right:auto;left:0;max-width:95px}.comment_area .comment-reply-link.et_pb_button:hover{padding:0.3em 0.7em 0.3em 2em}.comment_area .comment-reply-link.et_pb_button:after{content:"\34";top:50%;margin-top:-16px;left:0}.comment-body{padding:0 100px 0 110px}.form-submit{text-align:left}.et_pb_pricing li{padding:0 14px 28px 0 !important;text-align:right}.et_pb_pricing li:before{left:auto;right:0}.et_pb_testimonial_no_image .et_pb_testimonial_description,.et_pb_column_1_3 .et_pb_testimonial_description,.et_pb_column_1_4 .et_pb_testimonial_description,.et_pb_column_3_8 .et_pb_testimonial_description{padding-right:0}.et_pb_testimonial_portrait{float:right}.et_pb_testimonial_description{padding-left:0;padding-right:120px}.et_pb_forgot_password{text-align:right}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:right}li.product.last{clear:left}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{margin:0 0 5.5% 5.5% !important}.woocommerce ul.products li.last,.woocommerce-page ul.products li.last{margin-left:0 !important}.archive.et_left_sidebar.woocommerce .et-l--post ul.products li.product:nth-child(3n),.archive.et_right_sidebar.woocommerce .et-l--post ul.products li.product:nth-child(3n){margin-left:0 !important;clear:left !important}.archive.et_left_sidebar.woocommerce .et-l--post ul.products li.product:nth-child(3n+1),.archive.et_right_sidebar.woocommerce .et-l--post ul.products li.product:nth-child(3n+1){margin-right:0 !important;margin-left:60px !important}.archive.et_left_sidebar.woocommerce .et-l--post ul.products li.product.last,.archive.et_right_sidebar.woocommerce .et-l--post ul.products li.product.last{margin-right:0 !important;margin-left:60px !important}.et_header_style_split #et_top_search,.et_header_style_centered #et_top_search{margin-left:0;margin-right:22px}span.et_close_search_field,.et-search-form{right:auto;left:0}.et_header_style_slide .et_mobile_menu li li{padding-right:5%;padding-left:0}#main-header #mobile_menu{text-align:right}#main-header .et_mobile_menu li ul,.et_pb_menu .et_mobile_menu li ul,.et_pb_fullwidth_menu .et_mobile_menu li ul{padding-left:0;padding-right:10px}@media all and (min-width: 981px){.et_vertical_nav #et_search_icon:before{right:0}.et_vertical_nav.et_header_style_centered #et_search_icon:before{left:auto}.et_vertical_nav.et_header_style_split #et_top_search{margin-right:0}.et_vertical_nav.et_header_style_split #et_search_icon:before{left:auto}.et_fixed_nav.et_header_style_slide #main-header{right:0;-webkit-transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s ease-in-out,opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),transform 0.4s ease-in-out;-webkit-transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),-webkit-transform 0.4s ease-in-out;transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),-webkit-transform 0.4s ease-in-out;transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),transform 0.4s ease-in-out;transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),transform 0.4s ease-in-out,-webkit-transform 0.4s ease-in-out}}@media all and (max-width: 980px){.et_full_width_page.woocommerce ul.products li.product.last,.et_full_width_page.woocommerce-page ul.products li.product.last,.et_pb_pagebuilder_layout ul.products li.product.last,.et_pb_pagebuilder_layout ul.products li.product.last{margin-right:0 !important}.et_header_style_centered .et_menu_container .mobile_menu_bar,.et_header_style_split .et_menu_container .mobile_menu_bar{left:5px;right:auto}.et_header_style_centered #main-header .mobile_nav,.et_header_style_split #main-header .mobile_nav{text-align:right}.rtl.et_fixed_nav.et_header_style_slide #main-header{right:0 !important}}@media all and (max-width: 980px) and (min-width: 768px){.woocommerce ul.products li.product:nth-child(2n){float:right}.woocommerce ul.products li.product:nth-child(3n){margin-left:0 !important}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{margin:0 0 53px 32px !important}.woocommerce ul.products li.product:nth-child(3n+1){margin-right:0 !important}.archive.et_left_sidebar.woocommerce .et-l--post ul.products li.product.last,.archive.et_right_sidebar.woocommerce .et-l--post ul.products li.product.last{margin-left:32px !important}}@media all and (max-width: 767px){.et_pb_slide_with_image .et_pb_slide_description{text-align:center}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{margin-left:0 !important}#comment-wrap li.comment article.comment-body{padding:0 100px 0 0}.comment_area .comment-reply-link{max-width:none;float:left}}@media all and (max-width: 479px){#comment-wrap li.comment article.comment-body{padding:0 50px 0 0}}#et_top_search{float:left}#et-secondary-menu .et-cart-info{margin-left:0;margin-right:15px}#et-top-navigation{float:left}#et-secondary-menu{float:left}#et-info{float:right}.rtl.et_header_style_left #top-menu,.rtl.et_header_style_left .fullwidth-menu,.rtl.et_header_style_left nav#top-menu-nav,.rtl.et_header_style_left nav.fullwidth-menu-nav{float:right}.rtl #et-secondary-nav>.menu-item-has-children>a:first-child,.rtl #top-menu>.menu-item-has-children>a:first-child{padding-right:0;padding-left:20px}.rtl #et-secondary-nav>.menu-item-has-children>a:first-child:after,.rtl #top-menu>.menu-item-has-children>a:first-child:after{right:unset;left:0}.rtl.et_header_style_left #et-top-navigation .et-cart-info,.rtl.et_header_style_split #et-top-navigation .et-cart-info{float:right}.rtl.et_header_style_left #et_top_search,.rtl.et_header_style_left #et_mobile_nav_menu{float:right}.rtl.et_header_style_left #et-top-navigation .et-cart-info,.rtl.et_header_style_split #et-top-navigation .et-cart-info,.rtl.et_header_style_centered #et-top-navigation .et-cart-info{margin:-2px 22px 0 0}.rtl.et_header_style_left .et-cart-info span:before{margin-right:0;margin-left:10px}.rtl.et_header_style_left #et_top_search{margin:3px 22px 0 0}.rtl.et_header_style_centered #et_search_icon:before{left:0;right:3px}.rtl.et_header_style_slide .et_slide_in_menu_container{left:-100%;right:unset;-webkit-transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1);transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1)}.rtl.et_header_style_slide #page-container{right:0;-webkit-transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),margin-top 0.4s ease-in-out !important;transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1),margin-top 0.4s ease-in-out !important}.rtl.et_header_style_slide .et_slide_in_menu_container span.et_mobile_menu_arrow{left:0;right:unset}.rtl .et_slide_menu_top a.et-cart-info{float:left}@media all and (max-width: 980px){.rtl.et_header_style_left #et-top-navigation .et-cart-info,.rtl.et_header_style_left #et_top_search,.rtl.et_header_style_left #et_mobile_nav_menu{float:left}.rtl.et_header_style_left #et-top-navigation .et-cart-info{margin-top:5px;float:right}.rtl.et_header_style_left #et_top_search{margin:0 0 0 35px;float:right}}@media all and (max-width: 980px){.et_pb_shop ul.products.columns-1 li.product,.et_pb_shop ul.products.columns-2 li.product,.et_pb_shop ul.products.columns-3 li.product,.et_pb_shop ul.products.columns-4 li.product,.et_pb_shop ul.products.columns-5 li.product,.et_pb_shop ul.products.columns-6 li.product,.et_pb_wc_related_products ul.products.columns-1 li.product,.et_pb_wc_related_products ul.products.columns-2 li.product,.et_pb_wc_related_products ul.products.columns-3 li.product,.et_pb_wc_related_products ul.products.columns-4 li.product,.et_pb_wc_related_products ul.products.columns-5 li.product,.et_pb_wc_related_products ul.products.columns-6 li.product,.et_pb_wc_upsells ul.products.columns-1 li.product,.et_pb_wc_upsells ul.products.columns-2 li.product,.et_pb_wc_upsells ul.products.columns-3 li.product,.et_pb_wc_upsells ul.products.columns-4 li.product,.et_pb_wc_upsells ul.products.columns-5 li.product,.et_pb_wc_upsells ul.products.columns-6 li.product{margin-left:4% !important;margin-right:0 !important}.et_pb_shop ul.products.columns-1 li:nth-child(2n+2),.et_pb_shop ul.products.columns-2 li:nth-child(2n+2),.et_pb_shop ul.products.columns-3 li:nth-child(2n+2),.et_pb_shop ul.products.columns-4 li:nth-child(2n+2),.et_pb_shop ul.products.columns-5 li:nth-child(2n+2),.et_pb_shop ul.products.columns-6 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-1 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-2 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-3 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-4 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-5 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-6 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-1 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-2 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-3 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-4 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-5 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-6 li:nth-child(2n+2){margin-left:0 !important}} + diff --git a/css/dynamic-assets/secondary_nav.css b/css/dynamic-assets/secondary_nav.css new file mode 100644 index 0000000..795bd31 --- /dev/null +++ b/css/dynamic-assets/secondary_nav.css @@ -0,0 +1,2 @@ +#et-secondary-menu li{word-wrap:break-word}#top-header,#et-secondary-nav li ul{background-color:#2EA3F2}#top-header{font-size:12px;line-height:13px;z-index:100000;color:#ffffff}#top-header a,#top-header a{color:#ffffff}#top-header,#et-secondary-nav{-webkit-transition:background-color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, transform 0.4s, opacity 0.4s ease-in-out;transition:background-color 0.4s, transform 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s}#top-header .container{padding-top:.75em;font-weight:600}#top-header,#top-header .container,#top-header #et-info,#top-header .et-social-icon a{line-height:1em}.et_fixed_nav #top-header{top:0;left:0;right:0;position:fixed}#et-info{float:left}#et-info-phone,#et-info-email{position:relative}#et-info-phone:before{content:"\e090";position:relative;top:2px;margin-right:2px}#et-info-phone{margin-right:13px}#et-info-email:before{content:"\e076";margin-right:4px}#top-header .et-social-icons{float:none;display:inline-block}#et-secondary-menu .et-social-icons{margin-right:20px}#top-header .et-social-icons li{margin-left:12px;margin-top:-2px}#top-header .et-social-icon a{font-size:14px}#et-secondary-menu{float:right}#et-info,#et-secondary-menu>ul>li a{padding-bottom:.75em;display:block}#et-secondary-nav,#et-secondary-nav li{display:inline-block}#et-secondary-nav a{-webkit-transition:background-color 0.4s, color 0.4s ease-in-out;transition:background-color 0.4s, color 0.4s ease-in-out}#et-secondary-nav li{margin-right:15px}#et-secondary-nav>li:last-child{margin-right:0}#et-secondary-menu>ul>li>a:hover,#et-info-email:hover{opacity:0.7;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#et-secondary-nav li{position:relative;text-align:right}#et-secondary-nav li ul{position:absolute;right:0;padding:1em 0}#et-secondary-nav li ul ul{right:220px;top:0;margin-top:-1em}#et-secondary-nav li ul li{display:block}#et-secondary-nav li ul{z-index:999999;visibility:hidden;opacity:0;-webkit-box-shadow:0 2px 5px rgba(0,0,0,0.1);box-shadow:0 2px 5px rgba(0,0,0,0.1)}#et-secondary-nav li ul{-webkit-transform:translate3d(0, 0, 0)}#et-secondary-nav li.et-hover>ul{visibility:visible}#et-secondary-nav li>ul{width:220px}#et-secondary-nav li:hover>ul,#et-secondary-nav li.et-touch-hover>ul{opacity:1;visibility:visible}#et-secondary-nav li li{padding:0 2em;margin:0}#et-secondary-nav li li a{padding:1em;width:100%;font-size:12px;line-height:1em;margin-right:0;display:block;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}#et-secondary-nav ul li a:hover{background-color:rgba(0,0,0,0.03)}#et-secondary-nav li:hover{visibility:inherit}#top-header .et-cart-info{margin-left:15px}#et-secondary-nav .menu-item-has-children>a:first-child:after{top:0}#et-secondary-nav li .menu-item-has-children>a:first-child:after{top:.67em;right:auto;left:2.3em}body.admin-bar.et_fixed_nav #top-header{top:32px}body.et-wp-pre-3_8.admin-bar.et_fixed_nav #top-header{top:28px}@media all and (min-width: 981px){.et_fullwidth_secondary_nav #top-header .container{width:100%;max-width:100%;padding-right:30px;padding-left:30px}.et_hide_nav.et_fixed_nav #top-header{opacity:0}.et_hide_nav.et_fixed_nav .et-fixed-header#top-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}.et_hide_nav.et_fixed_nav #top-header,.et_hide_nav.et_fixed_nav #top-header{-webkit-transition-duration:.7s;transition-duration:.7s}}@media all and (max-width: 980px){.et_fixed_nav.et_show_nav.et_secondary_nav_enabled.et-tb #page-container,.et_fixed_nav.et_show_nav.et_secondary_nav_enabled.et-tb-has-header #page-container{padding-top:0 !important}.et_secondary_nav_only_menu #top-header{display:none}#top-header{-webkit-transition:none;transition:none}.et_fixed_nav #top-header{position:absolute}.et_hide_nav.et_fixed_nav #top-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}#top-header .container{padding-top:0}#et-info{padding-top:0.75em}#et-secondary-nav,#et-secondary-menu{display:none !important}.et_secondary_nav_only_menu #main-header,.et_secondary_nav_only_menu #main-header{top:0 !important}#top-header .et-social-icons{margin-bottom:0}#top-header .et-cart-info{margin-left:0}}@media screen and (max-width: 782px){body.admin-bar.et_fixed_nav #top-header{top:46px}.et_fixed_nav.et_secondary_nav_only_menu.admin-bar #main-header{top:46px !important}body.admin-bar.et_fixed_nav.et_secondary_nav_enabled #main-header{top:80px}}@media all and (max-width: 767px){#et-info .et-social-icons{display:none}#et-secondary-menu .et_duplicate_social_icons{display:inline-block}body.et_fixed_nav.et_secondary_nav_two_panels #main-header{top:58px}#et-info,#et-secondary-menu{text-align:center;display:block;float:none}.et_secondary_nav_two_panels #et-secondary-menu{margin-top:12px}body.admin-bar.et_fixed_nav #top-header{top:46px}body.admin-bar.et_fixed_nav.et_secondary_nav_two_panels #main-header{top:104px}} + diff --git a/css/dynamic-assets/side_nav.css b/css/dynamic-assets/side_nav.css new file mode 100644 index 0000000..f979f03 --- /dev/null +++ b/css/dynamic-assets/side_nav.css @@ -0,0 +1,2 @@ +ul.et_pb_side_nav,ul.et_pb_side_nav *{-webkit-box-sizing:border-box;box-sizing:border-box}ul.et_pb_side_nav{-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px;position:fixed;right:0;top:50%;width:40px;background:rgba(0,0,0,0.4);padding:10px;z-index:99999;display:block;opacity:0}ul.et_pb_side_nav li.side_nav_item{padding:7px}ul.et_pb_side_nav .side_nav_item a{display:block;background-color:rgba(255,255,255,0.5);text-indent:-9999px;border-radius:7px;margin-right:10px;height:7px;width:7px}ul.et_pb_side_nav.et-visible{opacity:1;-webkit-animation:fadeInRight 1.5s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInRight 1.5s 1 cubic-bezier(0.77, 0, 0.175, 1)}ul.et_pb_side_nav .side_nav_item a.active{background-color:#fff !important}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}} + diff --git a/css/dynamic-assets/sidebar.css b/css/dynamic-assets/sidebar.css new file mode 100644 index 0000000..ab4f96a --- /dev/null +++ b/css/dynamic-assets/sidebar.css @@ -0,0 +1,2 @@ +#sidebar{padding-bottom:28px}#sidebar .et_pb_widget{margin-bottom:30px;width:100%;float:none}.et_right_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section.sep{font-size:44px;line-height:44px}.et_right_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section.sep{font-size:32px;line-height:32px}.et_right_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section.sep{font-size:24px;line-height:24px}.et_right_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section.sep{font-size:20px;line-height:20px}.et_right_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section.sep{font-size:16px;line-height:16px}@media all and (min-width: 981px) and (max-width: 1100px){#sidebar .et_pb_widget{margin-left:0}.et_left_sidebar #sidebar .et_pb_widget{margin-right:0}}@media all and (min-width: 981px){#sidebar{float:left;width:20.875%}.et_right_sidebar #left-area{float:left;padding-right:5.5%}.et_right_sidebar #sidebar{padding-left:30px}.et_right_sidebar #main-content .container:before{right:20.875% !important}.et_left_sidebar #left-area{float:right;padding-left:5.5%}.et_left_sidebar #sidebar{padding-right:30px}.et_left_sidebar #main-content .container:before{left:20.875% !important}}@media all and (max-width: 980px){.et_right_sidebar #left-area,.et_right_sidebar #sidebar,.et_left_sidebar #left-area,.et_left_sidebar #sidebar{width:auto;float:none;padding-right:0;padding-left:0}.et_right_sidebar #left-area{margin-right:0}.et_right_sidebar #sidebar{margin-left:0;border-left:none}.et_left_sidebar #left-area{margin-left:0}.et_left_sidebar #sidebar{margin-right:0;border-right:none}} + diff --git a/css/dynamic-assets/slide_in_menu.css b/css/dynamic-assets/slide_in_menu.css new file mode 100644 index 0000000..8f97618 --- /dev/null +++ b/css/dynamic-assets/slide_in_menu.css @@ -0,0 +1,2 @@ +.et_hide_search_icon .et_slide_menu_top .et-search-form{display:none !important}.et_header_style_slide .et_slide_in_menu_container .et_mobile_menu li a,.et_header_style_slide .et_slide_in_menu_container,.et_header_style_slide .et_slide_in_menu_container input.et-search-field,.et_header_style_slide .et_slide_in_menu_container a,.et_header_style_slide .et_slide_in_menu_container #et-info span,.et_header_style_slide .et_slide_menu_top ul.et-social-icons a,.et_header_style_slide .et_slide_menu_top span{font-size:14px}.et_header_style_slide .et_slide_in_menu_container .et-search-field::-moz-placeholder{font-size:14px;color:rgba(255,255,255,0.6)}.et_header_style_slide .et_slide_in_menu_container .et-search-field::-webkit-input-placeholder{font-size:14px;color:rgba(255,255,255,0.6)}.et_header_style_slide .et_slide_in_menu_container .et-search-field:-ms-input-placeholder{font-size:14px;color:rgba(255,255,255,0.6)}.mobile_menu_bar.et_pb_header_toggle{display:none;cursor:pointer;width:32px}.et_header_style_slide .mobile_menu_bar.et_toggle_slide_menu{display:block}.et_header_style_slide #et_top_search,.et_slide_in_menu_container #mobile_menu_slide .et_mobile_menu li ul,.et_header_style_slide div#et_mobile_nav_menu{display:none !important}.et_header_style_slide.et_fullwidth_nav .et-search-form,.et_header_style_slide div#et_mobile_nav_menu{right:0 !important}.et_slide_menu_top button#searchsubmit_header:before,.et_slide_in_menu_container #mobile_menu_slide .et_mobile_menu_arrow:before,.et_toggle_slide_menu:after{font-family:'ETmodules';speak:none;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased}.et_toggle_slide_menu:before,.et_toggle_slide_menu:after{-webkit-transition:all .7s;transition:all .7s}.et_toggle_slide_menu:before{opacity:1}.et_toggle_slide_menu:after{content:"\4d";opacity:0;left:-32px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.et_pb_slide_menu_active .et_toggle_slide_menu:before{opacity:0}.et_pb_slide_menu_active .et_toggle_slide_menu:after{opacity:1;-webkit-transform:rotate(0deg);transform:rotate(0deg)}.et_pb_slide_menu_active .et_toggle_slide_menu:after{-webkit-transition-delay:.3s;transition-delay:.3s}.et_header_style_slide #top-menu-nav,.et_header_style_slide .et_slide_in_menu_container span.mobile_menu_bar.et_toggle_fullscreen_menu,.et_slide_in_menu_container #mobile_menu_slide ul.sub-menu{display:none}.et_header_style_slide .et_slide_in_menu_container{width:320px;max-width:75%;padding-top:0 !important}.et_slide_in_menu_container{overflow:auto;right:-100%;position:fixed;top:0;background:#2ea3f2;z-index:999999;height:100%;-webkit-transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1);transition:right 0.8s cubic-bezier(0.77, 0, 0.175, 1)}.admin-bar .et_slide_in_menu_container{top:32px}.et_slide_menu_top{background:rgba(0,0,0,0.1);padding:40px}.et_header_style_slide #page-container{position:relative;left:0}.et_header_style_slide #page-container{-webkit-transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),margin-top 0.4s ease-in-out !important;transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),margin-top 0.4s ease-in-out !important}.et_slide_menu_top ul.et-social-icons,.et_slide_menu_top span#et-info-email{float:left}.et_slide_menu_top ul.et-social-icons li{margin-left:0;margin-right:10px}.et_slide_menu_top a.et-cart-info{float:right}.et_slide_menu_top:after{content:'';clear:both;display:block}.et_slide_menu_top .et-search-form{position:relative;height:35px;clear:both;background:rgba(0,0,0,0.2) !important;padding:5px !important;margin:15px 0 0 0;border-radius:5px;width:100% !important;max-width:100% !important}.et_slide_menu_top input.et-search-field{left:5px}.et_slide_menu_top button#searchsubmit_header{right:0;width:30px;cursor:pointer;position:absolute;background:none;border:none;height:35px;top:0px}.et_slide_menu_top button#searchsubmit_header:before{position:absolute;top:11px;left:7px;font-size:13px;content:"\55";color:rgba(255,255,255,0.6)}.et_slide_menu_top span{font-weight:600}.et_slide_menu_top div#et-info{width:100%;padding-bottom:0;padding-top:15px}.et_slide_in_menu_container .et_slide_menu_top,.et_slide_in_menu_container .et_slide_menu_top a,.et_slide_in_menu_container .et_slide_menu_top input{color:rgba(255,255,255,0.6)}.et_slide_in_menu_container ul#mobile_menu_slide{display:block !important;background:none;border:none;-webkit-box-shadow:none;box-shadow:none;padding:28px 40px}.et_slide_in_menu_container #mobile_menu_slide li.current-menu-item a,.et_slide_in_menu_container #mobile_menu_slide li a{padding:10px 0;color:#fff;border:none}.et_slide_in_menu_container #mobile_menu_slide .menu-item-has-children{position:relative}.et_slide_in_menu_container span.et_mobile_menu_arrow{opacity:0.6;position:absolute;display:inline-block;width:auto;height:auto;right:0;-webkit-transition:all .5s;transition:all .5s;cursor:pointer}.et_slide_in_menu_container span.et_mobile_menu_arrow.et_pb_submenu_opened{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.et_slide_in_menu_container #mobile_menu_slide .et_mobile_menu_arrow:before{content:'3';display:block;right:13px;top:10px;z-index:999;font-size:21px;color:#fff;text-align:center}.et_slide_in_menu_container .et_mobile_menu .menu-item-has-children>a{background:none;font-weight:normal}.et_slide_in_menu_container .et_mobile_menu>.menu-item-has-children>a{font-weight:bold}.et_slide_in_menu_container #mobile_menu_slide ul.sub-menu li{opacity:0;-webkit-transition:0.5s cubic-bezier(0.77, 0, 0.175, 1);transition:0.5s cubic-bezier(0.77, 0, 0.175, 1)}.et_slide_in_menu_container #mobile_menu_slide ul.sub-menu.et_pb_slide_dropdown_opened>li{opacity:1;-webkit-transition:1s 0.1s cubic-bezier(0.77, 0, 0.175, 1);transition:1s 0.1s cubic-bezier(0.77, 0, 0.175, 1)}.et_slide_in_menu_container .et_mobile_menu li a:hover{background:none}.et_slide_in_menu_container #mobile_menu_slide li li a{opacity:0.6}.et_slide_in_menu_container #mobile_menu_slide li li a:hover{opacity:0.4}.et_header_style_slide .et-fixed-header #et-top-navigation{padding:11px 0 !important}.et_header_style_slide #et-top-navigation a.et-cart-info{display:none}body.admin-bar.et_non_fixed_nav.et_transparent_nav.et_header_style_slide #main-header{top:0}#et-info{float:left}#et-info-phone,#et-info-email{position:relative}#et-info-phone:before{content:"\e090";position:relative;top:2px;margin-right:2px}#et-info-phone{margin-right:13px}#et-info-email:before{content:"\e076";margin-right:4px}@media all and (min-width: 981px){.et_header_style_slide #et-top-navigation{padding:24px 0 24px 0 !important}.et_header_style_slide #et-top-navigation .et_toggle_slide_menu{padding-bottom:0}.et_fixed_nav.et_header_style_slide #main-header{left:0;-webkit-transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),-webkit-transform 0.4s ease-in-out;transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),-webkit-transform 0.4s ease-in-out;transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),transform 0.4s ease-in-out;transition:left 0.8s cubic-bezier(0.77, 0, 0.175, 1),background 0.4s cubic-bezier(0.77, 0, 0.175, 1),opacity 0.4s cubic-bezier(0.77, 0, 0.175, 1),transform 0.4s ease-in-out,-webkit-transform 0.4s ease-in-out}.et_fixed_nav.et_boxed_layout.et_header_style_slide #main-header{left:auto}}@media all and (max-width: 980px){body.admin-bar.et_fixed_nav.et_header_style_slide #main-header{top:0 !important}.et_header_style_slide .et_slide_in_menu_container .et-search-form{width:100% !important;max-width:100% !important}.et_fixed_nav.et_header_style_slide #main-header{left:0 !important}.et_fixed_nav.et_boxed_layout.et_header_style_slide #page-container #main-header{width:100%}}@media screen and (max-width: 782px){body.admin-bar.et_header_style_slide .et_slide_in_menu_container{top:46px}}@media all and (max-width: 767px){.et_slide_menu_top span#et-info-email{float:none}} + diff --git a/css/dynamic-assets/social_icons.css b/css/dynamic-assets/social_icons.css new file mode 100644 index 0000000..a4b713e --- /dev/null +++ b/css/dynamic-assets/social_icons.css @@ -0,0 +1,2 @@ +.et-social-icons{float:right}.et-social-icons li{display:inline-block;margin-left:20px}.et-social-icon a{display:inline-block;font-size:24px;position:relative;text-align:center;-webkit-transition:color 300ms ease 0s;transition:color 300ms ease 0s;color:#666;text-decoration:none}.et-social-icons a:hover{opacity:0.7;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et-social-icon span{display:none}.et_duplicate_social_icons{display:none}@media all and (max-width: 980px){.et-social-icons{float:none;text-align:center}}@media all and (max-width: 980px){.et-social-icons{margin:0 0 5px}} + diff --git a/css/dynamic-assets/split_header.css b/css/dynamic-assets/split_header.css new file mode 100644 index 0000000..97e8487 --- /dev/null +++ b/css/dynamic-assets/split_header.css @@ -0,0 +1,2 @@ +.et_header_style_split #et-top-navigation{padding-top:33px}.et_header_style_split #et-top-navigation nav>ul>li>a{padding-bottom:33px}.et_header_style_split #et-top-navigation nav>ul>li>a{z-index:3}.et_header_style_split #main-header .centered-inline-logo-wrap{margin:-33px 0;height:66px;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et_header_style_split #main-header .centered-inline-logo-wrap .logo_container{height:100%}.et_header_style_split #main-header .centered-inline-logo-wrap a{height:100%}.et_header_style_split #main-header .logo_container{position:initial}.et_header_style_split #top-menu-nav{display:inline-block}.et_header_style_split #et_top_search{float:none;display:inline-block}.et_header_style_split #et_search_icon:before{margin-top:-9px}.et_header_style_split #et-top-navigation .mobile_menu_bar{padding-bottom:24px}.et_header_style_split #et-top-navigation{float:none;text-align:center;display:inline-block;position:relative;vertical-align:middle;width:100%;line-height:1}.et_header_style_split #main-header .container,.et_header_style_split #main-header .logo_container{text-align:center;z-index:2}.et_header_style_split span.logo_helper{display:none}.et_header_style_split nav#top-menu-nav,.et_header_style_split #top-menu,.et_header_style_split #top-header nav.et-menu-nav,.et_header_style_split #main-header nav.et-menu-nav,.et_header_style_split #top-header .et-menu,.et_header_style_split #main-header .et-menu{float:none}.safari.et_header_style_split #et-top-navigation{-webkit-transform:translate3d(0, 0, 0)}.et_pb_svg_logo.et_header_style_split .et-fixed-header .centered-inline-logo-wrap #logo{height:54%}@media all and (min-width: 981px){.et_header_style_split.et_hide_primary_logo #main-header:not(.et-fixed-header) .logo_container,.et_header_style_split.et_hide_fixed_logo #main-header.et-fixed-header .logo_container{height:0;opacity:0;padding:0}.et_header_style_split #logo{display:none}.et_header_style_split .centered-inline-logo-wrap #logo{display:initial;-webkit-animation:fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_header_style_split.ie .centered-inline-logo-wrap #logo{display:inline}.et_header_style_split.et_hide_primary_logo .centered-inline-logo-wrap{width:0}.et_header_style_split .et-fixed-header #et-top-navigation{padding-top:20px}.et_header_style_split .et-fixed-header #et-top-navigation nav>ul>li>a{padding-bottom:20px}.et_header_style_split .et-fixed-header .centered-inline-logo-wrap{margin:-20px 0;height:54px;width:54px}}@media all and (max-width: 980px){.et_header_style_split #main-header{padding:20px 0}.et_header_style_split #et-top-navigation,.et_header_style_split .et-fixed-header #et-top-navigation{display:block;padding-top:0}.et_header_style_split header#main-header .logo_container{height:auto;max-height:100px;padding:0}.et_header_style_split #logo{max-height:60px}.et_header_style_split #logo{max-width:50%}.et_header_style_split .et_search_outer{display:none}.et_header_style_split #et_top_search{display:none !important}.et_header_style_split .et-search-form{width:50% !important;max-width:50% !important}.et_header_style_split .et_menu_container .mobile_menu_bar{opacity:1}.et_header_style_split .mobile_nav .select_page{display:inline-block;color:#666;font-size:14px}.et_header_style_split #et_mobile_nav_menu{float:none;position:relative;margin-top:20px;display:block}.et_header_style_split nav#top-menu-nav{display:none}.et_header_style_split #main-header .mobile_nav{display:block;text-align:left;background-color:rgba(0,0,0,0.05);border-radius:5px;padding:9px 10px}.et_header_style_split .et_menu_container .mobile_menu_bar{position:absolute;right:5px;top:2px}.et_header_style_split .et_mobile_menu{top:53px}} + diff --git a/css/dynamic-assets/transparent_nav.css b/css/dynamic-assets/transparent_nav.css new file mode 100644 index 0000000..a85fc9e --- /dev/null +++ b/css/dynamic-assets/transparent_nav.css @@ -0,0 +1,2 @@ +.et_transparent_nav #page-container{padding-top:0 !important}.et_non_fixed_nav.et_transparent_nav.et_show_nav #page-container{padding-top:80px}.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_secondary_nav_enabled #page-container{padding-top:111px}.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_secondary_nav_enabled.et_header_style_centered #page-container{padding-top:177px}.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_header_style_centered #page-container{padding-top:147px}.et_non_fixed_nav.et_transparent_nav #top-header{top:0;left:0;right:0}.et_non_fixed_nav.et_transparent_nav #main-header,.et_non_fixed_nav.et_transparent_nav #top-header{position:absolute}body.admin-bar.et_non_fixed_nav.et_transparent_nav #main-header,body.admin-bar.et_non_fixed_nav.et_transparent_nav #top-header{top:32px}body.et-wp-pre-3_8.admin-bar.et_non_fixed_nav.et_transparent_nav #main-header,body.et-wp-pre-3_8.admin-bar.et_non_fixed_nav.et_transparent_nav #top-header{top:28px}body.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_enabled #main-header{top:30px}body.admin-bar.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_enabled #main-header{top:63px}@media all and (min-width: 981px){.et_transparent_nav #page-container{-webkit-transition:none;transition:none}.et_transparent_nav.et_non_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_transparent_nav.et_non_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_transparent_nav.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_transparent_nav.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container{padding-top:0}.et_hide_nav.et_non_fixed_nav.et_transparent_nav #top-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav #main-header{opacity:0}.et_hide_nav.et_non_fixed_nav.et_transparent_nav .et-fixed-header#top-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav .et-fixed-header#main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}.et_hide_nav.et_non_fixed_nav.et_transparent_nav #top-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav #top-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav #main-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav #main-header{-webkit-transition-duration:.7s;transition-duration:.7s}}@media all and (max-width: 980px){.et_non_fixed_nav.et_transparent_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_non_fixed_nav.et_transparent_nav.et_show_nav #page-container{padding-top:80px}.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_only_menu.admin-bar #main-header{top:32px !important}.et_hide_nav.et_non_fixed_nav.et_transparent_nav #top-header,.et_hide_nav.et_non_fixed_nav.et_transparent_nav #main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}.et_non_fixed_nav.et_transparent_nav #main-header{-webkit-transition:none;transition:none}.et_non_fixed_nav.et_transparent_nav_temp #main-header{top:0 !important}}@media screen and (max-width: 782px){body.admin-bar.et_non_fixed_nav.et_transparent_nav #main-header,body.admin-bar.et_non_fixed_nav.et_transparent_nav #top-header{top:46px}.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_only_menu.admin-bar #main-header{top:46px !important}body.admin-bar.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_enabled #main-header{top:80px}}@media all and (max-width: 767px){body.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_two_panels #main-header{top:58px}body.admin-bar.et_non_fixed_nav.et_transparent_nav #top-header,body.admin-bar.et_non_fixed_nav.et_transparent_nav #main-header{top:46px}body.admin-bar.et_non_fixed_nav.et_transparent_nav.et_secondary_nav_two_panels #main-header{top:104px}} + diff --git a/css/dynamic-assets/vertical_nav.css b/css/dynamic-assets/vertical_nav.css new file mode 100644 index 0000000..eee0851 --- /dev/null +++ b/css/dynamic-assets/vertical_nav.css @@ -0,0 +1,2 @@ +.et_vertical_nav #page-container:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.et_vertical_nav #page-container{padding-top:0 !important;position:relative}.et_header_style_split.et_vertical_nav #et_top_search{display:block}.et_header_style_split.et_vertical_nav #et-top-navigation{display:block}.et_header_style_split.et_vertical_nav #et-top-navigation{text-align:left}.et_header_style_centered.et_vertical_nav #main-header .container{height:auto}.et_vertical_nav .logo_container{height:auto;position:relative;padding:0}.et_vertical_nav span.logo_helper{display:none}.et_vertical_nav #et_top_search{margin-left:0}.et_vertical_nav.et_header_style_centered .et-search-form input,.et_vertical_nav.et_header_style_centered span.et_close_search_field{top:0}.et_vertical_nav.et_header_style_centered header#main-header.et-fixed-header .logo_container,.et_vertical_nav.et_header_style_centered #main-header .logo_container{height:auto}.et_vertical_nav.et_header_style_centered header#main-header #top-menu>li>a,.et_vertical_nav.et_header_style_centered header#main-header.et-fixed-header #top-menu>li>a{padding-bottom:19px}.et_vertical_nav.et_header_style_split #et-top-navigation,.et_vertical_nav.et_header_style_left #et-top-navigation{padding-top:0}.et_vertical_nav.et_header_style_split #logo{display:block}.et_vertical_nav #top-menu li.mega-menu{position:relative}.et_vertical_nav #top-menu li.mega-menu li>ul{width:100% !important}.et_vertical_nav #top-menu li.mega-menu li>a{width:100% !important}.et_vertical_nav #top-menu li.mega-menu>ul{top:62px;padding:30px 20px;position:absolute !important;width:790px !important;left:0 !important}.et_vertical_nav #top-menu li.mega-menu>ul>li{width:33.333%}.et_vertical_nav #top-menu li.mega-menu.mega-menu-parent-1>ul>li{width:100%}.et_vertical_nav #top-menu li.mega-menu.mega-menu-parent-2>ul>li{width:50%}.et_vertical_nav #top-menu li.mega-menu>ul>li:nth-child(n+4){margin-top:30px}.et_vertical_nav #top-menu li.mega-menu>ul>li:nth-child(3n){clear:right}.et_vertical_nav #top-menu li.mega-menu>ul>li:nth-child(3n+1){clear:left}.et_vertical_nav #top-menu li.mega-menu>ul>li:nth-of-type(4n+1){clear:none}.et_vertical_nav #top-menu li.mega-menu>ul>li:nth-of-type(4n){clear:none}.et_vertical_fixed.admin-bar #page-container #main-header{top:32px}.et_vertical_nav .et_pb_column_3_8 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_1_3 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_2_5 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_1_4 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_1_5 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_1_6 .et_pb_countdown_timer .section p.value,.et_vertical_nav .et_pb_column_3_8 .et_pb_countdown_timer .sep p,.et_vertical_nav .et_pb_column_1_3 .et_pb_countdown_timer .sep p,.et_vertical_nav .et_pb_column_2_5 .et_pb_countdown_timer .sep p,.et_vertical_nav .et_pb_column_1_4 .et_pb_countdown_timer .sep p,.et_vertical_nav .et_pb_column_1_5 .et_pb_countdown_timer .sep p,.et_vertical_nav .et_pb_column_1_6 .et_pb_countdown_timer .sep p{font-size:20px;line-height:20px}.et_vertical_nav #et-top-navigation .et-cart-info{margin-left:0}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-70%);transform:translateX(-70%)}}@keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-70%);transform:translateX(-70%)}}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@media all and (min-width: 1405px){.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n+1),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n+1){clear:both !important}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n){margin-right:60px !important}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n){margin-right:0px !important}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n+1),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n+1){clear:none !important}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item,.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item{width:193px}.et_vertical_nav.et_right_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #content div.product div.images{width:315px !important}}@media all and (min-width: 1100px) and (max-width: 1405px){.et_vertical_nav.et_right_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #content div.product div.images{width:250px !important}.et_vertical_nav.archive.et_full_width_page.woocommerce #main-content ul.products li.product:nth-child(3n){margin-right:0 !important}.et_vertical_nav.archive.et_full_width_page.woocommerce #main-content ul.products li.first{clear:none !important}.et_vertical_nav.archive.et_full_width_page.woocommerce #main-content ul.products li.product:nth-child(3n+1){clear:both !important;margin-right:60px !important}}@media all and (min-width: 981px) and (max-width: 1405px){.et_vertical_nav .et_pb_column_4_4 .et_pb_pricing_table{width:33.333%}.et_vertical_nav .et_pb_pricing_2 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_3_4 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_2_3 .et_pb_pricing_table{width:50%}.et_vertical_nav .et_pb_pricing_1 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_1_2 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_3_8 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_1_3 .et_pb_pricing_table,.et_vertical_nav .et_pb_column_1_4 .et_pb_pricing_table{width:100%;margin:0 0 30px}.et_vertical_nav .et_pb_pricing_1 .et_pb_pricing_table:last-child,.et_vertical_nav .et_pb_pricing_1 .et_pb_pricing_table.et-last-child,.et_vertical_nav .et_pb_column_1_2 .et_pb_pricing_table:last-child,.et_vertical_nav .et_pb_column_1_2 .et_pb_pricing_table.et-last-child,.et_vertical_nav .et_pb_column_3_8 .et_pb_pricing_table:last-child,.et_vertical_nav .et_pb_column_3_8 .et_pb_pricing_table.et-last-child,.et_vertical_nav .et_pb_column_1_3 .et_pb_pricing_table:last-child,.et_vertical_nav .et_pb_column_1_3 .et_pb_pricing_table.et-last-child,.et_vertical_nav .et_pb_column_1_4 .et_pb_pricing_table:last-child,.et_vertical_nav .et_pb_column_1_4 .et_pb_pricing_table.et-last-child{margin-bottom:0}.et_vertical_nav .et_pb_column_4_4 .et_pb_pricing_table:nth-child(4n+1),.et_vertical_nav .et_pb_column_3_4 .et_pb_pricing_table:nth-child(3n+1){clear:none}.et_vertical_nav .et_pb_column_4_4 .et_pb_pricing_table:nth-child(3n+1),.et_vertical_nav .et_pb_column_3_4 .et_pb_pricing_table:nth-child(2n+1){clear:both}.et_vertical_nav .et_pb_column_4_4 .et_pb_pricing_table:nth-child(n+4),.et_vertical_nav .et_pb_column_3_4 .et_pb_pricing_table:nth-child(n+3){margin-top:50px}.et_vertical_nav .et_pb_column_4_4 .et_pb_pricing_table.et_pb_featured_table:nth-child(n+4),.et_vertical_nav .et_pb_column_3_4 .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3){margin-top:30px}.et_vertical_nav .et_pb_column_1_4 .et_pb_sum,.et_vertical_nav .et_pb_column_1_3 .et_pb_sum{font-size:40px}.et_vertical_nav .et_pb_column_1_4 .et_pb_pricing_content_top,.et_vertical_nav .et_pb_column_1_3 .et_pb_pricing_content_top{padding-bottom:20px}.et_vertical_nav .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_description{width:100%}.et_vertical_nav .et_pb_column_1_4 .et_audio_container{padding-bottom:40px}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-container .mejs-controls div,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-container .mejs-controls div{position:absolute}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-container,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-container{height:80px !important}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-controls,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-controls{height:100% !important}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-button.mejs-playpause-button,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-button.mejs-playpause-button{top:0px;left:0;z-index:99}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-time.mejs-currenttime-container.custom,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-time.mejs-currenttime-container.custom{top:30px;left:7px}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-button.mejs-volume-button,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-button.mejs-volume-button{top:26px;right:60px}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module a.mejs-horizontal-volume-slider,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module a.mejs-horizontal-volume-slider{top:26px;right:0;display:block !important;position:absolute !important}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-horizontal-volume-total,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-horizontal-volume-total{position:relative !important;width:100% !important;display:block}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module .mejs-controls div.mejs-time-rail,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module .mejs-controls div.mejs-time-rail{width:100% !important;padding-left:30px !important}.et_vertical_nav .et_pb_column_3_4 .et_pb_audio_module a.mejs-time-total.mejs-time-slider,.et_vertical_nav .et_pb_column_2_3 .et_pb_audio_module a.mejs-time-total.mejs-time-slider{width:100% !important;position:relative !important;margin-left:0}.et_vertical_nav.archive.et_right_sidebar.woocommerce #main-content ul.products li.product:nth-child(2n),.et_vertical_nav.archive.et_left_sidebar.woocommerce #main-content ul.products li.product:nth-child(2n){margin-right:0px !important}.et_vertical_nav.archive.et_left_sidebar.woocommerce #main-content ul.products li.product:nth-child(2n+1),.et_vertical_nav.archive.et_right_sidebar.woocommerce #main-content ul.products li.product:nth-child(2n+1){clear:both !important;margin-right:60px !important}.et_vertical_nav.archive.et_left_sidebar.woocommerce #main-content ul.products li.product:nth-child(3n+1),.et_vertical_nav.archive.et_right_sidebar.woocommerce #main-content ul.products li.product:nth-child(3n+1){clear:none !important}}@media all and (min-width: 981px){.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n+1),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n+1){clear:none}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(3n){margin-right:60px}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n){margin-right:0px}.et_vertical_nav.et_right_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n+1),.et_vertical_nav.et_left_sidebar #main-content .et_post_gallery li.et_gallery_item:nth-child(2n+1){clear:both}.et_vertical_nav #et-main-area,.et_vertical_nav #top-header{margin-left:225px !important;position:relative}.et_vertical_nav #top-header{z-index:9999}.et_vertical_nav #page-container #main-header{position:absolute;padding-top:40px;top:0;left:0;width:225px;height:100%;-webkit-box-shadow:0 0 7px rgba(0,0,0,0.1);box-shadow:0 0 7px rgba(0,0,0,0.1)}.et_vertical_nav #main-header .container{width:auto;margin:0 40px}.et_vertical_nav #main-header #top-menu,.et_vertical_nav #main-header #top-menu-nav,.et_vertical_nav #main-header #et_top_search,.et_vertical_nav #main-header #et-top-navigation,.et_vertical_nav #main-header #logo{float:none;-webkit-transition:none;transition:none}.et_vertical_nav #main-header #logo{margin-bottom:28px;padding:0;max-height:none}.et_vertical_nav #main-header #top-menu li{display:block;padding-right:0}.et_vertical_nav #main-header #top-menu li.mega-menu>ul{top:190px;left:185px !important}.et_vertical_nav #main-header #top-menu li ul{top:-32px;left:185px}.et_vertical_nav #main-header #top-menu li ul{border-top:none;border-left-width:3px;border-left-style:solid}.et_vertical_nav #main-header #top-menu li ul ul{border-left-width:0;top:-20px;left:237px}.et_vertical_nav #main-header #top-menu li.mega-menu ul{left:auto;top:-32px}.et_vertical_nav #main-header #top-menu li.mega-menu ul ul{top:auto}.et_vertical_nav #main-header #top-menu>li>a{padding-bottom:19px;margin-right:-40px;padding-right:40px}.et_vertical_nav #main-header #top-menu>li>a:after{right:20px}.et_vertical_nav.et_boxed_layout #page-container #main-header{left:auto;-webkit-transition:none;transition:none}.et_vertical_nav.et_header_style_centered #main-header #top-menu-nav,.et_vertical_nav.et_header_style_split #main-header #top-menu-nav{width:100%}.et_vertical_nav.et_vertical_right #et-main-area,.et_vertical_nav.et_vertical_right #top-header{margin-left:0 !important;margin-right:225px}.et_vertical_nav.et_vertical_right #page-container #main-header{left:auto !important;right:0}.et_vertical_nav.et_vertical_right #main-header #top-menu li.mega-menu>ul{left:auto !important;right:185px !important}.et_vertical_nav.et_vertical_right #main-header #top-menu li ul{border-left:0;border-right-width:3px;border-right-style:solid;left:auto;right:185px}.et_vertical_nav.et_vertical_right #main-header #top-menu li ul ul{border-right-width:0}.et_vertical_nav input.et-search-field{left:0 !important}.et_vertical_nav #et_search_icon:before{top:-3px}.et_vertical_nav #et-top-navigation .et-cart-info{float:none;display:block}.et_vertical_nav .container.et_search_form_container{height:40px !important;position:relative;right:0 !important}.et_vertical_nav .container.et_search_form_container .et-search-form input{font-size:14px !important}.et_vertical_nav .container.et_search_form_container div#et_top_search{height:30px}.et_vertical_nav .et_pb_menu_hidden #top-menu-nav>ul,.et_vertical_nav .et_pb_menu_visible #top-menu-nav>ul,.et_vertical_nav .et_pb_menu_hidden .et-cart-info,.et_vertical_nav .et_pb_menu_visible .et-cart-info{opacity:1 !important;-webkit-animation:none !important;animation:none !important}.et_vertical_nav div#et_top_search{width:100%}.et_vertical_nav .et_pb_menu_hidden #et_top_search{opacity:0;-webkit-animation:fadeOutRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_vertical_nav .et_pb_menu_visible #et_top_search{opacity:1;-webkit-animation:fadeInRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_vertical_nav .container.et_search_form_container.et_pb_search_visible{right:0;opacity:1;-webkit-animation:fadeInLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_vertical_nav .et_pb_search_form_hidden{opacity:0;-webkit-animation:fadeOutLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_vertical_nav div#et_top_search{height:30px;margin-top:20px}.et_vertical_nav .container.et_search_form_container{margin-top:-45px !important}.et_vertical_nav span.et_close_search_field:after{font-size:16px}.et_vertical_nav span.et_close_search_field{width:13px;height:18px}.et_vertical_nav .et-search-form input{width:90%}.et_vertical_nav .container.et_search_form_container .et-search-form input{text-decoration:none !important;font-style:normal !important}.et_vertical_nav .et_search_form_container input::-moz-placeholder{text-decoration:none !important;font-style:normal !important}.et_vertical_nav .et_search_form_container input::-webkit-input-placeholder{text-decoration:none !important;font-style:normal !important}.et_vertical_nav .et_search_form_container input:-ms-input-placeholder{text-decoration:none !important;font-style:normal !important}.et_vertical_nav .et_search_outer{overflow:visible;position:relative}.et_vertical_nav.et_header_style_centered #main-header .et-search-form{left:0}.et_vertical_nav.et_header_style_centered #et_search_icon:before{left:50%;margin-left:-5px}.et_vertical_nav.et_header_style_centered #main-header #et_top_search{display:block !important;margin:16px auto 0}.et_vertical_nav.et_header_style_split #main-header .container.et_search_form_container{z-index:1}.et_vertical_nav.et_header_style_split #main-header .container.et_search_form_container.et_pb_search_visible{z-index:999}.et_vertical_nav.et_header_style_split #et_search_icon:before{margin-top:0}.et_vertical_nav.et_vertical_fixed #page-container #main-header{position:fixed}.et_vertical_nav.et_vertical_fixed.et_header_style_left #et-top-navigation,.et_vertical_nav.et_vertical_fixed.et_header_style_split #et-top-navigation{padding-top:33px}}@media all and (min-width: 981px) and (max-width: 1100px){.et_vertical_nav.et_right_sidebar #main-content .container:before{right:195px}.et_vertical_nav.et_left_sidebar #main-content .container:before{left:195px}.et_vertical_nav #top-menu li.mega-menu>ul{width:675px !important}.et_vertical_nav .et_pb_column_1_4 .et_pb_number_counter .percent p{font-size:65px;line-height:65px}.et_vertical_nav .et_pb_column_3_4 .mejs-container,.et_vertical_nav .et_pb_column_3_4 .mejs-container .mejs-controls{height:60px !important}.et_vertical_nav .et_pb_column_1_4 .et_pb_number_counter .percent p{font-size:55px;line-height:55px}.et_vertical_nav.et_right_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_right_sidebar.woocommerce-page #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #main-content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce #content div.product div.images,.et_vertical_nav.et_left_sidebar.woocommerce-page #content div.product div.images{width:215px !important}.et_vertical_nav .et_pb_column_1_4 .wp-pagenavi span.pages{width:119px !important;display:block}body.admin-bar.et_vertical_nav #main-header{top:0 !important}}@media all and (max-width: 980px){.et_vertical_nav.et_right_sidebar #left-area,.et_vertical_nav.et_left_sidebar #left-area{width:auto}.et_vertical_nav span.logo_helper{display:inline-block}.et_vertical_nav.et_header_style_left .logo_container{height:100%;position:absolute}.et_vertical_nav.et_header_style_centered #main-header #et_top_search{display:none !important}.et_vertical_nav.et_header_style_split #main-header #et_top_search{display:none !important}.et_vertical_nav #et-top-navigation .et-cart-info{margin-left:-38px}} + diff --git a/css/dynamic-assets/widget_about.css b/css/dynamic-assets/widget_about.css new file mode 100644 index 0000000..2526067 --- /dev/null +++ b/css/dynamic-assets/widget_about.css @@ -0,0 +1,2 @@ +img#about-image{float:left;margin:3px 8px 8px 0px} + diff --git a/css/dynamic-assets/widget_calendar.css b/css/dynamic-assets/widget_calendar.css new file mode 100644 index 0000000..59394ea --- /dev/null +++ b/css/dynamic-assets/widget_calendar.css @@ -0,0 +1,2 @@ +#wp-calendar{empty-cells:show;margin:10px auto 0;width:100%}#wp-calendar a{display:block;text-decoration:none;font-weight:bold}#wp-calendar a:hover{text-decoration:underline}#wp-calendar caption{text-decoration:none;font:bold 13px Arial, Sans-Serif}#wp-calendar td{padding:3px 5px;color:#9f9f9f}#wp-calendar td#today{font-weight:bold}#wp-calendar th{font-style:normal;text-transform:capitalize;padding:3px 5px}#wp-calendar #prev a,#wp-calendar #next a{font-size:9pt}#wp-calendar #next a{padding-right:10px;text-align:right}#wp-calendar #prev a{padding-left:10px;text-align:left}.et_pb_widget .wp-block-calendar th,.et_pb_widget .wp-block-calendar td{border:0}.et_pb_widget .wp-block-calendar table th{font-weight:bold;background:none}.et_pb_widget .wp-block-calendar{text-align:left} + diff --git a/css/dynamic-assets/widget_search.css b/css/dynamic-assets/widget_search.css new file mode 100644 index 0000000..77f0c48 --- /dev/null +++ b/css/dynamic-assets/widget_search.css @@ -0,0 +1,2 @@ +.widget_search .screen-reader-text,.et_pb_widget .wp-block-search__label{display:none}.widget_search input#s,.widget_search input#searchsubmit,.et_pb_widget .wp-block-search__input,.et_pb_widget .wp-block-search__button{padding:.7em;height:40px !important;margin:0;font-size:14px;line-height:normal !important;border:1px solid #ddd;color:#666}.widget_search #s,.et_pb_widget .wp-block-search__input{width:100%;border-radius:3px}.widget_search #searchform,.et_pb_widget .wp-block-search{position:relative}.widget_search #searchsubmit,.et_pb_widget .wp-block-search__button{background-color:#ddd;width:70px;-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;position:absolute;right:0;top:0}#searchsubmit,.et_pb_widget .wp-block-search__button{cursor:pointer} + diff --git a/css/dynamic-assets/widget_tag_cloud.css b/css/dynamic-assets/widget_tag_cloud.css new file mode 100644 index 0000000..283a47e --- /dev/null +++ b/css/dynamic-assets/widget_tag_cloud.css @@ -0,0 +1,2 @@ +.tagcloud a,.wp-block-tag-cloud a{font-size:12px !important;padding:2px 8px;background:rgba(0,0,0,0.05);display:inline-block;margin-bottom:4px;border-radius:3px;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.tagcloud a:hover,.wp-block-tag-cloud a:hover{background:rgba(0,0,0,0.15)}.et_pb_widget .wp-block-group__inner-container>h2,.et_pb_widget .wp-block-group__inner-container>h3{font-size:18px}.footer-widget .et_pb_widget .wp-block-group__inner-container>h2,.footer-widget .et_pb_widget .wp-block-group__inner-container>h3{color:#2ea3f2}.et_pb_widget .wp-block-latest-comments__comment{line-height:1.7em} + diff --git a/css/dynamic-assets/woocommerce.css b/css/dynamic-assets/woocommerce.css new file mode 100644 index 0000000..bbc2703 --- /dev/null +++ b/css/dynamic-assets/woocommerce.css @@ -0,0 +1,2 @@ +.woocommerce .woocommerce-error,.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{background:#2EA3F2}.entry-summary p.price ins,.woocommerce div.product span.price,.woocommerce-page div.product span.price,.woocommerce #content div.product span.price,.woocommerce-page #content div.product span.price,.woocommerce div.product p.price,.woocommerce-page div.product p.price,.woocommerce #content div.product p.price,.woocommerce-page #content div.product p.price,.woocommerce .star-rating span:before,.woocommerce-page .star-rating span:before,.woocommerce a.button.alt,.woocommerce-page a.button.alt,.woocommerce button.button.alt,.woocommerce button.button.alt.disabled,.woocommerce-page button.button.alt,.woocommerce-page button.button.alt.disabled,.woocommerce input.button.alt,.woocommerce-page input.button.alt,.woocommerce #respond input#submit.alt,.woocommerce-page #respond input#submit.alt,.woocommerce #content input.button.alt,.woocommerce-page #content input.button.alt,.woocommerce a.button,.woocommerce-page a.button,.woocommerce button.button,.woocommerce-page button.button,.woocommerce input.button,.woocommerce-page input.button,.woocommerce #respond input#submit,.woocommerce-page #respond input#submit,.woocommerce #content input.button,.woocommerce-page #content input.button,.woocommerce a.button.alt:hover,.woocommerce-page a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce button.button.alt.disabled:hover,.woocommerce-page button.button.alt:hover,.woocommerce-page button.button.alt.disabled:hover,.woocommerce input.button.alt:hover,.woocommerce-page input.button.alt:hover,.woocommerce #respond input#submit.alt:hover,.woocommerce-page #respond input#submit.alt:hover,.woocommerce #content input.button.alt:hover,.woocommerce-page #content input.button.alt:hover,.woocommerce a.button:hover,.woocommerce-page a.button:hover,.woocommerce button.button,.woocommerce-page button.button:hover,.woocommerce input.button:hover,.woocommerce-page input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce-page #respond input#submit:hover,.woocommerce #content input.button:hover{color:#2EA3F2}.woocommerce a.button.alt,.woocommerce-page a.button.alt,.woocommerce button.button.alt,.woocommerce button.button.alt.disabled,.woocommerce-page button.button.alt,.woocommerce-page button.button.alt.disabled,.woocommerce input.button.alt,.woocommerce-page input.button.alt,.woocommerce #respond input#submit.alt,.woocommerce-page #respond input#submit.alt,.woocommerce #content input.button.alt,.woocommerce-page #content input.button.alt,.woocommerce a.button,.woocommerce-page a.button,.woocommerce button.button,.woocommerce-page button.button,.woocommerce input.button,.woocommerce-page input.button,.woocommerce #respond input#submit,.woocommerce-page #respond input#submit,.woocommerce #content input.button,.woocommerce-page #content input.button{font-size:20px;font-weight:500;padding:0.3em 1em;line-height:1.7em !important;background:transparent;position:relative;border:2px solid;border-radius:3px;-webkit-transition:all 0.2s;transition:all 0.2s}.woocommerce a.button.alt:hover,.woocommerce-page a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce button.button.alt.disabled:hover,.woocommerce-page button.button.alt:hover,.woocommerce-page button.button.alt.disabled:hover,.woocommerce input.button.alt:hover,.woocommerce-page input.button.alt:hover,.woocommerce #respond input#submit.alt:hover,.woocommerce-page #respond input#submit.alt:hover,.woocommerce #content input.button.alt:hover,.woocommerce-page #content input.button.alt:hover,.woocommerce a.button:hover,.woocommerce-page a.button:hover,.woocommerce button.button:hover,.woocommerce-page button.button:hover,.woocommerce input.button:hover,.woocommerce-page input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce-page #respond input#submit:hover,.woocommerce #content input.button:hover,.woocommerce-page #content input.button:hover{border:2px solid transparent;padding:0.3em 2em 0.3em 1em}.woocommerce a.button.alt:hover,.woocommerce-page a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce button.button.alt.disabled:hover,.woocommerce-page button.button.alt:hover,.woocommerce-page button.button.alt.disabled:hover,.woocommerce input.button.alt:hover,.woocommerce-page input.button.alt:hover,.woocommerce #respond input#submit.alt:hover,.woocommerce-page #respond input#submit.alt:hover,.woocommerce #content input.button.alt:hover,.woocommerce-page #content input.button.alt:hover,.woocommerce a.button:hover,.woocommerce-page a.button:hover,.woocommerce button.button:hover,.woocommerce-page button.button:hover,.woocommerce input.button:hover,.woocommerce-page input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce-page #respond input#submit:hover,.woocommerce #content input.button:hover,.woocommerce-page #content input.button:hover{background:rgba(0,0,0,0.05)}.woocommerce a.button.alt:after,.woocommerce-page a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce-page button.button.alt:after,.woocommerce input.button.alt:after,.woocommerce-page input.button.alt:after,.woocommerce #respond input#submit.alt:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce #content input.button.alt:after,.woocommerce-page #content input.button.alt:after,.woocommerce a.button:after,.woocommerce-page a.button:after,.woocommerce button.button:after,.woocommerce-page button.button:after,.woocommerce input.button:after,.woocommerce-page input.button:after,.woocommerce #respond input#submit:after,.woocommerce-page #respond input#submit:after,.woocommerce #content input.button:after,.woocommerce-page #content input.button:after,.woocommerce a.button:before,.woocommerce-page a.button:before,.woocommerce button.button:before,.woocommerce-page button.button:before,.woocommerce input.button:before,.woocommerce-page input.button:before,.woocommerce #respond input#submit:before,.woocommerce-page #respond input#submit:before,.woocommerce #content input.button:before,.woocommerce-page #content input.button:before{font-family:"ETmodules";font-size:32px;line-height:1em;content:"\35";opacity:0;position:absolute;margin-left:-1em;-webkit-transition:all 0.2s;transition:all 0.2s}.woocommerce a.button:before,.woocommerce-page a.button:before,.woocommerce button.button:before,.woocommerce-page button.button:before,.woocommerce input.button:before,.woocommerce-page input.button:before,.woocommerce #respond input#submit:before,.woocommerce-page #respond input#submit:before,.woocommerce #content input.button:before,.woocommerce-page #content input.button:before{display:none}.et_button_icon_visible.woocommerce a.button.alt,.et_button_icon_visible.woocommerce-page a.button.alt,.et_button_icon_visible.woocommerce button.button.alt,.et_button_icon_visible.woocommerce button.button.alt.disabled,.et_button_icon_visible.woocommerce-page button.button.alt,.et_button_icon_visible.woocommerce-page button.button.alt.disabled,.et_button_icon_visible.woocommerce input.button.alt,.et_button_icon_visible.woocommerce-page input.button.alt,.et_button_icon_visible.woocommerce #respond input#submit.alt,.et_button_icon_visible.woocommerce-page #respond input#submit.alt,.et_button_icon_visible.woocommerce #content input.button.alt,.et_button_icon_visible.woocommerce-page #content input.button.alt,.et_button_icon_visible.woocommerce a.button,.et_button_icon_visible.woocommerce-page a.button,.et_button_icon_visible.woocommerce button.button,.et_button_icon_visible.woocommerce-page button.button,.et_button_icon_visible.woocommerce input.button,.et_button_icon_visible.woocommerce-page input.button,.et_button_icon_visible.woocommerce #respond input#submit,.et_button_icon_visible.woocommerce-page #respond input#submit,.et_button_icon_visible.woocommerce #content input.button,.et_button_icon_visible.woocommerce-page #content input.button{padding-right:2em;padding-left:0.7em}.et_button_icon_visible.woocommerce a.button.alt:after,.et_button_icon_visible.woocommerce-page a.button.alt:after,.et_button_icon_visible.woocommerce button.button.alt:after,.et_button_icon_visible.woocommerce-page button.button.alt:after,.et_button_icon_visible.woocommerce input.button.alt:after,.et_button_icon_visible.woocommerce-page input.button.alt:after,.et_button_icon_visible.woocommerce #respond input#submit.alt:after,.et_button_icon_visible.woocommerce-page #respond input#submit.alt:after,.et_button_icon_visible.woocommerce #content input.button.alt:after,.et_button_icon_visible.woocommerce-page #content input.button.alt:after,.et_button_icon_visible.woocommerce a.button:after,.et_button_icon_visible.woocommerce-page a.button:after,.et_button_icon_visible.woocommerce button.button:after,.et_button_icon_visible.woocommerce-page button.button:after,.et_button_icon_visible.woocommerce input.button:after,.et_button_icon_visible.woocommerce-page input.button:after,.et_button_icon_visible.woocommerce #respond input#submit:after,.et_button_icon_visible.woocommerce-page #respond input#submit:after,.et_button_icon_visible.woocommerce #content input.button:after,.et_button_icon_visible.woocommerce-page #content input.button:after{opacity:1;margin-left:0}.et_button_left.et_button_icon_visible.woocommerce a.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page a.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce button.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page button.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce input.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page input.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce #respond input#submit.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page #respond input#submit.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce #content input.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page #content input.button.alt:hover:after,.et_button_left.et_button_icon_visible.woocommerce a.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page a.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce button.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page button.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce input.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page input.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce #respond input#submit:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page #respond input#submit:hover:after,.et_button_left.et_button_icon_visible.woocommerce #content input.button:hover:after,.et_button_left.et_button_icon_visible.woocommerce-page #content input.button:hover:after{left:0.15em}.woocommerce a.button.alt:hover:after,.woocommerce-page a.button.alt:hover:after,.woocommerce button.button.alt:hover:after,.woocommerce-page button.button.alt:hover:after,.woocommerce input.button.alt:hover:after,.woocommerce-page input.button.alt:hover:after,.woocommerce #respond input#submit.alt:hover:after,.woocommerce-page #respond input#submit.alt:hover:after,.woocommerce #content input.button.alt:hover:after,.woocommerce-page #content input.button.alt:hover:after,.woocommerce a.button:hover:after,.woocommerce-page a.button:hover:after,.woocommerce button.button:hover:after,.woocommerce-page button.button:hover:after,.woocommerce input.button:hover:after,.woocommerce-page input.button:hover:after,.woocommerce #respond input#submit:hover:after,.woocommerce-page #respond input#submit:hover:after,.woocommerce #content input.button:hover:after,.woocommerce-page #content input.button:hover:after{opacity:1;margin-left:0}.et_button_left.woocommerce a.button.alt:after,.et_button_left.woocommerce-page a.button.alt:after,.et_button_left.woocommerce button.button.alt:after,.et_button_left.woocommerce-page button.button.alt:after,.et_button_left.woocommerce input.button.alt:after,.et_button_left.woocommerce-page input.button.alt:after,.et_button_left.woocommerce #respond input#submit.alt:after,.et_button_left.woocommerce-page #respond input#submit.alt:after,.et_button_left.woocommerce #content input.button.alt:after,.et_button_left.woocommerce-page #content input.button.alt:after,.et_button_left.woocommerce a.button:after,.et_button_left.woocommerce-page a.button:after,.et_button_left.woocommerce button.button:after,.et_button_left.woocommerce-page button.button:after,.et_button_left.woocommerce input.button:after,.et_button_left.woocommerce-page input.button:after,.et_button_left.woocommerce #respond input#submit:after,.et_button_left.woocommerce-page #respond input#submit:after,.et_button_left.woocommerce #content input.button:after,.et_button_left.woocommerce-page #content input.button:after{margin-left:0;left:1em}.et_button_left.woocommerce a.button.alt:hover,.et_button_left.woocommerce-page a.button.alt:hover,.et_button_left.woocommerce button.button.alt:hover,.et_button_left.woocommerce button.button.alt.disabled:hover,.et_button_left.woocommerce-page button.button.alt:hover,.et_button_left.woocommerce-page button.button.alt.disabled:hover,.et_button_left.woocommerce input.button.alt:hover,.et_button_left.woocommerce-page input.button.alt:hover,.et_button_left.woocommerce #respond input#submit.alt:hover,.et_button_left.woocommerce-page #respond input#submit.alt:hover,.et_button_left.woocommerce #content input.button.alt:hover,.et_button_left.woocommerce-page #content input.button.alt:hover,.et_button_left.woocommerce a.button:hover,.et_button_left.woocommerce-page a.button:hover,.et_button_left.woocommerce button.button:hover,.et_button_left.woocommerce-page button.button:hover,.et_button_left.woocommerce input.button:hover,.et_button_left.woocommerce-page input.button:hover,.et_button_left.woocommerce #respond input#submit:hover,.et_button_left.woocommerce-page #respond input#submit:hover,.et_button_left.woocommerce #content input.button:hover,.et_button_left.woocommerce-page #content input.button:hover,.et_button_icon_visible.et_button_left.woocommerce a.button.alt,.et_button_icon_visible.et_button_left.woocommerce-page a.button.alt,.et_button_icon_visible.et_button_left.woocommerce button.button.alt,.et_button_icon_visible.et_button_left.woocommerce button.button.alt.disabled,.et_button_icon_visible.et_button_left.woocommerce-page button.button.alt,.et_button_icon_visible.et_button_left.woocommerce-page button.button.alt.disabled,.et_button_icon_visible.et_button_left.woocommerce input.button.alt,.et_button_icon_visible.et_button_left.woocommerce-page input.button.alt,.et_button_icon_visible.et_button_left.woocommerce #respond input#submit.alt,.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit.alt,.et_button_icon_visible.et_button_left.woocommerce #content input.button.alt,.et_button_icon_visible.et_button_left.woocommerce-page #content input.button.alt,.et_button_icon_visible.et_button_left.woocommerce a.button,.et_button_icon_visible.et_button_left.woocommerce-page a.button,.et_button_icon_visible.et_button_left.woocommerce button.button,.et_button_icon_visible.et_button_left.woocommerce-page button.button,.et_button_icon_visible.et_button_left.woocommerce input.button,.et_button_icon_visible.et_button_left.woocommerce-page input.button,.et_button_icon_visible.et_button_left.woocommerce #respond input#submit,.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit,.et_button_icon_visible.et_button_left.woocommerce #content input.button,.et_button_icon_visible.et_button_left.woocommerce-page #content input.button{padding-left:2em;padding-right:0.7em}.et_button_left.woocommerce a.button.alt:hover:after,.et_button_left.woocommerce-page a.button.alt:hover:after,.et_button_left.woocommerce button.button.alt:hover:after,.et_button_left.woocommerce-page button.button.alt:hover:after,.et_button_left.woocommerce input.button.alt:hover:after,.et_button_left.woocommerce-page input.button.alt:hover:after,.et_button_left.woocommerce #respond input#submit.alt:hover:after,.et_button_left.woocommerce-page #respond input#submit.alt:hover:after,.et_button_left.woocommerce #content input.button.alt:hover:after,.et_button_left.woocommerce-page #content input.button.alt:hover:after,.et_button_left.woocommerce a.button:hover:after,.et_button_left.woocommerce-page a.button:hover:after,.et_button_left.woocommerce button.button:hover:after,.et_button_left.woocommerce-page button.button:hover:after,.et_button_left.woocommerce input.button:hover:after,.et_button_left.woocommerce-page input.button:hover:after,.et_button_left.woocommerce #respond input#submit:hover:after,.et_button_left.woocommerce-page #respond input#submit:hover:after,.et_button_left.woocommerce #content input.button:hover:after,.et_button_left.woocommerce-page #content input.button:hover:after,.et_button_icon_visible.et_button_left.woocommerce a.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce-page a.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce button.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce-page button.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce input.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce-page input.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce #respond input#submit.alt:after,.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit.alt:after,.et_button_icon_visible.et_button_left.woocommerce #content input.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce-page #content input.button.alt:after,.et_button_icon_visible.et_button_left.woocommerce a.button:after,.et_button_icon_visible.et_button_left.woocommerce-page a.button:after,.et_button_icon_visible.et_button_left.woocommerce button.button:after,.et_button_icon_visible.et_button_left.woocommerce-page button.button:after,.et_button_icon_visible.et_button_left.woocommerce input.button:after,.et_button_icon_visible.et_button_left.woocommerce-page input.button:after,.et_button_icon_visible.et_button_left.woocommerce #respond input#submit:after,.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit:after,.et_button_icon_visible.et_button_left.woocommerce #content input.button:after,.et_button_icon_visible.et_button_left.woocommerce-page #content input.button:after{left:0.15em}.woocommerce #respond input#submit:hover,.woocommerce-page #respond input#submit:hover{padding:0.3em 1em}.et_button_no_icon.woocommerce a.button.alt:after,.et_button_no_icon.woocommerce-page a.button.alt:after,.et_button_no_icon.woocommerce button.button.alt:after,.et_button_no_icon.woocommerce-page button.button.alt:after,.et_button_no_icon.woocommerce input.button.alt:after,.et_button_no_icon.woocommerce-page input.button.alt:after,.et_button_no_icon.woocommerce #respond input#submit.alt:after,.et_button_no_icon.woocommerce-page #respond input#submit.alt:after,.et_button_no_icon.woocommerce #content input.button.alt:after,.et_button_no_icon.woocommerce-page #content input.button.alt:after,.et_button_no_icon.woocommerce a.button:after,.et_button_no_icon.woocommerce-page a.button:after,.et_button_no_icon.woocommerce button.button:after,.et_button_no_icon.woocommerce-page button.button:after,.et_button_no_icon.woocommerce input.button:after,.et_button_no_icon.woocommerce-page input.button:after,.et_button_no_icon.woocommerce #respond input#submit:after,.et_button_no_icon.woocommerce-page #respond input#submit:after,.et_button_no_icon.woocommerce #content input.button:after,.et_button_no_icon.woocommerce-page #content input.button:after{display:none}.et_button_no_icon.woocommerce a.button.alt,.et_button_no_icon.woocommerce-page a.button.alt,.et_button_no_icon.woocommerce button.button.alt,.et_button_no_icon.woocommerce button.button.alt.disabled,.et_button_no_icon.woocommerce-page button.button.alt,.et_button_no_icon.woocommerce-page button.button.alt.disabled,.et_button_no_icon.woocommerce input.button.alt,.et_button_no_icon.woocommerce-page input.button.alt,.et_button_no_icon.woocommerce #respond input#submit.alt,.et_button_no_icon.woocommerce-page #respond input#submit.alt,.et_button_no_icon.woocommerce #content input.button.alt,.et_button_no_icon.woocommerce-page #content input.button.alt,.et_button_no_icon.woocommerce a.button,.et_button_no_icon.woocommerce-page a.button,.et_button_no_icon.woocommerce button.button,.et_button_no_icon.woocommerce-page button.button,.et_button_no_icon.woocommerce input.button,.et_button_no_icon.woocommerce-page input.button,.et_button_no_icon.woocommerce #respond input#submit,.et_button_no_icon.woocommerce-page #respond input#submit,.et_button_no_icon.woocommerce #content input.button,.et_button_no_icon.woocommerce-page #content input.button,.et_button_no_icon.woocommerce a.button.alt:hover,.et_button_no_icon.woocommerce-page a.button.alt:hover,.et_button_no_icon.woocommerce button.button.alt:hover,.et_button_no_icon.woocommerce button.button.alt.disabled:hover,.et_button_no_icon.woocommerce-page button.button.alt:hover,.et_button_no_icon.woocommerce-page button.button.alt.disabled:hover,.et_button_no_icon.woocommerce input.button.alt:hover,.et_button_no_icon.woocommerce-page input.button.alt:hover,.et_button_no_icon.woocommerce #respond input#submit.alt:hover,.et_button_no_icon.woocommerce-page #respond input#submit.alt:hover,.et_button_no_icon.woocommerce #content input.button.alt:hover,.et_button_no_icon.woocommerce-page #content input.button.alt:hover,.et_button_no_icon.woocommerce a.button:hover,.et_button_no_icon.woocommerce-page a.button:hover,.et_button_no_icon.woocommerce button.button:hover,.et_button_no_icon.woocommerce-page button.button:hover,.et_button_no_icon.woocommerce input.button:hover,.et_button_no_icon.woocommerce-page input.button:hover,.et_button_no_icon.woocommerce #respond input#submit:hover,.et_button_no_icon.woocommerce-page #respond input#submit:hover,.et_button_no_icon.woocommerce #content input.button:hover,.et_button_no_icon.woocommerce-page #content input.button:hover,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce a.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page a.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce button.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce button.button.alt.disabled,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page button.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page button.button.alt.disabled,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce input.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page input.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce #respond input#submit.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce #content input.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page #content input.button.alt,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce a.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page a.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce button.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page button.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce input.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page input.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce #respond input#submit,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page #respond input#submit,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce #content input.button,.et_button_no_icon.et_button_icon_visible.et_button_left.woocommerce-page #content input.button,.et_button_no_icon.et_button_left.woocommerce a.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce-page a.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce button.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce button.button.alt.disabled:hover,.et_button_no_icon.et_button_left.woocommerce-page button.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce-page button.button.alt.disabled:hover,.et_button_no_icon.et_button_left.woocommerce input.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce-page input.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce #respond input#submit.alt:hover,.et_button_no_icon.et_button_left.woocommerce-page #respond input#submit.alt:hover,.et_button_no_icon.et_button_left.woocommerce #content input.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce-page #content input.button.alt:hover,.et_button_no_icon.et_button_left.woocommerce a.button:hover,.et_button_no_icon.et_button_left.woocommerce-page a.button:hover,.et_button_no_icon.et_button_left.woocommerce button.button:hover,.et_button_no_icon.et_button_left.woocommerce-page button.button:hover,.et_button_no_icon.et_button_left.woocommerce input.button:hover,.et_button_no_icon.et_button_left.woocommerce-page input.button:hover,.et_button_no_icon.et_button_left.woocommerce #respond input#submit:hover,.et_button_no_icon.et_button_left.woocommerce-page #respond input#submit:hover,.et_button_no_icon.et_button_left.woocommerce #content input.button:hover,.et_button_no_icon.et_button_left.woocommerce-page #content input.button:hover,.woocommerce input.button,.woocommerce input.button:hover{padding:0.3em 1em !important}.et_button_custom_icon.woocommerce a.button.alt:after,.et_button_custom_icon.woocommerce-page a.button.alt:after,.et_button_custom_icon.woocommerce button.button.alt:after,.et_button_custom_icon.woocommerce-page button.button.alt:after,.et_button_custom_icon.woocommerce input.button.alt:after,.et_button_custom_icon.woocommerce-page input.button.alt:after,.et_button_custom_icon.woocommerce #respond input#submit.alt:after,.et_button_custom_icon.woocommerce-page #respond input#submit.alt:after,.et_button_custom_icon.woocommerce #content input.button.alt:after,.et_button_custom_icon.woocommerce-page #content input.button.alt:after,.et_button_custom_icon.woocommerce a.button:after,.et_button_custom_icon.woocommerce-page a.button:after,.et_button_custom_icon.woocommerce button.button:after,.et_button_custom_icon.woocommerce-page button.button:after,.et_button_custom_icon.woocommerce input.button:after,.et_button_custom_icon.woocommerce-page input.button:after,.et_button_custom_icon.woocommerce #respond input#submit:after,.et_button_custom_icon.woocommerce-page #respond input#submit:after,.et_button_custom_icon.woocommerce #content input.button:after,.et_button_custom_icon.woocommerce-page #content input.button:after{line-height:1.7em}.et_button_custom_icon.woocommerce a.button.alt:hover:after,.et_button_custom_icon.woocommerce-page a.button.alt:hover:after,.et_button_custom_icon.woocommerce button.button.alt:hover:after,.et_button_custom_icon.woocommerce-page button.button.alt:hover:after,.et_button_custom_icon.woocommerce input.button.alt:hover:after,.et_button_custom_icon.woocommerce-page input.button.alt:hover:after,.et_button_custom_icon.woocommerce #respond input#submit.alt:hover:after,.et_button_custom_icon.woocommerce-page #respond input#submit.alt:hover:after,.et_button_custom_icon.woocommerce #content input.button.alt:hover:after,.et_button_custom_icon.woocommerce-page #content input.button.alt:hover:after,.et_button_custom_icon.woocommerce a.button:hover:after,.et_button_custom_icon.woocommerce-page a.button:hover:after,.et_button_custom_icon.woocommerce button.button:hover:after,.et_button_custom_icon.woocommerce-page button.button:hover:after,.et_button_custom_icon.woocommerce input.button:hover:after,.et_button_custom_icon.woocommerce-page input.button:hover:after,.et_button_custom_icon.woocommerce #respond input#submit:hover:after,.et_button_left.woocommerce-page #respond input#submit:hover:after,.et_button_custom_icon.woocommerce #content input.button:hover:after,.et_button_custom_icon.woocommerce-page #content input.button:hover:after,.et_button_custom_icon.et_button_icon_visible.woocommerce a.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page a.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce button.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page button.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce input.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page input.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce #respond input#submit.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page #respond input#submit.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce #content input.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page #content input.button.alt:after,.et_button_custom_icon.et_button_icon_visible.woocommerce a.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page a.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce button.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page button.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce input.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page input.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce #respond input#submit:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page #respond input#submit:after,.et_button_custom_icon.et_button_icon_visible.woocommerce #content input.button:after,.et_button_custom_icon.et_button_icon_visible.woocommerce-page #content input.button:after{margin-left:.3em}p.demo_store{position:fixed !important;bottom:0 !important;top:auto !important;z-index:100000}.entry-content address,.comment-content address,body.et-pb-preview #main-content .container address{line-height:24px;margin-bottom:12px}.woocommerce-info a{color:#fff !important}.shop_table .actions .submit{float:right}.shop_table .actions .checkout-button{clear:both}.col2-set.addresses{margin-top:20px}table.shop_table{margin-bottom:30px !important}.woocommerce-message a.button.wc-forward{border:none;background:#fff}.woocommerce-message a.button.wc-forward:hover{border:none;background:#fff}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:15px;font-size:14px;border-radius:3px}p.woocommerce-result-count{font-weight:500;font-size:14px;color:#999;padding-bottom:40px}.entry-summary .entry-title{padding-bottom:14px !important}.et_pb_widget .buttons a{margin-top:10px !important}.product_meta{border-width:0;border-style:solid;border-color:#dadada;border-top:1px solid #dadada;font-size:14px;color:#666;padding-top:6px}.posted_in a,.tagged_as a{font-weight:500;color:#2ea3f2;text-decoration:none}.product .related h2{font-size:26px !important;padding-bottom:16px}.et_fixed_nav.et_transparent_nav.et-db.et_full_width_page #left-area>.woocommerce-notices-wrapper{opacity:0}.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{-webkit-box-shadow:none !important;box-shadow:none !important;margin:0 0 9px !important}.woocommerce ul.products li.product h3,.woocommerce-page ul.products li.product h3{padding:.3em 0}.woocommerce ul.products li.product .onsale,.woocommerce-page ul.products li.product .onsale{left:10px !important;margin:0 !important;right:auto !important}.woocommerce span.onsale,.woocommerce-page span.onsale{z-index:2;background:#ef8f61 !important;border-radius:3px !important;-webkit-box-shadow:none !important;box-shadow:none !important;color:#fff;font-size:20px;font-weight:500 !important;left:10px !important;line-height:inherit !important;margin:0 !important;min-height:0 !important;min-width:0 !important;padding:6px 18px !important;position:absolute;text-shadow:none !important;top:10px !important}.woocommerce div.product div.images img,.woocommerce-page div.product div.images img,.woocommerce #content div.product div.images img,.woocommerce-page #content div.product div.images img{-webkit-box-shadow:none !important;box-shadow:none !important}.woocommerce div.product div.images div.thumbnails,.woocommerce-page div.product div.images div.thumbnails,.woocommerce #content div.product div.images div.thumbnails,.woocommerce-page #content div.product div.images div.thumbnails{padding-top:20px !important}.woocommerce .woocommerce-pagination ul.page-numbers,.woocommerce-page .woocommerce-pagination ul.page-numbers{list-style:none !important;padding:0 !important}.woocommerce .products .star-rating,.woocommerce-page .products .star-rating{margin:4px 0 .3em 0 !important}.woocommerce .star-rating:before,.woocommerce-page .star-rating:before{content:"\53\53\53\53\53" !important;color:#ccc !important}.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price,.woocommerce ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{color:#666 !important;font-size:14px;margin:0 !important}.entry-summary p.price span{font-size:26px !important}.entry-summary p.price del{color:#999;margin-right:10px}.cart_table_item .quantity{margin:0 !important;width:100px !important}#main-content .cart-subtotal td{border-top:none}.woocommerce-checkout #main-content .cart-subtotal td{border-top:1px solid #eee}table.cart th,#main-content table.cart th,table.cart td,#main-content table.cart td,table.cart tr,#main-content table.cart tr,#content-area table tr,#content-area table td,#content-area table th{padding:.857em 0.587em;max-width:100%}table.cart td.actions .button.alt,#main-content table.cart td.actions .button.alt{margin:19px 0 9px}table.cart td.actions .checkout-button{margin:0 !important}.orderby,.woocommerce div.product form.cart .variations td select{background-color:#ececec;border:none;border-radius:3px;border-width:0;color:#666 !important;font-size:12px;padding:4px 8px;font-weight:500;font-family:'Open Sans', Arial, sans-serif}.cart_totals h2,.shipping_calculator h2{margin-bottom:10px}.woocommerce div.product form.cart,.woocommerce-page div.product form.cart,.woocommerce #content div.product form.cart,.woocommerce-page #content div.product form.cart{margin:24px 0 39px}.woocommerce div.product .et_pb_wc_add_to_cart:last-child form.cart,.woocommerce-page div.product .et_pb_wc_add_to_cart:last-child form.cart,.woocommerce #content div.product .et_pb_wc_add_to_cart:last-child form.cart,.woocommerce-page #content div.product .et_pb_wc_add_to_cart:last-child form.cart{margin-bottom:0 !important}.woocommerce div.product form.cart div.quantity,.woocommerce-page div.product form.cart div.quantity,.woocommerce #content div.product form.cart div.quantity,.woocommerce-page #content div.product form.cart div.quantity{margin:0 20px 0 0 !important;width:auto;overflow:hidden}.woocommerce .quantity input.qty,.woocommerce-page .quantity input.qty,.woocommerce #content .quantity input.qty,.woocommerce-page #content .quantity input.qty,.woocommerce-cart table.cart td.actions .coupon .input-text{font-weight:500 !important;font-size:20px !important;color:#fff !important;border-radius:3px;-webkit-box-shadow:none !important;box-shadow:none !important;border:none !important;background-color:rgba(0,0,0,0.2) !important;height:49px}.woocommerce-cart table.cart td.actions .coupon .input-text{width:150px;padding:6px 12px;margin-right:10px}.woocommerce-cart table.cart td.actions .coupon .input-text::input-placeholder{color:#fff}.woocommerce-cart table.cart td.actions .coupon .input-text::-webkit-input-placeholder{color:#fff}.woocommerce-cart table.cart td.actions .coupon .input-text:-moz-placeholder{color:#fff}.woocommerce-cart table.cart td.actions .coupon .input-text::-moz-placeholder{color:#fff}.woocommerce-cart table.cart td.actions .coupon .input-text:-ms-input-placeholder{color:#fff}.woocommerce .quantity .plus,.woocommerce-page .quantity .plus,.woocommerce #content .quantity .plus,.woocommerce-page #content .quantity .plus,.woocommerce .quantity .minus,.woocommerce-page .quantity .minus,.woocommerce #content .quantity .minus,.woocommerce-page #content .quantity .minus{background:#fff !important;-webkit-box-shadow:none !important;box-shadow:none !important;color:#BCC8C9 !important;font-size:20px !important;font-weight:300 !important;height:24px !important;text-decoration:none !important;text-shadow:none !important;width:30px !important;border-bottom-left-radius:0 !important;border-top-left-radius:0 !important;border:1px solid #BCC8C9 !important}.woocommerce #content .quantity,.woocommerce .quantity,.woocommerce-page #content .quantity,.woocommerce-page .quantity{width:100px;margin:0}.woocommerce div.product form.cart .variations td{padding:0 20px 20px 0 !important;max-width:none !important;line-height:1.3em}.woocommerce div.product form.cart .variations td:last-child{padding-right:0 !important}.woocommerce ul.cart_list li,.woocommerce ul.product_list_widget li,.woocommerce-page ul.cart_list li,.woocommerce-page ul.product_list_widget li{padding:6px 0}.woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a{padding:0.3em 2em 0.3em 1.5em}.woocommerce div.product .woocommerce-tabs ul.tabs:before,.woocommerce-page div.product .woocommerce-tabs ul.tabs:before,.woocommerce #content div.product .woocommerce-tabs ul.tabs:before,.woocommerce-page #content div.product .woocommerce-tabs ul.tabs:before{border-bottom-color:#d9d9d9}body.woocommerce .woocommerce-tabs{border:1px solid #d9d9d9;margin:30px 0 45px}body.woocommerce div.product .woocommerce-tabs ul.tabs,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs{margin:0 !important;padding:0 !important;background:#f4f4f4}body.woocommerce div.product .woocommerce-tabs ul.tabs li,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li,body.woocommerce div.product .woocommerce-tabs ul.tabs li.active,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active{background:none;border-radius:0;border:none;background:#f4f4f4;border-right:1px solid #d9d9d9;padding:0;-webkit-box-shadow:none;box-shadow:none;margin:0 -2px}body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active{background:#fff !important}body.woocommerce div.product .woocommerce-tabs ul.tabs li a,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li a{color:#666666 !important;padding:4px 22px !important}body.woocommerce div.product .woocommerce-tabs ul.tabs li:before,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li:before,body.woocommerce div.product .woocommerce-tabs ul.tabs li:after,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li:after{display:none}body.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active a{color:#000 !important}body.woocommerce div.product .woocommerce-tabs .panel,body.woocommerce #content-area div.product .woocommerce-tabs .panel{padding:30px;margin:0}#reviews .commentlist{padding-bottom:0 !important}.woocommerce #reviews #comments ol.commentlist li,.woocommerce-page #reviews #comments ol.commentlist li{margin-bottom:40px !important}.woocommerce #reviews #comments ol.commentlist li .comment-text,.woocommerce-page #reviews #comments ol.commentlist li .comment-text{border:none !important;padding:0 !important;margin:0 0 0 100px !important}.woocommerce #reviews #comments ol.commentlist li img.avatar,.woocommerce-page #reviews #comments ol.commentlist li img.avatar{width:auto !important;padding:0 !important;border:none}.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta,.woocommerce-page #reviews #comments ol.commentlist li .comment-text p.meta{font-size:inherit !important;margin:0 0 2px !important;padding:0 !important}.woocommerce #reviews .commentlist .star-rating{float:none !important;margin-bottom:6px !important}.woocommerce #reviews #comments h2,.woocommerce-page #reviews #comments h2,.woocommerce #reviews #comments h1,.woocommerce-page #reviews #comments h1,.woocommerce #reviews #comments h3,.woocommerce-page #reviews #comments h3,.woocommerce #reviews #comments h4,.woocommerce-page #reviews #comments h4,.woocommerce #reviews #comments h5,.woocommerce-page #reviews #comments h5,.woocommerce #reviews #comments h6,.woocommerce-page #reviews #comments h6{margin-bottom:30px !important}.woocommerce-message,.woocommerce-error,.woocommerce-info{border:none !important;-webkit-box-shadow:none !important;box-shadow:none !important;text-shadow:none !important;font-size:18px !important;color:#fff !important;padding:15px !important}.woocommerce-message:before,.woocommerce-error:before,.woocommerce-info:before{display:none !important;color:#FFF !important}.woocommerce-page #reviews #commentform,.woocommerce-page #review_form #respond p.form-submit{padding-bottom:0;margin-bottom:0}.woocommerce .pswp{z-index:999999}div.pp_pic_holder{z-index:100001}div.pp_overlay{z-index:100000}figure.woocommerce-product-gallery__wrapper{margin:0}.woocommerce div.product div.images .flex-control-thumbs{margin-top:6.6666%}.woocommerce div.product div.images .flex-control-thumbs li{width:20%;margin-right:6.6666%;margin-bottom:6.6666%}.woocommerce div.product div.images .flex-control-thumbs li:nth-of-type(4n){margin-right:0}.woocommerce div.product div.images.woocommerce-product-gallery{margin-bottom:0}.woocommerce div.product div.images .flex-control-thumbs li img{-webkit-transition:opacity .5s ease;transition:opacity .5s ease}@media all and (min-width: 981px){.et_full_width_page.woocommerce-page ul.products li.product:nth-child(4n),.et_pb_row .et_full_width_page.woocommerce-page ul.products li.product:nth-child(4n),.single.et_left_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n),.archive.et_left_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n),.et_pb_row .et_left_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n),.single.et_right_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n),.archive.et_right_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n),.et_pb_row .et_right_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n){margin-right:0}.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product:nth-child(3n),.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product:nth-child(3n),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product:nth-child(3n),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product:nth-child(3n),.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(3n),.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product:nth-child(3n),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(3n),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product:nth-child(3n),.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(3n):not(.last),.single.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product:nth-child(3n):not(.last),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(3n):not(.last),.single.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product:nth-child(3n):not(.last){margin-right:3.8%}.et_full_width_page.woocommerce-page ul.products li.product:nth-child(4n+1),.et_left_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n+1),.et_right_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n+1){clear:both}.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product:nth-child(3n+1),.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product:nth-child(3n+1),.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product:nth-child(3n+1),ul.products.columns-4 li.product:nth-child(3n+1) .et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells,.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(3n+1),.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product:nth-child(3n+1),.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(3n+1),ul.products.columns-5 li.product:nth-child(3n+1) .et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells,.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(3n+1):not(.first),.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product:nth-child(3n+1):not(.first),.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(3n+1):not(.first),ul.products.columns-6 li.product:nth-child(3n+1):not(.first) .et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells{clear:none}}@media all and (max-width: 980px){.et_full_width_page.woocommerce-page ul.products li.product:nth-child(4n+1){clear:none}.woocommerce .cart-collaterals>div,.woocommerce .cart-collaterals>form{width:100% !important;float:none !important}.shop_table .coupon{margin-bottom:25px !important}.checkout .form-row,.checkout .col-1,.checkout .col-2{float:none !important;width:auto !important}.checkout .col-1,.checkout .col-2{margin-bottom:25px !important}}@media all and (max-width: 768px){table.cart th,#main-content table.cart th,table.cart td,#main-content table.cart td,table.cart tr,#main-content table.cart tr,.woocommerce-cart #content-area table tr,.woocommerce-cart #content-area table td,.woocommerce-cart #content-area table th{max-width:100%}table.cart tr,#main-content table.cart tr,#content-area table tr{padding:0}.woocommerce .cart_item .quantity{width:auto}.woocommerce-cart table.cart td.actions .coupon .input-text{width:50%;margin-right:0}.woocommerce-cart table.cart td.actions .button[name="update_cart"]{width:100%}}@media all and (max-width: 767px){body.woocommerce div.product .woocommerce-tabs ul.tabs li,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li,body.woocommerce div.product .woocommerce-tabs ul.tabs li.active,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li.active{display:block !important;border-bottom:1px solid #E0DADF !important}body.woocommerce div.product .woocommerce-tabs ul.tabs li a,body.woocommerce #content-area div.product .woocommerce-tabs ul.tabs li a{display:block !important}.woocommerce .form-row{float:none !important;width:auto !important}}@media all and (max-width: 479px){table.cart th,#content table.cart th,table.cart td,#content table.cart td,table.cart tr,#content table.cart tr{padding:.857em 0.287em !important}.woocommerce-cart table.cart td.actions .coupon .input-text{margin-bottom:10px}.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .button{width:100%}} + diff --git a/css/dynamic-assets/wp-page_navi.css b/css/dynamic-assets/wp-page_navi.css new file mode 100644 index 0000000..e5ec5aa --- /dev/null +++ b/css/dynamic-assets/wp-page_navi.css @@ -0,0 +1,2 @@ +.wp-pagenavi{text-align:right;border-top:1px solid #e2e2e2;padding-top:13px;clear:both;margin-bottom:30px}.wp-pagenavi a,.wp-pagenavi span{color:#666;margin:0 5px;text-decoration:none;font-size:14px !important;font-weight:400 !important;border:none !important}.wp-pagenavi .nextpostslink,.wp-pagenavi .previouspostslink{color:#999 !important}.wp-pagenavi span.current,.wp-pagenavi a:hover{color:#2ea3f2 !important}.wp-pagenavi span.current,.wp-pagenavi a:hover{color:#2EA3F2}.et_pb_portfolio.et_pb_section_parallax .wp-pagenavi,.et_pb_portfolio.et_pb_section_video .wp-pagenavi,.et_pb_portfolio_grid.et_pb_section_parallax .wp-pagenavi,.et_pb_portfolio_grid.et_pb_section_video .wp-pagenavi{position:relative}.et_pb_text_align_left .wp-pagenavi{text-align:left}.et_pb_text_align_center .wp-pagenavi{text-align:center}.et_pb_text_align_right .wp-pagenavi{text-align:right}.et_pb_text_align_justified .wp-pagenavi{text-align:justify}@media all and (max-width: 980px){.et_pb_text_align_left-tablet .wp-pagenavi{text-align:left}.et_pb_text_align_center-tablet .wp-pagenavi{text-align:center}.et_pb_text_align_right-tablet .wp-pagenavi{text-align:right}.et_pb_text_align_justified-tablet .wp-pagenavi{text-align:justify}}@media all and (max-width: 767px){.et_pb_text_align_left-phone .wp-pagenavi{text-align:left}.et_pb_text_align_center-phone .wp-pagenavi{text-align:center}.et_pb_text_align_right-phone .wp-pagenavi{text-align:right}.et_pb_text_align_justified-phone .wp-pagenavi{text-align:justify}} + diff --git a/css/editor-blocks.css b/css/editor-blocks.css new file mode 100644 index 0000000..2ba8b9e --- /dev/null +++ b/css/editor-blocks.css @@ -0,0 +1 @@ +.editor-post-title__block .editor-post-title__input{font-family:Open Sans,Arial,sans-serif;font-size:30px;color:#333;line-height:1.7em;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.block-editor-default-block-appender textarea.block-editor-default-block-appender__content,.editor-styles-wrapper,div.editor-styles-wrapper button,div.editor-styles-wrapper input,div.editor-styles-wrapper select,div.editor-styles-wrapper textarea{font-family:Open Sans,Arial,sans-serif;font-size:14px;color:#666;line-height:1.7em;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.block-editor-default-block-appender textarea.block-editor-default-block-appender__content{color:rgba(14,28,46,.62)}.wp-block{max-width:795px}#et-pb-motion-effects-offset-tracker{visibility:hidden!important;opacity:0;position:absolute;top:0;left:0} \ No newline at end of file diff --git a/css/editor-style.css b/css/editor-style.css new file mode 100644 index 0000000..db5a7b5 --- /dev/null +++ b/css/editor-style.css @@ -0,0 +1 @@ +body,body.wp-autoresize{font-family:Open Sans,Arial,sans-serif;font-size:14px;color:#666;background-color:#fff;line-height:1.7em;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:10px 20px!important}a{color:#2ea3f2}a,a:hover{text-decoration:none}p{padding-bottom:1em}p:last-of-type{padding-bottom:0}strong{font-weight:700}cite,em,i{font-style:italic}code,pre{font-family:Courier New,monospace;margin-bottom:10px}ins{text-decoration:none}sub,sup{height:0;line-height:1;position:relative;vertical-align:baseline}sup{bottom:.8em}sub{top:.3em}dl{margin:0 0 1.5em}dl dt{font-weight:700}dd{margin-left:1.5em}blockquote{margin:20px 0 30px;border-left:5px solid #2ea3f2;padding-left:20px}blockquote p{padding-bottom:0}embed,iframe,object,video{max-width:100%}h1,h2,h3,h4,h5,h6{color:#333;padding-bottom:10px;line-height:1em;font-weight:500}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:inherit}h1{font-size:30px}h2{font-size:26px}h3{font-size:22px}h4{font-size:18px}h5{font-size:16px}h6{font-size:14px}input{-webkit-appearance:none}input[type=checkbox]{-webkit-appearance:checkbox}input[type=radio]{-webkit-appearance:radio}input.text,input.title,input[type=text],select,textarea{background-color:#fff;border:1px solid #bbb;padding:2px;color:#4e4e4e}input.text:focus,input.title:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#2d3940;color:#3e3e3e}input.text,input.title,input[type=text],select,textarea{margin:0}textarea{padding:4px} \ No newline at end of file diff --git a/css/theme-customizer-controls.css b/css/theme-customizer-controls.css new file mode 100644 index 0000000..770133b --- /dev/null +++ b/css/theme-customizer-controls.css @@ -0,0 +1,6 @@ +.et-customizer-hidden{display:none!important}h1,h2,h3,h4,h5,h6{text-decoration:none!important;font-style:normal!important;text-transform:none!important;letter-spacing:0!important;font-family:Open Sans,sans-serif!important}.customize-control,.customize-control-image .actions{margin-bottom:0}.customize-control.customize-control-checkbox .customize-inside-control-row{margin-left:0;padding-top:0;padding-bottom:0}.customize-control-nav_menu_auto_add input{display:block;float:left;margin-top:7.5px!important;margin-bottom:7.5px!important}.customize-control-nav_menu_auto_add input label{margin-left:0}.preview-mobile #customize-preview.wp-full-overlay-main,.preview-tablet #customize-preview.wp-full-overlay-main{background-color:transparent;max-width:100%;max-height:100%;text-align:center}#customize-preview iframe{position:relative}#customize-preview.wp-full-overlay-main.iframe-ready.et_divi_phone,#customize-preview.wp-full-overlay-main.iframe-ready.et_divi_tablet{-webkit-box-shadow:inset 0 0 300px -86px #000;box-shadow:inset 0 0 300px -86px #000;text-align:center;background-color:#3f3f3f}#customize-preview.et_divi_phone iframe,#customize-preview.et_divi_tablet iframe{box-sizing:border-box;-webkit-box-sizing:border-box;height:80%;border-radius:20px;-webkit-border-radius:20px;border:10px solid #d7d7d7;margin-top:10%;width:90%;max-width:479px!important;box-shadow:0 0 100px rgba(0,0,0,.8);-webkit-box-shadow:0 0 100px rgba(0,0,0,.8);-webkit-transition:all .5s;transition:all .5s;-webkit-animation:zoomIn .6s;animation:zoomIn .6s}#customize-preview.et_divi_tablet iframe,.preview-tablet #customize-preview iframe{max-width:793px!important}.preview-mobile #customize-preview iframe{max-width:479px!important}#customize-preview.et_divi_phone iframe::-webkit-scrollbar,#customize-preview.et_divi_tablet iframe::-webkit-scrollbar{width:5px!important}#customize-preview.et_divi_phone iframe::-webkit-scrollbar-track,#customize-preview.et_divi_tablet iframe::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3)!important;width:20px!important;background-color:#d7d7d7}#customize-preview.et_divi_phone iframe::-webkit-scrollbar-thumb,#customize-preview.et_divi_tablet iframe::-webkit-scrollbar-thumb{border-radius:0!important;background:#3f3f3f!important}#customize-preview.et_divi_phone iframe::-webkit-thumb:window-inactive,#customize-preview.et_divi_tablet iframe::-webkit-thumb:window-inactive{background:#d7d7d7!important}#customize-header-actions{z-index:100000}span.et_divi_reset_slider{width:16px;height:16px;margin-left:5px;display:inline-block;position:relative}span.et_divi_reset_slider:after{font-family:ETmodules;content:"\e61f";font-size:16px;line-height:1em;color:#d4d4d4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transition:background .5s;transition:background .5s}span.et_divi_reset_slider:hover:after{color:#a7a7a7}label{font-size:12px;position:relative}input,input[type=checkbox],input[type=text],select{width:100%;margin-left:0;border-radius:4px;border:none;-webkit-box-shadow:none;box-shadow:none;background:#f4f4f4;padding:5px 10px;font-size:14px;color:#32373c}.menu-item-settings input,.menu-item-settings input[type=checkbox],.menu-item-settings input[type=text],.menu-item-settings select{background:#fff}input:focus,select:focus{-webkit-box-shadow:none!important;box-shadow:none!important;outline:none!important;background:#eaeaea;-webkit-transition:background .5s;transition:background .5s}.et_filter_text{background-color:#f4f4f4!important;border:none!important}.wp-full-overlay-header input{width:auto}input[type=range]{-webkit-transition:background .5s;transition:background .5s;-webkit-appearance:none;background-color:#f4f4f4;height:5px;width:165px;padding:0}input[type=range]:focus{-webkit-box-shadow:none!important;box-shadow:none!important;outline:none!important}input[type=range]:hover{background-color:#caebff}input[type=range]::-webkit-slider-thumb{-webkit-border-radius:15px}input[type=range]::-moz-range-track{border:inherit;background:transparent}input[type=range]::-ms-track{border:inherit;color:transparent;background:transparent}input[type=range]::-ms-fill-lower,input[type=range]::-ms-fill-upper{background:transparent}input[type=range]::-ms-tooltip{display:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;border:none;border-radius:15px;background-color:#2e86b9}input[type=range]::-moz-range-thumb{width:15px;height:15px;border:none;border-radius:15px;background-color:#2e86b9}input[type=range]::-ms-thumb{width:15px;height:15px;border-radius:15px;border:0;background-color:#2e86b9}.customize-control input.et-pb-range-input{width:60px;text-align:center;margin-left:4px;border-radius:4px;border:none;-webkit-box-shadow:none;box-shadow:none;background:#f4f4f4;padding:3px;font-size:11px;font-weight:800;color:#555;-moz-appearance:textfield}.customize-control input.et-pb-range-input:focus,.customize-control input.et-pb-range-input:hover{background:#eaeaea;-webkit-transition:background .5s;transition:background .5s}input.et-pb-range-input::-webkit-inner-spin-button,input.et-pb-range-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=checkbox]{margin-right:10px;margin-top:0;width:25px;height:25px}input[type=checkbox]:checked:before{color:#2e86b9;float:none;margin:-4px 0 0 -5px}.customize-control-title{margin-top:15px;text-transform:uppercase;font-size:12px}.customize-control-range .customize-control-title{margin-bottom:-8px}.customize-control-checkbox,.customize-control-nav_menu_auto_add .customize-inside-control-row,.customize-control-nav_menu_auto_add>label{font-weight:600;font-size:12px;text-transform:uppercase;border:1px solid #eee;background-color:#fdfdfd;margin-left:0!important;margin-bottom:-1px!important;padding:6px 10px;border-radius:2px;box-sizing:border-box;-webkit-box-sizing:border-box}.customize-control-checkbox label{padding:0;margin-left:0}.customize-control button.button{width:100%;border:none;-webkit-box-shadow:none;box-shadow:none;background-color:#2e86b9;color:#fff;height:30px}.customize-control button.button:hover{color:#fff;background-color:#186ea0;transition:all .5s ease-in-out;-webkit-transition:all .5s ease-in-out}.customize-control button.remove-button{margin-bottom:10px}.customize-control-text input,.customize-control select{background:#fdfdfd;border:1px solid #eee;height:35px}.customize-control-image .inner{line-height:30px;top:0}.customize-control-image .current .container{min-height:30px}.wp-color-result{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:0 0 0 40px;box-shadow:inset 0 0 1px rgba(0,0,0,.5)!important;-webkit-box-shadow:inset 0 0 1px rgba(0,0,0,.5)!important;border:none;height:30px;border-radius:4px;margin:0}.wp-color-result:after,.wp-core-ui .button.wp-color-result .wp-color-result-text{background-color:rgba(0,0,0,.2);color:#fff;height:30px;line-height:30px;border:none;-webkit-box-shadow:none;box-shadow:none;font-size:12px;border-radius:0 4px 4px 0;padding:0 15px}.wp-color-result:focus:after,.wp-color-result:hover,.wp-color-result:hover:after{color:#fff;border:none}.wp-picker-container .iris-picker{margin:15px 0 0}.wp-picker-container .iris-palette-container,.wp-picker-container .iris-square{margin-left:-1px}.wp-picker-container,.wp-picker-input-wrap{width:100%;border-radius:4px;overflow:hidden}.wp-core-ui .wp-picker-clear,.wp-core-ui .wp-picker-default,.wp-picker-container input[type=text].wp-color-picker{width:45%!important;vertical-align:bottom;margin-top:10px}.wp-core-ui .wp-picker-clear,.wp-core-ui .wp-picker-default{margin-left:10%}.wp-core-ui button.wp-color-result+.wp-picker-input-wrap input[type=text].wp-color-picker{width:100%!important}.wp-core-ui button.wp-color-result+.wp-picker-input-wrap>label{width:45%}.wp-customizer .wp-picker-active .wp-picker-input-wrap .wp-picker-clear,.wp-customizer .wp-picker-active .wp-picker-input-wrap .wp-picker-default{display:inline-block!important;margin-left:10%}.wp-customizer .wp-color-result:after{background-color:rgba(0,0,0,.2);color:#fff;height:30px;line-height:30px;content:attr(title);display:block;font-size:12px;border-radius:0 4px 4px 0;padding:0 15px;position:relative;right:0;text-align:center;top:0;text-transform:capitalize;font-weight:400;z-index:9}.wp-customizer .wp-color-result-text{display:none}.wp-color-result.wp-picker-open:after{content:attr(data-current)}.wp-core-ui .wp-picker-container .wp-color-result.button{height:30px!important;border-radius:3px;padding:0 0 0 40px!important}.wp-core-ui .color-alpha{z-index:1;border-radius:3px}.wp-full-overlay-sidebar-content{z-index:10000}.accordion-section-content::-webkit-scrollbar,.et-pb-main-settings::-webkit-scrollbar,.wp-full-overlay-sidebar-content::-webkit-scrollbar,ul.et_font_icon::-webkit-scrollbar{width:5px!important}.accordion-section-content::-webkit-scrollbar-track,.et-pb-main-settings::-webkit-scrollbar-track,.wp-full-overlay-sidebar-content::-webkit-scrollbar-track,ul.et_font_icon::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3)!important;width:20px!important}.accordion-section-content::-webkit-scrollbar-thumb,.et-pb-main-settings::-webkit-scrollbar-thumb,.wp-full-overlay-sidebar-content::-webkit-scrollbar-thumb,ul.et_font_icon::-webkit-scrollbar-thumb{border-radius:0!important;background:#d8d8d8!important}.accordion-section-content::-webkit-scrollbar-thumb:window-inactive,.et-pb-main-settings::-webkit-scrollbar-thumb:window-inactive,.wp-full-overlay-sidebar-content::-webkit-thumb:window-inactive,ul.et_font_icon::-webkit-scrollbar-thumb:window-inactive{background:#fff!important}#customize-control-et_divi-disable_custom_footer_credits{margin-top:15px}#customize-control-et_divi-boxed_layout{margin-top:20px}li#customize-control-et_divi-header_style{margin-bottom:20px}.accordion-section-content li.customize-control:first-of-type,.accordion-section-content li.customize-control:first-of-type .customize-control-title{margin-top:0!important}.accordion-section-content{padding:20px;background-color:#fff!important;border-bottom:1px solid #ddd}li#customize-control-et_divi-use_sidebar_width{margin-top:15px!important}li#customize-control-et_divi-et_pb_sidebar-remove_border{margin-top:20px!important}.et_select_image_options{display:none;background:#eee;padding:5px 0;height:196px;overflow:auto}.et_filter_text{position:relative}.et_filter_text:before{content:"";width:0;height:0;border-color:#ccc transparent;border-style:solid;border-width:6px 6px 0;position:absolute;top:18px;right:8px;z-index:1}.et_filter_text,.et_select_image_options{background:#fff;border:1px solid #dfdfdf;border-radius:3px}.et_filter_text,.et_select_image_options li{display:block;padding:5px 10px;text-indent:-9999px;background-repeat:no-repeat;height:30px;background-image:url(images/all-fonts.png);margin-bottom:0}.et_google_font_custom_select{text-decoration:none;color:#555d66}.et_google_font_custom_select:hover{color:#555d66}.et_google_font_custom_select .et_filter_text{text-indent:0;background-image:none}.et_select_image_active,.et_select_image_options li:hover{background-color:#effbff}.et_filter_text.et_si_4_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_4_column{background:url(../images/footer-layouts.png) center -10px no-repeat}.et_filter_text.et_si_3_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_3_column{background:url(../images/footer-layouts.png) center -60px no-repeat}.et_filter_text.et_si_2_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_2_column{background:url(../images/footer-layouts.png) center -110px no-repeat}.et_filter_text.et_si_1_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_column{background:url(../images/footer-layouts.png) center -160px no-repeat}.et_filter_text.et_si_1_4__3_4_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_4__3_4_column{background:url(../images/footer-layouts.png) center -210px no-repeat}.et_filter_text.et_si_3_4__1_4_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_3_4__1_4_column{background:url(../images/footer-layouts.png) center -260px no-repeat}.et_filter_text.et_si_1_3__2_3_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_3__2_3_column{background:url(../images/footer-layouts.png) center -310px no-repeat}.et_filter_text.et_si_2_3__1_3_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_2_3__1_3_column{background:url(../images/footer-layouts.png) center -360px no-repeat}.et_filter_text.et_si_1_4__1_2_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_4__1_2_column{background:url(../images/footer-layouts.png) center -410px no-repeat}.et_filter_text.et_si_1_2__1_4_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_2__1_4_column{background:url(../images/footer-layouts.png) center -460px no-repeat}.et_filter_text.et_si_1_5__3_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_5__3_5_column{background:url(../images/footer-layouts.png) center -510px no-repeat}.et_filter_text.et_si_3_5__1_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_3_5__1_5_column{background:url(../images/footer-layouts.png) center -560px no-repeat}.et_filter_text.et_si_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_5_column{background:url(../images/footer-layouts.png) center -610px no-repeat}.et_filter_text.et_si_3_5__2_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_3_5__2_5_column{background:url(../images/footer-layouts.png) center -660px no-repeat}.et_filter_text.et_si_2_5__3_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_2_5__3_5_column{background:url(../images/footer-layouts.png) center -710px no-repeat}.et_filter_text.et_si_6_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_6_column{background:url(../images/footer-layouts.png) center -760px no-repeat}.et_filter_text.et_si_1_2__1_6_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_2__1_6_column{background:url(../images/footer-layouts.png) center -810px no-repeat}.et_filter_text.et_si_1_6__1_2_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_6__1_2_column{background:url(../images/footer-layouts.png) center -860px no-repeat}.et_filter_text.et_si_1_4_1_2_1_4_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_4_1_2_1_4_column{background:url(../images/footer-layouts.png) center -910px no-repeat}.et_filter_text.et_si_1_5_3_5_1_5_column,.et_select_image_options.et_si_et_divi_footer_columns_ .et_si_1_5_3_5_1_5_column{background:url(../images/footer-layouts.png) center -960px no-repeat}.et_select_image_options.et_si_et_divi_footer_columns_ li:hover{background-color:#effbff}span.et_font_style{margin-left:0;border-radius:4px;border:none;-webkit-box-shadow:none;box-shadow:none;background:#f4f4f4;padding:6px 0;float:left;width:23.5%;margin-right:2%;text-align:center;font-size:14px;color:#32373c}span.et_font_style:last-of-type{margin-right:0}input.et_font_style_checkbox{display:none}span.et_font_style{display:inline-block;cursor:pointer}span.et_font_style.et_font_style_checked{background:#2e86b9}span.et_font_style.et_font_style_checked:before,span.et_font_style:before{font-family:ETmodules;font-size:24px;line-height:40px;display:inline-block;vertical-align:middle;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}span.et_font_style:before{color:#b7b7b7}span.et_font_style.et_font_style_checked:before{color:#fff;margin:0}span.et_font_style.et_font_style_checked.et_font_value_bold:before,span.et_font_style.et_font_value_bold:before{content:"\e622"}span.et_font_style.et_font_style_checked.et_font_value_italic:before,span.et_font_style.et_font_value_italic:before{content:"\e623"}span.et_font_style.et_font_style_checked.et_font_value_underline:before,span.et_font_style.et_font_value_underline:before{content:"\e621"}span.et_font_style.et_font_style_checked.et_font_value_uppercase:before,span.et_font_style.et_font_value_uppercase:before{content:"\e624"}ul.et_font_icon{position:relative;height:120px;overflow:scroll;min-width:260px;width:100%}.et_font_icon li:before{font-family:ETmodules;content:attr(data-icon);speak:none;font-weight:400;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased}.et_font_icon li{font-size:16px;display:inline-block;background:#f4f4f4;padding:10px;margin:0;cursor:pointer;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.et_font_icon .et_active{background-color:#2e86b9;color:#fff;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}.et_hidden_section,.et_modules_customizer_option_set #accordion-panel-nav_menus,.et_modules_customizer_option_set #accordion-panel-widgets{display:none!important}/*! +Animate.css - http://daneden.me/animate +Licensed under the MIT license - http://opensource.org/licenses/MIT + +Copyright (c) 2015 Daniel Eden +*/@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.7,.7,.7);transform:scale3d(.7,.7,.7)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.7,.7,.7);transform:scale3d(.7,.7,.7)}50%{opacity:1}} \ No newline at end of file diff --git a/css/theme-customizer-styles.css b/css/theme-customizer-styles.css new file mode 100644 index 0000000..240573a --- /dev/null +++ b/css/theme-customizer-styles.css @@ -0,0 +1 @@ +.et_is_customize_preview.et_pb_footer_columns1 .footer-widget:first-child,.et_is_customize_preview.et_pb_footer_columns2 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns3 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns4 .footer-widget:nth-child(4),.et_is_customize_preview.et_pb_footer_columns5 .footer-widget:nth-child(5),.et_is_customize_preview.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(4),.et_is_customize_preview.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4),.et_is_customize_preview.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2),.et_is_customize_preview.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(3),.et_is_customize_preview.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){margin-right:0} \ No newline at end of file diff --git a/css/tinymce-skin/content.inline.min.css b/css/tinymce-skin/content.inline.min.css new file mode 100644 index 0000000..cbcee9a --- /dev/null +++ b/css/tinymce-skin/content.inline.min.css @@ -0,0 +1,152 @@ +.mce-content-body .mce-reset { + margin: 0; + padding: 0; + border: 0; + outline: 0; + vertical-align: top; + background: transparent; + text-decoration: none; + color: black; + font-family: Arial; + font-size: 11px; + text-shadow: none; + float: none; + position: static; + width: auto; + height: auto; + white-space: nowrap; + cursor: inherit; + line-height: normal; + font-weight: normal; + text-align: left; + -webkit-tap-highlight-color: transparent; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; + direction: ltr; + max-width: none +} +.mce-object { + border: 1px dotted #3a3a3a; + background: #d5d5d5 url(img/object.gif) no-repeat center +} +.mce-preview-object { + display: inline-block; + position: relative; + margin: 0 2px 0 2px; + line-height: 0; + border: 1px solid gray +} +.mce-preview-object .mce-shim { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7) +} +figure.align-left { + float: left +} +figure.align-right { + float: right +} +figure.image.align-center { + display: table; + margin-left: auto; + margin-right: auto +} +figure.image { + display: inline-block; + border: 1px solid gray; + margin: 0 2px 0 1px; + background: #f5f2f0 +} +figure.image img { + margin: 8px 8px 0 8px +} +figure.image figcaption { + margin: 6px 8px 6px 8px; + text-align: center +} +.mce-preview-object[data-mce-selected] .mce-shim { + display: none +} +.mce-pagebreak { + cursor: default; + display: block; + border: 0; + width: 100%; + height: 5px; + border: 1px dashed #666; + margin-top: 15px; + page-break-before: always +} +@media print { + .mce-pagebreak { + border: 0 + } +} +.mce-item-anchor { + cursor: default; + display: inline-block; + -webkit-user-select: all; + -webkit-user-modify: read-only; + -moz-user-select: all; + -moz-user-modify: read-only; + user-select: all; + user-modify: read-only; + width: 9px !important; + height: 9px !important; + border: 1px dotted #3a3a3a; + background: #d5d5d5 url(img/anchor.gif) no-repeat center +} +.mce-nbsp, .mce-shy { + background: #aaa +} +.mce-shy::after { + content: '-' +} +hr { + cursor: default +} +.mce-match-marker { + background: #aaa; + color: #fff +} +.mce-match-marker-selected { + background: #39f; + color: #fff +} +.mce-spellchecker-word { + border-bottom: 2px solid #f00; + cursor: default +} +.mce-spellchecker-grammar { + border-bottom: 2px solid #008000; + cursor: default +} +.mce-item-table, .mce-item-table td, .mce-item-table th, .mce-item-table caption { + border: 1px dashed #bbb +} +td[data-mce-selected], th[data-mce-selected] { + background-color: #39f !important +} +.mce-edit-focus { + outline: 1px dotted #333 +} +.mce-content-body *[contentEditable=false] *[contentEditable=true]:focus { + outline: 2px solid #2d8ac7 +} +.mce-content-body *[contentEditable=false] *[contentEditable=true]:hover { + outline: 2px solid #7acaff +} +.mce-content-body *[contentEditable=false][data-mce-selected] { + outline: 2px solid #2d8ac7 +} +.mce-resize-bar-dragging { + background-color: blue; + opacity: .25; + filter: alpha(opacity=25); + zoom: 1 +} diff --git a/css/tinymce-skin/content.min.css b/css/tinymce-skin/content.min.css new file mode 100644 index 0000000..cbcee9a --- /dev/null +++ b/css/tinymce-skin/content.min.css @@ -0,0 +1,152 @@ +.mce-content-body .mce-reset { + margin: 0; + padding: 0; + border: 0; + outline: 0; + vertical-align: top; + background: transparent; + text-decoration: none; + color: black; + font-family: Arial; + font-size: 11px; + text-shadow: none; + float: none; + position: static; + width: auto; + height: auto; + white-space: nowrap; + cursor: inherit; + line-height: normal; + font-weight: normal; + text-align: left; + -webkit-tap-highlight-color: transparent; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; + direction: ltr; + max-width: none +} +.mce-object { + border: 1px dotted #3a3a3a; + background: #d5d5d5 url(img/object.gif) no-repeat center +} +.mce-preview-object { + display: inline-block; + position: relative; + margin: 0 2px 0 2px; + line-height: 0; + border: 1px solid gray +} +.mce-preview-object .mce-shim { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7) +} +figure.align-left { + float: left +} +figure.align-right { + float: right +} +figure.image.align-center { + display: table; + margin-left: auto; + margin-right: auto +} +figure.image { + display: inline-block; + border: 1px solid gray; + margin: 0 2px 0 1px; + background: #f5f2f0 +} +figure.image img { + margin: 8px 8px 0 8px +} +figure.image figcaption { + margin: 6px 8px 6px 8px; + text-align: center +} +.mce-preview-object[data-mce-selected] .mce-shim { + display: none +} +.mce-pagebreak { + cursor: default; + display: block; + border: 0; + width: 100%; + height: 5px; + border: 1px dashed #666; + margin-top: 15px; + page-break-before: always +} +@media print { + .mce-pagebreak { + border: 0 + } +} +.mce-item-anchor { + cursor: default; + display: inline-block; + -webkit-user-select: all; + -webkit-user-modify: read-only; + -moz-user-select: all; + -moz-user-modify: read-only; + user-select: all; + user-modify: read-only; + width: 9px !important; + height: 9px !important; + border: 1px dotted #3a3a3a; + background: #d5d5d5 url(img/anchor.gif) no-repeat center +} +.mce-nbsp, .mce-shy { + background: #aaa +} +.mce-shy::after { + content: '-' +} +hr { + cursor: default +} +.mce-match-marker { + background: #aaa; + color: #fff +} +.mce-match-marker-selected { + background: #39f; + color: #fff +} +.mce-spellchecker-word { + border-bottom: 2px solid #f00; + cursor: default +} +.mce-spellchecker-grammar { + border-bottom: 2px solid #008000; + cursor: default +} +.mce-item-table, .mce-item-table td, .mce-item-table th, .mce-item-table caption { + border: 1px dashed #bbb +} +td[data-mce-selected], th[data-mce-selected] { + background-color: #39f !important +} +.mce-edit-focus { + outline: 1px dotted #333 +} +.mce-content-body *[contentEditable=false] *[contentEditable=true]:focus { + outline: 2px solid #2d8ac7 +} +.mce-content-body *[contentEditable=false] *[contentEditable=true]:hover { + outline: 2px solid #7acaff +} +.mce-content-body *[contentEditable=false][data-mce-selected] { + outline: 2px solid #2d8ac7 +} +.mce-resize-bar-dragging { + background-color: blue; + opacity: .25; + filter: alpha(opacity=25); + zoom: 1 +} diff --git a/css/tinymce-skin/fonts/readme.md b/css/tinymce-skin/fonts/readme.md new file mode 100644 index 0000000..fa5d639 --- /dev/null +++ b/css/tinymce-skin/fonts/readme.md @@ -0,0 +1 @@ +Icons are generated and provided by the http://icomoon.io service. diff --git a/css/tinymce-skin/fonts/tinymce-small.eot b/css/tinymce-skin/fonts/tinymce-small.eot new file mode 100644 index 0000000..b144ba0 Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce-small.eot differ diff --git a/css/tinymce-skin/fonts/tinymce-small.svg b/css/tinymce-skin/fonts/tinymce-small.svg new file mode 100644 index 0000000..a9076ca --- /dev/null +++ b/css/tinymce-skin/fonts/tinymce-small.svg @@ -0,0 +1,63 @@ + + + \ No newline at end of file diff --git a/css/tinymce-skin/fonts/tinymce-small.ttf b/css/tinymce-skin/fonts/tinymce-small.ttf new file mode 100644 index 0000000..a983e2d Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce-small.ttf differ diff --git a/css/tinymce-skin/fonts/tinymce-small.woff b/css/tinymce-skin/fonts/tinymce-small.woff new file mode 100644 index 0000000..d8962df Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce-small.woff differ diff --git a/css/tinymce-skin/fonts/tinymce.eot b/css/tinymce-skin/fonts/tinymce.eot new file mode 100644 index 0000000..8838c8d Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce.eot differ diff --git a/css/tinymce-skin/fonts/tinymce.svg b/css/tinymce-skin/fonts/tinymce.svg new file mode 100644 index 0000000..d7004a9 --- /dev/null +++ b/css/tinymce-skin/fonts/tinymce.svg @@ -0,0 +1,98 @@ + + + \ No newline at end of file diff --git a/css/tinymce-skin/fonts/tinymce.ttf b/css/tinymce-skin/fonts/tinymce.ttf new file mode 100644 index 0000000..ab4487f Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce.ttf differ diff --git a/css/tinymce-skin/fonts/tinymce.woff b/css/tinymce-skin/fonts/tinymce.woff new file mode 100644 index 0000000..171a2a2 Binary files /dev/null and b/css/tinymce-skin/fonts/tinymce.woff differ diff --git a/css/tinymce-skin/img/anchor.gif b/css/tinymce-skin/img/anchor.gif new file mode 100644 index 0000000..606348c Binary files /dev/null and b/css/tinymce-skin/img/anchor.gif differ diff --git a/css/tinymce-skin/img/loader.gif b/css/tinymce-skin/img/loader.gif new file mode 100644 index 0000000..c69e937 Binary files /dev/null and b/css/tinymce-skin/img/loader.gif differ diff --git a/css/tinymce-skin/img/object.gif b/css/tinymce-skin/img/object.gif new file mode 100644 index 0000000..cccd7f0 Binary files /dev/null and b/css/tinymce-skin/img/object.gif differ diff --git a/css/tinymce-skin/img/trans.gif b/css/tinymce-skin/img/trans.gif new file mode 100644 index 0000000..3884865 Binary files /dev/null and b/css/tinymce-skin/img/trans.gif differ diff --git a/css/tinymce-skin/skin.ie7.min.css b/css/tinymce-skin/skin.ie7.min.css new file mode 100644 index 0000000..17ef671 --- /dev/null +++ b/css/tinymce-skin/skin.ie7.min.css @@ -0,0 +1,1843 @@ +.mce-container, .mce-container *, .mce-widget, .mce-widget *, .mce-reset { + margin: 0; + padding: 0; + border: 0; + outline: 0; + vertical-align: top; + background: transparent; + text-decoration: none; + color: #333; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + text-shadow: none; + float: none; + position: static; + width: auto; + height: auto; + white-space: nowrap; + cursor: inherit; + -webkit-tap-highlight-color: transparent; + line-height: normal; + font-weight: normal; + text-align: left; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; + direction: ltr; + max-width: none +} +.mce-widget button { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box +} +.mce-container *[unselectable] { + -moz-user-select: none; + -webkit-user-select: none; + -o-user-select: none; + user-select: none +} +.mce-fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + transition: opacity .15s linear +} +.mce-fade.mce-in { + opacity: 1 +} +.mce-tinymce { + visibility: inherit !important; + position: relative +} +.mce-fullscreen { + border: 0; + padding: 0; + margin: 0; + overflow: hidden; + height: 100%; + z-index: 100 +} +div.mce-fullscreen { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: auto +} +.mce-tinymce { + display: block +} +.mce-wordcount { + position: absolute; + top: 0; + right: 0; + padding: 8px +} +div.mce-edit-area { + background: #FFF; + filter: none +} +.mce-statusbar { + position: relative +} +.mce-statusbar .mce-container-body { + position: relative +} +.mce-fullscreen .mce-resizehandle { + display: none +} +.mce-charmap { + border-collapse: collapse +} +.mce-charmap td { + cursor: default; + border: 1px solid #9e9e9e; + width: 20px; + height: 20px; + line-height: 20px; + text-align: center; + vertical-align: middle; + padding: 2px +} +.mce-charmap td div { + text-align: center +} +.mce-charmap td:hover { + background: #d9d9d9 +} +.mce-grid td.mce-grid-cell div { + border: 1px solid #d6d6d6; + width: 15px; + height: 15px; + margin: 0px; + cursor: pointer +} +.mce-grid td.mce-grid-cell div:focus { + border-color: #a1a1a1 +} +.mce-grid td.mce-grid-cell div[disabled] { + cursor: not-allowed +} +.mce-grid { + border-spacing: 2px; + border-collapse: separate +} +.mce-grid a { + display: block; + border: 1px solid transparent +} +.mce-grid a:hover, .mce-grid a:focus { + border-color: #a1a1a1 +} +.mce-grid-border { + margin: 0 4px 0 4px +} +.mce-grid-border a { + border-color: #d6d6d6; + width: 13px; + height: 13px +} +.mce-grid-border a:hover, .mce-grid-border a.mce-active { + border-color: #a1a1a1; + background: #c8def4 +} +.mce-text-center { + text-align: center +} +div.mce-tinymce-inline { + width: 100% +} +.mce-colorbtn-trans div { + text-align: center; + vertical-align: middle; + font-weight: bold; + font-size: 20px; + line-height: 16px; + color: #707070 +} +.mce-monospace { + font-family: "Courier New", Courier, monospace +} +.mce-toolbar-grp { + padding: 2px 0 +} +.mce-toolbar-grp .mce-flow-layout-item { + margin-bottom: 0 +} +.mce-rtl .mce-wordcount { + left: 0; + right: auto +} +.mce-croprect-container { + position: absolute; + top: 0; + left: 0 +} +.mce-croprect-handle { + position: absolute; + top: 0; + left: 0; + width: 20px; + height: 20px; + border: 2px solid white +} +.mce-croprect-handle-nw { + border-width: 2px 0 0 2px; + margin: -2px 0 0 -2px; + cursor: nw-resize; + top: 100px; + left: 100px +} +.mce-croprect-handle-ne { + border-width: 2px 2px 0 0; + margin: -2px 0 0 -20px; + cursor: ne-resize; + top: 100px; + left: 200px +} +.mce-croprect-handle-sw { + border-width: 0 0 2px 2px; + margin: -20px 2px 0 -2px; + cursor: sw-resize; + top: 200px; + left: 100px +} +.mce-croprect-handle-se { + border-width: 0 2px 2px 0; + margin: -20px 0 0 -20px; + cursor: se-resize; + top: 200px; + left: 200px +} +.mce-croprect-handle-move { + position: absolute; + cursor: move; + border: 0 +} +.mce-croprect-block { + opacity: .3; + filter: alpha(opacity=30); + zoom: 1; + position: absolute; + background: black +} +.mce-imagepanel { + overflow: auto; + background: black +} +.mce-imagepanel img { + position: absolute +} +.mce-imagetool.mce-btn .mce-ico { + display: block; + width: 20px; + height: 20px; + text-align: center; + line-height: 20px; + font-size: 20px; + padding: 5px +} +.mce-container, .mce-container-body { + display: block +} +.mce-autoscroll { + overflow: hidden +} +.mce-scrollbar { + position: absolute; + width: 7px; + height: 100%; + top: 2px; + right: 2px; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-scrollbar-h { + top: auto; + right: auto; + left: 2px; + bottom: 2px; + width: 100%; + height: 7px +} +.mce-scrollbar-thumb { + position: absolute; + background-color: #000; + border: 1px solid #888; + border-color: rgba(85, 85, 85, 0.6); + width: 5px; + height: 100% +} +.mce-scrollbar-h .mce-scrollbar-thumb { + width: 100%; + height: 5px +} +.mce-scrollbar:hover, .mce-scrollbar.mce-active { + background-color: #AAA; + opacity: .6; + filter: alpha(opacity=60); + zoom: 1 +} +.mce-scroll { + position: relative +} +.mce-panel { + border: 0 solid #606671; + border: 0 solid #9e9e9e; + background-color: #888d96 +} +.mce-floatpanel { + position: absolute +} +.mce-floatpanel.mce-fixed { + position: fixed +} +.mce-floatpanel .mce-arrow, .mce-floatpanel .mce-arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid +} +.mce-floatpanel .mce-arrow { + border-width: 11px +} +.mce-floatpanel .mce-arrow:after { + border-width: 10px; + content: "" +} +.mce-floatpanel.mce-popover { + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + top: 0; + left: 0; + background: #fff; + border: 1px solid #9e9e9e; + border: 1px solid rgba(0, 0, 0, 0.25) +} +.mce-floatpanel.mce-popover.mce-bottom { + margin-top: 10px; + *margin-top: 0 +} +.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #9e9e9e; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px +} +.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow:after { + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #fff +} +.mce-floatpanel.mce-popover.mce-bottom.mce-start { + margin-left: -22px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-start>.mce-arrow { + left: 20px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-end { + margin-left: 22px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-end>.mce-arrow { + right: 10px; + left: auto +} +.mce-fullscreen { + border: 0; + padding: 0; + margin: 0; + overflow: hidden; + height: 100% +} +div.mce-fullscreen { + position: fixed; + top: 0; + left: 0 +} +#mce-modal-block { + opacity: 0; + filter: alpha(opacity=0); + zoom: 1; + position: fixed; + left: 0; + top: 0; + width: 100%; + height: 100%; + background: #000 +} +#mce-modal-block.mce-in { + opacity: .3; + filter: alpha(opacity=30); + zoom: 1 +} +.mce-window-move { + cursor: move +} +.mce-window { + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + background: #fff; + position: fixed; + top: 0; + left: 0; + opacity: 0; + -webkit-transition: opacity 150ms ease-in; + transition: opacity 150ms ease-in +} +.mce-window.mce-in { + opacity: 1 +} +.mce-window-head { + padding: 9px 15px; + border-bottom: 1px solid #c4c4c4; + position: relative +} +.mce-window-head .mce-close { + position: absolute; + right: 15px; + top: 9px; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #858585; + cursor: pointer; + height: 20px; + overflow: hidden +} +.mce-close:hover { + color: #adadad +} +.mce-window-head .mce-title { + line-height: 20px; + font-size: 20px; + font-weight: bold; + text-rendering: optimizelegibility; + padding-right: 10px +} +.mce-window .mce-container-body { + display: block +} +.mce-foot { + display: block; + background-color: #fff; + border-top: 1px solid #c4c4c4 +} +.mce-window-head .mce-dragh { + position: absolute; + top: 0; + left: 0; + cursor: move; + width: 90%; + height: 100% +} +.mce-window iframe { + width: 100%; + height: 100% +} +.mce-window-body .mce-listbox { + border-color: #23272d +} +.mce-rtl .mce-window-head .mce-close { + position: absolute; + right: auto; + left: 15px +} +.mce-rtl .mce-window-head .mce-dragh { + left: auto; + right: 0 +} +.mce-rtl .mce-window-head .mce-title { + direction: rtl; + text-align: right +} +.mce-tooltip { + position: absolute; + padding: 5px; + opacity: .8; + filter: alpha(opacity=80); + zoom: 1 +} +.mce-tooltip-inner { + font-size: 11px; + background-color: #000; + color: #fff; + max-width: 200px; + padding: 5px 8px 4px 8px; + text-align: center; + white-space: normal +} +.mce-tooltip-arrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 5px dashed #000 +} +.mce-tooltip-arrow-n { + border-bottom-color: #000 +} +.mce-tooltip-arrow-s { + border-top-color: #000 +} +.mce-tooltip-arrow-e { + border-left-color: #000 +} +.mce-tooltip-arrow-w { + border-right-color: #000 +} +.mce-tooltip-nw, .mce-tooltip-sw { + margin-left: -14px +} +.mce-tooltip-n .mce-tooltip-arrow { + top: 0px; + left: 50%; + margin-left: -5px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-nw .mce-tooltip-arrow { + top: 0; + left: 10px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-ne .mce-tooltip-arrow { + top: 0; + right: 10px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-s .mce-tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-sw .mce-tooltip-arrow { + bottom: 0; + left: 10px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-se .mce-tooltip-arrow { + bottom: 0; + right: 10px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-e .mce-tooltip-arrow { + right: 0; + top: 50%; + margin-top: -5px; + border-left-style: solid; + border-right: none; + border-top-color: transparent; + border-bottom-color: transparent +} +.mce-tooltip-w .mce-tooltip-arrow { + left: 0; + top: 50%; + margin-top: -5px; + border-right-style: solid; + border-left: none; + border-top-color: transparent; + border-bottom-color: transparent +} +.mce-progress { + display: inline-block; + position: relative; + height: 20px +} +.mce-progress .mce-bar-container { + display: inline-block; + width: 100px; + height: 100%; + margin-right: 8px; + border: 1px solid #ccc; + overflow: hidden +} +.mce-progress .mce-text { + display: inline-block; + margin-top: auto; + margin-bottom: auto; + font-size: 14px; + width: 40px; + color: #333; + text-shadow: 1px 1px #fff +} +.mce-bar { + display: block; + width: 0%; + height: 100%; + background-color: #d7d7d7; + -webkit-transition: width .2s ease; + transition: width .2s ease +} +.mce-notification { + position: absolute; + background-color: #f0f0f0; + padding: 5px; + margin-top: 5px; + opacity: .8; + filter: alpha(opacity=80); + zoom: 1; + border-width: 1px; + border-style: solid; + border-color: #ccc +} +.mce-notification-success { + background-color: #dff0d8; + border-color: #d6e9c6 +} +.mce-notification-info { + background-color: #d9edf7; + border-color: #779ecb +} +.mce-notification-warning { + background-color: #fcf8e3; + border-color: #faebcc +} +.mce-notification-error { + background-color: #f2dede; + border-color: #ebccd1 +} +.mce-notification.mce-has-close { + padding-right: 15px +} +.mce-notification .mce-ico { + margin-top: 5px +} +.mce-notification-inner { + display: inline-block; + font-size: 14px; + margin: 5px 8px 4px 8px; + text-align: center; + white-space: normal; + color: #31708f +} +.mce-notification-inner a { + text-decoration: underline; + cursor: pointer +} +.mce-notification .mce-progress { + margin-right: 8px +} +.mce-notification .mce-progress .mce-text { + margin-top: 5px +} +.mce-notification *, .mce-notification .mce-progress .mce-text { + color: #333 +} +.mce-notification .mce-progress .mce-bar-container { + border-color: #ccc +} +.mce-notification .mce-progress .mce-bar-container .mce-bar { + background-color: #333 +} +.mce-notification-success *, .mce-notification-success .mce-progress .mce-text { + color: #3c763d +} +.mce-notification-success .mce-progress .mce-bar-container { + border-color: #d6e9c6 +} +.mce-notification-success .mce-progress .mce-bar-container .mce-bar { + background-color: #3c763d +} +.mce-notification-info *, .mce-notification-info .mce-progress .mce-text { + color: #31708f +} +.mce-notification-info .mce-progress .mce-bar-container { + border-color: #779ecb +} +.mce-notification-info .mce-progress .mce-bar-container .mce-bar { + background-color: #31708f +} +.mce-notification-warning *, .mce-notification-warning .mce-progress .mce-text { + color: #8a6d3b +} +.mce-notification-warning .mce-progress .mce-bar-container { + border-color: #faebcc +} +.mce-notification-warning .mce-progress .mce-bar-container .mce-bar { + background-color: #8a6d3b +} +.mce-notification-error *, .mce-notification-error .mce-progress .mce-text { + color: #a94442 +} +.mce-notification-error .mce-progress .mce-bar-container { + border-color: #ebccd1 +} +.mce-notification-error .mce-progress .mce-bar-container .mce-bar { + background-color: #a94442 +} +.mce-notification .mce-close { + position: absolute; + top: 6px; + right: 8px; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #858585; + cursor: pointer; + height: 20px; + overflow: hidden +} +.mce-abs-layout { + position: relative +} +body .mce-abs-layout-item, .mce-abs-end { + position: absolute +} +.mce-abs-end { + width: 1px; + height: 1px +} +.mce-container-body.mce-abs-layout { + overflow: hidden +} +.mce-btn { + border: 1px solid #853e47; + border-color: rgba(255, 0, 0, 0) rgba(255, 0, 0, 0) rgba(255, 0, 0, 0) transparent; + position: relative; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + display: inline-block; + *display: inline; + *zoom: 1; + background-color: #878c94 +} +.mce-btn:hover, .mce-btn:focus { + color: #fff; + background-color: #7b7f86; + border-color: #23272d +} +.mce-btn.mce-disabled button, .mce-btn.mce-disabled:hover button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-btn.mce-active, .mce-btn.mce-active:hover { + background-color: #74787e; + border-color: #23272d +} +.mce-btn:active { + background-color: #787c83; + border-color: #23272d +} +.mce-btn button { + padding: 4px 8px; + font-size: 14px; + line-height: 20px; + *line-height: 16px; + cursor: pointer; + color: #fff; + text-align: center; + overflow: visible; + -webkit-appearance: none +} +.mce-btn button::-moz-focus-inner { + border: 0; + padding: 0 +} +.mce-btn i { + text-shadow: 1px 1px #505866 +} +.mce-primary { + min-width: 50px; + color: #fff; + border: 1px solid transparent; + border-color: transparent; + background-color: #006dcc +} +.mce-primary:hover, .mce-primary:focus { + background-color: #005fb3; + border-color: transparent +} +.mce-primary.mce-disabled button, .mce-primary.mce-disabled:hover button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-primary.mce-active, .mce-primary.mce-active:hover, .mce-primary:not(.mce-disabled):active { + background-color: #005299 +} +.mce-primary button, .mce-primary button i { + color: #fff; + text-shadow: 1px 1px #333 +} +.mce-btn .mce-txt { + font-size: inherit; + line-height: inherit; + color: inherit +} +.mce-btn-large button { + padding: 9px 14px; + font-size: 16px; + line-height: normal +} +.mce-btn-large i { + margin-top: 2px +} +.mce-btn-small button { + padding: 1px 5px; + font-size: 12px; + *padding-bottom: 2px +} +.mce-btn-small i { + line-height: 20px; + vertical-align: top; + *line-height: 18px +} +.mce-btn .mce-caret { + margin-top: 8px; + margin-left: 0 +} +.mce-btn-small .mce-caret { + margin-top: 8px; + margin-left: 0 +} +.mce-caret { + display: inline-block; + *display: inline; + *zoom: 1; + width: 0; + height: 0; + vertical-align: top; + border-top: 4px solid #fff; + border-right: 4px solid transparent; + border-left: 4px solid transparent; + content: "" +} +.mce-disabled .mce-caret { + border-top-color: #aaa +} +.mce-caret.mce-up { + border-bottom: 4px solid #fff; + border-top: 0 +} +.mce-btn-flat { + border: 0; + background: transparent; + filter: none +} +.mce-btn-flat:hover, .mce-btn-flat.mce-active, .mce-btn-flat:focus, .mce-btn-flat:active { + border: 0; + background: #3a3f49; + filter: none +} +.mce-btn-has-text .mce-ico { + padding-right: 5px +} +.mce-rtl .mce-btn button { + direction: rtl +} +.mce-btn-group .mce-btn { + border-width: 1px; + margin: 0; + margin-left: 2px +} +.mce-btn-group:not(:first-child) { + border-left: 1px solid #2e333b; + padding-left: 3px; + margin-left: 3px +} +.mce-btn-group .mce-first { + margin-left: 0 +} +.mce-btn-group .mce-btn.mce-flow-layout-item { + margin: 0 +} +.mce-rtl .mce-btn-group .mce-btn { + margin-left: 0; + margin-right: 2px +} +.mce-rtl .mce-btn-group .mce-first { + margin-right: 0 +} +.mce-rtl .mce-btn-group:not(:first-child) { + border-left: none; + border-right: 1px solid #2e333b; + padding-right: 4px; + margin-right: 4px +} +.mce-checkbox { + cursor: pointer +} +i.mce-i-checkbox { + margin: 0 3px 0 0; + border: 1px solid #c5c5c5; + background-color: #878c94; + text-indent: -10em; + *font-size: 0; + *line-height: 0; + *text-indent: 0; + overflow: hidden +} +.mce-checked i.mce-i-checkbox { + color: #fff; + font-size: 16px; + line-height: 16px; + text-indent: 0 +} +.mce-checkbox:focus i.mce-i-checkbox, .mce-checkbox.mce-focus i.mce-i-checkbox { + border: 1px solid #59a5e1 +} +.mce-checkbox.mce-disabled .mce-label, .mce-checkbox.mce-disabled i.mce-i-checkbox { + color: #444952 +} +.mce-checkbox .mce-label { + vertical-align: middle +} +.mce-rtl .mce-checkbox { + direction: rtl; + text-align: right +} +.mce-rtl i.mce-i-checkbox { + margin: 0 0 0 3px +} +.mce-combobox { + display: inline-block; + *display: inline; + *zoom: 1; + *height: 32px +} +.mce-combobox input { + border: 1px solid #c5c5c5; + border-right-color: #c5c5c5; + height: 28px +} +.mce-combobox.mce-disabled input { + color: #adadad +} +.mce-combobox .mce-btn { + border: 1px solid #c5c5c5; + border-left: 0 +} +.mce-combobox button { + padding-right: 8px; + padding-left: 8px +} +.mce-combobox.mce-disabled .mce-btn button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-colorbox i { + border: 1px solid #c5c5c5; + width: 14px; + height: 14px +} +.mce-colorbutton .mce-ico { + position: relative +} +.mce-colorbutton-grid { + margin: 4px +} +.mce-colorbutton button { + padding-right: 6px; + padding-left: 6px +} +.mce-colorbutton .mce-preview { + padding-right: 3px; + display: block; + position: absolute; + left: 50%; + top: 50%; + margin-left: -17px; + margin-top: 7px; + background: gray; + width: 13px; + height: 2px; + overflow: hidden +} +.mce-colorbutton.mce-btn-small .mce-preview { + margin-left: -16px; + padding-right: 0; + width: 16px +} +.mce-colorbutton .mce-open { + padding-left: 4px; + padding-right: 4px; + border-left: 1px solid transparent +} +.mce-colorbutton:hover .mce-open { + border-color: #23272d +} +.mce-colorbutton.mce-btn-small .mce-open { + padding: 0 3px 0 3px +} +.mce-rtl .mce-colorbutton { + direction: rtl +} +.mce-rtl .mce-colorbutton .mce-preview { + margin-left: 0; + padding-right: 0; + padding-left: 3px +} +.mce-rtl .mce-colorbutton.mce-btn-small .mce-preview { + margin-left: 0; + padding-right: 0; + padding-left: 2px +} +.mce-rtl .mce-colorbutton .mce-open { + padding-left: 4px; + padding-right: 4px; + border-left: 0 +} +.mce-colorpicker { + position: relative; + width: 250px; + height: 220px +} +.mce-colorpicker-sv { + position: absolute; + top: 0; + left: 0; + width: 90%; + height: 100%; + border: 1px solid #c5c5c5; + cursor: crosshair; + overflow: hidden +} +.mce-colorpicker-h-chunk { + width: 100% +} +.mce-colorpicker-overlay1, .mce-colorpicker-overlay2 { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0 +} +.mce-colorpicker-overlay1 { + filter: progid: DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#ffffff', endColorstr='#00ffffff'); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#ffffff', endColorstr='#00ffffff')"; + background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0)) +} +.mce-colorpicker-overlay2 { + filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#00000000', endColorstr='#000000'); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#00000000', endColorstr='#000000')"; + background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000) +} +.mce-colorpicker-selector1 { + background: none; + position: absolute; + width: 12px; + height: 12px; + margin: -8px 0 0 -8px; + border: 1px solid black; + border-radius: 50% +} +.mce-colorpicker-selector2 { + position: absolute; + width: 10px; + height: 10px; + border: 1px solid white; + border-radius: 50% +} +.mce-colorpicker-h { + position: absolute; + top: 0; + right: 0; + width: 6.5%; + height: 100%; + border: 1px solid #c5c5c5; + cursor: crosshair +} +.mce-colorpicker-h-marker { + margin-top: -4px; + position: absolute; + top: 0; + left: -1px; + width: 100%; + border: 1px solid #333; + background: #fff; + height: 4px; + z-index: 100 +} +.mce-path { + display: inline-block; + *display: inline; + *zoom: 1; + padding: 8px; + white-space: normal +} +.mce-path .mce-txt { + display: inline-block; + padding-right: 3px +} +.mce-path .mce-path-body { + display: inline-block +} +.mce-path-item { + display: inline-block; + *display: inline; + *zoom: 1; + cursor: pointer; + color: #333 +} +.mce-path-item:hover { + text-decoration: underline +} +.mce-path-item:focus { + background: #666; + color: #fff +} +.mce-path .mce-divider { + display: inline +} +.mce-disabled .mce-path-item { + color: #aaa +} +.mce-rtl .mce-path { + direction: rtl +} +.mce-fieldset { + border: 0 solid #9E9E9E +} +.mce-fieldset>.mce-container-body { + margin-top: -15px +} +.mce-fieldset-title { + margin-left: 5px; + padding: 0 5px 0 5px +} +.mce-fit-layout { + display: inline-block; + *display: inline; + *zoom: 1 +} +.mce-fit-layout-item { + position: absolute +} +.mce-flow-layout-item { + display: inline-block; + *display: inline; + *zoom: 1 +} +.mce-flow-layout-item { + margin: 2px 0 2px 2px +} +.mce-flow-layout-item.mce-last { + margin-right: 2px +} +.mce-flow-layout { + white-space: normal +} +.mce-tinymce-inline .mce-flow-layout { + white-space: nowrap +} +.mce-rtl .mce-flow-layout { + text-align: right; + direction: rtl +} +.mce-rtl .mce-flow-layout-item { + margin: 2px 2px 2px 0 +} +.mce-rtl .mce-flow-layout-item.mce-last { + margin-left: 2px +} +.mce-iframe { + border: 0 solid #9e9e9e; + width: 100%; + height: 100% +} +.mce-label { + display: inline-block; + *display: inline; + *zoom: 1; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + overflow: hidden +} +.mce-label.mce-autoscroll { + overflow: auto +} +.mce-label.mce-disabled { + color: #aaa +} +.mce-label.mce-multiline { + white-space: pre-wrap +} +.mce-label.mce-error { + color: #a00 +} +.mce-rtl .mce-label { + text-align: right; + direction: rtl +} +.mce-menubar .mce-menubtn { + border-color: transparent; + background: transparent; + filter: none +} +.mce-menubar .mce-menubtn button { + color: +} +.mce-menubar { + border: 1px solid #7f8288 +} +.mce-menubar .mce-menubtn button span { + color: #333 +} +.mce-menubar .mce-caret { + border-top-color: #333 +} +.mce-menubar .mce-menubtn:hover, .mce-menubar .mce-menubtn.mce-active, .mce-menubar .mce-menubtn:focus { + border-color: #23272d; + background: #505866; + filter: none +} +.mce-menubtn button { + color: #fff +} +.mce-menubtn.mce-btn-small span { + font-size: 12px +} +.mce-menubtn.mce-fixed-width span { + display: inline-block; + overflow-x: hidden; + text-overflow: ellipsis; + width: 90px +} +.mce-menubtn.mce-fixed-width.mce-btn-small span { + width: 70px +} +.mce-menubtn .mce-caret { + *margin-top: 6px +} +.mce-rtl .mce-menubtn button { + direction: rtl; + text-align: right +} +.mce-menu-item { + display: block; + padding: 6px 15px 6px 12px; + clear: both; + font-weight: normal; + line-height: 20px; + color: #333; + white-space: nowrap; + cursor: pointer; + line-height: normal; + border-left: 4px solid transparent; + margin-bottom: 1px +} +.mce-menu-item .mce-ico, .mce-menu-item .mce-text { + color: #333 +} +.mce-menu-item.mce-disabled .mce-text, .mce-menu-item.mce-disabled .mce-ico { + color: #444952 +} +.mce-menu-item:hover .mce-text, .mce-menu-item.mce-selected .mce-text, .mce-menu-item:focus .mce-text { + color: #fff +} +.mce-menu-item:hover .mce-ico, .mce-menu-item.mce-selected .mce-ico, .mce-menu-item:focus .mce-ico { + color: #fff +} +.mce-menu-item.mce-disabled:hover { + background: #ccc +} +.mce-menu-shortcut { + display: inline-block; + color: #444952 +} +.mce-menu-shortcut { + display: inline-block; + *display: inline; + *zoom: 1; + padding: 0 15px 0 20px +} +.mce-menu-item:hover .mce-menu-shortcut, .mce-menu-item.mce-selected .mce-menu-shortcut, .mce-menu-item:focus .mce-menu-shortcut { + color: #fff +} +.mce-menu-item .mce-caret { + margin-top: 4px; + *margin-top: 3px; + margin-right: 6px; + border-top: 4px solid transparent; + border-bottom: 4px solid transparent; + border-left: 4px solid #333 +} +.mce-menu-item.mce-selected .mce-caret, .mce-menu-item:focus .mce-caret, .mce-menu-item:hover .mce-caret { + border-left-color: #fff +} +.mce-menu-align .mce-menu-shortcut { + *margin-top: -2px +} +.mce-menu-align .mce-menu-shortcut, .mce-menu-align .mce-caret { + position: absolute; + right: 0 +} +.mce-menu-item.mce-active i { + visibility: visible +} +.mce-menu-item-normal.mce-active { + background-color: #c8def4 +} +.mce-menu-item-preview.mce-active { + border-left: 5px solid #aaa +} +.mce-menu-item-normal.mce-active .mce-text { + color: #333 +} +.mce-menu-item-normal.mce-active:hover .mce-text, .mce-menu-item-normal.mce-active:hover .mce-ico { + color: #fff +} +.mce-menu-item-normal.mce-active:focus .mce-text, .mce-menu-item-normal.mce-active:focus .mce-ico { + color: #fff +} +.mce-menu-item:hover, .mce-menu-item.mce-selected, .mce-menu-item:focus { + text-decoration: none; + color: #fff; + background-color: #0081c2 +} +div.mce-menu .mce-menu-item-sep, .mce-menu-item-sep:hover { + border: 0; + padding: 0; + height: 1px; + margin: 9px 1px; + overflow: hidden; + background: #cbcbcb; + border-bottom: 1px solid #fff; + cursor: default; + filter: none +} +.mce-menu.mce-rtl { + direction: rtl +} +.mce-rtl .mce-menu-item { + text-align: right; + direction: rtl; + padding: 6px 12px 6px 15px +} +.mce-menu-align.mce-rtl .mce-menu-shortcut, .mce-menu-align.mce-rtl .mce-caret { + right: auto; + left: 0 +} +.mce-rtl .mce-menu-item .mce-caret { + margin-left: 6px; + margin-right: 0; + border-right: 4px solid #333; + border-left: 0 +} +.mce-rtl .mce-menu-item.mce-selected .mce-caret, .mce-rtl .mce-menu-item:focus .mce-caret, .mce-rtl .mce-menu-item:hover .mce-caret { + border-left-color: transparent; + border-right-color: #fff +} +.mce-menu { + position: absolute; + left: 0; + top: 0; + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + z-index: 1000; + padding: 5px 0 5px 0; + margin: -1px 0 0; + min-width: 160px; + background: #505866; + border: 1px solid #30353d; + border: 1px solid rgba(0, 0, 0, 0.2); + z-index: 1002; + max-height: 400px; + overflow: auto; + overflow-x: hidden +} +.mce-menu i { + display: none +} +.mce-menu-has-icons i { + display: inline-block; + *display: inline +} +.mce-menu-sub-tr-tl { + margin: -6px 0 0 -1px +} +.mce-menu-sub-br-bl { + margin: 6px 0 0 -1px +} +.mce-menu-sub-tl-tr { + margin: -6px 0 0 1px +} +.mce-menu-sub-bl-br { + margin: 6px 0 0 1px +} +.mce-listbox button { + text-align: left; + padding-right: 20px; + position: relative +} +.mce-listbox .mce-caret { + position: absolute; + margin-top: -2px; + right: 8px; + top: 50% +} +.mce-rtl .mce-listbox .mce-caret { + right: auto; + left: 8px +} +.mce-rtl .mce-listbox button { + padding-right: 10px; + padding-left: 20px +} +.mce-container-body .mce-resizehandle { + position: absolute; + right: 0; + bottom: 0; + width: 16px; + height: 16px; + visibility: visible; + cursor: s-resize; + margin: 0 +} +.mce-container-body .mce-resizehandle-both { + cursor: se-resize +} +i.mce-i-resize { + color: #333 +} +.mce-selectbox { + background: #fff; + border: 1px solid #c5c5c5 +} +.mce-slider { + border: 1px solid #aaa; + background: #eee; + width: 100px; + height: 10px; + position: relative; + display: block +} +.mce-slider.mce-vertical { + width: 10px; + height: 100px +} +.mce-slider-handle { + border: 1px solid #bbb; + background: #ddd; + display: block; + width: 13px; + height: 13px; + position: absolute; + top: 0; + left: 0; + margin-left: -1px; + margin-top: -2px +} +.mce-spacer { + visibility: hidden +} +.mce-splitbtn .mce-open { + border-left: 1px solid transparent +} +.mce-splitbtn:hover .mce-open { + border-left-color: #23272d +} +.mce-splitbtn button { + padding-right: 6px; + padding-left: 6px +} +.mce-splitbtn .mce-open { + padding-right: 4px; + padding-left: 4px +} +.mce-splitbtn .mce-open.mce-active { + background-color: #74787e; + outline: 1px solid #23272d +} +.mce-splitbtn.mce-btn-small .mce-open { + padding: 0 3px 0 3px +} +.mce-rtl .mce-splitbtn { + direction: rtl; + text-align: right +} +.mce-rtl .mce-splitbtn button { + padding-right: 4px; + padding-left: 4px +} +.mce-rtl .mce-splitbtn .mce-open { + border-left: 0 +} +.mce-stack-layout-item { + display: block +} +.mce-tabs { + display: block; + border-bottom: 1px solid #c5c5c5 +} +.mce-tabs, .mce-tabs+.mce-container-body { + background: #fff +} +.mce-tab { + display: inline-block; + *display: inline; + *zoom: 1; + border: 1px solid #c5c5c5; + border-width: 0 1px 0 0; + background: #e3e3e3; + padding: 8px; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + height: 13px; + cursor: pointer +} +.mce-tab:hover { + background: #fdfdfd +} +.mce-tab.mce-active { + background: #fdfdfd; + border-bottom-color: transparent; + margin-bottom: -1px; + height: 14px +} +.mce-rtl .mce-tabs { + text-align: right; + direction: rtl +} +.mce-rtl .mce-tab { + border-width: 0 0 0 1px +} +.mce-textbox { + background: #fff; + border: 1px solid #c5c5c5; + display: inline-block; + -webkit-transition: border linear .2s, box-shadow linear .2s; + transition: border linear .2s, box-shadow linear .2s; + height: 28px; + resize: none; + padding: 0 4px 0 4px; + white-space: pre-wrap; + *white-space: pre; + color: #333 +} +.mce-textbox:focus, .mce-textbox.mce-focus { + border-color: #59a5e1 +} +.mce-placeholder .mce-textbox { + color: #aaa +} +.mce-textbox.mce-multiline { + padding: 4px; + height: auto +} +.mce-textbox.mce-disabled { + color: #adadad +} +.mce-rtl .mce-textbox { + text-align: right; + direction: rtl +} +.mce-throbber { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + opacity: .6; + filter: alpha(opacity=60); + zoom: 1; + background: #fff url('img/loader.gif') no-repeat center center +} +.mce-throbber-inline { + position: static; + height: 50px +} +@font-face { + font-family: 'tinymce'; + src: url('fonts/tinymce.eot'); + src: url('fonts/tinymce.eot?#iefix') format('embedded-opentype'), url('fonts/tinymce.woff') format('woff'), url('fonts/tinymce.ttf') format('truetype'), url('fonts/tinymce.svg#tinymce') format('svg'); + font-weight: normal; + font-style: normal +} +@font-face { + font-family: 'tinymce-small'; + src: url('fonts/tinymce-small.eot'); + src: url('fonts/tinymce-small.eot?#iefix') format('embedded-opentype'), url('fonts/tinymce-small.woff') format('woff'), url('fonts/tinymce-small.ttf') format('truetype'), url('fonts/tinymce-small.svg#tinymce') format('svg'); + font-weight: normal; + font-style: normal +} +.mce-ico { + font-family: 'tinymce'; + font-style: normal; + font-weight: normal; + font-size: 16px; + line-height: 16px; + vertical-align: text-top; + -webkit-font-smoothing: antialiased; + display: inline-block; + background: transparent center center; + width: 16px; + height: 16px; + color: #fff; + -ie7-icon: ' ' +} +.mce-btn-small .mce-ico { + font-family: 'tinymce-small' +} +.mce-ico, i.mce-i-checkbox { + zoom: expression(this.runtimeStyle['zoom']='1', this.innerHTML=this.currentStyle['-ie7-icon'].substr(1, 1) + ' ') +} +.mce-i-save { + -ie7-icon: "\e000" +} +.mce-i-newdocument { + -ie7-icon: "\e001" +} +.mce-i-fullpage { + -ie7-icon: "\e002" +} +.mce-i-alignleft { + -ie7-icon: "\e003" +} +.mce-i-aligncenter { + -ie7-icon: "\e004" +} +.mce-i-alignright { + -ie7-icon: "\e005" +} +.mce-i-alignjustify { + -ie7-icon: "\e006" +} +.mce-i-alignnone { + -ie7-icon: "\e003" +} +.mce-i-cut { + -ie7-icon: "\e007" +} +.mce-i-paste { + -ie7-icon: "\e008" +} +.mce-i-searchreplace { + -ie7-icon: "\e009" +} +.mce-i-bullist { + -ie7-icon: "\e00a" +} +.mce-i-numlist { + -ie7-icon: "\e00b" +} +.mce-i-indent { + -ie7-icon: "\e00c" +} +.mce-i-outdent { + -ie7-icon: "\e00d" +} +.mce-i-blockquote { + -ie7-icon: "\e00e" +} +.mce-i-undo { + -ie7-icon: "\e00f" +} +.mce-i-redo { + -ie7-icon: "\e010" +} +.mce-i-link { + -ie7-icon: "\e011" +} +.mce-i-unlink { + -ie7-icon: "\e012" +} +.mce-i-anchor { + -ie7-icon: "\e013" +} +.mce-i-image { + -ie7-icon: "\e014" +} +.mce-i-media { + -ie7-icon: "\e015" +} +.mce-i-help { + -ie7-icon: "\e016" +} +.mce-i-code { + -ie7-icon: "\e017" +} +.mce-i-insertdatetime { + -ie7-icon: "\e018" +} +.mce-i-preview { + -ie7-icon: "\e019" +} +.mce-i-forecolor { + -ie7-icon: "\e01a" +} +.mce-i-backcolor { + -ie7-icon: "\e01a" +} +.mce-i-table { + -ie7-icon: "\e01b" +} +.mce-i-hr { + -ie7-icon: "\e01c" +} +.mce-i-removeformat { + -ie7-icon: "\e01d" +} +.mce-i-subscript { + -ie7-icon: "\e01e" +} +.mce-i-superscript { + -ie7-icon: "\e01f" +} +.mce-i-charmap { + -ie7-icon: "\e020" +} +.mce-i-emoticons { + -ie7-icon: "\e021" +} +.mce-i-print { + -ie7-icon: "\e022" +} +.mce-i-fullscreen { + -ie7-icon: "\e023" +} +.mce-i-spellchecker { + -ie7-icon: "\e024" +} +.mce-i-nonbreaking { + -ie7-icon: "\e025" +} +.mce-i-template { + -ie7-icon: "\e026" +} +.mce-i-pagebreak { + -ie7-icon: "\e027" +} +.mce-i-restoredraft { + -ie7-icon: "\e028" +} +.mce-i-untitled { + -ie7-icon: "\e029" +} +.mce-i-bold { + -ie7-icon: "\e02a" +} +.mce-i-italic { + -ie7-icon: "\e02b" +} +.mce-i-underline { + -ie7-icon: "\e02c" +} +.mce-i-strikethrough { + -ie7-icon: "\e02d" +} +.mce-i-visualchars { + -ie7-icon: "\e02e" +} +.mce-i-ltr { + -ie7-icon: "\e02f" +} +.mce-i-rtl { + -ie7-icon: "\e030" +} +.mce-i-copy { + -ie7-icon: "\e031" +} +.mce-i-resize { + -ie7-icon: "\e032" +} +.mce-i-browse { + -ie7-icon: "\e034" +} +.mce-i-pastetext { + -ie7-icon: "\e035" +} +.mce-i-rotateleft { + -ie7-icon: "\eaa8" +} +.mce-i-rotateright { + -ie7-icon: "\eaa9" +} +.mce-i-crop { + -ie7-icon: "\ee78" +} +.mce-i-editimage { + -ie7-icon: "\e914" +} +.mce-i-options { + -ie7-icon: "\ec6a" +} +.mce-i-flipv { + -ie7-icon: "\eaaa" +} +.mce-i-fliph { + -ie7-icon: "\eaac" +} +.mce-i-zoomin { + -ie7-icon: "\eb35" +} +.mce-i-zoomout { + -ie7-icon: "\eb36" +} +.mce-i-sun { + -ie7-icon: "\eccc" +} +.mce-i-moon { + -ie7-icon: "\eccd" +} +.mce-i-arrowleft { + -ie7-icon: "\edc0" +} +.mce-i-arrowright { + -ie7-icon: "\edb8" +} +.mce-i-drop { + -ie7-icon: "\e934" +} +.mce-i-contrast { + -ie7-icon: "\ecd4" +} +.mce-i-sharpen { + -ie7-icon: "\eba7" +} +.mce-i-palette { + -ie7-icon: "\e92a" +} +.mce-i-resize2 { + -ie7-icon: "\edf9" +} +.mce-i-orientation { + -ie7-icon: "\e601" +} +.mce-i-invert { + -ie7-icon: "\e602" +} +.mce-i-gamma { + -ie7-icon: "\e600" +} +.mce-i-remove { + -ie7-icon: "\ed6a" +} +.mce-i-codesample { + -ie7-icon: "\e603" +} +.mce-i-checkbox, .mce-i-selected { + -ie7-icon: "\e033" +} +.mce-i-selected { + visibility: hidden +} +.mce-i-backcolor { + background: #BBB +} diff --git a/css/tinymce-skin/skin.min.css b/css/tinymce-skin/skin.min.css new file mode 100644 index 0000000..9f2dffc --- /dev/null +++ b/css/tinymce-skin/skin.min.css @@ -0,0 +1,1888 @@ +.mce-container, .mce-container *, .mce-widget, .mce-widget *, .mce-reset { + margin: 0; + padding: 0; + border: 0; + outline: 0; + vertical-align: top; + background: transparent; + text-decoration: none; + color: #333; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + text-shadow: none; + float: none; + position: static; + width: auto; + height: auto; + white-space: nowrap; + cursor: inherit; + -webkit-tap-highlight-color: transparent; + line-height: normal; + font-weight: normal; + text-align: left; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; + direction: ltr; + max-width: none +} +.mce-widget button { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box +} +.mce-container *[unselectable] { + -moz-user-select: none; + -webkit-user-select: none; + -o-user-select: none; + user-select: none +} +.mce-fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + transition: opacity .15s linear +} +.mce-fade.mce-in { + opacity: 1 +} +.mce-tinymce { + visibility: inherit !important; + position: relative +} +.mce-fullscreen { + border: 0; + padding: 0; + margin: 0; + overflow: hidden; + height: 100%; + z-index: 100 +} +div.mce-fullscreen { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: auto +} +.mce-tinymce { + display: block +} +.mce-wordcount { + position: absolute; + top: 0; + right: 0; + padding: 8px +} +div.mce-edit-area { + background: #FFF; + filter: none +} +.mce-statusbar { + position: relative +} +.mce-statusbar .mce-container-body { + position: relative +} +.mce-fullscreen .mce-resizehandle { + display: none +} +.mce-charmap { + border-collapse: collapse +} +.mce-charmap td { + cursor: default; + border: 1px solid #9e9e9e; + width: 20px; + height: 20px; + line-height: 20px; + text-align: center; + vertical-align: middle; + padding: 2px +} +.mce-charmap td div { + text-align: center +} +.mce-charmap td:hover { + background: #d9d9d9 +} +.mce-grid td.mce-grid-cell div { + border: 1px solid #d6d6d6; + width: 15px; + height: 15px; + margin: 0px; + cursor: pointer +} +.mce-grid td.mce-grid-cell div:focus { + border-color: #a1a1a1 +} +.mce-grid td.mce-grid-cell div[disabled] { + cursor: not-allowed +} +.mce-grid { + border-spacing: 2px; + border-collapse: separate +} +.mce-grid a { + display: block; + border: 1px solid transparent +} +.mce-grid a:hover, .mce-grid a:focus { + border-color: #a1a1a1 +} +.mce-grid-border { + margin: 0 4px 0 4px +} +.mce-grid-border a { + border-color: #d6d6d6; + width: 13px; + height: 13px +} +.mce-grid-border a:hover, .mce-grid-border a.mce-active { + border-color: #a1a1a1; + background: #c8def4 +} +.mce-text-center { + text-align: center +} +div.mce-tinymce-inline { + width: 100% +} +.mce-colorbtn-trans div { + text-align: center; + vertical-align: middle; + font-weight: bold; + font-size: 20px; + line-height: 16px; + color: #707070 +} +.mce-monospace { + font-family: "Courier New", Courier, monospace +} +.mce-toolbar-grp { + padding: 2px 0 +} +.mce-toolbar-grp .mce-flow-layout-item { + margin-bottom: 0 +} +.mce-rtl .mce-wordcount { + left: 0; + right: auto +} +.mce-croprect-container { + position: absolute; + top: 0; + left: 0 +} +.mce-croprect-handle { + position: absolute; + top: 0; + left: 0; + width: 20px; + height: 20px; + border: 2px solid white +} +.mce-croprect-handle-nw { + border-width: 2px 0 0 2px; + margin: -2px 0 0 -2px; + cursor: nw-resize; + top: 100px; + left: 100px +} +.mce-croprect-handle-ne { + border-width: 2px 2px 0 0; + margin: -2px 0 0 -20px; + cursor: ne-resize; + top: 100px; + left: 200px +} +.mce-croprect-handle-sw { + border-width: 0 0 2px 2px; + margin: -20px 2px 0 -2px; + cursor: sw-resize; + top: 200px; + left: 100px +} +.mce-croprect-handle-se { + border-width: 0 2px 2px 0; + margin: -20px 0 0 -20px; + cursor: se-resize; + top: 200px; + left: 200px +} +.mce-croprect-handle-move { + position: absolute; + cursor: move; + border: 0 +} +.mce-croprect-block { + opacity: .3; + filter: alpha(opacity=30); + zoom: 1; + position: absolute; + background: black +} +.mce-imagepanel { + overflow: auto; + background: black +} +.mce-imagepanel img { + position: absolute +} +.mce-imagetool.mce-btn .mce-ico { + display: block; + width: 20px; + height: 20px; + text-align: center; + line-height: 20px; + font-size: 20px; + padding: 5px +} +.mce-container, .mce-container-body { + display: block +} +.mce-autoscroll { + overflow: hidden +} +.mce-scrollbar { + position: absolute; + width: 7px; + height: 100%; + top: 2px; + right: 2px; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-scrollbar-h { + top: auto; + right: auto; + left: 2px; + bottom: 2px; + width: 100%; + height: 7px +} +.mce-scrollbar-thumb { + position: absolute; + background-color: #000; + border: 1px solid #888; + border-color: rgba(85, 85, 85, 0.6); + width: 5px; + height: 100% +} +.mce-scrollbar-h .mce-scrollbar-thumb { + width: 100%; + height: 5px +} +.mce-scrollbar:hover, .mce-scrollbar.mce-active { + background-color: #AAA; + opacity: .6; + filter: alpha(opacity=60); + zoom: 1 +} +.mce-scroll { + position: relative +} +.mce-panel { + border: 0 solid #606671; + border: 0 solid #9e9e9e; + background-color: #888d96 +} +.mce-floatpanel { + position: absolute +} +.mce-floatpanel.mce-fixed { + position: fixed +} +.mce-floatpanel .mce-arrow, .mce-floatpanel .mce-arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid +} +.mce-floatpanel .mce-arrow { + border-width: 11px +} +.mce-floatpanel .mce-arrow:after { + border-width: 10px; + content: "" +} +.mce-floatpanel.mce-popover { + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + top: 0; + left: 0; + background: #fff; + border: 1px solid #9e9e9e; + border: 1px solid rgba(0, 0, 0, 0.25) +} +.mce-floatpanel.mce-popover.mce-bottom { + margin-top: 10px; + *margin-top: 0 +} +.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #9e9e9e; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px +} +.mce-floatpanel.mce-popover.mce-bottom>.mce-arrow:after { + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #fff +} +.mce-floatpanel.mce-popover.mce-bottom.mce-start { + margin-left: -22px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-start>.mce-arrow { + left: 20px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-end { + margin-left: 22px +} +.mce-floatpanel.mce-popover.mce-bottom.mce-end>.mce-arrow { + right: 10px; + left: auto +} +.mce-fullscreen { + border: 0; + padding: 0; + margin: 0; + overflow: hidden; + height: 100% +} +div.mce-fullscreen { + position: fixed; + top: 0; + left: 0 +} +#mce-modal-block { + opacity: 0; + filter: alpha(opacity=0); + zoom: 1; + position: fixed; + left: 0; + top: 0; + width: 100%; + height: 100%; + background: #000 +} +#mce-modal-block.mce-in { + opacity: .3; + filter: alpha(opacity=30); + zoom: 1 +} +.mce-window-move { + cursor: move +} +.mce-window { + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + background: #fff; + position: fixed; + top: 0; + left: 0; + opacity: 0; + -webkit-transition: opacity 150ms ease-in; + transition: opacity 150ms ease-in +} +.mce-window.mce-in { + opacity: 1 +} +.mce-window-head { + padding: 9px 15px; + border-bottom: 1px solid #c4c4c4; + position: relative +} +.mce-window-head .mce-close { + position: absolute; + right: 15px; + top: 9px; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #858585; + cursor: pointer; + height: 20px; + overflow: hidden +} +.mce-close:hover { + color: #adadad +} +.mce-window-head .mce-title { + line-height: 20px; + font-size: 20px; + font-weight: bold; + text-rendering: optimizelegibility; + padding-right: 10px +} +.mce-window .mce-container-body { + display: block +} +.mce-foot { + display: block; + background-color: #fff; + border-top: 1px solid #c4c4c4 +} +.mce-window-head .mce-dragh { + position: absolute; + top: 0; + left: 0; + cursor: move; + width: 90%; + height: 100% +} +.mce-window iframe { + width: 100%; + height: 100% +} +.mce-window-body .mce-listbox { + border-color: #23272d +} +.mce-rtl .mce-window-head .mce-close { + position: absolute; + right: auto; + left: 15px +} +.mce-rtl .mce-window-head .mce-dragh { + left: auto; + right: 0 +} +.mce-rtl .mce-window-head .mce-title { + direction: rtl; + text-align: right +} +.mce-tooltip { + position: absolute; + padding: 5px; + opacity: .8; + filter: alpha(opacity=80); + zoom: 1 +} +.mce-tooltip-inner { + font-size: 11px; + background-color: #000; + color: #fff; + max-width: 200px; + padding: 5px 8px 4px 8px; + text-align: center; + white-space: normal +} +.mce-tooltip-arrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 5px dashed #000 +} +.mce-tooltip-arrow-n { + border-bottom-color: #000 +} +.mce-tooltip-arrow-s { + border-top-color: #000 +} +.mce-tooltip-arrow-e { + border-left-color: #000 +} +.mce-tooltip-arrow-w { + border-right-color: #000 +} +.mce-tooltip-nw, .mce-tooltip-sw { + margin-left: -14px +} +.mce-tooltip-n .mce-tooltip-arrow { + top: 0px; + left: 50%; + margin-left: -5px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-nw .mce-tooltip-arrow { + top: 0; + left: 10px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-ne .mce-tooltip-arrow { + top: 0; + right: 10px; + border-bottom-style: solid; + border-top: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-s .mce-tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-sw .mce-tooltip-arrow { + bottom: 0; + left: 10px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-se .mce-tooltip-arrow { + bottom: 0; + right: 10px; + border-top-style: solid; + border-bottom: none; + border-left-color: transparent; + border-right-color: transparent +} +.mce-tooltip-e .mce-tooltip-arrow { + right: 0; + top: 50%; + margin-top: -5px; + border-left-style: solid; + border-right: none; + border-top-color: transparent; + border-bottom-color: transparent +} +.mce-tooltip-w .mce-tooltip-arrow { + left: 0; + top: 50%; + margin-top: -5px; + border-right-style: solid; + border-left: none; + border-top-color: transparent; + border-bottom-color: transparent +} +.mce-progress { + display: inline-block; + position: relative; + height: 20px +} +.mce-progress .mce-bar-container { + display: inline-block; + width: 100px; + height: 100%; + margin-right: 8px; + border: 1px solid #ccc; + overflow: hidden +} +.mce-progress .mce-text { + display: inline-block; + margin-top: auto; + margin-bottom: auto; + font-size: 14px; + width: 40px; + color: #333 +} +.mce-bar { + display: block; + width: 0%; + height: 100%; + background-color: #d7d7d7; + -webkit-transition: width .2s ease; + transition: width .2s ease +} +.mce-notification { + position: absolute; + background-color: #f0f0f0; + padding: 5px; + margin-top: 5px; + opacity: .8; + filter: alpha(opacity=80); + zoom: 1; + border-width: 1px; + border-style: solid; + border-color: #ccc +} +.mce-notification-success { + background-color: #dff0d8; + border-color: #d6e9c6 +} +.mce-notification-info { + background-color: #d9edf7; + border-color: #779ecb +} +.mce-notification-warning { + background-color: #fcf8e3; + border-color: #faebcc +} +.mce-notification-error { + background-color: #f2dede; + border-color: #ebccd1 +} +.mce-notification.mce-has-close { + padding-right: 15px +} +.mce-notification .mce-ico { + margin-top: 5px +} +.mce-notification-inner { + display: inline-block; + font-size: 14px; + margin: 5px 8px 4px 8px; + text-align: center; + white-space: normal; + color: #31708f +} +.mce-notification-inner a { + text-decoration: underline; + cursor: pointer +} +.mce-notification .mce-progress { + margin-right: 8px +} +.mce-notification .mce-progress .mce-text { + margin-top: 5px +} +.mce-notification *, .mce-notification .mce-progress .mce-text { + color: #333 +} +.mce-notification .mce-progress .mce-bar-container { + border-color: #ccc +} +.mce-notification .mce-progress .mce-bar-container .mce-bar { + background-color: #333 +} +.mce-notification-success *, .mce-notification-success .mce-progress .mce-text { + color: #3c763d +} +.mce-notification-success .mce-progress .mce-bar-container { + border-color: #d6e9c6 +} +.mce-notification-success .mce-progress .mce-bar-container .mce-bar { + background-color: #3c763d +} +.mce-notification-info *, .mce-notification-info .mce-progress .mce-text { + color: #31708f +} +.mce-notification-info .mce-progress .mce-bar-container { + border-color: #779ecb +} +.mce-notification-info .mce-progress .mce-bar-container .mce-bar { + background-color: #31708f +} +.mce-notification-warning *, .mce-notification-warning .mce-progress .mce-text { + color: #8a6d3b +} +.mce-notification-warning .mce-progress .mce-bar-container { + border-color: #faebcc +} +.mce-notification-warning .mce-progress .mce-bar-container .mce-bar { + background-color: #8a6d3b +} +.mce-notification-error *, .mce-notification-error .mce-progress .mce-text { + color: #a94442 +} +.mce-notification-error .mce-progress .mce-bar-container { + border-color: #ebccd1 +} +.mce-notification-error .mce-progress .mce-bar-container .mce-bar { + background-color: #a94442 +} +.mce-notification .mce-close { + position: absolute; + top: 6px; + right: 8px; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #858585; + cursor: pointer; + height: 20px; + overflow: hidden +} +.mce-abs-layout { + position: relative +} +body .mce-abs-layout-item, .mce-abs-end { + position: absolute +} +.mce-abs-end { + width: 1px; + height: 1px +} +.mce-container-body.mce-abs-layout { + overflow: hidden +} +.mce-btn { + border: 1px solid #853e47; + border-color: rgba(255, 0, 0, 0) rgba(255, 0, 0, 0) rgba(255, 0, 0, 0) transparent; + position: relative; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + display: inline-block; + *display: inline; + *zoom: 1; + background-color: #878c94 +} +.mce-btn:hover, .mce-btn:focus { + color: #fff; + background-color: #7b7f86; + border-color: #23272d +} +.mce-btn.mce-disabled button, .mce-btn.mce-disabled:hover button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-btn.mce-active, .mce-btn.mce-active:hover { + background-color: #74787e; + border-color: #23272d +} +.mce-btn:active { + background-color: #787c83; + border-color: #23272d +} +.mce-btn button { + padding: 4px 8px; + font-size: 14px; + line-height: 20px; + *line-height: 16px; + cursor: pointer; + color: #fff; + text-align: center; + overflow: visible; + -webkit-appearance: none +} +.mce-btn button::-moz-focus-inner { + border: 0; + padding: 0 +} +.mce-btn i { + text-shadow: 1px 1px #505866 +} +.mce-primary { + min-width: 50px; + color: #fff; + border: 1px solid transparent; + border-color: transparent; + background-color: #006dcc +} +.mce-primary:hover, .mce-primary:focus { + background-color: #005fb3; + border-color: transparent +} +.mce-primary.mce-disabled button, .mce-primary.mce-disabled:hover button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-primary.mce-active, .mce-primary.mce-active:hover, .mce-primary:not(.mce-disabled):active { + background-color: #005299 +} +.mce-primary button, .mce-primary button i { + color: #fff; + text-shadow: 1px 1px #333 +} +.mce-btn .mce-txt { + font-size: inherit; + line-height: inherit; + color: inherit +} +.mce-btn-large button { + padding: 9px 14px; + font-size: 16px; + line-height: normal +} +.mce-btn-large i { + margin-top: 2px +} +.mce-btn-small button { + padding: 1px 5px; + font-size: 12px; + *padding-bottom: 2px +} +.mce-btn-small i { + line-height: 20px; + vertical-align: top; + *line-height: 18px +} +.mce-btn .mce-caret { + margin-top: 8px; + margin-left: 0 +} +.mce-btn-small .mce-caret { + margin-top: 8px; + margin-left: 0 +} +.mce-caret { + display: inline-block; + *display: inline; + *zoom: 1; + width: 0; + height: 0; + vertical-align: top; + border-top: 4px solid #fff; + border-right: 4px solid transparent; + border-left: 4px solid transparent; + content: "" +} +.mce-disabled .mce-caret { + border-top-color: #aaa +} +.mce-caret.mce-up { + border-bottom: 4px solid #fff; + border-top: 0 +} +.mce-btn-flat { + border: 0; + background: transparent; + filter: none +} +.mce-btn-flat:hover, .mce-btn-flat.mce-active, .mce-btn-flat:focus, .mce-btn-flat:active { + border: 0; + background: #3a3f49; + filter: none +} +.mce-btn-has-text .mce-ico { + padding-right: 5px +} +.mce-rtl .mce-btn button { + direction: rtl +} +.mce-btn-group .mce-btn { + border-width: 1px; + margin: 0; + margin-left: 2px +} +.mce-btn-group:not(:first-child) { + border-left: 1px solid #2e333b; + padding-left: 3px; + margin-left: 3px +} +.mce-btn-group .mce-first { + margin-left: 0 +} +.mce-btn-group .mce-btn.mce-flow-layout-item { + margin: 0 +} +.mce-rtl .mce-btn-group .mce-btn { + margin-left: 0; + margin-right: 2px +} +.mce-rtl .mce-btn-group .mce-first { + margin-right: 0 +} +.mce-rtl .mce-btn-group:not(:first-child) { + border-left: none; + border-right: 1px solid #2e333b; + padding-right: 4px; + margin-right: 4px +} +.mce-checkbox { + cursor: pointer +} +i.mce-i-checkbox { + margin: 0 3px 0 0; + border: 1px solid #c5c5c5; + background-color: #878c94; + text-indent: -10em; + *font-size: 0; + *line-height: 0; + *text-indent: 0; + overflow: hidden +} +.mce-checked i.mce-i-checkbox { + color: #fff; + font-size: 16px; + line-height: 16px; + text-indent: 0 +} +.mce-checkbox:focus i.mce-i-checkbox, .mce-checkbox.mce-focus i.mce-i-checkbox { + border: 1px solid #59a5e1 +} +.mce-checkbox.mce-disabled .mce-label, .mce-checkbox.mce-disabled i.mce-i-checkbox { + color: #444952 +} +.mce-checkbox .mce-label { + vertical-align: middle +} +.mce-rtl .mce-checkbox { + direction: rtl; + text-align: right +} +.mce-rtl i.mce-i-checkbox { + margin: 0 0 0 3px +} +.mce-combobox { + display: inline-block; + *display: inline; + *zoom: 1; + *height: 32px +} +.mce-combobox input { + border: 1px solid #c5c5c5; + border-right-color: #c5c5c5; + height: 28px +} +.mce-combobox.mce-disabled input { + color: #adadad +} +.mce-combobox .mce-btn { + border: 1px solid #c5c5c5; + border-left: 0 +} +.mce-combobox button { + padding-right: 8px; + padding-left: 8px +} +.mce-combobox.mce-disabled .mce-btn button { + cursor: default; + opacity: .4; + filter: alpha(opacity=40); + zoom: 1 +} +.mce-colorbox i { + border: 1px solid #c5c5c5; + width: 14px; + height: 14px +} +.mce-colorbutton .mce-ico { + position: relative +} +.mce-colorbutton-grid { + margin: 4px +} +.mce-colorbutton button { + padding-right: 6px; + padding-left: 6px +} +.mce-colorbutton .mce-preview { + padding-right: 3px; + display: block; + position: absolute; + left: 50%; + top: 50%; + margin-left: -17px; + margin-top: 7px; + background: gray; + width: 13px; + height: 2px; + overflow: hidden +} +.mce-colorbutton.mce-btn-small .mce-preview { + margin-left: -16px; + padding-right: 0; + width: 16px +} +.mce-colorbutton .mce-open { + padding-left: 4px; + padding-right: 4px; + border-left: 1px solid transparent +} +.mce-colorbutton:hover .mce-open { + border-color: #23272d +} +.mce-colorbutton.mce-btn-small .mce-open { + padding: 0 3px 0 3px +} +.mce-rtl .mce-colorbutton { + direction: rtl +} +.mce-rtl .mce-colorbutton .mce-preview { + margin-left: 0; + padding-right: 0; + padding-left: 3px +} +.mce-rtl .mce-colorbutton.mce-btn-small .mce-preview { + margin-left: 0; + padding-right: 0; + padding-left: 2px +} +.mce-rtl .mce-colorbutton .mce-open { + padding-left: 4px; + padding-right: 4px; + border-left: 0 +} +.mce-colorpicker { + position: relative; + width: 250px; + height: 220px +} +.mce-colorpicker-sv { + position: absolute; + top: 0; + left: 0; + width: 90%; + height: 100%; + border: 1px solid #c5c5c5; + cursor: crosshair; + overflow: hidden +} +.mce-colorpicker-h-chunk { + width: 100% +} +.mce-colorpicker-overlay1, .mce-colorpicker-overlay2 { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0 +} +.mce-colorpicker-overlay1 { + filter: progid: DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#ffffff', endColorstr='#00ffffff'); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#ffffff', endColorstr='#00ffffff')"; + background: linear-gradient(to right, #fff, rgba(255, 255, 255, 0)) +} +.mce-colorpicker-overlay2 { + filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#00000000', endColorstr='#000000'); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#00000000', endColorstr='#000000')"; + background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000) +} +.mce-colorpicker-selector1 { + background: none; + position: absolute; + width: 12px; + height: 12px; + margin: -8px 0 0 -8px; + border: 1px solid black; + border-radius: 50% +} +.mce-colorpicker-selector2 { + position: absolute; + width: 10px; + height: 10px; + border: 1px solid white; + border-radius: 50% +} +.mce-colorpicker-h { + position: absolute; + top: 0; + right: 0; + width: 6.5%; + height: 100%; + border: 1px solid #c5c5c5; + cursor: crosshair +} +.mce-colorpicker-h-marker { + margin-top: -4px; + position: absolute; + top: 0; + left: -1px; + width: 100%; + border: 1px solid #333; + background: #fff; + height: 4px; + z-index: 100 +} +.mce-path { + display: inline-block; + *display: inline; + *zoom: 1; + padding: 8px; + white-space: normal +} +.mce-path .mce-txt { + display: inline-block; + padding-right: 3px +} +.mce-path .mce-path-body { + display: inline-block +} +.mce-path-item { + display: inline-block; + *display: inline; + *zoom: 1; + cursor: pointer; + color: #333 +} +.mce-path-item:hover { + text-decoration: underline +} +.mce-path-item:focus { + background: #666; + color: #fff +} +.mce-path .mce-divider { + display: inline +} +.mce-disabled .mce-path-item { + color: #aaa +} +.mce-rtl .mce-path { + direction: rtl +} +.mce-fieldset { + border: 0 solid #9E9E9E +} +.mce-fieldset>.mce-container-body { + margin-top: -15px +} +.mce-fieldset-title { + margin-left: 5px; + padding: 0 5px 0 5px +} +.mce-fit-layout { + display: inline-block; + *display: inline; + *zoom: 1 +} +.mce-fit-layout-item { + position: absolute +} +.mce-flow-layout-item { + display: inline-block; + *display: inline; + *zoom: 1 +} +.mce-flow-layout-item { + margin: 2px 0 2px 2px +} +.mce-flow-layout-item.mce-last { + margin-right: 2px +} +.mce-flow-layout { + white-space: normal +} +.mce-tinymce-inline .mce-flow-layout { + white-space: nowrap +} +.mce-rtl .mce-flow-layout { + text-align: right; + direction: rtl +} +.mce-rtl .mce-flow-layout-item { + margin: 2px 2px 2px 0 +} +.mce-rtl .mce-flow-layout-item.mce-last { + margin-left: 2px +} +.mce-iframe { + border: 0 solid #9e9e9e; + width: 100%; + height: 100% +} +.mce-label { + display: inline-block; + *display: inline; + *zoom: 1; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + overflow: hidden +} +.mce-label.mce-autoscroll { + overflow: auto +} +.mce-label.mce-disabled { + color: #aaa +} +.mce-label.mce-multiline { + white-space: pre-wrap +} +.mce-label.mce-error { + color: #a00 +} +.mce-rtl .mce-label { + text-align: right; + direction: rtl +} +.mce-menubar .mce-menubtn { + border-color: transparent; + background: transparent; + filter: none +} +.mce-menubar .mce-menubtn button { + color: +} +.mce-menubar { + border: 1px solid #7f8288 +} +.mce-menubar .mce-menubtn button span { + color: #333 +} +.mce-menubar .mce-caret { + border-top-color: #333 +} +.mce-menubar .mce-menubtn:hover, .mce-menubar .mce-menubtn.mce-active, .mce-menubar .mce-menubtn:focus { + border-color: #23272d; + background: #505866; + filter: none +} +.mce-menubtn button { + color: #fff +} +.mce-menubtn.mce-btn-small span { + font-size: 12px +} +.mce-menubtn.mce-fixed-width span { + display: inline-block; + overflow-x: hidden; + text-overflow: ellipsis; + width: 90px +} +.mce-menubtn.mce-fixed-width.mce-btn-small span { + width: 70px +} +.mce-menubtn .mce-caret { + *margin-top: 6px +} +.mce-rtl .mce-menubtn button { + direction: rtl; + text-align: right +} +.mce-menu-item { + display: block; + padding: 6px 15px 6px 12px; + clear: both; + font-weight: normal; + line-height: 20px; + color: #333; + white-space: nowrap; + cursor: pointer; + line-height: normal; + border-left: 4px solid transparent; + margin-bottom: 1px +} +.mce-menu-item .mce-ico, .mce-menu-item .mce-text { + color: #333 +} +.mce-menu-item.mce-disabled .mce-text, .mce-menu-item.mce-disabled .mce-ico { + color: #444952 +} +.mce-menu-item:hover .mce-text, .mce-menu-item.mce-selected .mce-text, .mce-menu-item:focus .mce-text { + color: #fff +} +.mce-menu-item:hover .mce-ico, .mce-menu-item.mce-selected .mce-ico, .mce-menu-item:focus .mce-ico { + color: #fff +} +.mce-menu-item.mce-disabled:hover { + background: #ccc +} +.mce-menu-shortcut { + display: inline-block; + color: #444952 +} +.mce-menu-shortcut { + display: inline-block; + *display: inline; + *zoom: 1; + padding: 0 15px 0 20px +} +.mce-menu-item:hover .mce-menu-shortcut, .mce-menu-item.mce-selected .mce-menu-shortcut, .mce-menu-item:focus .mce-menu-shortcut { + color: #fff +} +.mce-menu-item .mce-caret { + margin-top: 4px; + *margin-top: 3px; + margin-right: 6px; + border-top: 4px solid transparent; + border-bottom: 4px solid transparent; + border-left: 4px solid #333 +} +.mce-menu-item.mce-selected .mce-caret, .mce-menu-item:focus .mce-caret, .mce-menu-item:hover .mce-caret { + border-left-color: #fff +} +.mce-menu-align .mce-menu-shortcut { + *margin-top: -2px +} +.mce-menu-align .mce-menu-shortcut, .mce-menu-align .mce-caret { + position: absolute; + right: 0 +} +.mce-menu-item.mce-active i { + visibility: visible +} +.mce-menu-item-normal.mce-active { + background-color: #c8def4 +} +.mce-menu-item-preview.mce-active { + border-left: 5px solid #aaa +} +.mce-menu-item-normal.mce-active .mce-text { + color: #333 +} +.mce-menu-item-normal.mce-active:hover .mce-text, .mce-menu-item-normal.mce-active:hover .mce-ico { + color: #fff +} +.mce-menu-item-normal.mce-active:focus .mce-text, .mce-menu-item-normal.mce-active:focus .mce-ico { + color: #fff +} +.mce-menu-item:hover, .mce-menu-item.mce-selected, .mce-menu-item:focus { + text-decoration: none; + color: #fff; + background-color: #0081c2 +} +div.mce-menu .mce-menu-item-sep, .mce-menu-item-sep:hover { + border: 0; + padding: 0; + height: 1px; + margin: 9px 1px; + overflow: hidden; + background: #cbcbcb; + border-bottom: 1px solid #fff; + cursor: default; + filter: none +} +.mce-menu.mce-rtl { + direction: rtl +} +.mce-rtl .mce-menu-item { + text-align: right; + direction: rtl; + padding: 6px 12px 6px 15px +} +.mce-menu-align.mce-rtl .mce-menu-shortcut, .mce-menu-align.mce-rtl .mce-caret { + right: auto; + left: 0 +} +.mce-rtl .mce-menu-item .mce-caret { + margin-left: 6px; + margin-right: 0; + border-right: 4px solid #333; + border-left: 0 +} +.mce-rtl .mce-menu-item.mce-selected .mce-caret, .mce-rtl .mce-menu-item:focus .mce-caret, .mce-rtl .mce-menu-item:hover .mce-caret { + border-left-color: transparent; + border-right-color: #fff +} +.mce-menu { + position: absolute; + left: 0; + top: 0; + filter: progid: DXImageTransform.Microsoft.gradient(enabled=false); + background: transparent; + z-index: 1000; + padding: 5px 0 5px 0; + margin: -1px 0 0; + min-width: 160px; + background: #505866; + border: 1px solid #30353d; + border: 1px solid rgba(0, 0, 0, 0.2); + z-index: 1002; + max-height: 400px; + overflow: auto; + overflow-x: hidden +} +.mce-menu i { + display: none +} +.mce-menu-has-icons i { + display: inline-block; + *display: inline +} +.mce-menu-sub-tr-tl { + margin: -6px 0 0 -1px +} +.mce-menu-sub-br-bl { + margin: 6px 0 0 -1px +} +.mce-menu-sub-tl-tr { + margin: -6px 0 0 1px +} +.mce-menu-sub-bl-br { + margin: 6px 0 0 1px +} +.mce-listbox button { + text-align: left; + padding-right: 20px; + position: relative +} +.mce-listbox .mce-caret { + position: absolute; + margin-top: -2px; + right: 8px; + top: 50% +} +.mce-rtl .mce-listbox .mce-caret { + right: auto; + left: 8px +} +.mce-rtl .mce-listbox button { + padding-right: 10px; + padding-left: 20px +} +.mce-container-body .mce-resizehandle { + position: absolute; + right: 0; + bottom: 0; + width: 16px; + height: 16px; + visibility: visible; + cursor: s-resize; + margin: 0 +} +.mce-container-body .mce-resizehandle-both { + cursor: se-resize +} +i.mce-i-resize { + color: #333 +} +.mce-selectbox { + background: #fff; + border: 1px solid #c5c5c5 +} +.mce-slider { + border: 1px solid #aaa; + background: #eee; + width: 100px; + height: 10px; + position: relative; + display: block +} +.mce-slider.mce-vertical { + width: 10px; + height: 100px +} +.mce-slider-handle { + border: 1px solid #bbb; + background: #ddd; + display: block; + width: 13px; + height: 13px; + position: absolute; + top: 0; + left: 0; + margin-left: -1px; + margin-top: -2px +} +.mce-spacer { + visibility: hidden +} +.mce-splitbtn .mce-open { + border-left: 1px solid transparent +} +.mce-splitbtn:hover .mce-open { + border-left-color: #23272d +} +.mce-splitbtn button { + padding-right: 6px; + padding-left: 6px +} +.mce-splitbtn .mce-open { + padding-right: 4px; + padding-left: 4px +} +.mce-splitbtn .mce-open.mce-active { + background-color: #74787e; + outline: 1px solid #23272d +} +.mce-splitbtn.mce-btn-small .mce-open { + padding: 0 3px 0 3px +} +.mce-rtl .mce-splitbtn { + direction: rtl; + text-align: right +} +.mce-rtl .mce-splitbtn button { + padding-right: 4px; + padding-left: 4px +} +.mce-rtl .mce-splitbtn .mce-open { + border-left: 0 +} +.mce-stack-layout-item { + display: block +} +.mce-tabs { + display: block; + border-bottom: 1px solid #c5c5c5 +} +.mce-tabs, .mce-tabs+.mce-container-body { + background: #fff +} +.mce-tab { + display: inline-block; + *display: inline; + *zoom: 1; + border: 1px solid #c5c5c5; + border-width: 0 1px 0 0; + background: #e3e3e3; + padding: 8px; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + height: 13px; + cursor: pointer +} +.mce-tab:hover { + background: #fdfdfd +} +.mce-tab.mce-active { + background: #fdfdfd; + border-bottom-color: transparent; + margin-bottom: -1px; + height: 14px +} +.mce-rtl .mce-tabs { + text-align: right; + direction: rtl +} +.mce-rtl .mce-tab { + border-width: 0 0 0 1px +} +.mce-textbox { + background: #fff; + border: 1px solid #c5c5c5; + display: inline-block; + -webkit-transition: border linear .2s, box-shadow linear .2s; + transition: border linear .2s, box-shadow linear .2s; + height: 28px; + resize: none; + padding: 0 4px 0 4px; + white-space: pre-wrap; + *white-space: pre; + color: #333 +} +.mce-textbox:focus, .mce-textbox.mce-focus { + border-color: #59a5e1 +} +.mce-placeholder .mce-textbox { + color: #aaa +} +.mce-textbox.mce-multiline { + padding: 4px; + height: auto +} +.mce-textbox.mce-disabled { + color: #adadad +} +.mce-rtl .mce-textbox { + text-align: right; + direction: rtl +} +.mce-throbber { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + opacity: .6; + filter: alpha(opacity=60); + zoom: 1; + background: #fff url('img/loader.gif') no-repeat center center +} +.mce-throbber-inline { + position: static; + height: 50px +} +@font-face { + font-family: 'tinymce'; + src: url('fonts/tinymce.eot'); + src: url('fonts/tinymce.eot?#iefix') format('embedded-opentype'), url('fonts/tinymce.woff') format('woff'), url('fonts/tinymce.ttf') format('truetype'), url('fonts/tinymce.svg#tinymce') format('svg'); + font-weight: normal; + font-style: normal +} +@font-face { + font-family: 'tinymce-small'; + src: url('fonts/tinymce-small.eot'); + src: url('fonts/tinymce-small.eot?#iefix') format('embedded-opentype'), url('fonts/tinymce-small.woff') format('woff'), url('fonts/tinymce-small.ttf') format('truetype'), url('fonts/tinymce-small.svg#tinymce') format('svg'); + font-weight: normal; + font-style: normal +} +.mce-ico { + font-family: 'tinymce', Arial; + font-style: normal; + font-weight: normal; + font-variant: normal; + font-size: 16px; + line-height: 16px; + speak: none; + vertical-align: text-top; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + display: inline-block; + background: transparent center center; + background-size: cover; + width: 16px; + height: 16px; + color: #fff +} +.mce-btn-small .mce-ico { + font-family: 'tinymce-small', Arial +} +.mce-i-save:before { + content: "\e000" +} +.mce-i-newdocument:before { + content: "\e001" +} +.mce-i-fullpage:before { + content: "\e002" +} +.mce-i-alignleft:before { + content: "\e003" +} +.mce-i-aligncenter:before { + content: "\e004" +} +.mce-i-alignright:before { + content: "\e005" +} +.mce-i-alignjustify:before { + content: "\e006" +} +.mce-i-alignnone:before { + content: "\e003" +} +.mce-i-cut:before { + content: "\e007" +} +.mce-i-paste:before { + content: "\e008" +} +.mce-i-searchreplace:before { + content: "\e009" +} +.mce-i-bullist:before { + content: "\e00a" +} +.mce-i-numlist:before { + content: "\e00b" +} +.mce-i-indent:before { + content: "\e00c" +} +.mce-i-outdent:before { + content: "\e00d" +} +.mce-i-blockquote:before { + content: "\e00e" +} +.mce-i-undo:before { + content: "\e00f" +} +.mce-i-redo:before { + content: "\e010" +} +.mce-i-link:before { + content: "\e011" +} +.mce-i-unlink:before { + content: "\e012" +} +.mce-i-anchor:before { + content: "\e013" +} +.mce-i-image:before { + content: "\e014" +} +.mce-i-media:before { + content: "\e015" +} +.mce-i-help:before { + content: "\e016" +} +.mce-i-code:before { + content: "\e017" +} +.mce-i-insertdatetime:before { + content: "\e018" +} +.mce-i-preview:before { + content: "\e019" +} +.mce-i-forecolor:before { + content: "\e01a" +} +.mce-i-backcolor:before { + content: "\e01a" +} +.mce-i-table:before { + content: "\e01b" +} +.mce-i-hr:before { + content: "\e01c" +} +.mce-i-removeformat:before { + content: "\e01d" +} +.mce-i-subscript:before { + content: "\e01e" +} +.mce-i-superscript:before { + content: "\e01f" +} +.mce-i-charmap:before { + content: "\e020" +} +.mce-i-emoticons:before { + content: "\e021" +} +.mce-i-print:before { + content: "\e022" +} +.mce-i-fullscreen:before { + content: "\e023" +} +.mce-i-spellchecker:before { + content: "\e024" +} +.mce-i-nonbreaking:before { + content: "\e025" +} +.mce-i-template:before { + content: "\e026" +} +.mce-i-pagebreak:before { + content: "\e027" +} +.mce-i-restoredraft:before { + content: "\e028" +} +.mce-i-untitled:before { + content: "\e029" +} +.mce-i-bold:before { + content: "\e02a" +} +.mce-i-italic:before { + content: "\e02b" +} +.mce-i-underline:before { + content: "\e02c" +} +.mce-i-strikethrough:before { + content: "\e02d" +} +.mce-i-visualchars:before { + content: "\e02e" +} +.mce-i-visualblocks:before { + content: "\e02e" +} +.mce-i-ltr:before { + content: "\e02f" +} +.mce-i-rtl:before { + content: "\e030" +} +.mce-i-copy:before { + content: "\e031" +} +.mce-i-resize:before { + content: "\e032" +} +.mce-i-browse:before { + content: "\e034" +} +.mce-i-pastetext:before { + content: "\e035" +} +.mce-i-rotateleft:before { + content: "\eaa8" +} +.mce-i-rotateright:before { + content: "\eaa9" +} +.mce-i-crop:before { + content: "\ee78" +} +.mce-i-editimage:before { + content: "\e914" +} +.mce-i-options:before { + content: "\ec6a" +} +.mce-i-flipv:before { + content: "\eaaa" +} +.mce-i-fliph:before { + content: "\eaac" +} +.mce-i-zoomin:before { + content: "\eb35" +} +.mce-i-zoomout:before { + content: "\eb36" +} +.mce-i-sun:before { + content: "\eccc" +} +.mce-i-moon:before { + content: "\eccd" +} +.mce-i-arrowleft:before { + content: "\edc0" +} +.mce-i-arrowright:before { + content: "\edb8" +} +.mce-i-drop:before { + content: "\e934" +} +.mce-i-contrast:before { + content: "\ecd4" +} +.mce-i-sharpen:before { + content: "\eba7" +} +.mce-i-palette:before { + content: "\e92a" +} +.mce-i-resize2:before { + content: "\edf9" +} +.mce-i-orientation:before { + content: "\e601" +} +.mce-i-invert:before { + content: "\e602" +} +.mce-i-gamma:before { + content: "\e600" +} +.mce-i-remove:before { + content: "\ed6a" +} +.mce-i-tablerowprops:before { + content: "\e604" +} +.mce-i-tablecellprops:before { + content: "\e605" +} +.mce-i-table2:before { + content: "\e606" +} +.mce-i-tablemergecells:before { + content: "\e607" +} +.mce-i-tableinsertcolbefore:before { + content: "\e608" +} +.mce-i-tableinsertcolafter:before { + content: "\e609" +} +.mce-i-tableinsertrowbefore:before { + content: "\e60a" +} +.mce-i-tableinsertrowafter:before { + content: "\e60b" +} +.mce-i-tablesplitcells:before { + content: "\e60d" +} +.mce-i-tabledelete:before { + content: "\e60e" +} +.mce-i-tableleftheader:before { + content: "\e62a" +} +.mce-i-tabletopheader:before { + content: "\e62b" +} +.mce-i-tabledeleterow:before { + content: "\e800" +} +.mce-i-tabledeletecol:before { + content: "\e801" +} +.mce-i-codesample:before { + content: "\e603" +} +.mce-i-checkbox:before, .mce-i-selected:before { + content: "\e033" +} +.mce-i-selected { + visibility: hidden +} +i.mce-i-backcolor { + text-shadow: none; + background: #bbb +} diff --git a/epanel/core_functions.php b/epanel/core_functions.php new file mode 100644 index 0000000..6fa62e1 --- /dev/null +++ b/epanel/core_functions.php @@ -0,0 +1,1093 @@ + get_template_directory_uri() . '/epanel/images/empty.png', + 'epanel_nonce' => wp_create_nonce( 'epanel_nonce' ), + 'help_label' => esc_html__( 'Help', $themename ), + 'et_core_nonces' => et_core_get_nonces(), + ) ); + + // Use WP 4.9 CodeMirror Editor for some fields + if ( function_exists( 'wp_enqueue_code_editor' ) ) { + wp_enqueue_code_editor( + array( + 'type' => 'text/css', + ) + ); + // Required for Javascript mode + wp_enqueue_script( 'jshint' ); + wp_enqueue_script( 'htmlhint' ); + } + } + +} +/* --------------------------------------------- */ + +/* Enabling CSSlint for codemirror */ +if ( ! function_exists( 'et_epanel_enable_css_lint' ) ) { + function et_epanel_enable_css_lint( $settings ){ + $modes = array( 'text/css', 'css', 'text/x-scss', 'text/x-less', 'text/x-sass' ); + + if ( in_array( $settings['codemirror']['mode'], $modes, true ) ) { + $settings['codemirror']['lint'] = true; + $settings['codemirror']['gutters'] = array( 'CodeMirror-lint-markers' ); + } + + return $settings; + } + add_filter( 'wp_code_editor_settings', 'et_epanel_enable_css_lint' ); +} + +/* Adds additional ePanel css */ +if ( ! function_exists( 'et_epanel_css_admin' ) ) { + + function et_epanel_css_admin() { + ?> + + + + + + id ); + + if ( ! wp_style_is( 'et-core-admin', 'enqueued' ) ) { + wp_enqueue_style( 'et-core-admin-epanel', get_template_directory_uri() . '/core/admin/css/core.css', array(), et_get_theme_version() ); + } + + wp_enqueue_style( 'epanel-style', get_template_directory_uri() . '/epanel/css/panel.css', array(), et_get_theme_version() ); + + if ( wp_style_is( 'activecampaign-subscription-forms', 'enqueued' ) ) { + // activecampaign-subscription-forms style breaks the panel. + wp_dequeue_style( 'activecampaign-subscription-forms' ); + } + + // ePanel on theme others than Divi might want to add specific styling + if ( ! apply_filters( 'et_epanel_is_divi', $is_divi ) ) { + wp_enqueue_style( 'epanel-theme-style', apply_filters( 'et_epanel_style_url', get_template_directory_uri() . '/style-epanel.css'), array( 'epanel-style' ), et_get_theme_version() ); + } + } +} + +if ( ! function_exists( 'et_epanel_hook_scripts' ) ) { + function et_epanel_hook_scripts() { + add_action( 'admin_enqueue_scripts', 'et_epanel_admin_scripts' ); + } +} + +/* --------------------------------------------- */ + +/* Save/Reset actions | Adds theme options to WP-Admin menu */ +add_action( 'admin_menu', 'et_add_epanel' ); + +function et_add_epanel() { + global $themename, $shortname, $options; + $epanel = basename( __FILE__ ); + + if ( isset( $_GET['page'] ) && $_GET['page'] === $epanel && isset( $_POST['action'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.NoNonceVerification -- logic for nonce checks are following + if ( + ( isset( $_POST['_wpnonce'] ) && wp_verify_nonce( $_POST['_wpnonce'], 'epanel_nonce' ) ) + || + ( 'reset' === $_POST['action'] && isset( $_POST['_wpnonce_reset'] ) && wp_verify_nonce( $_POST['_wpnonce_reset'], 'et-nojs-reset_epanel' ) ) + ) { + if ( ! isset( $GLOBALS['et_core_updates'] ) ) { + et_register_updates_component(); + } + epanel_save_data( 'js_disabled' ); //saves data when javascript is disabled + } + } + + $core_page = add_theme_page( $themename . ' ' . esc_html__( 'Options', $themename ), $themename . ' ' . esc_html__( 'Theme Options', $themename ), 'edit_theme_options', basename( __FILE__ ), 'et_build_epanel' ); + + add_action( "admin_print_scripts-{$core_page}", 'et_epanel_admin_js' ); + add_action( "admin_head-{$core_page}", 'et_epanel_css_admin' ); + add_action( "load-{$core_page}", 'et_epanel_hook_scripts' ); +} + +/* --------------------------------------------- */ + +/* Displays ePanel */ +if ( ! function_exists( 'et_build_epanel' ) ) { + + function et_build_epanel() { + global $themename, $shortname, $options, $et_disabled_jquery, $epanelMainTabs; + + // load theme settings array + et_load_core_options(); + + $tabs = array(); + $default_tab_names = array( + 'ad' => _x( 'Ads', 'site ads placement areas', $themename ), + 'colorization' => _x( 'Colorization', 'site color scheme', $themename ), + 'general' => _x( 'General', 'general options', $themename ), + 'integration' => _x( 'Integration', 'integrate third-party code', $themename ), + 'layout' => _x( 'Layout', 'page/post', $themename ), + 'navigation' => _x( 'Navigation', 'navigation menu', $themename ), + 'seo' => _x( 'SEO', 'search engine optimization', $themename ), + 'support' => _x( 'Support', 'documentation links', $themename ), + 'updates' => _x( 'Updates', 'theme updates', $themename ), + ); + + /** + * Filters the data used to construct ePanel's layout. + * + * @since 3.2.1 + * + * @param array $options + */ + $options = apply_filters( 'et_epanel_layout_data', $options ); + + /** + * Filters the slugs/ids for ePanel's tabs. + * + * @deprecated + * + * @since 1.0 + * @since 3.2.1 Deprecated + * + * @param string[] $tab_slugs + */ + $epanelMainTabs = apply_filters( 'epanel_page_maintabs', $epanelMainTabs ); + + + foreach( $epanelMainTabs as $tab_slug ) { + if ( isset( $default_tab_names[ $tab_slug ] ) ) { + $tabs[ $tab_slug ] = $default_tab_names[ $tab_slug ]; + } + } + + /** + * Filters ePanel's localized tab names. + * + * @since 3.2.1 + * + * @param string[] $tabs { + * + * @type string $tab_slug Localized tab name. + * ... + * } + */ + $tabs = apply_filters( 'et_epanel_tab_names', $tabs ); + + + et_core_nonce_verified_previously(); + + if ( isset($_GET['saved']) ) { + if ( $_GET['saved'] ) echo '' . esc_html( $themename ) . ' ' . esc_html__( 'settings saved.', $themename ) . '
' . esc_html( $themename ) . ' ' . esc_html__( 'settings reset.', $themename ) . '
%1$s
++ + + +
+ ++ + + +
+ + post_type ) : ?> + + ++ + /> +
+ ++ +
+ ++ + +
+ post_type ) : ?> + + + + post_type && $is_builder_active ) : ?> + ++ + + +
+ +%2$s:
+ +tag because it doesn't wrapped by newline during saving process. + if ( ! $this->use_raw_content && ! $this->child_slug && 'tiny_mce' === self::$_->array_get( $this->get_fields(), 'content.type' ) ) { + self::$has_content_modules[] = $this->slug; + } + + } + + /** + * Return all module slugs. + * + * @return array + * + * @since 4.10.0 + */ + public static function get_all_module_slugs() { + // cache this only after et_builder_ready has run. + if ( ! did_action( 'et_builder_ready' ) || empty( self::$all_module_slugs ) ) { + self::$all_module_slugs = array_merge( self::get_structure_module_slugs(), self::get_module_slugs_by_post_type() ); + } + + return self::$all_module_slugs; + } + + /** + * Make private/protected methods readable. + * + * @param string $name Method to call. + * @param array $args Arguments to pass when calling. + * @return mixed|bool Return value of the callback, false otherwise. + */ + public function __call( $name, $args ) { + $class = get_class( $this ); + $message = "You're Doing It Wrong!"; + $is_deprecated = array_key_exists( $name, self::$_deprecations['methods'] ); + $value = null; + $old_method_exists = method_exists( $this, $name ); + + if ( $old_method_exists && ! $is_deprecated ) { + // Inaccessible method (protected or private) that isn't deprecated. + et_debug( "{$message} Attempted to call {$class}::{$name}() from out of scope.", 4, false ); + return $value; + } + + $message .= " {$class}::{$name}()"; + + if ( ! $is_deprecated ) { + $message .= " doesn't exist."; + } else { + $message .= ' is deprecated.'; + $new_method = self::$_deprecations['methods'][ $name ]; + + if ( ! is_string( $new_method ) ) { + // Default value for a method that has no replacement. + $value = $new_method; + + } elseif ( method_exists( $this, $new_method ) && ! $old_method_exists ) { + $message .= " Use {$class}::{$new_method}() instead."; + // @phpcs:ignore Generic.PHP.ForbiddenFunctions.Found + $value = call_user_func_array( array( $this, $new_method ), $args ); + + } elseif ( $old_method_exists && function_exists( $new_method ) ) { + // New method is a function. + $message .= " Use {$new_method}() instead."; + // @phpcs:ignore Generic.PHP.ForbiddenFunctions.Found + $value = call_user_func_array( $new_method, $args ); + + } elseif ( $old_method_exists ) { + // Ensure that our current caller is not the same as the method we're about to call. + // as that would cause an infinite recursion situation. It happens when a child class + // method which has been deprecated calls itself on the parent class (using parent::) + // This also happens when we use $this->__call() to call a deprecated method from its + // replacement method so that a deprecation notice will be output. + $trace = debug_backtrace(); + $callers = array( + self::$_->array_get( $trace, '1.function' ), + self::$_->array_get( $trace, '2.function' ), + ); + + if ( ! in_array( $name, $callers, true ) ) { + $message .= " Use {$class}::{$new_method}() instead."; + // @phpcs:ignore Generic.PHP.ForbiddenFunctions.Found + $value = call_user_func_array( array( $this, $name ), $args ); + } + } + } + + et_debug( $message, 4, false ); + + return $value; + } + + /** + * Makes private properties readable. + * + * @param string $name Property name. + * + * @return mixed|string|null + */ + public function &__get( $name ) { + $class = get_class( $this ); + $message = "You're Doing It Wrong!"; + $is_deprecated = array_key_exists( $name, self::$_deprecations['properties'] ); + $value = null; + + if ( property_exists( $this, $name ) && ! $is_deprecated ) { + // Inaccessible property (protected or private) that isn't deprecated. + et_debug( "{$message} Attempted to access {$class}::\${$name} from out of scope.", 4, false ); + return $value; + } + + $message .= " {$class}::\${$name}"; + + if ( ! $is_deprecated ) { + $message .= " doesn't exist."; + $should_set_value = true; + } else { + $message .= ' is deprecated.'; + $new_prop = self::$_deprecations['properties'][ $name ]; + + if ( $new_prop && is_string( $new_prop ) && property_exists( $this, $new_prop ) ) { + $message .= " Use {$class}::\${$new_prop} instead."; + $value = &$this->$new_prop; + } elseif ( ! is_string( $new_prop ) || ! $new_prop ) { + // Default value. + $value = $new_prop; + $should_set_value = true; + } + } + + if ( isset( $should_set_value ) ) { + // Create the property so we can return a reference to it which allows it to be + // used like this: $this->name[] = 'something'. + $this->$name = $value; + $value = &$this->$name; + } + + et_debug( $message, 4, false ); + + return $value; + } + + /** + * Make private properties checkable. + * + * @param string $name Property to check if set. + * @return bool Whether the property is set. + */ + public function __isset( $name ) { + $prop_name = array_key_exists( $name, self::$_deprecations['properties'] ) ? self::$_deprecations['properties'][ $name ] : $name; + + if ( ! $prop_name || ! is_string( $prop_name ) ) { + return false; + } + + return property_exists( $this, $prop_name ); + } + + /** + * Set a property's value. + * + * @param string $name Property key. + * @param mixed $value Property value. + */ + public function __set( $name, $value ) { + $class = get_class( $this ); + $message = "You're Doing It Wrong!"; + $is_deprecated = array_key_exists( $name, self::$_deprecations['properties'] ); + $property_exists = property_exists( $this, $name ); + $has_replacement = $property_exists && is_string( self::$_deprecations['properties'][ $name ] ) && self::$_deprecations['properties'][ $name ]; + + if ( $property_exists && ! $is_deprecated ) { + // Inaccessible property (protected or private) that isn't deprecated. + et_debug( "{$message} Attempted to access {$class}::\${$name} from out of scope.", 4, false ); + return; + } + + if ( ( ! $property_exists && ! $is_deprecated ) || ! $has_replacement ) { + // Always allow setting values for properties that are undeclared. + $this->$name = $value; + } + + if ( ! $is_deprecated ) { + return; + } + + $message = " {$class}::\${$name} is deprecated."; + $replacement = self::$_deprecations['properties'][ $name ]; + + if ( $replacement && is_string( $replacement ) ) { + $message .= " Use {$class}::\${$replacement} instead."; + + $this->$replacement = $value; + + // Unset deprecated property so next time it's updated we process it again. + unset( $this->$name ); + } + + et_debug( $message, 4, false ); + } + + /** + * Determine whether class is Divi official module or not. + * + * @param string $class_name Module class name. + * + * @return bool + */ + private static function _is_official_module( $class_name ) { + try { + $reflection = new ReflectionClass( $class_name ); + $is_official = self::$_->includes( $reflection->getFileName(), ET_BUILDER_DIR_RESOLVED_PATH ); + } catch ( Exception $err ) { + $is_official = false; + } + + return $is_official; + } + + /** + * Determine whether class is WooCommerce module or not. + * + * @param string $class_name Module class name. + * + * @return bool + */ + private static function _is_woocommerce_module( $class_name ) { + try { + $reflection = new ReflectionClass( $class_name ); + $is_woocommerce = self::$_->includes( $reflection->getFileName(), ET_BUILDER_DIR_RESOLVED_PATH . '/module/woocommerce' ); + } catch ( Exception $err ) { + $is_woocommerce = false; + } + + return $is_woocommerce; + } + + /** + * Set configuration for module's advanced fields. + */ + protected function _set_advanced_fields_config() { + $this->advanced_fields = $this->get_advanced_fields_config(); + + // 3rd-Party Backwards Compatability + if ( isset( $this->advanced_fields['custom_margin_padding'] ) ) { + $this->advanced_fields['margin_padding'] = $this->advanced_fields['custom_margin_padding']; + + unset( $this->advanced_fields['custom_margin_padding'] ); + } + } + + /** + * Get whether third party post interference should be respected. + * Current use case is for plugins like Toolset that render a + * loop within a layout which renders another layout for + * each post - in this case we must NOT override the + * current post so the loop works as expected. + * + * @since 4.0.6 + * + * @return boolean + */ + protected static function _should_respect_post_interference() { + $post = ET_Post_Stack::get(); + + return null !== $post && get_the_ID() !== $post->ID; + } + + /** + * Retrieve the main query post id. + * Accounts for third party interference with the current post. + * + * @since 4.0.6 + * + * @return integer|boolean + */ + protected static function _get_main_post_id() { + if ( self::_should_respect_post_interference() ) { + return get_the_ID(); + } + + return ET_Post_Stack::get_main_post_id(); + } + + /** + * Retrieve Post ID from 1 of 4 sources depending on which exists: + * - $_POST['current_page']['id'] + * - $_POST['et_post_id'] + * - $_GET['post'] + * - get_the_ID() + * + * @since 3.17.2 + * + * @return int|bool + */ + public static function get_current_post_id() { + // Getting correct post id in computed_callback request. + // phpcs:disable WordPress.Security.NonceVerification -- This function does not change any state, and is therefore not susceptible to CSRF. + if ( wp_doing_ajax() && self::$_->array_get( $_POST, 'current_page.id' ) ) { + return absint( self::$_->array_get( $_POST, 'current_page.id' ) ); + } + + if ( wp_doing_ajax() && isset( $_POST['et_post_id'] ) ) { + return absint( $_POST['et_post_id'] ); + } + + if ( isset( $_POST['post'] ) ) { + return absint( $_POST['post'] ); + } + + return self::_get_main_post_id(); + // phpcs:enable + } + + /** + * Retrieve Post ID from 1 of 3 sources depending on which exists: + * - get_the_ID() + * - $_GET['post'] + * - $_POST['et_post_id'] + * + * @since 4.0 + * + * @return int|bool + */ + public static function get_current_post_id_reverse() { + // phpcs:disable WordPress.Security.NonceVerification -- This function does not change any state, and is therefore not susceptible to CSRF. + $post_id = self::_get_main_post_id(); + + // try to get post id from get_post_ID(). + if ( false !== $post_id ) { + return $post_id; + } + + if ( wp_doing_ajax() ) { + // get the post ID if loading data for VB. + return isset( $_POST['et_post_id'] ) ? absint( $_POST['et_post_id'] ) : false; + } + + // fallback to $_GET['post'] to cover the BB data loading. + return isset( $_GET['post'] ) ? absint( $_GET['post'] ) : false; + // phpcs:enable + } + + /** + * Get the current ID depending on the current request. + * + * @since 4.0 + * + * @return int|bool + */ + public function get_the_ID() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName -- This function name is consistent with WP core `get_the_ID()` function + return self::get_current_post_id_reverse(); + } + + /** + * Setup the advanced styles manager + * + * @param int $post_id Post id. + * + * @return array + * @since 4.0 Made public. + * + * {@internal + * Before the styles manager was implemented, the advanced styles were output inline in the footer. + * That resulted in them being the last styles parsed by the browser, thus giving them higher + * priority than other styles on the page. With the styles manager, the advanced styles are + * enqueued at the very end of the
. This is for backwards compatibility (to maintain + * the same priority for the styles as before).}} + */ + public static function setup_advanced_styles_manager( $post_id = 0 ) { + if ( 0 === $post_id && et_core_page_resource_is_singular() ) { + // It doesn't matter if post id is 0 because we're going to force inline styles. + $post_id = et_core_page_resource_get_the_ID(); + } + + /** This filter is documented in frontend-builder/theme-builder/frontend.php */ + $is_critical_enabled = apply_filters( 'et_builder_critical_css_enabled', false ); + $deferred = false; + $is_preview = is_preview() || is_et_pb_preview(); + $forced_in_footer = $post_id && et_builder_setting_is_on( 'et_pb_css_in_footer', $post_id ); + $forced_inline = ! $post_id || $is_preview || $forced_in_footer || et_builder_setting_is_off( 'et_pb_static_css_file', $post_id ) || et_core_is_safe_mode_active() || ET_GB_Block_Layout::is_layout_block_preview(); + $unified_styles = ! $forced_inline && ! $forced_in_footer; + + $resource_owner = $unified_styles ? 'core' : 'builder'; + $resource_slug = $unified_styles ? 'unified' : 'module-design'; + + $resource_slug .= $unified_styles && et_builder_post_is_of_custom_post_type( $post_id ) ? '-cpt' : ''; + + $resource_slug = et_theme_builder_decorate_page_resource_slug( $post_id, $resource_slug ); + + // If the post is password protected and a password has not been provided yet, + // no content (including any custom style) will be printed. + // When static css file option is enabled this will result in missing styles. + if ( ! $forced_inline && post_password_required( $post_id ? $post_id : null ) ) { + $forced_inline = true; + } + + if ( $is_preview ) { + // Don't let previews cause existing saved static css files to be modified. + $resource_slug .= '-preview'; + } + + $manager = et_core_page_resource_get( $resource_owner, $resource_slug, $post_id, 40 ); + $has_file = $manager->has_file(); + + $manager_data = [ + 'manager' => $manager, + 'add_hooks' => true, + ]; + + if ( $is_critical_enabled ) { + $deferred = et_core_page_resource_get( $resource_owner, $resource_slug . '-deferred', $post_id, 40 ); + $has_file = $has_file && $deferred->has_file(); + $manager_data['deferred'] = $deferred; + } + + if ( ! $forced_inline && ! $forced_in_footer && $has_file ) { + // This post currently has a fully configured styles manager. + $manager_data['add_hooks'] = false; + /** + * Filters the Style Managers used to output Critical/Deferred Builder CSS. + * + * @since 4.10.0 + * + * @param array $manager_data Style Managers. + */ + $manager_data = apply_filters( 'et_builder_module_style_manager', $manager_data ); + + return $manager_data; + } + + $manager->forced_inline = $forced_inline; + $manager->write_file_location = 'footer'; + + if ( $deferred ) { + $deferred->forced_inline = $forced_inline; + $deferred->write_file_location = 'footer'; + } + + if ( $forced_in_footer || $forced_inline ) { + // Restore legacy behavior--output inline styles in the footer. + $manager->set_output_location( 'footer' ); + if ( $deferred ) { + $deferred->set_output_location( 'footer' ); + } + } + + /** This filter is documented in class-et-builder-element.php */ + $manager_data = apply_filters( 'et_builder_module_style_manager', $manager_data ); + + return $manager_data; + } + + /** + * Passes the module design styles for the current page to the advanced styles manager. + * {@see 'wp_footer' (19) Must run before the style manager's footer callback} + */ + public static function set_advanced_styles() { + $styles = ''; + $custom = ''; + + if ( et_core_is_builder_used_on_current_request() ) { + $custom = et_pb_get_page_custom_css(); + } + + // Pass styles to page resource which will handle their output. + /** This filter is documented in frontend-builder/theme-builder/frontend.php */ + $is_critical_enabled = apply_filters( 'et_builder_critical_css_enabled', false ); + + $critical = $is_critical_enabled ? self::get_style( false, 0, true ) . self::get_style( true, 0, true ) : []; + $styles = self::get_style() . self::get_style( true ); + + if ( empty( $critical ) ) { + // No critical styles defined, just enqueue everything as usual. + $styles = $custom . $styles; + if ( ! empty( $styles ) ) { + if ( isset( self::$deferred_styles_manager ) ) { + self::$deferred_styles_manager->set_data( $styles, 40 ); + } else { + self::$advanced_styles_manager->set_data( $styles, 40 ); + } + } + } else { + // Add page css to the critical section. + $critical = $custom . $critical; + self::$advanced_styles_manager->set_data( $critical, 40 ); + if ( ! empty( $styles ) ) { + // Defer everything else. + self::$deferred_styles_manager->set_data( $styles, 40 ); + } + } + } + + /** + * Set {@see ET_Builder_Element::$advanced_styles_manager} to force inline styles. + */ + public static function maybe_force_inline_styles() { + if ( et_core_is_fb_enabled() || self::$advanced_styles_manager->forced_inline || ! self::$forced_inline_styles ) { + return; + } + + self::$advanced_styles_manager->forced_inline = true; + self::$advanced_styles_manager->write_file_location = 'footer'; + self::$advanced_styles_manager->set_output_location( 'footer' ); + + if ( isset( self::$deferred_styles_manager ) ) { + self::$deferred_styles_manager->forced_inline = true; + self::$deferred_styles_manager->write_file_location = 'footer'; + self::$deferred_styles_manager->set_output_location( 'footer' ); + } + } + + /** + * Filters the unified page resource data. The data is an array of arrays of strings keyed by + * priority. The builder's styles are set with a priority of 40. Here we want to make sure + * only the builder's styles are output in the footer on first-page load so we aren't + * duplicating the customizer and custom css styles which are already in the . + * {@see 'et_core_page_resource_get_data'} + * + * @param array[] $data { + * Arrays of strings keyed by priority. + * + * @type string[] $priority Resource data. + * ... + * }. + * @param string $context Where the data will be used. Accepts 'inline', 'file'. + * @param ET_Core_PageResource $resource The resource instance. + * @return array + */ + public static function filter_page_resource_data( $data, $context, $resource ) { + global $wp_current_filter; + + if ( 'inline' !== $context || ! in_array( 'wp_footer', $wp_current_filter, true ) ) { + return $data; + } + + if ( false === strpos( $resource->slug, 'unified' ) ) { + return $data; + } + + if ( 'footer' !== $resource->location ) { + // This is the first load of a page that doesn't currently have a unified static css file. + // The theme customizer and custom css have already been inlined in the using the + // unified resource's ID. It's invalid HTML to have duplicated IDs on the page so we'll + // fix that here since it only applies to this page load anyway. + $resource->slug = $resource->slug . '-2'; + } + + return isset( $data[40] ) ? array( 40 => $data[40] ) : array(); + } + + /** + * Get the slugs for all current builder modules. + * + * @since 3.0.85 + * + * @param string $post_type Get module slugs for this post type. If falsy, all slugs are returned. + * + * @return array + */ + public static function get_module_slugs_by_post_type( $post_type = 'post' ) { + if ( $post_type ) { + if ( isset( self::$_module_slugs_by_post_type[ $post_type ] ) ) { + $slugs = self::$_module_slugs_by_post_type[ $post_type ]; + } else { + // We get all modules when post type is not enabled so that posts that have + // had their post type support disabled still load all necessary modules. + $slugs = array_keys( self::get_modules() ); + } + + /** + * Filters the module slugs and post type. + * + * @since 4.10.0 + * + * @param array $slugs Module Slugs. + * @param string $post_type Current post type. + */ + return apply_filters( 'et_builder_get_module_slugs_by_post_type', $slugs, $post_type ); + } + + return self::$_module_slugs_by_post_type; + } + + /** + * Get whether the module has Visual Builder support or not + * + * @since 3.1 + * + * @return bool + */ + public function has_vb_support() { + return 'off' !== $this->vb_support; + } + + /** + * Create Factory objects + * + * @since 3.23 Add margin padding fields object. + * + * @return void + */ + public function set_factory_objects() { + // Load features fields. + $this->text_shadow = ET_Builder_Module_Fields_Factory::get( 'TextShadow' ); + $this->margin_padding = ET_Builder_Module_Fields_Factory::get( 'MarginPadding' ); + } + + /** + * Populates {@see $fields_unprocessed}. + * + * @param array $fields Fields. + */ + protected function _set_fields_unprocessed( $fields ) { + $unprocessed = &self::$_fields_unprocessed; + + foreach ( $fields as $field => $definition ) { + if ( true === $definition ) { + continue; + } + + // Have to use md5 now because needed by modules cache. + $key = md5( serialize( $definition ) ); + if ( ! isset( $unprocessed[ $key ] ) ) { + $unprocessed[ $key ] = $definition; + } + + $this->fields_unprocessed[ $field ] = $unprocessed[ $key ]; + } + } + + /** + * Populates {@see self::$fields_unprocessed}. + */ + public function set_fields() { + $fields_unprocessed = $this->get_complete_fields(); + + // Add _builder_version field to all modules. + $fields_unprocessed['_builder_version'] = array( 'type' => 'skip' ); + + // Add _dynamic_attributes field to all modules. + $fields_unprocessed['_dynamic_attributes'] = array( 'type' => 'skip' ); + + // Add support for the style presets. + $fields_unprocessed['_module_preset'] = array( 'type' => 'skip' ); + + if ( function_exists( 'et_builder_definition_sort' ) ) { + et_builder_definition_sort( $fields_unprocessed ); + } + + if ( $this->_is_official_module ) { + $this->_set_fields_unprocessed( $fields_unprocessed ); + return; + } + + // 3rd-Party module backwards compatability starts here + foreach ( $fields_unprocessed as $field => $info ) { + if ( isset( $info['depends_to'] ) ) { + $fields_unprocessed[ $field ]['depends_on'] = $info['depends_to']; + } + + if ( isset( $info['depends_default'] ) && $info['depends_default'] && ! isset( $info['depends_show_if'] ) ) { + $fields_unprocessed[ $field ]['depends_show_if'] = 'on'; + $message = "You're Doing It Wrong! Setting definition for {$field} includes deprecated parameter: 'depends_default'. Use 'show_if' instead."; + et_debug( $message ); + } + + // Process renderer of string type only. + if ( isset( $info['renderer'] ) && is_string( $info['renderer'] ) ) { + $original_renderer = $info['renderer']; + $updated_field_type = $info['renderer']; + + // convert renderer into type. + switch ( $info['renderer'] ) { + case 'et_builder_include_categories_option': + case 'et_builder_include_categories_shop_option': + $updated_field_type = 'categories'; + break; + case 'et_builder_get_widget_areas': + $updated_field_type = 'select_sidebar'; + break; + case 'et_pb_get_font_icon_list': + case 'et_pb_get_font_down_icon_list': + $updated_field_type = 'select_icon'; + break; + case 'et_builder_get_gallery_settings': + $updated_field_type = 'upload_gallery'; + break; + case 'et_builder_generate_center_map_setting': + $updated_field_type = 'center_map'; + break; + } + + $fields_unprocessed[ $field ]['type'] = $updated_field_type; + + if ( 'et_pb_get_font_down_icon_list' === $info['renderer'] ) { + $fields_unprocessed[ $field ]['renderer_options'] = array( 'icons_list' => 'icon_down' ); + } + + // Output developer warning if renderer was converted to type. + if ( $original_renderer !== $updated_field_type ) { + $message = "You're Doing It Wrong! Module setting definition for {$field} has a deprecated value: "; + $message .= "'{$original_renderer}' for parameter 'renderer'. Use '{$updated_field_type}' instead."; + et_debug( $message ); + } + } + + // Normalize `affects` field names if needed. + if ( isset( $info['affects'] ) ) { + $affects_original = $fields_unprocessed[ $field ]['affects']; + $fields_unprocessed[ $field ]['affects'] = array(); + // BB supports comma separated list of affected fields, convert it to array of fields if this is the case. + // Some plugins use combination of various lists, handle all of them. + foreach ( $affects_original as $affect_item ) { + if ( strpos( $affect_item, ',' ) !== false ) { + $fields_unprocessed[ $field ]['affects'] = array_merge( $fields_unprocessed[ $field ]['affects'], explode( ',', str_replace( ' ', '', $affect_item ) ) ); + } else { + $fields_unprocessed[ $field ]['affects'][] = $affect_item; + } + } + + array_walk( $fields_unprocessed[ $field ]['affects'], array( $this, 'normalize_affect_fields' ) ); + } + + if ( 'content_new' === $field ) { + $fields_unprocessed['content'] = $fields_unprocessed['content_new']; + unset( $fields_unprocessed['content_new'] ); + $message = "You're Doing It Wrong! Setting definition for {$field} includes deprecated parameter: 'content_new'. Use 'content' instead."; + et_debug( $message ); + } + + // convert old color pickers to the new ones supporting alpha channel. + if ( 'color' === self::$_->array_get( $info, 'type' ) ) { + $info['type'] = 'color-alpha'; + $fields_unprocessed[ $field ] = $info; + $message = "You're Doing It Wrong! You're using wrong type for the '" . $field . "'. It should be 'color-alpha' instead of 'color'."; + et_debug( $message, 4, false ); + } + + // convert input type to text. + if ( 'input' === self::$_->array_get( $info, 'type' ) ) { + $info['type'] = 'text'; + $fields_unprocessed[ $field ] = $info; + $message = "You're Doing It Wrong! Setting definition for {$field} has a deprecated value: 'input' for parameter: 'type'. Use 'text' instead."; + et_debug( $message ); + } + + // Normalize default values. + if ( isset( $info['default'] ) ) { + $fields_unprocessed[ $field ]['default'] = $this->_normalize_field_default( $field, $info['default'], $fields_unprocessed[ $field ]['type'] ); + } + } + + // Set default values in field definitions based on the legacy defaults "rules". + if ( isset( $this->fields_defaults ) ) { + foreach ( $this->fields_defaults as $field => $value ) { + if ( ! isset( $fields_unprocessed[ $field ] ) ) { + continue; + } + + $condition = is_array( $value ) ? self::$_->array_get( $value, '1' ) : false; + $set_default_on_front = 'only_default_setting' !== $condition; + $default = $this->_normalize_field_default( $field, $value, $fields_unprocessed[ $field ]['type'] ); + + // Always set default value if exists. Only default_on_front should be conditional. + $fields_unprocessed[ $field ]['default'] = $default; + + if ( ! $set_default_on_front ) { + continue; + } + + $has_default = isset( $fields_unprocessed[ $field ]['default'] ); + + if ( ! $has_default || $fields_unprocessed[ $field ]['default'] !== $default ) { + $fields_unprocessed[ $field ]['default_on_front'] = $default; + } + } + } + + // Legacy Defaults Rule #4 (AKA: longest-running undetected bug in the codebase): + // Fields listed in allowlisted_fields that aren't in fields_defaults lose their definitions. + if ( isset( $this->allowlisted_fields ) ) { + $disable_allowlisted_fields = isset( $this->force_unallowlisted_fields ) && $this->force_unallowlisted_fields; + + if ( ! $disable_allowlisted_fields && ! is_admin() && ! et_fb_is_enabled() ) { + foreach ( $this->allowlisted_fields as $field ) { + if ( isset( $this->fields_defaults ) && array_key_exists( $field, $this->fields_defaults ) ) { + continue; + } + + $fields_unprocessed[ $field ] = array(); + } + } + } + + $this->_set_fields_unprocessed( $fields_unprocessed ); + } + + /** + * Normalize default value depends on field type. + * + * @param string $field Field. + * @param mixed $default_value Default value. + * @param string $type Field type. + * + * @return mixed|string + */ + protected function _normalize_field_default( $field, $default_value, $type = '' ) { + $normalized_value = is_array( $default_value ) ? $default_value[0] : $default_value; + + // normalize default value depends on field type. + switch ( $type ) { + case 'yes_no_button': + if ( is_numeric( $normalized_value ) ) { + $normalized_value = (bool) $normalized_value ? 'on' : 'off'; + $message = "You're Doing It Wrong! You're using wrong value for '{$field}' default value. It should be either 'on' or 'off'."; + et_debug( $message, 4, false ); + } + break; + case 'color-alpha': + if ( is_numeric( $normalized_value ) ) { + $normalized_value = ''; + $message = "You're Doing It Wrong! You're using wrong value for '{$field}' default value. It should be string value."; + et_debug( $message, 4, false ); + } + + // Make sure provided HEX code is a valid color code. + if ( strpos( $normalized_value, '#' ) === 0 && ! in_array( strlen( $normalized_value ), array( 4, 7 ), true ) ) { + $normalized_value = ''; + $message = "You're Doing It Wrong! You're using wrong value for '{$field}' default value. It should be valid hex color code."; + et_debug( $message, 4, false ); + } + + break; + } + + return $normalized_value; + } + + /** + * Normalize `affects` fields name if needed. + * Some 3rd party modules use `#et_pb_%1$s
', $field['description'], "\n\t\t\t\t\t" ) : ''; + + if ( '' === $description && ! $use_container_wrapper ) { + $output = $field_el; + } else { + $output = sprintf( + '%3$s%4$s
+tags and \n that wpautop added! + $content = preg_replace( '/\n/smi', '', $content ); + $content = preg_replace( '/
/smi', '', $content );
+ $content = preg_replace( '/<\/p>/smi', '', $content );
+
+ $content = str_replace( '', '
', $content );
+
+ // convert the
tag to tags that wpautop adds
+ // so we can quickly remove them.
+ $content = preg_replace( '| |', ' ', ' x =o?t:n(t,e,r)}},function(t,e,r){var n=r(286),o=r(72),i=r(287);t.exports=function(t){return o(t)?i(t):n(t)}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.vhToPx=e.pxToPercent=e.percentToPx=e.sanitizeCSSSelector=e.sanitizeInputUnit=e.isAcceptableCSSStringValue=e.getNumber=e.getUnit=void 0;var n=l(r(62)),o=l(r(16)),i=l(r(73)),u=l(r(8)),a=l(r(4)),f=l(r(294)),c=(l(r(41)),r(21));function l(t){return t&&t.__esModule?t:{default:t}}function s(t){return function(t){if(Array.isArray(t))return v(t)}(t)||y(t)||d(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(t){return function(t){if(Array.isArray(t))return t}(t)||y(t)||d(t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(t,e){if(t){if("string"==typeof t)return v(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(t,e):void 0}}function v(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r 1&&void 0!==arguments[1]&&arguments[1];n.settings=I({},t),n.setProp("id",t.id),n.setProp("$selector",(0,_.default)("".concat(t.selector,":not(.et_pb_sticky_placeholder)"))),n.getProp("$selector").closest(".et-l--header").length>0&&n.setProp("isInsideTbHeader",!0),n.getProp("$selector").closest(".et-l--footer").length>0&&n.setProp("isInsideTbFooter",!0),e&&(n.setInitialProps(),setTimeout((function(){n.endSticky(),n.setProp("isSticky",!1),n.onWindowScroll()}),10))})),A(this,"getSetting",(function(t,e){var r=(0,a.default)(n.settings,t,e),o=O.default.responsiveOptions;return(0,h.default)(r)&&(0,u.default)(r,"desktop")&&((0,b.default)(t,"styles.")||(0,b.default)(t,"stickyStyles.")||(0,s.default)(o,t))?(0,a.default)(r,P.default.breakpoint,e):r})),A(this,"getProp",(function(t,e){return(0,a.default)(n.props,t,e)})),A(this,"isProp",(function(t,e){return e===n.getProp(t)})),A(this,"setProp",(function(t,e){(0,y.default)(n.props,t,e),(0,s.default)(n.storeSync,t)&&O.default.setProp(n.getProp("id"),t,e)})),A(this,"setInitialProps",(function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=n.getProp("isSticky"),r=e?n.getPlaceholder():n.getProp("$selector");!e&&k.isBuilder&&r.length<1&&(r=(0,_.default)("".concat(n.getSetting("selector"),":not(.et_pb_sticky_placeholder)")),n.setProp("$selector",r)),n.setProp("position",n.getSetting("position")),n.setProp("topOffsetModules",n.getSetting("topOffsetModules")),n.setProp("bottomOffsetModules",n.getSetting("bottomOffsetModules"));var o=n.isProp("position","bottom")||n.isProp("position","top_bottom"),i=n.isProp("position","top")||n.isProp("position","top_bottom");if(o){var u=n.getSetting("topLimit");n.setProp("topLimitSettings",(0,E.getLimit)(n.getProp("$selector"),u))}if(i){var s=n.getSetting("bottomLimit");n.setProp("bottomLimitSettings",(0,E.getLimit)(n.getProp("$selector"),s))}if(!(r.closest(".et_is_animating").length>0)){n.getProp("$selector").find(".et_pb_sticky_module_style").remove();var c=n.getModuleWidth(),l=parseInt(r.outerHeight()),f=(0,k.getOffsets)(r,c,l),d=r.css("padding");e&&!t||(n.setProp("offsets",f),n.setProp("width",c),n.setProp("height",l),n.setProp("marginLeft",parseFloat(r.css("marginLeft"))),n.setProp("marginRight",parseFloat(r.css("marginRight"))));var p=(0,E.getStickyStyles)(n.getProp("id"),n.getProp("$selector"),n.getPlaceholder());n.setProp("heightSticky",(0,a.default)(p,"height",l)),n.setProp("widthSticky",(0,a.default)(p,"width",c)),n.setProp("paddingSticky",(0,a.default)(p,"padding",d)),n.setProp("customTopOffset",n.parseOffsetToPx(n.getSetting("topOffset"))),n.setProp("customBottomOffset",n.parseOffsetToPx(n.getSetting("bottomOffset"))),n.setProp("marginLeftSticky",p.marginLeft),n.setProp("marginRightSticky",p.marginRight),n.setOnPageHelperStyles()}})),A(this,"updateInlineStyles",(function(){var t={},e=(0,E.getStickyStyles)(n.getProp("id"),n.getProp("$selector"),n.getPlaceholder()),r=n.getPlaceholder().outerWidth(),o=n.getPropertyValueInPx("stickyStyles.width",n.getPropertyValueInPx("styles.width",(0,a.default)(e,"width",r))),i=n.getPropertyValueInPx("stickyStyles.max-width",n.getPropertyValueInPx("styles.max-width")),u=(0,k.getOffsets)(n.getPlaceholder(),r,n.getPlaceholder().outerHeight());if(o&&(t.width=(0,g.default)(o)?"".concat(o,"px"):o,n.getProp("isSticky")&&n.setProp("width",n.getPlaceholder().outerWidth())),i&&(t.maxWidth=(0,g.default)(i)?"".concat(i,"px"):i),(0,m.default)(t.width)){var s=n.getProp("$selector").outerWidth();n.getProp("width")!==n.getProp("widthSticky")||s===r||(t.width="".concat(r,"px"),t.left=(0,g.default)(u.left)?"".concat(u.left,"px"):u.left,n.setProp("width",r),n.setProp("widthSticky",r))}if(n.setProp("offsets",u),!(0,l.default)(t)){var c=n.getFinalInlineStyleLeft();c&&(t.left=(0,g.default)(c)?"".concat(c,"px"):c),n.getProp("$selector").css(t)}})),A(this,"setOnPageHelperStyles",(function(){var t=n.getPropertyValueInPx("styles.width.".concat(P.default.breakpoint)),e=n.getPropertyValueInPx("styles.max-width.".concat(P.default.breakpoint)),r="";(0,w.hasValue)(t)&&(r+="width: ".concat(t,"px;")),(0,w.hasValue)(e)&&(r+=" max-width: ".concat(e,"px;")),(0,w.hasValue)(r)&&n.getProp("$selector").append('"))})),A(this,"hasSticky",(function(t){return t===n.getSetting(t)})),A(this,"parseOffsetToPx",(function(t){if(!(0,w.hasValue)(t))return 0;(0,x.getUnit)(t);return parseInt(t)})),A(this,"getModuleWidth",(function(){var t=n.getProp("$selector"),e=document.querySelector("".concat(n.getSetting("selector"),":not(.et_pb_sticky_placeholder)")),r=parseInt(t.outerWidth());if((0,f.default)(window.getComputedStyle)&&!(0,p.default)(e)){var o="".concat(n.getSetting("selector"),":not(.et_pb_sticky_placeholder)"),i=parseFloat(getComputedStyle(document.querySelector(o)).width);if(i>r)return i}return r})),A(this,"getOffset",(function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"all",r=function(t){return"all"===e||t===e||(0,c.default)(e)&&(0,s.default)(e,t)},o="top"===t?"customTopOffset":"customBottomOffset",a=r("custom")?n.getProp(o):0,u="top"===t,l="bottom"===t,f=u&&n.getProp("topOffsetModules"),d="bottom"===t&&n.getProp("bottomOffsetModules"),p="on"===n.getSetting("offsetSurrounding"),h=!!p&&(u?f:d),v=0;r("surrounding")&&h&&(0,i.default)(h,(function(t){var e=O.default.getProp(t,o,0);(0,g.default)(e)&&e&&(v+=O.default.getProp(t,o,0));var n=O.default.getProp(t,"heightSticky",0);(0,g.default)(n)&&n&&(v+=O.default.getProp(t,"heightSticky",0))}));var m=0;if(r("knownElement")){if(u&&!k.isLBP&&O.default.getElementProp("wpAdminBar","exist",!1)&&(m+=O.default.getElementProp("wpAdminBar","height",0)),l&&k.isLBP&&600<=P.default.width&&O.default.getElementProp("wpAdminBar","exist",!1)&&(m+=O.default.getElementProp("wpAdminBar","height",0)),O.default.getElementProp("builderAppFramePaddingTop","exist",!1)){var y=O.default.getElementProp("builderAppFramePaddingTop","height",0);u&&k.isBFB&&(m-=y),l&&k.isBuilder&&(m+=y)}u&&h&&O.default.getElementProp("diviFixedSecondaryNav","exist",!1)&&(m+=O.default.getElementProp("diviFixedSecondaryNav","height",0));var b=n.getThemeFixedPrimaryNavName();if(u&&h&&O.default.getElementProp(b,"exist",!1)){var _=O.default.getElementProp(b,"height",0);m+=_,n.setProp("themeFixedPrimaryNavHeight",_)}O.default.getElementProp(b,"exist",!1)||0===n.getProp("themeFixedPrimaryNavHeight")||n.setProp("themeFixedPrimaryNavHeight",0),l&&O.default.getElementProp("tbHeader","exist",!1)&&(m+=O.default.getElementProp("tbHeader","height",0)),l&&O.default.getElementProp("lbbHeader","exist",!1)&&(m+=O.default.getElementProp("lbbHeader","height",0)),l&&k.isLBP&&O.default.getElementProp("gbHeader","exist",!1)&&(m+=O.default.getElementProp("gbHeader","height",0)),l&&k.isLBP&&O.default.getElementProp("gbFooter","exist",!1)&&(m+=O.default.getElementProp("gbFooter","height",0)),l&&k.isLBP&&O.default.getElementProp("gbComponentsNoticeList","exist",!1)&&(m+=O.default.getElementProp("gbComponentsNoticeList","height",0))}return a+v+m})),A(this,"getRelativePositionOffset",(function(t){var e=n.getSetting("stickyStyles.position_origin_r"),r="vertical"===t?0:1,o=!!(0,v.default)(e)&&e.split("_")[r],i=n.getPropertyValueInPx("stickyStyles.".concat(t,"_offset"));return o&&i?0+i*(0,a.default)({top:1,bottom:-1,left:1,right:-1},o,1):0})),A(this,"getPlaceholder",(function(){return(0,_.default)('[data-sticky-placeholder-id="'.concat(n.getProp("id"),'"]'))})),A(this,"getPropertyValueInPx",(function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=n.getSetting(t);if(!(0,v.default)(r)||(0,s.default)(["none","auto"],r)||!(0,w.hasValue)(r))return e;if("%"===r.substr(-1)){var o=n.getProp("$selector").parent().width();return(0,w.getPercentage)(o,r)}return"vw"===r.substr(-2)?(0,w.getPercentage)(P.default.width,r):"vh"===r.substr(-2)?(0,w.getPercentage)(P.default.height,r):parseFloat(r)})),A(this,"getFinalInlineStyleLeft",(function(){var t=n.getSetting("styles.module_alignment",""),e=(0,a.default)(n.getProp("offsets"),"left",0);if((0,s.default)(["","left"],t))return e;n.getSetting("stickyStyles.position_origin_r")&&(e+=n.getRelativePositionOffset("horizontal"));var r=n.getProp("width"),o=n.getPropertyValueInPx("stickyStyles.width",n.getPropertyValueInPx("styles.width","")),i=parseFloat(n.getProp("$selector").css("maxWidth")),u=n.getPropertyValueInPx("stickyStyles.max-width",n.getPropertyValueInPx("styles.max-width",(0,d.default)(i)?"":i)),c=function(){return(0,w.hasValue)(o)&&!(0,w.hasValue)(u)?"width":!(0,w.hasValue)(o)&&(0,w.hasValue)(u)||o>u?"max-width":"width"};if("max-width"===c()&&!(0,w.hasValue)(o)&&r=o:u g&&(v=g),i.stop(),0 %s (.*)<\/p>$/i', '$1', trim( $value ) );
+ return $value;
+}
+
+/**
+ * Parse a JSON-encoded string into an ET_Builder_Value instance or null on failure.
+ *
+ * @since 3.20.2
+ *
+ * @param string $json JSON-encoded string.
+ *
+ * @return ET_Builder_Value|null
+ */
+function et_builder_parse_dynamic_content_json( $json ) {
+ // phpcs:disable WordPress.Security.NonceVerification -- This function does not change any stats, hence CSRF ok.
+ $post_types = array_keys( et_builder_get_public_post_types() );
+ $dynamic_content = json_decode( $json, true );
+ $is_dynamic_content = is_array( $dynamic_content ) && isset( $dynamic_content['dynamic'] ) && (bool) $dynamic_content['dynamic'];
+ $has_content = is_array( $dynamic_content ) && isset( $dynamic_content['content'] ) && is_string( $dynamic_content['content'] );
+ $has_settings = is_array( $dynamic_content ) && isset( $dynamic_content['settings'] ) && is_array( $dynamic_content['settings'] );
+ $has_category_type = is_array( $dynamic_content ) && isset( $dynamic_content['settings'] ) && isset( $dynamic_content['settings']['category_type'] );
+
+ // When adding a section from library get_post_type() will not work, and post type has to be fetched from $_POST.
+ $is_added_from_library = isset( $_POST['et_post_type'] );
+
+ if ( ! $is_dynamic_content || ! $has_content || ! $has_settings ) {
+ return null;
+ }
+
+ // Replaces layout_category with proper category_type depending on the post type on which the layout is added.
+ if ( $has_category_type && 'post_categories' === $dynamic_content['content'] && ! 0 === substr_compare( $dynamic_content['settings']['category_type'], '_tag', - 4 ) ) {
+ if ( $is_added_from_library ) {
+ $correct_post_type = sanitize_text_field( $_POST['et_post_type'] );
+ $correct_post_type = in_array( $correct_post_type, $post_types, true ) ? $correct_post_type : 'post';
+ } else {
+ $correct_post_type = get_post_type();
+ $correct_post_type = in_array( $correct_post_type, $post_types, true ) ? $correct_post_type : 'post';
+ }
+
+ if ( 'post' === $correct_post_type ) {
+ $dynamic_content['settings']['category_type'] = 'category';
+ } else {
+ $dynamic_content['settings']['category_type'] = $correct_post_type . '_category';
+ }
+ }
+
+ return new ET_Builder_Value(
+ (bool) $dynamic_content['dynamic'],
+ sanitize_text_field( $dynamic_content['content'] ),
+ array_map( 'wp_kses_post', $dynamic_content['settings'] )
+ );
+ // phpcs:enable
+}
+
+/**
+ * Convert a value to an ET_Builder_Value representation.
+ *
+ * @since 3.17.2
+ *
+ * @param string $content Value content.
+ *
+ * @return ET_Builder_Value
+ */
+function et_builder_parse_dynamic_content( $content ) {
+ $json = et_builder_clean_dynamic_content( $content );
+ $json = preg_replace( '/^@ET-DC@(.*?)@$/', '$1', $json );
+ $dynamic_content = et_builder_parse_dynamic_content_json( $json );
+
+ if ( null === $dynamic_content ) {
+ $json = base64_decode( $json ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions -- `base64_decode` is used to unserialize dynamic content.
+ $dynamic_content = et_builder_parse_dynamic_content_json( $json );
+ }
+
+ if ( null === $dynamic_content ) {
+ return new ET_Builder_Value( false, wp_kses_post( $content ), array() );
+ }
+
+ return $dynamic_content;
+}
+
+/**
+ * Serialize dynamic content.
+ *
+ * @since 3.20.2
+ *
+ * @param bool $dynamic Whether the value is static or dynamic.
+ * @param string $content Value content. Represents the dynamic content type when dynamic.
+ * @param mixed[] $settings Array of dynamic content settings.
+ *
+ * @return string
+ */
+function et_builder_serialize_dynamic_content( $dynamic, $content, $settings ) {
+ // JSON_UNESCAPED_SLASHES is only supported from 5.4.
+ $options = defined( 'JSON_UNESCAPED_SLASHES' ) ? JSON_UNESCAPED_SLASHES : 0;
+ $result = wp_json_encode(
+ array(
+ 'dynamic' => $dynamic,
+ 'content' => $content,
+ // Force object type for keyed arrays as empty arrays will be encoded to
+ // javascript arrays instead of empty objects.
+ 'settings' => (object) $settings,
+ ),
+ $options
+ );
+
+ // Use fallback if needed.
+ $result = 0 === $options ? str_replace( '\/', '/', $result ) : $result;
+
+ return '@ET-DC@' . base64_encode( $result ) . '@'; // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions -- `base64_encode` is used to serialize dynamic content.
+}
+
+/**
+ * Strip dynamic content.
+ *
+ * @since 4.0.9
+ *
+ * @param string $content Post Content.
+ *
+ * @return string
+ */
+function et_builder_strip_dynamic_content( $content ) {
+ return preg_replace( '/@ET-DC@(.*?)@/', '', $content );
+}
+
+/**
+ * Reencode legacy dynamic content in post excerpts.
+ *
+ * @since 3.20.2
+ *
+ * @param string $post_excerpt Post Excerpt.
+ * @param integer $post_id Post Id.
+ *
+ * @return string
+ */
+function et_builder_reencode_legacy_dynamic_content_in_excerpt( $post_excerpt, $post_id ) {
+ $json = '/
+ \{ # { character
+ (?: # non-capturing group
+ [^{}] # anything that is not a { or }
+ | # OR
+ (?R) # recurse the entire pattern
+ )* # previous group zero or more times
+ \} # } character
+ /x';
+
+ return preg_replace_callback( $json, 'et_builder_reencode_legacy_dynamic_content_in_excerpt_callback', $post_excerpt );
+}
+add_filter( 'et_truncate_post', 'et_builder_reencode_legacy_dynamic_content_in_excerpt', 10, 2 );
+
+/**
+ * Callback to reencode legacy dynamic content for preg_replace_callback.
+ *
+ * @since 3.20.2
+ *
+ * @param array $matches PCRE match.
+ *
+ * @return string
+ */
+function et_builder_reencode_legacy_dynamic_content_in_excerpt_callback( $matches ) {
+ $value = et_builder_parse_dynamic_content_json( $matches[0] );
+ return null === $value ? $matches[0] : $value->serialize();
+}
+
+/**
+ * Resolve dynamic content in post excerpts instead of showing raw JSON.
+ *
+ * @since 3.17.2
+ *
+ * @param string $post_excerpt Post excerpt.
+ * @param integer $post_id Post Id.
+ *
+ * @return string
+ */
+function et_builder_resolve_dynamic_content_in_excerpt( $post_excerpt, $post_id ) {
+ // Use an obscure acronym named global variable instead of an anonymous function as we are
+ // targeting PHP 5.2.
+ global $_et_brdcie_post_id;
+
+ $_et_brdcie_post_id = $post_id;
+ $post_excerpt = preg_replace_callback( '/@ET-DC@.*?@/', 'et_builder_resolve_dynamic_content_in_excerpt_callback', $post_excerpt );
+ $_et_brdcie_post_id = 0;
+
+ return $post_excerpt;
+}
+add_filter( 'et_truncate_post', 'et_builder_resolve_dynamic_content_in_excerpt', 10, 2 );
+
+/**
+ * Callback to resolve dynamic content for preg_replace_callback.
+ *
+ * @since 3.17.2
+ *
+ * @param array $matches PCRE match.
+ *
+ * @return string
+ */
+function et_builder_resolve_dynamic_content_in_excerpt_callback( $matches ) {
+ global $_et_brdcie_post_id;
+ return et_builder_parse_dynamic_content( $matches[0] )->resolve( $_et_brdcie_post_id );
+}
diff --git a/includes/builder/feature/global-presets/History.php b/includes/builder/feature/global-presets/History.php
new file mode 100644
index 0000000..f1ae86c
--- /dev/null
+++ b/includes/builder/feature/global-presets/History.php
@@ -0,0 +1,336 @@
+_register_ajax_callbacks();
+ $this->_register_hooks();
+ }
+
+ /**
+ * Returns instance of the singleton class
+ *
+ * @since 4.5.0
+ *
+ * @return ET_Builder_Global_Presets_History
+ */
+ public static function instance() {
+ if ( ! isset( self::$instance ) ) {
+ self::$instance = new self();
+ }
+
+ return self::$instance;
+ }
+
+ private function _register_ajax_callbacks() {
+ add_action(
+ 'wp_ajax_et_builder_save_global_presets_history',
+ array(
+ $this,
+ 'ajax_save_global_presets_history',
+ )
+ );
+ add_action(
+ 'wp_ajax_et_builder_retrieve_global_presets_history',
+ array(
+ $this,
+ 'ajax_retrieve_global_presets_history',
+ )
+ );
+ }
+
+ private function _register_hooks() {
+ // If migration is needed, ensure that all modules get fully loaded.
+ // phpcs:disable PEAR.Functions.FunctionCallSignature -- Anonymous functions.
+ add_action( 'et_builder_framework_loaded', function() {
+ if ( ! ET_Builder_Global_Presets_Settings::are_custom_defaults_migrated() ) {
+ add_filter( 'et_builder_should_load_all_module_data', '__return_true' );
+ }
+ });
+ // phpcs:enable
+
+ add_action( 'et_builder_ready', array( $this, 'migrate_custom_defaults_history' ), 99 );
+ }
+
+ /**
+ * Handles AJAX requests to save history of Global Presets settings changes
+ *
+ * @since 4.5.0
+ *
+ * @return void
+ */
+ public function ajax_save_global_presets_history() {
+ // Allow saving Global Presets for admins and support elevated users only
+ if ( ! et_core_security_check_passed( 'switch_themes', 'et_builder_save_global_presets_history' ) ) {
+ wp_send_json_error(
+ array(
+ 'code' => 'et_forbidden',
+ 'message' => esc_html__( 'You do not have sufficient permissions to edit Divi Presets.', 'et_builder' ),
+ )
+ );
+ }
+
+ $history = json_decode( stripslashes( $_POST['history'] ) );
+
+ if ( self::sanitize_and_validate( $history ) ) {
+ $current_settings = $history->history[ $history->index ];
+ et_update_option( ET_Builder_Global_Presets_Settings::GLOBAL_PRESETS_OPTION, $current_settings->settings );
+ et_update_option( self::GLOBAL_PRESETS_HISTORY_OPTION, $history );
+ ET_Core_PageResource::remove_static_resources( 'all', 'all' );
+
+ if ( et_get_option( ET_Builder_Global_Presets_Settings::CUSTOM_DEFAULTS_UNMIGRATED_OPTION, false ) ) {
+ et_delete_option( ET_Builder_Global_Presets_Settings::CUSTOM_DEFAULTS_UNMIGRATED_OPTION );
+ et_fb_delete_builder_assets();
+ }
+
+ ET_Builder_Ajax_Cache::instance()->unset_( 'ET_Builder_Global_Presets_History' );
+
+ wp_send_json_success();
+ } else {
+ et_core_die( esc_html__( 'Global History data is corrupt.', 'et_builder' ) );
+ }
+ }
+
+ /**
+ * Handles AJAX requests to retrieve history of Global Presets settings changes
+ *
+ * @since 4.5.0
+ *
+ * @return void
+ */
+ public function ajax_retrieve_global_presets_history() {
+ if ( ! et_core_security_check_passed( 'edit_posts', 'et_builder_retrieve_global_presets_history' ) ) {
+ wp_send_json_error();
+ }
+
+ $history = $this->_get_global_presets_history();
+
+ ET_Builder_Ajax_Cache::instance()->set( 'ET_Builder_Global_Presets_History', $history );
+
+ wp_send_json_success( $history );
+ }
+
+ /**
+ * Adds a new Global Presets settings history record
+ *
+ * @since 4.5.0
+ *
+ * @param {Object} $defaults
+ */
+ public function add_global_history_record( $defaults ) {
+ if ( empty( $defaults ) ) {
+ return;
+ }
+
+ $new_record = (object) array(
+ 'settings' => $defaults,
+ 'time' => time() * 1000,
+ 'label' => esc_html__( 'Imported From Layout', 'et_builder' ),
+ );
+
+ $history = $this->_get_global_presets_history();
+ $history_index = (int) $history->index;
+
+ $history->history = array_slice( $history->history, 0, $history_index + 1 );
+ array_push( $history->history, $new_record );
+ $history->index++;
+
+ if ( count( $history->history ) > self::GLOBAL_PRESETS_HISTORY_LENGTH ) {
+ $history->history = array_slice( $history->history, -self::GLOBAL_PRESETS_HISTORY_LENGTH );
+ $history->index = min( $history->index, self::GLOBAL_PRESETS_HISTORY_LENGTH - 1 );
+ }
+
+ et_update_option( self::GLOBAL_PRESETS_HISTORY_OPTION, $history );
+ ET_Core_PageResource::remove_static_resources( 'all', 'all' );
+ }
+
+ /**
+ * Get the active Global Presets settings history index
+ *
+ * @since 4.10.0
+ *
+ * @return int History index.
+ */
+ public function get_global_history_index() {
+ $history = $this->_get_global_presets_history();
+ return is_object( $history ) ? (int) $history->index : md5( wp_json_encode( $history ) );
+ }
+
+ /**
+ * Performs validation and sanitizing history object.
+ * Returns false if data is invalid or corrupt.
+ *
+ * @since 4.5.0
+ *
+ * @param $data
+ *
+ * @return bool
+ */
+ public static function sanitize_and_validate( &$data ) {
+ if ( ! is_object( $data ) ) {
+ return false;
+ }
+
+ $properties = array(
+ 'history',
+ 'index',
+ );
+
+ foreach ( $properties as $property ) {
+ if ( ! property_exists( $data, $property ) ) {
+ return false;
+ }
+ }
+
+ if ( ! is_array( $data->history ) ) {
+ return false;
+ }
+
+ foreach ( $data->history as &$record ) {
+ if ( ! is_object( $record ) ) {
+ return false;
+ }
+
+ $properties = array(
+ 'settings',
+ 'time',
+ 'label',
+ );
+
+ if ( count( (array) $record ) !== count( $properties ) ) {
+ return false;
+ }
+
+ foreach ( $properties as $property ) {
+ if ( ! property_exists( $record, $property ) ) {
+ return false;
+ }
+ }
+
+ foreach ( $record->settings as &$module ) {
+ if ( ! is_object( $module ) ) {
+ return false;
+ }
+ }
+
+ if ( ! is_numeric( $record->time ) ) {
+ return false;
+ }
+
+ $record->label = sanitize_text_field( $record->label );
+ }
+
+ $data->index = sanitize_text_field( $data->index );
+
+ return true;
+ }
+
+ /**
+ * Handles theme version rollback.
+ *
+ * @since 4.5.0
+ *
+ * @param string $product_name - The short name of the product rolling back.
+ * @param string $rollback_from_version
+ * @param string $rollback_to_version
+ */
+ public function after_version_rollback( $product_name, $rollback_from_version, $rollback_to_version ) {
+ if ( ! isset( ET_Builder_Global_Presets_Settings::$allowed_products[ $product_name ] ) ) {
+ return;
+ }
+
+ if ( 0 > version_compare( $rollback_to_version, ET_Builder_Global_Presets_Settings::$allowed_products[ $product_name ] ) ) {
+ et_delete_option( self::GLOBAL_PRESETS_HISTORY_OPTION );
+ }
+ }
+
+ /**
+ * Returns the Global Presets history object from DB
+ *
+ * @since 4.5.0
+ *
+ * @return object
+ */
+ private function _get_global_presets_history() {
+ $history = et_get_option( self::GLOBAL_PRESETS_HISTORY_OPTION, false );
+ if ( ! $history ) {
+ $history = (object) array(
+ 'history' => array(),
+ 'index' => - 1,
+ );
+ }
+
+ $this->_apply_attribute_migrations( $history );
+
+ return $history;
+ }
+
+ /**
+ * Migrates Custom Defaults history format to Global Presets history format
+ *
+ * @since 4.5.0
+ */
+ public static function migrate_custom_defaults_history() {
+ if ( et_is_builder_plugin_active() || ET_Builder_Global_Presets_Settings::are_custom_defaults_migrated() ) {
+ return;
+ }
+
+ $history = et_get_option( self::CUSTOM_DEFAULTS_HISTORY_OPTION, false );
+
+ if ( ! $history ) {
+ return;
+ }
+
+ $all_modules = ET_Builder_Element::get_modules();
+ $migrated_history = (object) array();
+ $migrated_history->history = array();
+
+ foreach ( $history->history as $record ) {
+ $migrated_record = (object) array();
+ $migrated_record->settings = (object) array();
+
+ foreach ( $record->settings as $module => $settings ) {
+ $migrated_record->settings->$module = ET_Builder_Global_Presets_Settings::generate_module_initial_presets_structure( $module, $all_modules );
+
+ foreach ( $settings as $setting => $value ) {
+ $migrated_record->settings->$module->presets->_initial->settings->$setting = $value;
+ }
+ }
+
+ $migrated_record->time = $record->time;
+ $migrated_record->label = $record->label;
+
+ $migrated_history->history[] = $migrated_record;
+ }
+
+ $migrated_history->index = $history->index;
+
+ et_update_option( self::GLOBAL_PRESETS_HISTORY_OPTION, $migrated_history );
+ }
+
+ /**
+ * Fire migration via "ET_Builder_Global_Presets_Settings::migrate_settings_as_module_attributes".
+ *
+ * @since ?
+ *
+ * @param object $history History object.
+ *
+ * @return void
+ */
+ protected function _apply_attribute_migrations( $history ) {
+ foreach ( $history->history as $record ) {
+ foreach ( $record->settings as $module => $preset_structure ) {
+ foreach ( $preset_structure->presets as $preset_id => $preset ) {
+ ET_Builder_Global_Presets_Settings::migrate_settings_as_module_attributes( $preset, $module );
+ }
+ }
+ }
+ }
+}
+
+ET_Builder_Global_Presets_History::instance();
diff --git a/includes/builder/feature/global-presets/Settings.php b/includes/builder/feature/global-presets/Settings.php
new file mode 100644
index 0000000..aaa953b
--- /dev/null
+++ b/includes/builder/feature/global-presets/Settings.php
@@ -0,0 +1,621 @@
+ '4.5',
+ 'extra' => '4.5',
+ );
+
+ // Migration phase two settings
+ public static $phase_two_settings = array(
+ 'body_font_size',
+ 'captcha_font_size',
+ 'caption_font_size',
+ 'filter_font_size',
+ 'form_field_font_size',
+ 'header_font_size',
+ 'meta_font_size',
+ 'number_font_size',
+ 'percent_font_size',
+ 'price_font_size',
+ 'sale_badge_font_size',
+ 'sale_price_font_size',
+ 'subheader_font_size',
+ 'title_font_size',
+ 'toggle_font_size',
+ 'icon_size',
+ 'padding',
+ 'custom_padding',
+ );
+
+ protected static $_module_additional_slugs = array(
+ 'et_pb_section' => array(
+ 'et_pb_section_fullwidth',
+ 'et_pb_section_specialty',
+ ),
+ 'et_pb_slide' => array(
+ 'et_pb_slide_fullwidth',
+ ),
+ 'et_pb_column' => array(
+ 'et_pb_column_specialty',
+ ),
+ );
+
+ protected static $_module_types_conversion_map = array(
+ 'et_pb_section' => '_convert_section_type',
+ 'et_pb_column' => '_convert_column_type',
+ 'et_pb_column_inner' => '_convert_column_type',
+ 'et_pb_slide' => '_convert_slide_type',
+ );
+
+ protected static $_module_import_types_conversion_map = array(
+ 'et_pb_section_specialty' => 'et_pb_section',
+ 'et_pb_section_fullwidth' => 'et_pb_section',
+ 'et_pb_column_inner' => 'et_bp_column',
+ 'et_pb_slide_fullwidth' => 'et_pb_slide',
+ 'et_pb_column_specialty' => 'et_pb_column',
+ );
+
+ protected static $_instance;
+ protected $_settings;
+
+ protected function __construct() {
+ $global_presets = et_get_option( self::GLOBAL_PRESETS_OPTION, (object) array(), '', true );
+
+ $this->_settings = $this->_normalize_global_presets( $global_presets );
+
+ $this->_register_hooks();
+ }
+
+ protected function _register_hooks() {
+ add_action( 'et_after_version_rollback', array( $this, 'after_version_rollback' ), 10, 3 );
+
+ // If migration is needed, ensure that all modules get fully loaded.
+ // phpcs:disable PEAR.Functions.FunctionCallSignature -- Anonymous functions.
+ add_action( 'et_builder_framework_loaded', function() {
+ if ( ! self::are_custom_defaults_migrated() ) {
+ add_filter( 'et_builder_should_load_all_module_data', '__return_true' );
+ }
+ });
+ // phpcs:enable
+
+ add_action( 'et_builder_ready', array( $this, 'migrate_custom_defaults' ), 100 );
+ }
+
+ /**
+ * Returns instance of the singleton class
+ *
+ * @since 4.5.0
+ *
+ * @return ET_Builder_Global_Presets_Settings
+ */
+ public static function instance() {
+ if ( ! isset( self::$_instance ) ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Returns the list of additional module slugs used to separate Global Presets settings.
+ * For example defaults for sections must be separated depends on the section type (regular, fullwidth or specialty).
+ *
+ * @since 4.5.0
+ *
+ * @param $module_slug - The module slug for which additional slugs are looked up.
+ *
+ * @return array - The list of the additional slugs.
+ */
+ public function get_module_additional_slugs( $module_slug ) {
+ if ( ! empty( self::$_module_additional_slugs[ $module_slug ] ) ) {
+ return self::$_module_additional_slugs[ $module_slug ];
+ }
+
+ return array();
+ }
+
+ /**
+ * Returns builder Global Presets settings.
+ *
+ * @since 4.5.0
+ *
+ * @return object
+ */
+ public function get_global_presets() {
+ return $this->_settings;
+ }
+
+ /**
+ * Checks if the gives preset ID exists
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug
+ * @param string $preset_id
+ *
+ * @return bool
+ */
+ protected function is_module_preset_exist( $module_slug, $preset_id ) {
+ return isset( $this->_settings->{$module_slug}->presets->{$preset_id} );
+ }
+
+ /**
+ * Returns a default preset ID for the given module type
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug
+ *
+ * @return string
+ */
+ public function get_module_default_preset_id( $module_slug ) {
+ return isset( $this->_settings->{$module_slug}->default )
+ ? $this->_settings->{$module_slug}->default
+ : self::MODULE_INITIAL_PRESET_ID;
+ }
+
+ /**
+ * Returns the module preset ID
+ * If the preset ID doesn't exist it will return the default preset ID
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug
+ * @param array $module_attrs
+ *
+ * @return string
+ */
+ public function get_module_preset_id( $module_slug, $module_attrs ) {
+ $preset_id = et_()->array_get( $module_attrs, self::MODULE_PRESET_ATTRIBUTE, false );
+
+ if ( ! $preset_id || ! $this->is_module_preset_exist( $module_slug, $preset_id ) ) {
+ return $this->get_module_default_preset_id( $module_slug );
+ }
+
+ return $preset_id;
+ }
+
+ /**
+ * Returns the module preset by the given preset ID
+ * Returns an empty object if no preset found
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug
+ * @param string $preset_id
+ *
+ * @return stdClass
+ */
+ public function get_module_preset( $module_slug, $preset_id ) {
+ if ( isset( $this->_settings->{$module_slug}->presets->{$preset_id} ) ) {
+ return (object) $this->_settings->{$module_slug}->presets->{$preset_id};
+ }
+
+ return (object) array();
+ }
+
+ /**
+ * Returns Global Presets settings for the particular module.
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug The module slug.
+ * @param array $attrs The module attributes.
+ *
+ * @return array
+ */
+ public function get_module_presets_settings( $module_slug, $attrs ) {
+ $result = array();
+
+ $real_preset_id = $this->get_module_preset_id( $module_slug, $attrs );
+
+ if ( isset( $this->_settings->{$module_slug}->presets->{$real_preset_id}->settings ) ) {
+ $result = (array) $this->_settings->{$module_slug}->presets->{$real_preset_id}->settings;
+ }
+
+ $result = self::maybe_set_global_colors( $result );
+
+ return $result;
+ }
+
+ /**
+ * Returns Global Presets settings with global colors injected.
+ *
+ * @since 4.10.0
+ *
+ * @param array $attrs - The module attributes.
+ *
+ * @return array
+ */
+ public static function maybe_set_global_colors( $attrs ) {
+ if ( empty( $attrs['global_colors_info'] ) ) {
+ return $attrs;
+ }
+
+ $gc_info = json_decode( $attrs['global_colors_info'], true );
+
+ foreach ( $gc_info as $color_id => $option_names ) {
+ foreach ( $option_names as $option_name ) {
+ $attrs[ $option_name ] = $color_id;
+ }
+ }
+
+ return $attrs;
+ }
+
+ /**
+ * Checks whether customizer settings migrated or not
+ *
+ * @since 4.5.0
+ *
+ * @return bool
+ */
+ public static function is_customizer_migrated() {
+ return et_get_option( self::CUSTOMIZER_SETTINGS_MIGRATED_FLAG, false );
+ }
+
+ /**
+ * Checks whether Custom Defaults settings migrated or not
+ *
+ * @since 4.5.0
+ *
+ * @return bool
+ */
+ public static function are_custom_defaults_migrated() {
+ return et_get_option( self::CUSTOM_DEFAULTS_MIGRATED_FLAG, false );
+ }
+
+ /**
+ * Migrates Module Customizer settings to Custom Defaults
+ *
+ * @since 4.5.0
+ *
+ * @param array $defaults - The list of modules default settings
+ */
+ public function migrate_customizer_settings( $defaults ) {
+ $template_directory = get_template_directory();
+
+ require_once $template_directory . '/includes/module-customizer/migrations.php';
+
+ $migrations = ET_Module_Customizer_Migrations::instance();
+
+ list (
+ $custom_defaults,
+ $custom_defaults_unmigrated,
+ ) = $migrations->migrate( $defaults );
+
+ et_update_option( self::CUSTOM_DEFAULTS_OPTION, (object) $custom_defaults );
+ et_update_option( self::CUSTOMIZER_SETTINGS_MIGRATED_FLAG, true );
+
+ if ( ! empty( $custom_defaults_unmigrated ) ) {
+ et_update_option( self::CUSTOM_DEFAULTS_UNMIGRATED_OPTION, (object) $custom_defaults_unmigrated );
+ } else {
+ et_update_option( self::CUSTOM_DEFAULTS_UNMIGRATED_OPTION, false );
+ }
+ }
+
+ /**
+ * Generates `_initial` module presets structure
+ *
+ * @since 4.5.0
+ *
+ * @param string $module_slug
+ * @param array $all_modules
+ *
+ * @return object
+ */
+ public static function generate_module_initial_presets_structure( $module_slug, $all_modules ) {
+ $structure = (object) array();
+ $module_slug_converted = isset( self::$_module_import_types_conversion_map[ $module_slug ] )
+ ? self::$_module_import_types_conversion_map[ $module_slug ]
+ : $module_slug;
+
+ $preset_name = isset( $all_modules[ $module_slug_converted ]->name )
+ ? sprintf( esc_html__( '%s Preset', 'et_builder' ), $all_modules[ $module_slug_converted ]->name )
+ : esc_html__( 'Preset', 'et_builder' );
+
+ $structure->default = '_initial';
+ $structure->presets = (object) array();
+ $structure->presets->_initial = (object) array();
+ $structure->presets->_initial->name = et_core_esc_previously( "{$preset_name} 1" );
+ $structure->presets->_initial->created = 0;
+ $structure->presets->_initial->updated = 0;
+ $structure->presets->_initial->version = ET_BUILDER_PRODUCT_VERSION;
+ $structure->presets->_initial->settings = (object) array();
+
+ return $structure;
+ }
+
+ /**
+ * Converts Custom Defaults to the new Global Presets format
+ *
+ * @since 4.5.0
+ *
+ * @param object $custom_defaults - The previous Custom Defaults
+ *
+ * @return object
+ */
+ public static function migrate_custom_defaults_to_global_presets( $custom_defaults ) {
+ $all_modules = ET_Builder_Element::get_modules();
+ $presets = (object) array();
+
+ foreach ( $custom_defaults as $module => $settings ) {
+ $presets->$module = self::generate_module_initial_presets_structure( $module, $all_modules );
+
+ foreach ( $settings as $setting => $value ) {
+ $presets->$module->presets->_initial->settings->$setting = $value;
+ }
+ }
+
+ return $presets;
+ }
+
+ /**
+ * Migrates existing Custom Defaults to the Global Presets structure
+ *
+ * @since 4.5.0
+ */
+ public function migrate_custom_defaults() {
+ if ( self::are_custom_defaults_migrated() ) {
+ return;
+ }
+
+ $this->_settings = (array) $this->_settings;
+
+ // Re-run migration to Global Presets if a user has not yet saved any presets.
+ if ( et_is_builder_plugin_active() && ! empty( $this->_settings ) ) {
+ et_update_option( self::CUSTOM_DEFAULTS_MIGRATED_FLAG, true );
+ return;
+ }
+
+ $custom_defaults = et_get_option( self::CUSTOM_DEFAULTS_OPTION, false );
+
+ if ( ! $custom_defaults ) {
+ $custom_defaults = (object) array();
+ }
+
+ $global_presets = self::migrate_custom_defaults_to_global_presets( $custom_defaults );
+
+ et_update_option( self::GLOBAL_PRESETS_OPTION, $global_presets );
+ $this->_settings = $global_presets;
+
+ et_update_option( self::CUSTOM_DEFAULTS_MIGRATED_FLAG, true );
+ }
+
+ /**
+ * Configuring and running migration of global presets via "et_pb_module_shortcode_attributes".
+ *
+ * @since ?
+ *
+ * @param object $preset Global preset object.
+ * @param string $module_slug Module slug.
+ *
+ * @return void
+ */
+ public static function migrate_settings_as_module_attributes( $preset, $module_slug ) {
+ $settings = (array) $preset->settings;
+
+ // Mimic preset settings as module attributes to re-use standard migration mechanism.
+ $settings['_builder_version'] = $preset->version;
+
+ // This flag will be used in migrations (see: ET_Builder_Module_Settings_Migration::_maybe_global_presets_migration ).
+ $maybe_global_presets_migration = true;
+
+ $migrated_settings = apply_filters( 'et_pb_module_shortcode_attributes', $settings, $settings, $module_slug, '0.0.0.0', '', $maybe_global_presets_migration );
+ if ( $settings['_builder_version'] !== $migrated_settings['_builder_version'] ) {
+ $migrated_version = $migrated_settings['_builder_version'];
+ unset( $migrated_settings['_builder_version'] );
+ $preset->version = $migrated_version;
+ $preset->settings = (object) $migrated_settings;
+ }
+ }
+
+ /**
+ * Handles theme version rollback.
+ *
+ * @since 4.5.0
+ *
+ * @param string $product_name - The short name of the product rolling back.
+ * @param string $rollback_from_version
+ * @param string $rollback_to_version
+ */
+ public function after_version_rollback( $product_name, $rollback_from_version, $rollback_to_version ) {
+ if ( ! isset( self::$allowed_products[ $product_name ] ) ) {
+ return;
+ }
+
+ if ( 0 > version_compare( $rollback_to_version, self::$allowed_products[ $product_name ] ) ) {
+ et_delete_option( self::CUSTOM_DEFAULTS_MIGRATED_FLAG );
+ }
+ }
+
+ /**
+ * Converts module type (slug).
+ * Used to separate Global Presets settings for modules sharing the same slug but having different meaning
+ * For example: Regular, Fullwidth and Specialty section types
+ *
+ * @since 4.5.0
+ *
+ * @param string $type - The module type (slug).
+ * @param array $attrs - The module attributes.
+ *
+ * @return string - The converted module type (slug)
+ */
+ public function maybe_convert_module_type( $type, $attrs ) {
+ if ( isset( self::$_module_types_conversion_map[ $type ] ) ) {
+ // @phpcs:ignore Generic.PHP.ForbiddenFunctions.Found
+ $type = call_user_func_array(
+ array( $this, self::$_module_types_conversion_map[ $type ] ),
+ array( $attrs, $type )
+ );
+ }
+
+ return $type;
+ }
+
+ /**
+ * Converts Section module slug to appropriate slug used in Global Presets
+ *
+ * @since 4.5.0
+ *
+ * @param array $attrs - The section attributes
+ *
+ * @return string - The converted section type depends on the section attributes
+ */
+ protected function _convert_section_type( $attrs ) {
+ if ( isset( $attrs['fullwidth'] ) && 'on' === $attrs['fullwidth'] ) {
+ return 'et_pb_section_fullwidth';
+ }
+
+ if ( isset( $attrs['specialty'] ) && 'on' === $attrs['specialty'] ) {
+ return 'et_pb_section_specialty';
+ }
+
+ return 'et_pb_section';
+ }
+
+ /**
+ * Converts Slide module slug to appropriate slug used in Global Presets
+ *
+ * @since 4.5.0
+ *
+ * @return string - The converted slide type depends on the parent slider type
+ */
+ protected function _convert_slide_type() {
+ global $et_pb_slider_parent_type;
+
+ if ( 'et_pb_fullwidth_slider' === $et_pb_slider_parent_type ) {
+ return 'et_pb_slide_fullwidth';
+ }
+
+ return 'et_pb_slide';
+ }
+
+ /**
+ * Converts Column module slug to appropriate slug used in Global Presets
+ *
+ * @since 4.5.0
+ *
+ * @return string - The converted column type
+ */
+ protected function _convert_column_type( $attrs, $type ) {
+ global $et_pb_parent_section_type;
+
+ if ( 'et_pb_column_inner' === $type ) {
+ return 'et_pb_column';
+ }
+
+ if ( 'et_pb_specialty_section' === $et_pb_parent_section_type
+ || ( isset( $attrs['specialty_columns'] ) && '' !== $attrs['specialty_columns'] ) ) {
+ return 'et_pb_column_specialty';
+ }
+
+ return 'et_pb_column';
+ }
+
+ /**
+ * Filters Global Presets setting to avoid non plain values like arrays or objects.
+ *
+ * Returns FALSE when the value is an Object or an array.
+ *
+ * @since ?? Included PHPDoc description.
+ * @since 4.5.0
+ *
+ * @param $value - The Global Presets setting value
+ *
+ * @return bool
+ */
+ protected static function _filter_global_presets_setting_value( $value ) {
+ return ! is_object( $value ) && ! is_array( $value );
+ }
+
+ /**
+ * Performs Global Presets format normalization.
+ * Usually used to cast format from array to object
+ * Also used to normalize global colors
+ *
+ * @since 4.5.0
+ *
+ * @param $presets - The object representing Global Presets settings
+ *
+ * @return object
+ */
+ protected function _normalize_global_presets( $presets ) {
+ $result = (object) array();
+
+ foreach ( $presets as $module => $preset_structure ) {
+ if ( isset( $preset_structure->presets ) ) {
+ $result->$module = (object) array();
+ $result->$module->presets = (object) array();
+
+ foreach ( $preset_structure->presets as $preset_id => $preset ) {
+ $result->$module->presets->$preset_id = (object) array();
+ $result->$module->presets->$preset_id->name = $preset->name;
+ $result->$module->presets->$preset_id->created = $preset->created;
+ $result->$module->presets->$preset_id->updated = $preset->updated;
+ $result->$module->presets->$preset_id->version = $preset->version;
+
+ if ( isset( $preset->settings ) ) {
+ $result->$module->presets->$preset_id->settings = (object) array();
+
+ $settings_filtered = array_filter(
+ (array) $preset->settings,
+ array(
+ $this,
+ '_filter_global_presets_setting_value',
+ )
+ );
+
+ // Since we still support PHP 5.2 we can't use `array_filter` with array keys
+ // So check if defaults have empty key
+ if ( isset( $settings_filtered[''] ) ) {
+ continue;
+ }
+
+ foreach ( $settings_filtered as $setting_name => $value ) {
+ $result->$module->presets->$preset_id->settings->$setting_name = $value;
+ }
+
+ // Insert correct global color IDs for affected settings.
+ $global_colors_info = isset( $settings_filtered['global_colors_info'] ) ? json_decode( $settings_filtered['global_colors_info'], true ) : array();
+
+ if ( ! empty( $global_colors_info ) ) {
+ foreach ( $global_colors_info as $color_id => $options_list ) {
+ if ( empty( $options_list ) ) {
+ continue;
+ }
+
+ foreach ( $options_list as $global_color_option ) {
+ if ( isset( $result->$module->presets->$preset_id->settings->$global_color_option ) ) {
+ $result->$module->presets->$preset_id->settings->$global_color_option = $color_id;
+ }
+ }
+ }
+ }
+ } else {
+ $result->$module->presets->$preset->settings = (object) array();
+ }
+ }
+
+ $result->$module->default = $preset_structure->default;
+ }
+ }
+
+ return $result;
+ }
+}
+
+ET_Builder_Global_Presets_Settings::instance();
diff --git a/includes/builder/feature/gutenberg/EditorTypography.php b/includes/builder/feature/gutenberg/EditorTypography.php
new file mode 100644
index 0000000..555b17c
--- /dev/null
+++ b/includes/builder/feature/gutenberg/EditorTypography.php
@@ -0,0 +1,456 @@
+register_hooks();
+ }
+
+ /**
+ * Get class instance.
+ *
+ * @return object class instance.
+ */
+ public static function instance() {
+
+ if ( null === self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Register hooks
+ */
+ public function register_hooks() {
+ add_action( 'admin_footer', array( $this, 'enqueue_block_typography_styles' ) );
+ add_filter( 'block_editor_settings_all', array( $this, 'block_editor_settings_all' ), 10, 2 );
+ }
+
+ /**
+ * Filter editor styles pass to the GB editor.
+ *
+ * @param array $editor_settings editor settings.
+ * @param WP_Block_Editor_Context $block_editor_context The current block editor context.
+ *
+ * @return mixed
+ */
+ public function block_editor_settings_all( $editor_settings, $block_editor_context ) {
+
+ $styles = $this->get_body_styles();
+ $styles .= $this->get_title_styles();
+
+ $post = $block_editor_context->post;
+ if ( $post ) {
+ $tb_layouts = et_theme_builder_get_template_layouts( ET_Theme_Builder_Request::from_post( $post->ID ) );
+
+ if ( isset( $tb_layouts[ ET_THEME_BUILDER_BODY_LAYOUT_POST_TYPE ] ) ) {
+ $body_layout = $tb_layouts[ ET_THEME_BUILDER_BODY_LAYOUT_POST_TYPE ];
+ $body_layout_id = et_()->array_get( $body_layout, 'id' );
+ $this->_body_layout_post = get_post( $body_layout_id );
+
+ $this->_initialize_shortcode( '_post_content_shortcode', et_theme_builder_get_post_content_modules() );
+ $this->_initialize_shortcode( '_post_title_shortcode', array( 'et_pb_post_title' ) );
+ $styles .= $this->get_tb_styles();
+ }
+ }
+
+ $editor_settings['styles'][] = array(
+ 'css' => $styles,
+ '__unstableType' => 'theme',
+ );
+
+ return $editor_settings;
+ }
+
+ /**
+ * Set the et_pb_post_content and et_pb_post_title shortcode from the body layout post content.
+ *
+ * @param string $prop {@see self::$_post_content_shortcode} or {@see self::$_post_title_shortcode} property.
+ * @param array $tagnames Shortcode tagnames.
+ */
+ private function _initialize_shortcode( $prop, $tagnames ) {
+ $regex = get_shortcode_regex( $tagnames );
+
+ if ( preg_match_all( "/$regex/", $this->_body_layout_post->post_content, $matches ) ) {
+ $post_title_shortcodes = et_()->array_get( $matches, '0' );
+
+ // Take the style from the first Post Title module that has the title enabled.
+ foreach ( $post_title_shortcodes as $post_title_shortcode ) {
+ if ( false === strpos( $post_title_shortcode, 'title="off"' ) ) {
+ $this->{$prop} = $post_title_shortcode;
+
+ return;
+ }
+ }
+ } elseif ( preg_match_all( "/$regex/", $this->_body_layout_post->post_content, $matches, PREG_SET_ORDER ) ) {
+ $this->{$prop} = et_()->array_get(
+ $matches,
+ '0.0'
+ );
+ }
+ }
+
+ /**
+ * Print GB typography style.
+ */
+ public function enqueue_block_typography_styles() {
+
+ if ( ! get_current_screen()->is_block_editor() ) {
+ return;
+ }
+
+ et_builder_print_font();
+ }
+
+ /**
+ * Print the post content style.
+ */
+ public function get_body_styles() {
+
+ $body_styles = '';
+
+ $body_font = esc_html( et_get_option( 'body_font' ) );
+
+ if ( ! empty( $body_font ) && 'none' !== $body_font ) {
+ et_builder_enqueue_font( $body_font );
+ $font_family = et_builder_get_font_family( $body_font );
+
+ $body_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'font-family',
+ 'value' => str_replace( 'font-family: ', '', $font_family ),
+ )
+ );
+ }
+
+ $body_font_height = esc_html( et_get_option( 'body_font_height' ) );
+
+ if ( ! empty( $body_font_height ) ) {
+ $body_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'line-height',
+ 'value' => $body_font_height,
+ )
+ );
+ }
+
+ $body_font_size = esc_html( et_get_option( 'body_font_size' ) );
+
+ if ( ! empty( $body_font_size ) ) {
+ $body_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'font-size',
+ 'value' => $body_font_size,
+ 'suffix' => 'px',
+ )
+ );
+ }
+
+ $body_font_color = esc_html( et_get_option( 'font_color' ) );
+
+ if ( ! empty( $body_font_color ) ) {
+ $body_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'color',
+ 'value' => $body_font_color,
+ )
+ );
+ }
+
+ if ( ! empty( $body_styles ) ) {
+ $body_styles = sprintf( 'body { %1$s }', $body_styles );
+ }
+
+ $link_color = esc_html( et_get_option( 'link_color' ) );
+
+ if ( ! empty( $link_color ) ) {
+ $body_styles .= et_builder_generate_css(
+ array(
+ 'style' => 'color',
+ 'value' => $link_color,
+ 'selector' => 'a',
+ )
+ );
+ }
+
+ return $body_styles;
+ }
+
+ /**
+ * Print post title styles.
+ */
+ public function get_title_styles() {
+
+ $title_styles = '';
+
+ $heading_font = esc_html( et_get_option( 'heading_font' ) );
+
+ // Fallback to the body font.
+ if ( empty( $heading_font ) || 'none' === $heading_font ) {
+ $heading_font = esc_html( et_get_option( 'body_font' ) );
+ }
+
+ if ( ! empty( $heading_font ) && 'none' !== $heading_font ) {
+ et_builder_enqueue_font( $heading_font );
+ $font_family = et_builder_get_font_family( $heading_font );
+
+ $title_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'font-family',
+ 'value' => str_replace( 'font-family: ', '', $font_family ),
+ )
+ );
+ }
+
+ $body_header_spacing = esc_html( et_get_option( 'body_header_spacing' ) );
+
+ if ( ! empty( $body_header_spacing ) ) {
+ $title_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'letter-spacing',
+ 'value' => $body_header_spacing,
+ 'suffix' => 'px',
+ )
+ );
+ }
+
+ $header_color = esc_html( et_get_option( 'header_color' ) );
+
+ if ( ! empty( $header_color ) ) {
+ $title_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'color',
+ 'value' => $header_color,
+ )
+ );
+ }
+
+ $body_header_height = esc_html( et_get_option( 'body_header_height' ) );
+
+ if ( ! empty( $body_header_height ) && '1' !== $body_header_height ) {
+ $title_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => 'line-height',
+ 'value' => $body_header_height,
+ )
+ );
+ }
+
+ $body_header_style = esc_html( et_get_option( 'body_header_style' ) );
+
+ if ( ! empty( $body_header_style ) ) {
+ // Convert string into array.
+ $styles_array = explode( '|', $body_header_style );
+
+ $font_properties_value_map = array(
+ 'font-weight' => 'bold',
+ 'font-style' => 'italic',
+ 'text-transform' => 'uppercase',
+ 'text-decoration' => 'underline',
+ );
+
+ foreach ( $font_properties_value_map as $css_property => $value ) {
+ if ( in_array( $value, $styles_array, true ) ) {
+ $title_styles .= et_builder_generate_css_style(
+ array(
+ 'style' => $css_property,
+ 'value' => $value,
+ )
+ );
+ }
+ }
+ }
+
+ if ( ! empty( $title_styles ) ) {
+ $title_styles = sprintf( 'h1,h2,h3,h4,h5,h6,.editor-post-title__block .editor-post-title__input { %1$s }', $title_styles );
+ }
+
+ $title_styles .= $this->get_heading_levels_font_size_style();
+
+ return $title_styles;
+ }
+
+ /**
+ * Print TB's style.
+ */
+ public function get_tb_styles() {
+
+ if ( empty( $this->_post_content_shortcode ) && empty( $this->_post_title_shortcode ) ) {
+ return;
+ }
+
+ if ( ! class_exists( 'ET_Builder_Element' ) ) {
+ require_once ET_BUILDER_DIR . 'class-et-builder-value.php';
+ require_once ET_BUILDER_DIR . 'class-et-builder-element.php';
+ require_once ET_BUILDER_DIR . 'ab-testing.php';
+ et_builder_init_global_settings();
+ et_builder_add_main_elements();
+ et_builder_settings_init();
+ ET_Builder_Element::set_media_queries();
+ }
+
+ // To generate the styles from the shortcode, this do_shortcode will intialize et_pb_post_content and et_pb_post_title modules classes.
+ ob_start();
+ do_shortcode( $this->_post_title_shortcode . $this->_post_content_shortcode );
+ ob_end_clean();
+
+ // Get style generated by modules.
+ $tb_style = ET_Builder_Element::get_style();
+
+ $have_post_content_style = preg_match( '/\.et_pb_post_content_0 { (.*) }/', $tb_style, $matches );
+ if ( $have_post_content_style && isset( $matches[1] ) ) {
+ $et_pb_post_content_styles = explode( ';', $matches[1] );
+ $typography_properties = array(
+ 'color',
+ 'font-family',
+ 'font-size',
+ 'font-weight',
+ 'font-style',
+ 'text-align',
+ 'text-shadow',
+ 'letter-spacing',
+ 'line-height',
+ 'text-transform',
+ 'text-decoration',
+ 'text-decoration-style',
+ );
+
+ $post_content_style = '';
+
+ foreach ( $et_pb_post_content_styles as $et_pb_post_content_style ) {
+ $style = explode( ':', $et_pb_post_content_style ); // explode CSS property and value.
+ $css_property = trim( et_()->array_get( $style, '0' ) );
+ if ( in_array( $css_property, $typography_properties, true ) ) {
+ $post_content_style .= $css_property . ':' . et_()->array_get( $style, '1' ) . ';';
+ }
+ }
+
+ $tb_style = 'body {' . $post_content_style . '}' . $tb_style;
+ }
+
+ foreach ( array( 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' ) as $heading_selector ) {
+ $tb_style = str_replace( ".et_pb_post_content_0 $heading_selector ", $heading_selector, $tb_style );
+ }
+
+ foreach ( array( 'a', 'ul', 'ol', 'ul li', 'ol li', 'blockquote' ) as $selector ) {
+ $search = array(
+ ".et_pb_post_content_0 $selector ",
+ ".et_pb_post_content_0.et_pb_post_content $selector",
+ );
+
+ $tb_style = str_replace( $search, $selector, $tb_style );
+ }
+
+ // Replace the post title style selectors with editor's post title selector.
+ $tb_style = str_replace( array( '.et_pb_post_title_0 .entry-title', '.et_pb_post_title_0 .et_pb_title_container h1.entry-title, .et_pb_post_title_0 .et_pb_title_container h2.entry-title, .et_pb_post_title_0 .et_pb_title_container h3.entry-title, .et_pb_post_title_0 .et_pb_title_container h4.entry-title, .et_pb_post_title_0 .et_pb_title_container h5.entry-title, .et_pb_post_title_0 .et_pb_title_container h6.entry-title' ), '.wp-block.editor-post-title__block .editor-post-title__input', $tb_style );
+
+ // Enqueue fonts.
+ $fonts_regex = '/font-family:\s+[\'"]([a-zA-Z0-9\s]+)[\'"]/';
+ $has_fonts = preg_match_all( $fonts_regex, $tb_style, $matches, PREG_SET_ORDER );
+ if ( false !== $has_fonts && isset( $match[1] ) ) {
+ foreach ( $matches as $match ) {
+ et_builder_enqueue_font( $match[1] );
+ }
+ }
+
+ return $tb_style;
+ }
+
+ /**
+ * Generate the heading levels font size from the Header Size customizer setting and return style.
+ *
+ * @return string
+ */
+ public function get_heading_levels_font_size_style() {
+
+ $body_header_size = esc_html( et_get_option( 'body_header_size' ) );
+
+ $title_styles = '';
+
+ if ( empty( $body_header_size ) ) {
+ return $title_styles;
+ }
+
+ $font_sizes = array(
+ 'h1,.editor-post-title__block .editor-post-title__input' => $body_header_size,
+ 'h2' => $body_header_size * .86,
+ 'h3' => $body_header_size * .73,
+ 'h4' => $body_header_size * .60,
+ 'h5' => $body_header_size * .53,
+ 'h6' => $body_header_size * .47,
+ );
+
+ foreach ( $font_sizes as $selector => $font_size ) {
+ $title_styles .= ',' . et_builder_generate_css(
+ array(
+ 'style' => 'font-size',
+ 'value' => intval( $font_size ),
+ 'suffix' => 'px',
+ 'selector' => $selector,
+ )
+ );
+ }
+
+ return $title_styles;
+ }
+
+}
+
+// Initialize ET_GB_Editor_Typography.
+ET_GB_Editor_Typography::instance();
diff --git a/includes/builder/feature/gutenberg/blocks/Layout.php b/includes/builder/feature/gutenberg/blocks/Layout.php
new file mode 100644
index 0000000..18cb4c8
--- /dev/null
+++ b/includes/builder/feature/gutenberg/blocks/Layout.php
@@ -0,0 +1,670 @@
+register_block();
+ $this->register_hooks();
+ }
+
+ /**
+ * Get class instance
+ *
+ * @since 4.1.0
+ *
+ * @return object class instance
+ */
+ public static function instance() {
+ if ( null === self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Register block
+ *
+ * @since 4.1.0
+ */
+ public function register_block() {
+ register_block_type(
+ $this->block_name,
+ array(
+ 'attributes' => array(
+ 'layoutContent' => array(
+ 'type' => 'string',
+ ),
+ ),
+ )
+ );
+ }
+
+ /**
+ * Register hooks
+ *
+ * @since 4.1.0
+ */
+ public function register_hooks() {
+ // Admin screen
+ add_action( 'admin_init', array( $this, 'register_portability_on_builder_page' ) );
+
+ // Block preview inside gutenberg
+ add_action( 'template_include', array( $this, 'register_preview_template' ) );
+ add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_block_preview_styles_scripts' ), 15 );
+ add_action( 'wp_footer', array( $this, 'enqueue_block_preview_footer_styles_scripts' ) );
+ add_action( 'pre_get_posts', array( $this, 'modify_layout_content_condition' ), 20 );
+
+ add_filter( 'body_class', array( $this, 'add_body_classnames' ) );
+ add_filter( 'et_pb_section_data_attributes', array( $this, 'add_section_boxshadow_attributes' ), 10, 3 );
+ add_filter( 'the_content', array( $this, 'modify_layout_content_output' ), 1 );
+ add_filter( 'get_post_metadata', array( $this, 'modify_layout_content_builder_meta' ), 10, 4 );
+ add_filter( 'et_fb_load_raw_post_content', array( $this, 'modify_layout_content_visual_builder_raw_post_content' ) );
+ add_filter( 'et_builder_render_layout', array( $this, 'modify_theme_builder_body_layout' ), 7 );
+
+ // Block rendering on frontend
+ add_filter( 'render_block', array( $this, 'render_block' ), 100, 2 );
+ add_filter( 'get_the_excerpt', array( $this, 'get_the_post_excerpt' ) );
+ }
+
+ /**
+ * Check if current request is Divi Layout preview for block request. Layout block preview page
+ * is only valid for logged in user with edit_posts cap with query string for activating block
+ * layout preview and its nonce to verify it.
+ *
+ * Initially, is_singular() check existed but reusable block at `wp_block` CPT and any other CPT
+ * that has no frontend due to its post type registration sets `public` attribute to `false`
+ * renders layout block preview at non singular page makes is_singular() check need to be dropped
+ *
+ * @since 4.1.0
+ *
+ * @return bool
+ */
+ public static function is_layout_block_preview() {
+ return isset( $_GET['et_block_layout_preview'] ) && et_core_security_check(
+ 'edit_posts',
+ 'et_block_layout_preview',
+ 'et_block_layout_preview_nonce',
+ '_GET',
+ false
+ );
+ }
+
+ /**
+ * Check if current builder shortcode rendering is done inside layout block
+ *
+ * @since 4.1.0
+ *
+ * @return bool
+ */
+ public static function is_layout_block() {
+ global $et_is_layout_block;
+
+ // Ensure the returned value is bool
+ return $et_is_layout_block ? true : false;
+ }
+
+ /**
+ * Register portability which is needed to import premade and saved Layout via Divi Library;
+ * Portability is intentionally disabled on builder page by `et_builder_should_load_framework()`
+ * nevertheless excluding GB there doesn't work because it is being too early before any
+ * GB check is hooked. Thus Register another portability for GB + builder page
+ *
+ * @since 4.1.0
+ */
+ public function register_portability_on_builder_page() {
+ global $pagenow;
+
+ // No permission, can't load library UI in the first place
+ if ( ! et_pb_is_allowed( 'divi_library' ) ) {
+ return;
+ }
+
+ // Exit if current page is not saved edit page
+ $is_edit_page = 'post.php' === $pagenow && isset( $_GET['post'] );
+
+ if ( ! $is_edit_page ) {
+ return;
+ }
+
+ $post_id = intval( $_GET['post'] );
+
+ // Exit if current page doesn't use Gutenberg
+ if ( ! use_block_editor_for_post_type( get_post_type( $post_id ) ) ) {
+ return;
+ }
+
+ // Exit if current page doesn't use builder
+ if ( ! et_pb_is_pagebuilder_used( $post_id ) ) {
+ return;
+ }
+
+ // Register portability
+ et_core_portability_register(
+ 'et_builder',
+ array(
+ 'name' => esc_html__( 'Divi Builder Layout', 'et_builder' ),
+ 'type' => 'post',
+ 'view' => true,
+ )
+ );
+ }
+
+ /**
+ * Filter rendered blocks on FE.
+ *
+ * @since 4.1.0
+ * @since 4.10.0 Filter core/post-excerpt rendered output.
+ *
+ * @param string $block_content Saved & serialized block data.
+ * @param array $block Block info.
+ */
+ public function render_block( $block_content, $block ) {
+ // Core - Post Excerpt block.
+ if ( 'core/post-excerpt' === $block['blockName'] ) {
+ return $this->get_rendered_post_excerpt( $block_content, true );
+ }
+
+ // Divi - Layout block.
+ if ( 'divi/layout' === $block['blockName'] ) {
+ global $et_is_layout_block;
+
+ // Set flag.
+ $et_is_layout_block = true;
+
+ // Render block content's shortcode. Block content actually can be rendered without this
+ // method and only depending to WordPress' `do_shortcode` hooked into `the_content`. However
+ // layout block need to set global for detecting that shortcode is rendered inside layout
+ // block hence the early shortcode rendering between global variables.
+ $block_content = do_shortcode( $block_content );
+
+ // Reset flag.
+ $et_is_layout_block = false;
+
+ return $block_content;
+ }
+
+ return $block_content;
+ }
+
+ /**
+ * Filter post excerpt of REST API request.
+ *
+ * @since 4.9.10
+ * @since 4.10.0 Only filter post excerpt rendered from REST API request. This API request
+ * is being used by Block Editor.
+ *
+ * @param string $post_excerpt Current post excerpt rendered.
+ *
+ * @return string Modified post excerpt.
+ */
+ public function get_the_post_excerpt( $post_excerpt ) {
+ // Bail early if current request is not REST API request.
+ if ( ! defined( 'REST_REQUEST' ) || ! REST_REQUEST ) {
+ return $post_excerpt;
+ }
+
+ return $this->get_rendered_post_excerpt( $post_excerpt );
+ }
+
+ /**
+ * Get rendered post excerpt built with builder. Always return rendered $post_excerpt
+ * because it's already wrapped with Post Excerpt block wrapper.
+ *
+ * @since 4.10.0
+ *
+ * @param string $post_excerpt Current rendered post excerpt.
+ * @param boolean $is_wrapped Whether the post excerpt is wrapped or not.
+ *
+ * @return string Old or new rendered post excerpt.
+ */
+ public function get_rendered_post_excerpt( $post_excerpt, $is_wrapped = false ) {
+ // Bail early if no global post. Need to get the post here due to some issues with
+ // 3rd party plugins regarding missing 2nd arg on the `get_the_excerpt` filter.
+ $post = get_post();
+ if ( empty( $post ) ) {
+ return $post_excerpt;
+ }
+
+ if ( ! empty( $post->post_excerpt ) ) {
+ return $post_excerpt;
+ }
+
+ // Bail early if Builder framework is not loaded. There are some cases where 3rd
+ // party plugins run scan without visiting theme functions file.
+ if ( ! function_exists( 'et_builder_load_framework' ) ) {
+ return $post_excerpt;
+ }
+
+ if ( ! et_pb_is_pagebuilder_used( $post->ID ) ) {
+ return $post_excerpt;
+ }
+
+ static $et_rendered_post_excerpt = array();
+
+ // Bail early if current post is already processed.
+ if ( isset( $et_rendered_post_excerpt[ $post->ID ] ) ) {
+ return $et_rendered_post_excerpt[ $post->ID ];
+ }
+
+ // 1. Ensure all the ET shortcode are registered.
+ if ( ! did_action( 'et_builder_ready' ) ) {
+ // When the `get_the_excerpt` filter is called by Query Loop block on the FE,
+ // the `ET_Builder_Element` class is loaded properly but no ET shortcode is
+ // registered yet. In this case, we can call `et_builder_init_global_settings`
+ // & `et_builder_add_main_elements` methods directly. However, this class is not
+ // loaded on the Block Editor, so we have to load all related files manually
+ // before we can call those methods to register the shortcode.
+ if ( ! class_exists( 'ET_Builder_Element' ) ) {
+ require_once ET_BUILDER_DIR . 'class-et-builder-value.php';
+ require_once ET_BUILDER_DIR . 'class-et-builder-element.php';
+ require_once ET_BUILDER_DIR . 'ab-testing.php';
+ }
+
+ et_builder_init_global_settings();
+ et_builder_add_main_elements();
+ et_builder_settings_init();
+ }
+
+ // 2. Generate Builder post excerpt.
+ // WordPress post excerpt length comes from `excerpt_length` filter. And, it's
+ // words based length, not characters based length.
+ $excerpt_length = apply_filters( 'excerpt_length', 55 );
+ $new_post_excerpt = et_core_intentionally_unescaped( wpautop( et_delete_post_first_video( truncate_post( $excerpt_length, false, $post, true, true ) ) ), 'html' );
+
+ // 3. Ensure to return the block wrapper if the $post_excerpt is already wrapped.
+ if ( $is_wrapped ) {
+ $wrapper = '/( )(.*?)()/';
+ $new_post_excerpt = wp_strip_all_tags( $new_post_excerpt );
+ $new_post_excerpt = preg_replace( $wrapper, "$1{$new_post_excerpt}$3", $post_excerpt );
+ }
+
+ $et_rendered_post_excerpt[ $post->ID ] = $new_post_excerpt;
+
+ return $new_post_excerpt;
+ }
+
+ /**
+ * Overwrite template path if current request is Divi Layout block preview
+ *
+ * @since 4.1.0
+ *
+ * @return string
+ */
+ public function register_preview_template( $template ) {
+ if ( self::is_layout_block_preview() ) {
+ // disable admin bar
+ show_admin_bar( false );
+
+ // Use layout block specific template for render layout block preview (headerless
+ // and footerless templates). BFB template was initialy used for this for DRY reason
+ // but its #page-container-bfb causing styling issues
+ return ET_BUILDER_DIR . 'templates/block-layout-preview.php';
+ }
+
+ // return original template
+ return $template;
+ }
+
+ /**
+ * Get Theme Builder's template settings of current (layout block preview) page
+ *
+ * @since 4.3.4
+ *
+ * @return array
+ */
+ public static function get_preview_tb_template() {
+ // Identify current request, and get applicable TB template for current page
+ $request = ET_Theme_Builder_Request::from_current();
+ $templates = et_theme_builder_get_theme_builder_templates( true );
+ $settings = et_theme_builder_get_flat_template_settings_options();
+ $tb_template = $request->get_template( $templates, $settings );
+
+ // Define template properties as variables for readability
+ $template_id = et_()->array_get( $tb_template, 'id', 0 );
+ $layout_id = et_()->array_get( $tb_template, 'layouts.body.id', 0 );
+ $layout_enabled = et_()->array_get( $tb_template, 'layouts.body.enabled', false );
+ $layout_override = et_()->array_get( $tb_template, 'layouts.body.override', false );
+ $has_layout = $layout_id && $layout_enabled && $layout_override;
+
+ return array(
+ 'layout_id' => $layout_id,
+ 'layout_enabled' => $layout_enabled,
+ 'template_id' => $template_id,
+ 'has_layout' => $has_layout,
+ );
+ }
+
+ /**
+ * Early scripts and styles queue for Layout Block Preview page
+ * Need to queue early because `et-builder-modules-script` uses localize scripts on this method
+ *
+ * @since 4.4.1 Compatibility fixes for WP 5.4
+ * @since 4.1.0
+ */
+ public function enqueue_block_preview_styles_scripts() {
+ if ( ! self::is_layout_block_preview() ) {
+ return;
+ }
+
+ if ( et_fb_enabled() ) {
+ return;
+ }
+
+ // Enqueue frame helper if it hasn't been queued
+ if ( ! wp_script_is( 'et-frame-helpers', 'enqueued' ) ) {
+ wp_enqueue_script(
+ 'et-frame-helpers',
+ ET_BUILDER_URI . '/frontend-builder/build/frame-helpers.js',
+ array(),
+ ET_BUILDER_VERSION
+ );
+ }
+
+ wp_localize_script(
+ et_get_combined_script_handle(),
+ 'ETBlockLayoutModulesScript',
+ array(
+ // blockId is dash separated alphanumeric uuid value
+ 'blockId' => sanitize_title( et_()->array_get( $_POST, 'et_editor_block_id', 0 ) ),
+
+ // Make layout shortcode available for ajax pagination request by outputting it
+ // as JS params so the pagination ajax request can have identical page on next
+ // request. Thus any custom script has no business being here: as long as the same
+ // module shortcode exist on next page it should be okay. Hence, kses em all
+ // regardless user capability to reduce security concern
+ 'layoutContent' => wp_kses_post( et_()->array_get( $_POST, 'et_layout_block_layout_content', '' ) ),
+ )
+ );
+ }
+
+ /**
+ * Late scripts and styles queue for Layout Block Preview page
+ * Need to queue late because localize script needs to populate settings from rendered modules
+ *
+ * @since 4.4.1 Renamed into `enqueue_block_preview_footer_styles_scripts`. Localize script
+ * value which is used by `et-builder-modules-script` is queued on earlier hook
+ * @since 4.1.0
+ */
+ public function enqueue_block_preview_footer_styles_scripts() {
+ if ( ! self::is_layout_block_preview() ) {
+ return;
+ }
+
+ // Frontend preview adjustment should only be called on layout block preview frame
+ // and shouldn't be called on layout block builder
+ if ( ! et_fb_enabled() ) {
+ wp_enqueue_script(
+ 'et-block-layout-preview',
+ ET_BUILDER_URI . '/scripts/block-layout-frontend-preview.js',
+ array( 'jquery' ),
+ ET_BUILDER_PRODUCT_VERSION
+ );
+ }
+
+ wp_localize_script(
+ 'et-block-layout-preview',
+ 'ETBlockLayoutPreview',
+ array(
+ // blockId is dash separated alphanumeric uuid value
+ 'blockId' => sanitize_title( et_()->array_get( $_POST, 'et_editor_block_id', 0 ) ),
+
+ // Exposed module settings for layout block preview for making nescessary adjustments
+ 'assistiveSettings' => ET_Builder_Element::get_layout_block_assistive_settings(),
+
+ // Exposed Divi breakpoint minimum widths
+ 'breakpointMinWidths' => et_pb_responsive_options()->get_breakpoint_min_widths(),
+
+ // Divi style mode
+ 'styleModes' => array(
+ 'desktop',
+ 'tablet',
+ 'phone',
+ 'hover',
+ ),
+ )
+ );
+
+ // Disabled link modal, originally added for classic builder preview
+ wp_enqueue_style(
+ 'et-block-layout-preview-style',
+ ET_BUILDER_URI . '/styles/preview-layout-block.css',
+ array(),
+ ET_BUILDER_VERSION
+ );
+ }
+
+ /**
+ * Add builder classname on body class if layout block exist on the page
+ *
+ * @since 4.1.0
+ *
+ * @param array classname
+ *
+ * @return array modified classname
+ */
+ public function add_body_classnames( $classes ) {
+ if ( self::is_layout_block_preview() ) {
+ $classes[] = 'et-db';
+ $classes[] = 'et-block-layout-preview';
+ }
+
+ return $classes;
+ }
+
+ /**
+ * Add box shadow's highest offset value if box shadow is used on section so block preview area
+ * can adjust its padding to make section's box shadow previewable on block preview
+ *
+ * @since 4.1.0
+ *
+ * @return array
+ */
+ public function add_section_boxshadow_attributes( $attributes, $props, $render_count ) {
+ $box_shadow_style = et_()->array_get( $props, 'box_shadow_style', '' );
+
+ // Only apply on layout block and box shadow is set
+ if ( ! self::is_layout_block_preview() || '' === $box_shadow_style || 'none' === $box_shadow_style ) {
+ return $attributes;
+ }
+
+ // List of box shadow attribute that might affect how tall the box shadow is
+ $spread = et_()->array_get( $props, 'box_shadow_spread', '' );
+ $blur = et_()->array_get( $props, 'box_shadow_blur', '' );
+ $vertical = et_()->array_get( $props, 'box_shadow_vertical', '' );
+
+ $values = array(
+ 'spread' => absint( $spread ),
+ 'blur' => absint( $blur ),
+ 'vertical' => absint( $vertical ),
+ );
+
+ // Sort attributes; there's no way to safely convert all unit (em, rem, etc) into one
+ // specific unit accurately, so this assumes that all values are in px
+ asort( $values );
+
+ // Point to the last array
+ end( $values );
+
+ // Get last array keys
+ $highest_attribute_key = key( $values );
+
+ // Add attribute with higest value into DOM data-* attribute so it can be referenced
+ $attributes['box-shadow-offset'] = et_()->array_get( $props, 'box_shadow_' . $highest_attribute_key, '' );
+
+ return $attributes;
+ }
+
+ /**
+ * Modify layout content condition. Preview template should consider itself is_single = true
+ *
+ * @since 4.1.0
+ * @since 4.4.1 don't overwrite `p` and `post_type` query vars if homepage displays static page
+ *
+ * @param object
+ */
+ public function modify_layout_content_condition( $query ) {
+ if ( $query->is_main_query() && self::is_layout_block_preview() ) {
+ // Set to `false` to avoid home specific classname and attribute being printed. This is
+ // specifically needed on CPT which is not publicly queryable / doesn't have frontend
+ // page such as reusable block's `wp_block` CPT
+ $query->is_home = false;
+
+ // Set to `true` so `#et-boc` wrapper is correctly added
+ $query->is_single = true;
+ $query->is_singular = true;
+
+ // Query name doesn't exist while post_id is passed via query string means current
+ // layout block preview is rendered on CPT that doesn't publicly queryable / doesn't
+ // have registered frontend page such `wp_block`. Manually set post id and post type
+ // to avoid current query fetches ALL posts on `post` post type. However, bail if
+ // current page has page_id. This means the current page, most likely homepage URL when
+ // it has `name` query like this, renders static page on its homepage URL (defined at
+ // dashboard > settings > your homepage display). Not doing this will cause current
+ // homepage has incorrect post type and id which leads to 404 preview page which
+ // will prevent the preview page from being rendered
+ if ( ! isset( $query->query['name'] ) && 0 === $query->get( 'page_id' ) ) {
+ if ( isset( $_GET['et_post_id'] ) ) {
+ $query->set( 'p', intval( $_GET['et_post_id'] ) );
+ }
+
+ if ( isset( $_GET['et_post_type'] ) ) {
+ $query->set( 'post_type', sanitize_text_field( $_GET['et_post_type'] ) );
+ }
+ }
+ }
+ }
+
+ /**
+ * Modify layout content content output based on layout shortcode layout sent over POST for
+ * previewing layout block on gutenberg editor
+ *
+ * @since 4.1.0
+ *
+ * @param string $content post's content
+ *
+ * @return string
+ */
+ public function modify_layout_content_output( $content ) {
+ if ( self::is_layout_block_preview() && is_main_query() ) {
+ $content = et_()->array_get( $_POST, 'et_layout_block_layout_content', '' );
+
+ // If user don't have posting unfiltered html capability, strip scripts
+ if ( ! current_user_can( 'unfiltered_html' ) ) {
+ $content = wp_kses_post( $content );
+ }
+
+ return wp_unslash( $content );
+ }
+
+ return $content;
+ }
+
+ /**
+ * Modify post meta for enabling builder status and disabling static css if current request is
+ * layout block preview
+ *
+ * @since 4.1.0
+ *
+ * @param null $value
+ * @param int $object_id
+ * @param string $meta_key
+ * @param bool $single
+ *
+ * @return mixed
+ */
+ public function modify_layout_content_builder_meta( $value, $object_id, $meta_key, $single ) {
+ // Force enable builder on layout block preview page request
+ if ( '_et_pb_use_builder' === $meta_key && self::is_layout_block_preview() ) {
+ return 'on';
+ }
+
+ // Force disable static CSS on layout block preview page request so static CSS doesn't cache
+ // incorrect stylesheet and break layout block styling
+ if ( '_et_pb_static_css_file' === $meta_key && self::is_layout_block_preview() ) {
+ return 'off';
+ }
+
+ return $value;
+ }
+
+ /**
+ * Modify raw post content for visual builder for layout content edit screen
+ *
+ * @since 4.1.0
+ *
+ * @param string $post_content
+ *
+ * @return string modified post content
+ */
+ public function modify_layout_content_visual_builder_raw_post_content( $post_content ) {
+ if ( self::is_layout_block_preview() ) {
+ // Explicitly set post_id value based on query string because layout block's edit
+ // window of CPT that has no frontend page such as reusable block's `wp_block` CPT
+ // might use other / last post loop for rendering visual builder structure since its
+ // own post data isn't publicly queryable
+ $post_id = intval( et_()->array_get( $_GET, 'et_post_id', get_the_ID() ) );
+ $block_id = sanitize_title( et_()->array_get( $_GET, 'blockId' ) );
+
+ $key = "_et_block_layout_preview_{$block_id}";
+ $post_content = wp_unslash( get_post_meta( $post_id, $key, true ) );
+ }
+
+ return $post_content;
+ }
+
+ /**
+ * Modify Theme Builder body layout that is used on layout block preview
+ *
+ * @since 4.3.4
+ *
+ * @param string $content
+ *
+ * @return string
+ */
+ public function modify_theme_builder_body_layout( $content ) {
+ // Skip if current request isn't layout block preview
+ if ( ! self::is_layout_block_preview() ) {
+ return $content;
+ }
+
+ // Get `et_pb_post_content` shortcode inside layout by pulling regex and matching it.
+ // `et_pb_post_content` has to exist, otherwise `the_content()` won't be rendered; Return
+ // plain `et_pb_post_content` shortcode if current layout doesn't have any
+ $post_content_regex = get_shortcode_regex( et_theme_builder_get_post_content_modules() );
+
+ preg_match_all( "/$post_content_regex/", $content, $post_content_module, PREG_SET_ORDER );
+
+ $post_content_shortcode = et_()->array_get(
+ $post_content_module,
+ '0.0',
+ '[et_pb_post_content][/et_pb_post_content]'
+ );
+
+ // Return `et_pb_post_content` wrapped by section > row > column which has no unwanted
+ // styling. TB body layout might have any module imaginable while in context of layout block
+ // preview, only `et_pb_post_content` matters because its typography setting can override
+ // default typography styling
+ return '[et_pb_section admin_label="section" custom_padding="0px|0px|0px|0px"]
+ [et_pb_row admin_label="row" custom_padding="0px|0px|0px|0px" custom_margin="0px|0px|0px|0px" width="100%"]
+ [et_pb_column type="4_4"]' . $post_content_shortcode . '[/et_pb_column]
+ [/et_pb_row]
+ [/et_pb_section]';
+ }
+}
+
+// Initialize ET_GB_Block_Layout
+ET_GB_Block_Layout::instance();
diff --git a/includes/builder/feature/gutenberg/utils/Conversion.php b/includes/builder/feature/gutenberg/utils/Conversion.php
new file mode 100644
index 0000000..cffb322
--- /dev/null
+++ b/includes/builder/feature/gutenberg/utils/Conversion.php
@@ -0,0 +1,261 @@
+array_get( $block, 'blockName', '' );
+
+ return 'divi/layout' === $block_name;
+ }
+
+ /**
+ * Check if given block is reusable block
+ *
+ * @since 4.1.0
+ *
+ * @todo being set as static so it is easier to be used outside this class. If being used quite
+ * frequently, probably consider wrap this into function. Not needed at the moment tho
+ *
+ * @param array $block Parsed block.
+ *
+ * @return bool
+ */
+ public static function is_reusable_block( $block = array() ) {
+ $block_name = et_()->array_get( $block, 'blockName', '' );
+
+ return 'core/block' === $block_name && et_()->array_get( $block, 'attrs.ref' ) > 0;
+ }
+
+ /**
+ * Get reusable block's parsed content. NOTE: WordPress has built in `render_block_core_block()`
+ * but it renders the block and its content instead of parse its content.
+ *
+ * @since 4.1.0
+ *
+ * @see render_block_core_block()
+ *
+ * @todo being set as static so it is easier to be used outside this class. If being used quite
+ * frequently, probably consider wrap this into function. Not needed at the moment tho
+ *
+ * @param array $block Parsed block.
+ *
+ * @return array
+ */
+ public static function get_reusable_block_content( $block ) {
+ $block_id = et_()->array_get( $block, 'attrs.ref' );
+ $block_data = get_post( $block_id );
+
+ if ( ! $block_data || 'wp_block' !== $block_data->post_type || 'publish' !== $block_data->post_status ) {
+ return array();
+ }
+
+ return parse_blocks( $block_data->post_content );
+ }
+
+ /**
+ * Parse reusable block by getting its content and append it as innerBlocks
+ *
+ * @since 4.1.0
+ *
+ * @param array Parsed block.
+ *
+ * @return array Modified parsed block.
+ */
+ public static function parse_reusable_block( $block ) {
+ $reusable_block_data = self::get_reusable_block_content( $block );
+ $block['innerBlocks'] = array_merge( $block['innerBlocks'], $reusable_block_data );
+
+ // Unset reusable block's ref attribute so reusable block content is no longer fetched
+ unset( $block['attrs']['ref'] );
+
+ // Change block into group so its content is being rendered
+ $block['blockName'] = 'core/group';
+
+ // Recreate innerContent which is used by block parser to render innerBlock.
+ // See: `render_block()`'s `$block['innerContent'] as $chunk` loop
+ $block['innerContent'] = array_merge(
+ array( ' tag to keep the paragraph sanity.
+ * - runs other shortcodes if any using do_shortcode.
+ *
+ * @since 4.4.1
+ *
+ * @param string $description Product description i.e. Post content.
+ *
+ * @return string
+ */
+function et_builder_wc_parse_description( $description ) {
+ if ( ! is_string( $description ) ) {
+ return $description;
+ }
+
+ global $wp_embed;
+
+ $parsed_description = et_strip_shortcodes( $description );
+ $parsed_description = $wp_embed->run_shortcode( $parsed_description );
+ $parsed_description = do_shortcode( $parsed_description );
+ $parsed_description = wpautop( $parsed_description );
+
+ return $parsed_description;
+}
+
+/**
+ * Entry point for the woocommerce-modules.php file.
+ *
+ * @since 3.29
+ */
+function et_builder_wc_init() {
+ // global $post won't be available with `after_setup_theme` hook and hence `wp` hook is used.
+ add_action( 'wp', 'et_builder_wc_override_default_layout' );
+
+ // Add WooCommerce class names on non-`product` CPT which uses builder.
+ add_filter( 'body_class', 'et_builder_wc_add_body_class' );
+ add_filter( 'et_builder_inner_content_class', 'et_builder_wc_add_inner_content_class' );
+ add_filter( 'et_builder_outer_content_class', 'et_builder_wc_add_outer_content_class' );
+
+ // Load WooCommerce related scripts.
+ add_action( 'wp_enqueue_scripts', 'et_builder_wc_load_scripts', 15 );
+
+ add_filter(
+ 'et_builder_skip_content_activation',
+ 'et_builder_wc_skip_initial_content',
+ 10,
+ 2
+ );
+
+ // Show Product Content dropdown settings under
+ // Divi Theme Options ⟶ Builder ⟶ Post TYpe Integration.
+ add_filter( 'et_builder_settings_definitions', 'et_builder_wc_add_settings' );
+
+ /**
+ * Adds the metabox only to Product post type.
+ *
+ * This is achieved using the post type hook - add_meta_boxes_{post_type}.
+ *
+ * @see https://codex.wordpress.org/Plugin_API/Action_Reference/add_meta_boxes
+ *
+ * @since 3.29
+ */
+ add_action( 'add_meta_boxes_product', 'et_builder_wc_long_description_metabox_register' );
+
+ // Saves the long description metabox data.
+ // Since `et_pb_metabox_settings_save_details()` already uses `save_post` hook
+ // to save `_et_pb_old_content` post meta,
+ // we use this additional hook `et_pb_old_content_updated`.
+ add_action( 'et_pb_old_content_updated', 'et_builder_wc_long_description_metabox_save', 10, 3 );
+
+ // 01. Sets the initial Content when `Use Divi Builder` button is clicked
+ // in the Admin dashboard.
+ // 02. Sets the initial Content when `Enable Visual Builder` is clicked.
+ add_filter(
+ 'et_fb_load_raw_post_content',
+ 'et_builder_wc_set_initial_content',
+ 10,
+ 2
+ );
+
+ add_action( 'et_save_post', 'et_builder_set_product_page_layout_meta' );
+
+ /*
+ * Set the Product modified status as modified upon save to make sure default layout is not
+ * loaded more than one time.
+ *
+ * @see https://github.com/elegantthemes/Divi/issues/16420
+ */
+ add_action( 'et_update_post', 'et_builder_set_product_content_status' );
+
+ /*
+ * Handle get Woocommerce tabs AJAX call initiated by Tabs checkbox in settings modal.
+ */
+ add_action( 'wp_ajax_et_builder_get_woocommerce_tabs', 'et_builder_get_woocommerce_tabs' );
+
+ /*
+ * Fix Woo Extra Product Options addon compatibility.
+ * @see https://github.com/elegantthemes/Divi/issues/17909
+ */
+ add_filter( 'thwepof_hook_name_before_single_product', 'et_builder_trigger_extra_product_options' );
+
+ /*
+ * Fix nested parsing on non-builder product pages w/ shortcode content.
+ * @see https://github.com/elegantthemes/Divi/issues/18682
+ */
+ add_filter( 'the_content', 'et_builder_avoid_nested_shortcode_parsing' );
+
+ add_filter( 'et_builder_wc_description', 'et_builder_wc_parse_description' );
+
+ /*
+ * In the case of dynamic module framework's shortcode manager
+ * we need to fire this hook on its own,
+ */
+ if ( ! et_builder_should_load_all_module_data() ) {
+ add_action(
+ 'et_builder_module_lazy_shortcodes_registered',
+ [
+ 'ET_Builder_Module_Woocommerce_Cart_Notice',
+ 'disable_default_notice',
+ ]
+ );
+ }
+}
+
+et_builder_wc_init();
diff --git a/includes/builder/framework.php b/includes/builder/framework.php
new file mode 100644
index 0000000..e4185ab
--- /dev/null
+++ b/includes/builder/framework.php
@@ -0,0 +1,1240 @@
+',
+ 'after_title' => '
',
+ )
+ );
+ }
+ }
+
+ // Disable built-in's recent comments widget link styling because ET Themes don't need it.
+ if ( ! et_is_builder_plugin_active() ) {
+ add_filter( 'show_recent_comments_widget_style', '__return_false' );
+ }
+}
+
+// Call the widgets init at 'init' hook if Divi Builder plugin active because plugin
+// loads the Divi builder at 'init' hook and 'widgets_init' is too early.
+if ( et_is_builder_plugin_active() ) {
+ add_action( 'init', 'et_builder_widgets_init', 20 );
+} else {
+ add_action( 'widgets_init', 'et_builder_widgets_init' );
+}
+
+/**
+ * For Dev Use
+ */
+function et_light_debug_backtrace() {
+ $debug_backtrace = debug_backtrace();
+ $keys = [ 'file', 'line', 'function', 'class' ];
+ $light_debug_backtrace = [];
+
+ foreach ( $debug_backtrace as $key => $value ) {
+ foreach ( $keys as $_key ) {
+ if ( isset( $value[ $_key ] ) ) {
+ $light_debug_backtrace[ $key ][ $_key ] = $value[ $_key ];
+ }
+ }
+ }
+
+ return array_slice( $light_debug_backtrace, 1 );
+}
diff --git a/includes/builder/deprecations.php b/includes/builder/deprecations.php
new file mode 100644
index 0000000..59aa140
--- /dev/null
+++ b/includes/builder/deprecations.php
@@ -0,0 +1,69 @@
+ array(),
+ 'classes' => array(
+ '\ET_Builder_Module_Blurb' => array(
+ 'method_args' => array(
+ '_add_option_toggles' => array( 'general', array() ),
+ '_shortcode_callback' => array( array(), null, 'et_pb_blurb' ),
+ '_shortcode_passthru_callback' => array( array(), null, 'et_pb_blurb' ),
+ 'additional_shortcode_callback' => array( array(), null, 'et_pb_blurb' ),
+ 'shortcode_callback' => array( array(), null, 'et_pb_blurb' ),
+ ),
+ 'methods' => array(
+ '_add_option_toggles' => '_add_settings_modal_toggles',
+ '_get_current_shortcode_address' => 'generate_element_address',
+ '_shortcode_callback' => '_render',
+ '_shortcode_passthru_callback' => 'render_as_builder_data',
+ 'additional_shortcode_callback' => 'additional_render',
+ 'get_shortcode_fields' => 'get_default_props',
+ 'pre_shortcode_content' => 'before_render',
+ 'shortcode_atts' => '',
+ 'shortcode_atts_to_data_atts' => 'props_to_html_data_attrs',
+ 'shortcode_callback' => 'render',
+ 'shortcode_output' => 'output',
+ ),
+ 'properties' => array(
+ 'advanced_options' => 'advanced_fields',
+ 'custom_css_options' => 'custom_css_fields',
+ 'options_toggles' => 'settings_modal_toggles',
+ 'shortcode_atts' => 'props',
+ 'shortcode_content' => 'content',
+ 'allowlisted_fields' => array(),
+ 'no_shortcode_callback' => 'no_render',
+ ),
+ ),
+ ),
+);
diff --git a/includes/builder/feature/AjaxCache.php b/includes/builder/feature/AjaxCache.php
new file mode 100644
index 0000000..a4597b3
--- /dev/null
+++ b/includes/builder/feature/AjaxCache.php
@@ -0,0 +1,284 @@
+get_file_name();
+ return $file && et_()->WPFS()->is_readable( $file );
+ }
+
+ /**
+ * Returns whether cache is empty or not.
+ *
+ * @since 4.0.10
+ *
+ * @return bool
+ */
+ public function is_empty() {
+ $this->load();
+ return empty( $this->_cache );
+ }
+
+ /**
+ * Enqueue ajax cache as definitions dependency.
+ *
+ * @since 4.0.10
+ *
+ * @param array $deps Dependencies array.
+ * @param string $key Script handle.
+ *
+ * @return array
+ */
+ public function add_cache_dep( $deps, $key ) {
+ // Skip all static assets but definitions.
+ if ( 'et-dynamic-asset-definitions' !== $key ) {
+ return $deps;
+ }
+
+ if ( ! $this->file_exists() && ! $this->write_file() ) {
+ // Bail out if cache is empty and cannot write the file.
+ return $deps;
+ }
+
+ // Enqueue ajax cache as definitions dependency.
+ $handle = 'et-ajax-cache';
+ $deps[] = $handle;
+ wp_register_script( $handle, $this->get_url(), array(), ET_BUILDER_VERSION, false );
+
+ return $deps;
+ }
+
+ /**
+ * Load cache.
+ *
+ * @since 4.0.10
+ *
+ * @return void
+ */
+ public function load() {
+ if ( is_array( $this->_cache ) ) {
+ // Cache was already loaded.
+ return;
+ }
+
+ $this->_cache = get_transient( $this->_transient );
+
+ if ( ! is_array( $this->_cache ) ) {
+ $this->_cache = array();
+ $this->delete_file();
+ }
+ }
+
+ /**
+ * Save cache.
+ *
+ * @since 4.0.10
+ *
+ * @return void
+ */
+ public function save() {
+ // Ensure cache is loaded.
+ $this->load();
+
+ if ( $this->_dirty ) {
+ set_transient( $this->_transient, $this->_cache );
+ $this->delete_file();
+ }
+ }
+
+ /**
+ * Write cache file.
+ *
+ * @since 4.0.10
+ *
+ * @return bool
+ */
+ public function write_file() {
+ if ( $this->is_empty() ) {
+ return false;
+ }
+
+ $file = $this->get_file_name();
+ $cache = '';
+ foreach ( $this->_cache as $key => $value ) {
+ $cache = sprintf( '"%s":%s,', $key, $value );
+ }
+ $cache = sprintf( '{"ajaxCache":{%s}}', rtrim( $cache, ',' ) );
+ $cache = sprintf( 'window.ETBuilderBackend=jQuery.extend(true,%s,window.ETBuilderBackend)', $cache );
+
+ et_()->WPFS()->put_contents( $file, $cache );
+ return $this->file_exists();
+ }
+
+ /**
+ * Delete cache file.
+ *
+ * @since 4.0.10
+ *
+ * @return void
+ */
+ public function delete_file() {
+ if ( $this->file_exists() ) {
+ et_()->WPFS()->delete( $this->get_file_name() );
+ }
+ }
+
+ /**
+ * Set cache key.
+ *
+ * @since 4.0.10
+ *
+ * @param string $key Cache key.
+ * @param string $content Cache value.
+ *
+ * @return void
+ */
+ public function set( $key, $content ) {
+ $this->load();
+ $this->_cache[ $key ] = wp_json_encode( $content );
+ $this->_dirty = true;
+ }
+
+ /**
+ * Unset cache key.
+ *
+ * @since 4.0.10
+ *
+ * @param string $key Cache key.
+ *
+ * @return void
+ */
+ public function unset_( $key ) {
+ $this->load();
+ if ( isset( $this->_cache[ $key ] ) ) {
+ unset( $this->_cache[ $key ] );
+ $this->_dirty = true;
+ }
+ }
+
+ /**
+ * Clear cache.
+ *
+ * @return void
+ */
+ public function clear() {
+ delete_transient( $this->_transient );
+ }
+
+ /**
+ * Get cache file name.
+ *
+ * @since 4.0.10
+ *
+ * @return string.
+ */
+ public function get_file_name() {
+ // Per language Cache due to some data being localized.
+ $lang = is_admin() || et_fb_is_enabled() ? get_user_locale() : get_locale();
+ $lang = trim( sanitize_file_name( $lang ), '.' );
+ $prefix = 'ajax';
+ $cache = et_()->path( et_core_cache_dir()->path, $lang );
+ $files = glob( "{$cache}/{$prefix}-*.js" );
+ $exists = is_array( $files ) && $files;
+
+ if ( $exists ) {
+ return $files[0];
+ }
+
+ wp_mkdir_p( $cache );
+
+ // Create uniq filename.
+ $uniq = str_replace( '.', '', (string) microtime( true ) );
+ $file = "{$cache}/{$prefix}-{$uniq}.js";
+
+ return et_()->WPFS()->is_writable( dirname( $file ) ) ? $file : false;
+ }
+
+ /**
+ * Get cache url.
+ *
+ * @since 4.0.10
+ *
+ * @return string
+ */
+ public function get_url() {
+ $file = $this->get_file_name();
+ $lang = basename( dirname( $file ) );
+ $name = basename( $file );
+ return et_()->path( et_core_cache_dir()->url, $lang, $name );
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 4.0.10
+ *
+ * @return ET_Builder_Ajax_Cache
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+}
+
+ET_Builder_Ajax_Cache::instance();
diff --git a/includes/builder/feature/BlockEditorIntegration.php b/includes/builder/feature/BlockEditorIntegration.php
new file mode 100644
index 0000000..a0e34a6
--- /dev/null
+++ b/includes/builder/feature/BlockEditorIntegration.php
@@ -0,0 +1,757 @@
+.*?<\/ul>/mis';
+
+ /**
+ * Constructor.
+ *
+ * ET_Builder_Block_Editor_Integration constructor.
+ */
+ public function __construct() {
+ $this->init_hooks();
+ }
+
+ /**
+ * Return whether the post can be edited in the block editor.
+ *
+ * @param mixed $post Post ID or WP_Post object.
+ *
+ * @return bool
+ */
+ protected function _can_edit_post( $post ) {
+ if ( function_exists( 'gutenberg_can_edit_post' ) ) {
+ return gutenberg_can_edit_post( $post );
+ }
+
+ // In case WordPress is lower than version 5.0.
+ if ( ! function_exists( 'use_block_editor_for_post' ) ) {
+ return false;
+ }
+
+ return use_block_editor_for_post( $post );
+ }
+
+ /**
+ * Return whether a post type is compatible with the block editor.
+ *
+ * @param string $type The post type.
+ *
+ * @return bool
+ */
+ protected function _can_edit_post_type( $type ) {
+ if ( function_exists( 'gutenberg_can_edit_post_type' ) ) {
+ return gutenberg_can_edit_post_type( $type );
+ }
+
+ // In case WordPress is lower than version 5.0.
+ if ( ! function_exists( 'use_block_editor_for_post_type' ) ) {
+ return false;
+ }
+
+ return use_block_editor_for_post_type( $type );
+ }
+
+ /**
+ * Check if the current editor is set to load Gutenberg.
+ *
+ * @return bool
+ */
+ protected function _is_block_editor_page() {
+ if ( function_exists( 'is_gutenberg_page' ) ) {
+ return is_gutenberg_page();
+ }
+
+ // In case WordPress is lower than version 5.0.
+ if ( ! function_exists( 'use_block_editor_for_post' ) ) {
+ return false;
+ }
+
+ return use_block_editor_for_post( get_the_ID() );
+ }
+
+ /**
+ * Filter on map_meta_cap.
+ *
+ * @param array $caps Capabilities.
+ * @param string $cap Capability to check.
+ * @param string $user_id User ID.
+ * @param array $args Additional args.
+ *
+ * @return array
+ */
+ public function map_meta_cap( $caps, $cap, $user_id, $args ) {
+ // This only needs to run once,.
+ remove_filter( 'map_meta_cap', array( $this, 'map_meta_cap' ), 10 );
+ if (
+ // GB checks for 'edit_post' so do nothing in all other cases.
+ 'edit_post' !== $cap ||
+ // Ignore the case where Divi wasn't used to edit the post.
+ ! et_pb_is_pagebuilder_used( $args[0] )
+ ) {
+ return $caps;
+ }
+ // We need to add `do_not_allow` for superadmins.
+ $caps = array( 'do_not_allow' );
+
+ return $caps;
+ }
+
+ /**
+ * Get user capabilities that is relevant to block editor integration
+ *
+ * @since 4.1.0
+ *
+ * @return array
+ */
+ public function get_current_user_capabilities() {
+ /**
+ * Make relevant capabilities filterable should the need to check for more caps arises
+ *
+ * @since 4.1.0
+ *
+ * @param array user capabilities
+ */
+ $relevant_capabilities = array(
+ 'divi_library',
+ 'use_visual_builder',
+ );
+ $relevant_capabilities = apply_filters( 'et_block_editor_relevant_capabilities', $relevant_capabilities );
+
+ $capabilities = array();
+
+ foreach ( $relevant_capabilities as $cap_name ) {
+ $capabilities[ $cap_name ] = et_pb_is_allowed( $cap_name );
+ }
+
+ return $capabilities;
+ }
+
+ /**
+ * Filter used to disable GB for certain post types.
+ *
+ * @param bool $can_edit Whether post type can be editable with gutenberg or not.
+ * @param string $post_type Post type name.
+ *
+ * @return bool
+ */
+ public function gutenberg_can_edit_post_type( $can_edit, $post_type ) {
+ // The tricky part here is that GB doesn't pass the post ID to this filter but only its type
+ // but we need the ID to determine whether the post has been edited with Divi.
+ // Since GB uses `current_user_can( 'edit_post', $post->ID )` right after call this filter,
+ // We hook into `map_meta_cap` (which gets passed the ID) and do our checks there.
+ add_filter( 'map_meta_cap', array( $this, 'map_meta_cap' ), 10, 4 );
+
+ return $can_edit;
+ }
+
+ /**
+ * Enqueue our GB compatibility bundle.
+ *
+ * @return void
+ */
+ public function enqueue_block_editor_assets() {
+ // Load script dependencies that is used by builder on top window. These dependencies
+ // happen to be the exact same scripts required by BFB top window's scripts.
+ et_bfb_enqueue_scripts_dependencies();
+
+ // Enqueue open sans.
+ et_builder_enqueue_open_sans();
+
+ // Enqueue integration & blocks scripts.
+ $deps = array(
+ 'jquery',
+ 'et_bfb_admin_date_addon_js',
+ 'wp-hooks',
+ );
+ et_fb_enqueue_bundle( 'et-builder-gutenberg', 'gutenberg.js', $deps );
+
+ // Enqueue top window style.
+ wp_register_style(
+ 'et-fb-top-window',
+ ET_BUILDER_URI . '/frontend-builder/assets/css/fb-top-window.css',
+ array(),
+ ET_BUILDER_VERSION
+ );
+
+ // Enqueue integration & blocks styles.
+ $deps = array(
+ 'et-fb-top-window',
+ );
+ et_fb_enqueue_bundle( 'et-builder-gutenberg', 'gutenberg.css', $deps );
+
+ // this enqueue bundle.css.
+ et_builder_enqueue_assets_main();
+
+ $post_id = get_the_ID();
+ $post_type = get_post_type();
+ $enabled_for_post_type = et_builder_enabled_for_post_type( $post_type );
+ $updates_options = get_site_option( 'et_automatic_updates_options', array() );
+ $et_account = array(
+ 'et_username' => et_()->array_get( $updates_options, 'username', '' ),
+ 'et_api_key' => et_()->array_get( $updates_options, 'api_key', '' ),
+ 'status' => get_site_option( 'et_account_status', 'not_active' ),
+ );
+
+ // Set helpers needed by our own Gutenberg bundle.
+ $gutenberg = array(
+ 'helpers' => array(
+ 'postID' => $post_id,
+ 'postType' => $post_type,
+ 'is3rdPartyPostType' => et_builder_is_post_type_custom( $post_type ) ? 'yes' : 'no',
+ 'vbUrl' => et_fb_get_vb_url(),
+ 'builderUsed' => et_pb_is_pagebuilder_used( $post_id ),
+ 'scriptDebug' => defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG,
+ 'canToggle' => et_pb_is_allowed( 'divi_builder_control' ) && $enabled_for_post_type,
+ 'isEnabled' => $enabled_for_post_type,
+ 'i18n' => array(
+ 'placeholder' => array(
+ 'block' => array(
+ 'title' => esc_html__( 'Divi Builder', 'et_builder' ),
+ 'description' => esc_html__( 'The Divi Builder is activated on this page. To edit your page using the builder, click the Edit With The Divi Builder button.', 'et_builder' ),
+ ),
+ 'render' => array(
+ 'title' => array(
+ 'new' => esc_html__( 'Build Your Layout Using Divi', 'et_builder' ),
+ 'old' => esc_html__( 'This Layout Is Built With Divi', 'et_builder' ),
+ ),
+ 'divi' => array(
+ 'new' => esc_html__( 'Use Divi Builder', 'et_builder' ),
+ 'old' => esc_html__( 'Edit With The Divi Builder', 'et_builder' ),
+ ),
+ 'default' => esc_html__( 'Use Default Editor', 'et_builder' ),
+ ),
+ ),
+ ),
+ ),
+
+ // Loaded into ETBlockUserStore.
+ 'capabilities' => $this->get_current_user_capabilities(),
+
+ // Loaded into ETBlockLibraryStore.
+ 'etAccount' => $et_account,
+
+ // Loaded into ETBlockSettingsStore.
+ 'conditions' => array(
+ 'isRtl' => is_rtl(),
+ ),
+ 'constants' => array(
+ 'emptyLayout' => '[et_pb_section admin_label="section"][et_pb_row admin_label="row"][/et_pb_row][/et_pb_section]',
+ ),
+ 'nonces' => array(
+ 'et_builder_library_get_layouts_data' => wp_create_nonce( 'et_builder_library_get_layouts_data' ),
+ 'et_builder_library_update_account' => wp_create_nonce( 'et_builder_library_update_account' ),
+ 'et_block_layout_preview' => wp_create_nonce( 'et_block_layout_preview' ),
+ 'et_rest_get_layout_content' => wp_create_nonce( 'et_rest_get_layout_content' ),
+ 'et_rest_process_builder_edit_data' => wp_create_nonce( 'et_rest_process_builder_edit_data' ),
+ ),
+ 'urls' => array(
+ 'adminAjax' => admin_url( 'admin-ajax.php' ),
+ 'diviLibrary' => ET_BUILDER_DIVI_LIBRARY_URL,
+ 'home' => home_url( '/' ),
+ ),
+ /**
+ * Make DOM selectors list filterable so third party can modified it if needed
+ *
+ * @since 4.1.0
+ *
+ * @param array list of selectors
+ */
+ 'selectors' => apply_filters(
+ 'et_gb_selectors',
+ array(
+ 'pageLayoutSelect' => '#et_pb_page_layout',
+ )
+ ),
+ /**
+ * Make Content Widhts settings filterable so third party can modified it if needed
+ *
+ * @since 4.1.0
+ *
+ * @param array content width configurations
+ */
+ 'contentWidths' => apply_filters(
+ 'et_gb_content_widths',
+ array(
+ // Intentionally set null for default and undefined if no saved content width found
+ // unless `et_gb_content_widths` is being filtered to handle Divi Builder Plugin
+ // situation which might not have deifined content width.
+ 'default' => null,
+ 'current' => get_post_meta( $post_id, '_et_gb_content_width', true ),
+ 'min' => 320, // Min content width (small smartphone width).
+ 'max' => 2880, // Max content width (15" laptop * 2).
+ )
+ ),
+ );
+ wp_localize_script( 'et-builder-gutenberg', 'et_builder_gutenberg', $gutenberg );
+
+ // Set translated strings for the scripts.
+ wp_set_script_translations( 'et-builder-gutenberg', 'et_builder', ET_BUILDER_DIR . 'languages' );
+ }
+
+ /**
+ * Add new Divi page
+ *
+ * @return void
+ */
+ public function add_new_button() {
+ global $typenow;
+ if ( ! $this->_can_edit_post_type( $typenow ) ) {
+ return;
+ }
+
+ $edit = 'post-new.php';
+ $edit .= 'post' !== $typenow ? "?post_type=$typenow" : '';
+
+ // Create a nonce to auto activate VB on a new Auto Draft.
+ $url = add_query_arg( 'et_fb_new_vb_nonce', wp_create_nonce( 'et_fb_new_vb_nonce' ), admin_url( $edit ) );
+ $button = sprintf( '%s', esc_url( $url ), 'Divi' );
+ ?>
+
+ $post->ID,
+ 'post_status' => 'draft',
+ )
+ );
+
+ // Add VB activation nonce.
+ $url = add_query_arg(
+ 'et_fb_activation_nonce',
+ wp_create_nonce( 'et_fb_activation_nonce_' . $post->ID ),
+ et_fb_prepare_ssl_link( get_permalink( $post ) )
+ );
+
+ // Set post meta to `off` or else `et_builder_set_content_activation` won't work...
+ update_post_meta( $post->ID, '_et_pb_use_builder', 'off' );
+
+ wp_safe_redirect( $url );
+
+ exit();
+ }
+
+ /**
+ * Add 'Edit With Divi Editor' links
+ *
+ * @param array $actions Currently defined actions for the row.
+ * @param object $post Current post object.
+ *
+ * @return array
+ */
+ public function add_edit_link( $actions, $post ) {
+ // Maybe change this with et_fb_current_user_can_save or equivalent.
+
+ if ( ! $this->_can_edit_post( $post ) || ! et_builder_enabled_for_post_type( $post->post_type ) ) {
+ return $actions;
+ }
+
+ if ( (int) get_option( 'page_for_posts' ) === $post->ID ) {
+ // Post is assigned as the blog page so it does not have editable content.
+ return $actions;
+ }
+
+ $post_id = $post->ID;
+ $is_divi_library = 'et_pb_layout' === get_post_type( $post_id );
+ $edit_url = $is_divi_library ? get_edit_post_link( $post_id, 'raw' ) : get_permalink( $post_id );
+
+ if ( et_pb_is_pagebuilder_used( $post_id ) ) {
+ $edit_url = et_fb_get_vb_url( $edit_url );
+ } else {
+ if ( ! et_pb_is_allowed( 'divi_builder_control' ) ) {
+ // Do not add Divi activation link when user lacks `Toggle Divi Builder` capability.
+ return $actions;
+ }
+ $edit_url = add_query_arg(
+ array(
+ 'et_fb_activation_nonce' => wp_create_nonce( 'et_fb_activation_nonce_' . $post_id ),
+ ),
+ $edit_url
+ );
+ }
+
+ $edit_action = array(
+ 'divi' => sprintf(
+ '%s',
+ esc_url( $edit_url ),
+ esc_attr(
+ sprintf(
+ __( 'Edit “%s” in Divi', 'et_builder' ),
+ _draft_or_post_title( $post->ID )
+ )
+ ),
+ esc_html__( 'Edit With Divi', 'et_builder' )
+ ),
+ );
+
+ $actions = array_merge( $actions, $edit_action );
+
+ // I'm leaving this here in case we wanna change item position.
+ // $edit_offset = array_search( 'edit', array_keys( $actions ), true );
+ // $actions = array_merge(
+ // array_slice( $actions, 0, $edit_offset + 1 ),
+ // $edit_action,
+ // array_slice( $actions, $edit_offset + 1 )
+ // );.
+
+ return $actions;
+
+ }
+
+ /**
+ * Add filters needed to show our extra row action.
+ *
+ * @return void
+ */
+ public function add_edit_link_filters() {
+ // For hierarchical post types.
+ add_filter( 'page_row_actions', array( $this, 'add_edit_link' ), 10, 2 );
+ // For non-hierarchical post types.
+ add_filter( 'post_row_actions', array( $this, 'add_edit_link' ), 10, 2 );
+ }
+
+ /**
+ * Add 'Divi' to post states when builder is enabled for it.
+ *
+ * @param array $post_states Existing post states.
+ * @param object $post Current post object.
+ *
+ * @return array
+ */
+ public function display_post_states( $post_states, $post ) {
+ // Make sure that $post_states is an array. Third party plugin might modify $post_states and makes it null
+ // which create various issue (i.e. Piklist + Having a page configured as a static page).
+ if ( ! is_array( $post_states ) ) {
+ $post_states = array();
+ }
+
+ if ( et_pb_is_pagebuilder_used( $post->ID ) ) {
+ // Remove Gutenberg if existing.
+ $key = array_search( 'Gutenberg', $post_states, true );
+ if ( false !== $key ) {
+ unset( $post_states[ $key ] );
+ }
+ // GB devs didn't allow this to be translated so why should we ?
+ $post_states[] = 'Divi';
+ }
+
+ return $post_states;
+ }
+
+ /**
+ * Ensures that Divi enabled CPTs support 'custom-fields'.
+ *
+ * @since 3.19.12
+ */
+ public function ensure_post_type_supports() {
+ $post_types = et_builder_get_builder_post_types();
+
+ foreach ( $post_types as $post_type ) {
+ if ( ! post_type_supports( $post_type, 'custom-fields' ) ) {
+ add_post_type_support( $post_type, 'custom-fields' );
+ }
+ }
+ }
+
+ /**
+ * Alter update_post_metadata return value from during a REST API update
+ * when meta value isn't changed.
+ *
+ * @param mixed $result Previous result.
+ * @param int $object_id Post ID.
+ * @param string $meta_key Meta key.
+ * @param mixed $meta_value Meta value.
+ *
+ * @return mixed
+ */
+ public function update_post_metadata( $result, $object_id, $meta_key, $meta_value ) {
+ if ( ! in_array( $meta_key, array( '_et_pb_use_builder', '_et_pb_old_content' ), true ) ) {
+ // Only act if it's one of our metas.
+ return $result;
+ }
+ if ( get_metadata( 'post', $object_id, $meta_key, true ) === $meta_value ) {
+ // Return true instead of false so silly WP REST API call won't die on us....
+ return true;
+ }
+
+ return $result;
+ }
+
+ /**
+ * Remove empty Divi GB placeholder when processing shortcode.
+ *
+ * @param string $post_content Raw post content (shortcode).
+ *
+ * @return string
+ */
+ public function et_fb_load_raw_post_content( $post_content ) {
+ // Replace empty placeholder with no content so page creation will
+ // still work in this case.
+ return '' === $post_content ? '' : $post_content;
+ }
+
+ /**
+ * Convert a single GB gallery to shortcode.
+ *
+ * @param string $gallery Post content.
+ *
+ * @return string
+ */
+ public function gb_gallery_to_shortcode( $gallery ) {
+
+ $gallery = is_array( $gallery ) ? $gallery[0] : $gallery;
+ $ids = preg_match_all( '/data-id="(\d+)"/i', $gallery, $matches ) ? $matches[1] : array();
+ $columns = preg_match( '//i', $gallery, $matches ) ? $matches[1] : 3;
+ $shortcode = sprintf(
+ '[gallery columns="%s" ids="%s"]',
+ intval( $columns ),
+ implode( ',', array_map( 'intval', $ids ) )
+ );
+
+ return $shortcode;
+ }
+
+ /**
+ * Convert all GB galleries to shortcodes.
+ *
+ * @param string $content Post content.
+ *
+ * @return string
+ */
+ public function gb_galleries_to_shortcodes( $content ) {
+ return preg_replace_callback(
+ $this->_gb_gallery_regexp,
+ array( $this, 'gb_gallery_to_shortcode' ),
+ $content
+ );
+ }
+
+ /**
+ * Check a specified post's content for GB gallery and, if present, return the first
+ *
+ * @param string $gallery Gallery data and srcs parsed from the expanded shortcode.
+ * @param int|WP_Post $post Post ID or object.
+ *
+ * @return string|array Gallery data and srcs parsed from the expanded shortcode.
+ */
+ public function get_post_gallery( $gallery, $post ) {
+ if ( $gallery ) {
+ return $gallery;
+ }
+
+ $content = get_post_field( 'post_content', $post );
+ if ( empty( $content ) ) {
+ return $gallery;
+ }
+
+ if ( preg_match( $this->_gb_gallery_regexp, $content, $matches ) ) {
+ // Found a GB gallery.
+ if ( apply_filters( 'et_gb_gallery_to_shortcode', true ) ) {
+ // Return as shortcode.
+ return do_shortcode( $this->gb_gallery_to_shortcode( $matches[0] ) );
+ }
+ // Return it as is.
+ return $matches[0];
+ }
+
+ return $gallery;
+ }
+
+ /**
+ * Delete first GB gallery in content
+ *
+ * @param string $content Content.
+ * @param bool $deleted Whether a gallery has been already deleted or not.
+ * @return string
+ */
+ public function et_delete_post_gallery( $content, $deleted ) {
+ if ( $deleted ) {
+ // If a gallery was already removed, do nothing.
+ return $content;
+ }
+ return preg_replace( $this->_gb_gallery_regexp, '', $content, 1 );
+ }
+
+ /**
+ * Remove custom style from our metabox when GB is showing it.
+ *
+ * @param string $post_type Post type.
+ *
+ * @return void
+ */
+ public function add_meta_boxes( $post_type ) {
+ $is_block_editor_page = $this->_is_block_editor_page();
+ $is_metabox_exist = function_exists( 'et_single_settings_meta_box' );
+ $is_builder_enabled = et_builder_enabled_for_post_type( $post_type );
+ $is_metabox_allowed = et_pb_is_allowed( 'page_options' );
+
+ if ( $is_block_editor_page && $is_metabox_exist && $is_builder_enabled && $is_metabox_allowed ) {
+ // Change our metabox id so that no custom style is applied.
+ remove_meta_box( 'et_settings_meta_box', $post_type, 'side' );
+ add_meta_box(
+ 'et_settings_meta_box_gutenberg',
+ esc_html__( 'Divi Page Settings', 'Divi' ),
+ 'et_single_settings_meta_box',
+ $post_type,
+ 'side',
+ 'high'
+ );
+ }
+ }
+
+ /**
+ * Hook into REST API page call.
+ *
+ * @return void
+ */
+ public function rest_insert_page() {
+ add_filter( 'update_post_metadata', array( $this, 'update_post_metadata' ), 10, 4 );
+ }
+
+ /**
+ * Custom auth function for meta updates via REST API.
+ *
+ * @param boolean $allowed True if allowed to view the meta field by default, false if else.
+ * @param string $meta_key The meta key.
+ * @param int $id Post ID.
+ *
+ * @return bool
+ */
+ public function meta_auth( $allowed, $meta_key, $id ) {
+ return current_user_can( 'edit_post', $id );
+ }
+
+ /**
+ * Hook methods to WordPress
+ * Latest plugin version: 1.5
+ *
+ * @return void
+ */
+ public function init_hooks() {
+ if ( is_admin() ) {
+ add_action( 'enqueue_block_editor_assets', array( $this, 'enqueue_block_editor_assets' ), 4 );
+ add_action( 'admin_print_scripts-edit.php', array( $this, 'add_new_button' ), 10 );
+ add_action( 'admin_init', array( $this, 'add_edit_link_filters' ) );
+
+ // Only need to add this filter is the nonce is present in the url request
+ // nonce value will be checked in the filter itself.
+ // phpcs:ignore WordPress.Security.NonceVerification -- This is just check, therefore nonce verification not required.
+ if ( isset( $_GET['et_fb_new_vb_nonce'] ) ) {
+ add_action( 'new_to_auto-draft', array( $this, 'auto_draft' ), 1 );
+ }
+ add_filter( 'display_post_states', array( $this, 'display_post_states' ), 10, 2 );
+ } else {
+ // If "Enable Divi Gallery" option is enabled.
+ if ( apply_filters( 'et_gb_gallery_to_shortcode', false ) === true ) {
+ // Converts GB galleries to shortcodes.
+ add_filter( 'the_content', array( $this, 'gb_galleries_to_shortcodes' ), 1 );
+ }
+ if ( apply_filters( 'et_gb_gallery_include_in_get_post_gallery', false ) === true ) {
+ // Makes sure `get_post_gallery` returns a GB gallery if no shortcode is found.
+ add_filter( 'get_post_gallery', array( $this, 'get_post_gallery' ), 10, 2 );
+ }
+ // This filter gets called when Divi removes first gallery shortcode from
+ // a gallery post (as in post format). We hook into that to ensure that the first GB gallery
+ // is deleted if nothing else was.
+ add_filter( 'et_delete_post_gallery', array( $this, 'et_delete_post_gallery' ), 10, 2 );
+ // Provide other code a simple way to access the conversion function via this custom filter.
+ add_filter( 'et_gb_galleries_to_shortcodes', array( $this, 'gb_galleries_to_shortcodes' ) );
+ }
+
+ add_filter( 'et_fb_load_raw_post_content', array( $this, 'et_fb_load_raw_post_content' ) );
+ add_filter( 'init', array( $this, 'ensure_post_type_supports' ), 999999 );
+
+ // This is one of the most idiot things I had to do ever and its due to
+ // a 10 month old-yet not fixed WP bug: https://core.trac.wordpress.org/ticket/42069
+ // TLDR: when updating a post with meta via WP REST API, `update_metadata` should only
+ // be called for metas whose value changed.
+ // However, the equality check is fooled by values including characters that are
+ // slashed or converted to entities, like " or <.
+ // `update_metadata` is then called and returns `false` (because value didn't change) which results
+ // in REST API page update to abort with a 500 error code....
+ // To fix the issue, we hook into REST API page update and force `update_metadata` to return `true`
+ // when value didn't change (only applied to our own meta keys).
+ add_action( 'rest_insert_page', array( $this, 'rest_insert_page' ) );
+
+ // Need to deal with our metabox styling when inside GB.
+ add_action( 'add_meta_boxes', array( $this, 'add_meta_boxes' ), 10, 1 );
+
+ // To register the post metas is needed because we want to change their value within our custom GB blocks
+ // Editing a post meta via REST API is allowed by default unless its key is protected (starts with `_`)
+ // which is the case here so we also need to create a custom auth function.
+ $auth = array( $this, 'meta_auth' );
+ $args = array(
+ 'auth_callback' => $auth,
+ 'show_in_rest' => true,
+ 'single' => true,
+ 'type' => 'string',
+ );
+ register_meta( 'post', '_et_pb_use_builder', $args );
+ $args = array(
+ 'auth_callback' => $auth,
+ 'show_in_rest' => true,
+ 'single' => true,
+ 'type' => 'string',
+ );
+ register_meta( 'post', '_et_pb_old_content', $args );
+ $args = array(
+ 'auth_callback' => $auth,
+ 'show_in_rest' => true,
+ 'single' => true,
+ 'type' => 'string',
+ );
+ register_meta( 'post', '_et_gb_content_width', $args );
+ }
+}
+
+
+if ( et_core_is_gutenberg_active() ) {
+ new ET_Builder_Block_Editor_Integration();
+}
diff --git a/includes/builder/feature/BlockTemplates.php b/includes/builder/feature/BlockTemplates.php
new file mode 100644
index 0000000..8e3e24f
--- /dev/null
+++ b/includes/builder/feature/BlockTemplates.php
@@ -0,0 +1,162 @@
+set_query_templates_filters();
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 4.9.8
+ *
+ * @return ET_Builder_Block_Templates
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Set query templates filters to override block templates.
+ *
+ * @since 4.9.8
+ */
+ public function set_query_templates_filters() {
+ // Bail early if current active builder is not DBP.
+ if ( ! et_is_builder_plugin_active() ) {
+ return;
+ }
+
+ // Bail early if `locate_block_template` function doesn't exists (WP 5.8).
+ if ( ! function_exists( 'locate_block_template' ) ) {
+ return;
+ }
+
+ // Add those filters only when current active theme supports `block-templates` or
+ // has block templates index HTML.
+ if ( ! current_theme_supports( 'block-templates' ) && ! is_readable( get_stylesheet_directory() . '/block-templates/index.html' ) ) {
+ return;
+ }
+
+ /**
+ * List of possible hook names:
+ * - `404_template`
+ * - `archive_template`
+ * - `attachment_template` (Not Included)
+ * - `author_template`
+ * - `category_template`
+ * - `date_template`
+ * - `embed_template` (Not Included)
+ * - `frontpage_template`
+ * - `home_template`
+ * - `index_template`
+ * - `page_template`
+ * - `paged_template`
+ * - `privacypolicy_template`
+ * - `search_template`
+ * - `single_template`
+ * - `singular_template`
+ * - `tag_template`
+ * - `taxonomy_template`
+ *
+ * However we don't include `attachment`, `paged`, and `embed` because they are not
+ * modified or attached to TB tempates.
+ */
+ $template_types = array(
+ '404_template',
+ 'archive_template',
+ 'author_template',
+ 'category_template',
+ 'date_template',
+ 'frontpage_template',
+ 'home_template',
+ 'index_template',
+ 'page_template',
+ 'privacypolicy_template',
+ 'search_template',
+ 'single_template',
+ 'singular_template',
+ 'tag_template',
+ 'taxonomy_template',
+ );
+
+ foreach ( $template_types as $template ) {
+ add_filter( $template, array( $this, 'get_custom_query_template' ), 30, 3 );
+ }
+ }
+
+ /**
+ * Get pre-defined query template to override block template (modified default template
+ * or custom template).
+ *
+ * @since 4.9.8
+ *
+ * @param string $template Path to the template. See locate_template().
+ * @param string $type Sanitized filename without extension.
+ * @param array $templates A list of template candidates, in descending order of priority.
+ *
+ * @return string Modified path to the template.
+ */
+ public function get_custom_query_template( $template, $type, $templates ) {
+ // Bail early if there is no TB templates for current page request.
+ if ( empty( et_theme_builder_get_template_layouts() ) ) {
+ return $template;
+ }
+
+ // 1. Restore - Get pre-defined query template.
+ $original_template = $template;
+ $template = locate_template( $templates );
+
+ // If the `locate_template` return empty path because there is no template or theme
+ // theme compat found, use builder block template canvas.
+ if ( empty( $template ) && 'template-canvas.php' === basename( $original_template ) ) {
+ $template = ET_BUILDER_DIR . 'templates/block-template-canvas.php';
+ }
+
+ // 2. Remove hooks added for template canvas (block template).
+ // Remove viewport meta tag.
+ if ( function_exists( '_block_template_viewport_meta_tag' ) ) {
+ remove_action( 'wp_head', '_block_template_viewport_meta_tag', 0 );
+ }
+
+ // Render conditional title tag for `title-tag` support.
+ add_action( 'wp_head', '_wp_render_title_tag', 1 );
+
+ // Remove unconditional title tag.
+ if ( function_exists( '_block_template_render_title_tag' ) ) {
+ remove_action( 'wp_head', '_block_template_render_title_tag', 1 );
+ }
+
+ return $template;
+ }
+}
+
+ET_Builder_Block_Templates::instance();
diff --git a/includes/builder/feature/ClassicEditor.php b/includes/builder/feature/ClassicEditor.php
new file mode 100644
index 0000000..f1ed11d
--- /dev/null
+++ b/includes/builder/feature/ClassicEditor.php
@@ -0,0 +1,149 @@
+' );
+
+ if ( ! $gutenberg && ! $block_editor ) {
+ return;
+ }
+
+ // Load classic editor.
+ // phpcs:ignore WordPress.Security.NonceVerification -- This function does not change any state, and is therefore not susceptible to CSRF.
+ $enable_classic_editor = apply_filters( 'et_builder_enable_classic_editor', isset( $_GET['et_classic_editor'] ) );
+
+ if ( $block_editor && $enable_classic_editor ) {
+ add_filter( 'use_block_editor_for_post_type', '__return_false', 100 );
+ }
+
+ if ( $gutenberg && $enable_classic_editor ) {
+ // gutenberg.php.
+ remove_action( 'admin_menu', 'gutenberg_menu' );
+ remove_action( 'admin_notices', 'gutenberg_build_files_notice' );
+ remove_action( 'admin_notices', 'gutenberg_wordpress_version_notice' );
+ remove_action( 'admin_init', 'gutenberg_redirect_demo' );
+
+ remove_filter( 'replace_editor', 'gutenberg_init' );
+
+ // lib/client-assets.php.
+ remove_action( 'wp_enqueue_scripts', 'gutenberg_register_scripts_and_styles', 5 );
+ remove_action( 'admin_enqueue_scripts', 'gutenberg_register_scripts_and_styles', 5 );
+ remove_action( 'wp_enqueue_scripts', 'gutenberg_common_scripts_and_styles' );
+ remove_action( 'admin_enqueue_scripts', 'gutenberg_common_scripts_and_styles' );
+
+ // lib/compat.php.
+ remove_filter( 'wp_refresh_nonces', 'gutenberg_add_rest_nonce_to_heartbeat_response_headers' );
+
+ // lib/rest-api.php.
+ remove_action( 'rest_api_init', 'gutenberg_register_rest_routes' );
+ remove_action( 'rest_api_init', 'gutenberg_add_taxonomy_visibility_field' );
+
+ remove_filter( 'rest_request_after_callbacks', 'gutenberg_filter_oembed_result' );
+ remove_filter( 'registered_post_type', 'gutenberg_register_post_prepare_functions' );
+ remove_filter( 'register_post_type_args', 'gutenberg_filter_post_type_labels' );
+
+ // lib/meta-box-partial-page.php.
+ remove_action( 'do_meta_boxes', 'gutenberg_meta_box_save', 1000 );
+ remove_action( 'submitpost_box', 'gutenberg_intercept_meta_box_render' );
+ remove_action( 'submitpage_box', 'gutenberg_intercept_meta_box_render' );
+ remove_action( 'edit_page_form', 'gutenberg_intercept_meta_box_render' );
+ remove_action( 'edit_form_advanced', 'gutenberg_intercept_meta_box_render' );
+
+ remove_filter( 'redirect_post_location', 'gutenberg_meta_box_save_redirect' );
+ remove_filter( 'filter_gutenberg_meta_boxes', 'gutenberg_filter_meta_boxes' );
+ }
+
+ if ( $gutenberg && $enable_classic_editor ) {
+ // gutenberg.php.
+ remove_action( 'admin_init', 'gutenberg_add_edit_link_filters' );
+ remove_action( 'admin_print_scripts-edit.php', 'gutenberg_replace_default_add_new_button' );
+
+ remove_filter( 'body_class', 'gutenberg_add_responsive_body_class' );
+ remove_filter( 'admin_url', 'gutenberg_modify_add_new_button_url' );
+
+ // lib/compat.php.
+ remove_action( 'admin_enqueue_scripts', 'gutenberg_check_if_classic_needs_warning_about_blocks' );
+
+ // lib/register.php.
+ remove_action( 'edit_form_top', 'gutenberg_remember_classic_editor_when_saving_posts' );
+
+ remove_filter( 'redirect_post_location', 'gutenberg_redirect_to_classic_editor_when_saving_posts' );
+ remove_filter( 'get_edit_post_link', 'gutenberg_revisions_link_to_editor' );
+ remove_filter( 'wp_prepare_revision_for_js', 'gutenberg_revisions_restore' );
+ remove_filter( 'display_post_states', 'gutenberg_add_gutenberg_post_state' );
+
+ // lib/plugin-compat.php.
+ remove_filter( 'rest_pre_insert_post', 'gutenberg_remove_wpcom_markdown_support' );
+ }
+ }
+ }
+
+endif;
+
+ET_Builder_Classic_Editor::instance();
diff --git a/includes/builder/feature/CriticalCSS.php b/includes/builder/feature/CriticalCSS.php
new file mode 100644
index 0000000..c225dad
--- /dev/null
+++ b/includes/builder/feature/CriticalCSS.php
@@ -0,0 +1,692 @@
+_above_the_fold_height = 1500;
+ } elseif ( 'Medium' === $critical_threshold_height ) {
+ $this->_above_the_fold_height = 1000;
+ } else {
+ $this->_above_the_fold_height = 500;
+ }
+
+ add_filter( 'et_builder_critical_css_enabled', '__return_true' );
+ // Dynamic CSS content shortcode modules.
+ add_filter( 'et_dynamic_assets_modules_atf', [ $this, 'dynamic_assets_modules_atf' ], 10, 2 );
+ // Detect when renderining Above The Fold sections.
+ add_filter( 'pre_do_shortcode_tag', [ $this, 'check_section_start' ], 99, 4 );
+ add_filter( 'do_shortcode_tag', [ $this, 'check_section_end' ], 99, 2 );
+
+ // Analyze Builder style manager.
+ add_filter( 'et_builder_module_style_manager', [ $this, 'enable_builder' ] );
+
+ // Dynamic CSS content shortcode.
+ add_filter( 'et_global_assets_list', [ $this, 'maybe_defer_global_asset' ], 99 );
+
+ if ( self::INCLUDE_REQUIRED ) {
+ add_filter( 'et_dynamic_assets_atf_includes_required', '__return_true' );
+ }
+ }
+
+ /**
+ * Defer some global assets if threshold is met.
+ *
+ * @param array $assets assets to defer.
+ *
+ * @since 4.10.0
+ *
+ * @return array $assets assets to be deferred.
+ */
+ public function maybe_defer_global_asset( $assets ) {
+ $defer = [
+ 'et_divi_footer',
+ 'et_divi_gutters_footer',
+ 'et_divi_comments',
+ ];
+
+ foreach ( $defer as $key ) {
+ if ( isset( $assets[ $key ] ) ) {
+ $assets[ $key ]['maybe_defer'] = true;
+ }
+ }
+
+ return $assets;
+ }
+
+ /**
+ * Force a PageResource to write its content on file, even when empty
+ *
+ * @param bool $force Default value.
+ * @param array $resource Critical/Deferred PageResources.
+ *
+ * @since 4.10.0
+ *
+ * @return bool
+ */
+ public function force_resource_write( $force, $resource ) {
+ $styles = $this->_builder_styles;
+ if ( empty( $styles ) ) {
+ return $force;
+ }
+
+ $forced_slugs = [
+ $styles['deferred']->slug,
+ $styles['manager']->slug,
+ ];
+
+ return in_array( $resource->slug, $forced_slugs, true ) ? true : $force;
+ }
+
+ /**
+ * Analyze Builder style manager.
+ *
+ * @since 4.10.0
+ *
+ * @param array $styles Style Managers.
+ *
+ * @return array
+ */
+ public function enable_builder( $styles ) {
+ $this->_builder_styles = $styles;
+
+ // There are cases where external assets generation might be disabled at runtime,
+ // ensure Critical CSS and Dynamic Assets use the same logic to avoid side effects.
+ if ( ! et_should_generate_dynamic_assets() ) {
+ $this->disable();
+ return $styles;
+ }
+
+ add_filter( 'et_core_page_resource_force_write', [ $this, 'force_resource_write' ], 10, 2 );
+ add_filter( 'et_core_page_resource_tag', [ $this, 'builder_style_tag' ], 10, 5 );
+ if ( et_builder_is_mod_pagespeed_enabled() ) {
+ // PageSpeed filters out `preload` links so we gotta use `prefetch` but
+ // Safari doesn't support the latter....
+ add_action( 'wp_body_open', [ $this, 'add_safari_prefetch_workaround' ], 1 );
+ }
+
+ return $styles;
+ }
+
+ /**
+ * Prints deferred Critical CSS stlyesheet.
+ *
+ * @param string $tag stylesheet template.
+ * @param string $slug stylesheet slug.
+ * @param string $scheme stylesheet URL.
+ * @param string $onload stylesheet onload attribute.
+ *
+ * @since 4.10.0
+ *
+ * @return string
+ */
+ public function builder_style_tag( $tag, $slug, $scheme, $onload ) {
+ $deferred = $this->_builder_styles['deferred'];
+ $inlined = $this->_builder_styles['manager'];
+
+ // reason: Stylsheet needs to be printed on demand.
+ // phpcs:disable WordPress.WP.EnqueuedResources.NonEnqueuedStylesheet
+ // reason: Snake case requires refactor of PageResource.php.
+ // phpcs:disable ET.Sniffs.ValidVariableName.UsedPropertyNotSnakeCase
+ switch ( $slug ) {
+ case $deferred->slug:
+ // Don't enqueue empty resources.
+ if ( 0 === et_()->WPFS()->size( $deferred->path ) ) {
+ return '';
+ }
+
+ // Use 'prefetch' when Mod PageSpeed is detected because it removes 'preload' links.
+ $rel = et_builder_is_mod_pagespeed_enabled() ? 'prefetch' : 'preload';
+
+ /**
+ * Filter deferred styles rel attribute.
+ *
+ * Mod PageSpeed removes 'preload' links and we attempt to fix that by trying to detect if
+ * the 'x-mod-pagespeed' (Apache) or 'x-page-speed' (Nginx) header is present and if it is,
+ * replace 'preload' with 'prefetch'. However, in some cases, like when the request goes through
+ * a CDN first, we are unable to detect the header. This hook can be used to change the 'rel'
+ * attribute to use 'prefetch' when our et_builder_is_mod_pagespeed_enabled() function fails
+ * to detect Mod PageSpeed.
+ *
+ * With that out of the way, the only reason I wrote this detailed description is to make Fabio proud.
+ *
+ * @since 4.11.3
+ *
+ * @param string $rel
+ */
+ $rel = apply_filters( 'et_deferred_styles_rel', $rel );
+
+ // Defer the stylesheet.
+ $template = '';
+
+ return sprintf( $template, $slug, $scheme, $onload, $rel );
+ case $inlined->slug:
+ // Inline the stylesheet.
+ $template = "\n";
+ $content = et_()->WPFS()->get_contents( $inlined->path );
+ return sprintf( $template, $content );
+ }
+ // phpcs:enable
+
+ return $tag;
+ }
+
+ /**
+ * Safari doesn't support `prefetch`......
+ *
+ * @since 4.10.7
+ *
+ * @return void
+ */
+ public function add_safari_prefetch_workaround() {
+ // .... so we turn it into `preload` using JS.
+ ?>
+
+ _atf_sections[ $attrs ] ) ) {
+ $this->_atf_sections[ $attrs ]--;
+
+ if ( ! $active ) {
+ add_filter( $action, [ $this, 'set_style' ], 10 );
+ }
+ }
+
+ return $value;
+ }
+
+ /**
+ * Remove `set_style` filter after rendering an ATF section.
+ *
+ * @since 4.10.0
+ *
+ * @param string $output Shortcode output.
+ * @param string $tag Shortcode name.
+ *
+ * @return string
+ */
+ public function check_section_end( $output, $tag ) {
+ static $section = 0;
+
+ if ( 'et_pb_section' !== $tag ) {
+ return $output;
+ }
+
+ $action = 'et_builder_set_style';
+ $filter = [ $this, 'set_style' ];
+
+ if ( has_filter( $action, $filter ) ) {
+ remove_filter( $action, $filter, 10 );
+ }
+
+ return $output;
+ }
+
+ /**
+ * Filter used to analize content coming from Dynamic Access Class.
+ *
+ * @param array $value Default shortcodes list (empty).
+ * @param string $content TB/Post Content.
+ *
+ * @since 4.10.0
+ *
+ * @return array List of ATF shortcodes.
+ */
+ public function dynamic_assets_modules_atf( $value, $content = '' ) {
+ if ( empty( $content ) ) {
+ return $value;
+ }
+
+ $modules = $this->extract( $content );
+
+ // Dynamic CSS content shortcode.
+ add_filter( 'et_dynamic_assets_content', [ $this, 'dynamic_assets_content' ] );
+
+ return $modules;
+
+ }
+
+ /**
+ * Returns splitted (ATF/BFT) Content.
+ *
+ * @since 4.10.0
+ *
+ * @return stdClass
+ */
+ public function dynamic_assets_content() {
+ return $this->_content;
+ }
+
+ /**
+ * While the filter is applied, any rendered style will be considered critical.
+ *
+ * @param array $style Style.
+ *
+ * @since 4.10.0
+ *
+ * @return array
+ */
+ public function set_style( $style ) {
+ $style['critical'] = true;
+ return $style;
+ }
+
+ /**
+ * Parse Content into shortcodes.
+ *
+ * @param string $content TB/Post Content.
+ *
+ * @since 4.10.0
+ *
+ * @return array|boolean
+ */
+ public static function parse_shortcode( $content ) {
+ static $regex;
+
+ if ( false === strpos( $content, '[' ) ) {
+ return false;
+ }
+
+ if ( empty( $regex ) ) {
+ $regex = '/' . get_shortcode_regex() . '/';
+
+ // Add missing child shortcodes (because dynamically added).
+ $existing = 'et_pb_pricing_tables';
+ $shortcodes = [
+ $existing,
+ 'et_pb_pricing_item',
+ ];
+
+ $regex = str_replace( $existing, join( '|', $shortcodes ), $regex );
+ }
+
+ preg_match_all( $regex, $content, $matches, PREG_SET_ORDER );
+
+ return $matches;
+ }
+
+ /**
+ * Estimates height to split Content in ATF/BTF.
+ *
+ * @param string $content TB/Post Content.
+ *
+ * @since 4.10.0
+ *
+ * @return array List of ATF shortcodes.
+ */
+ public function extract( $content ) {
+ // Create root object when needed.
+ if ( empty( $this->_root ) ) {
+ $this->_root = (object) [
+ 'tag' => 'root',
+ 'height' => 0,
+ ];
+ }
+
+ if ( $this->_root->height >= $this->_above_the_fold_height ) {
+ // Do nothing when root already exists and its height >= treshold.
+ return [];
+ }
+
+ $shortcodes = self::parse_shortcode( $content );
+
+ if ( ! is_array( $shortcodes ) ) {
+ return [];
+ }
+
+ $shortcodes = array_reverse( $shortcodes );
+ $is_above_the_fold = true;
+ $root = $this->_root;
+ $root->count = count( $shortcodes );
+ $stack = [ $root ];
+ $parent = end( $stack );
+ $tags = [];
+ $atf_content = '';
+ $btf_content = '';
+
+ $structure_slugs = [
+ 'et_pb_section',
+ 'et_pb_row',
+ 'et_pb_row_inner',
+ 'et_pb_column',
+ 'et_pb_column_inner',
+ ];
+
+ $section = '';
+ $section_shortcode = '';
+
+ // phpcs:ignore WordPress.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition
+ while ( $is_above_the_fold && $shortcode = array_pop( $shortcodes ) ) {
+ list( $raw,, $tag, $attrs,, $content ) = $shortcode;
+
+ $tags[] = $tag;
+ $children = self::parse_shortcode( $content );
+ $element = (object) [
+ 'tag' => $tag,
+ 'children' => [],
+ 'height' => 0,
+ 'margin' => 0,
+ 'padding' => 0,
+ 'attrs' => [],
+ ];
+
+ switch ( $tag ) {
+ case 'et_pb_pricing_table':
+ $lines = array_filter( explode( "\n", str_replace( array( '
' ), "\n", $content ) ) );
+ $content = '';
+
+ foreach ( $lines as $line ) {
+ $content .= sprintf( '[et_pb_pricing_item]%s[/et_pb_pricing_item]', trim( $line ) );
+ }
+
+ $children = self::parse_shortcode( $content );
+ break;
+ case 'et_pb_section':
+ $section = $attrs;
+ $section_shortcode = $raw;
+ break;
+ }
+
+ $props = shortcode_parse_atts( $attrs );
+
+ if ( isset( $props['custom_margin'] ) ) {
+ $margin = self::get_margin_padding_height( $props['custom_margin'] );
+ $element->margin = $margin;
+ if ( $margin > 0 ) {
+ $element->height += $margin;
+ $element->attrs[] = 'margin:' . $props['custom_margin'] . "-> $margin";
+ }
+ }
+
+ if ( isset( $props['custom_padding'] ) ) {
+ $padding = self::get_margin_padding_height( $props['custom_padding'] );
+ $element->padding = $padding;
+ if ( $padding > 0 ) {
+ $element->height += $padding;
+ $element->attrs[] = 'padding:' . $props['custom_padding'] . "-> $padding";
+ }
+ }
+
+ if ( false !== $children ) {
+ // Non empty structure element.
+ $element->count = count( $children );
+ $stack[] = $element;
+ $shortcodes = array_merge( $shortcodes, array_reverse( $children ) );
+ } else {
+ // Only add default content height for modules, not empty structure.
+ if ( ! in_array( $tag, $structure_slugs, true ) ) {
+ $element->height += 100;
+ }
+ do {
+ $parent = end( $stack );
+
+ switch ( $element->tag ) {
+ case 'et_pb_column':
+ case 'et_pb_column_inner':
+ // Do nothing.
+ break;
+ case 'et_pb_row':
+ case 'et_pb_row_inner':
+ // Row height is determined by its tallest column.
+ $max = 0;
+
+ foreach ( $element->children as $column ) {
+ $max = max( $max, $column->height );
+ }
+
+ $element->height += $max;
+ $parent->height += $element->height;
+ break;
+ case 'et_pb_section':
+ // Update Above The Fold Sections.
+ if ( isset( $this->_atf_sections[ $section ] ) ) {
+ $this->_atf_sections[ $section ]++;
+ } else {
+ $this->_atf_sections[ $section ] = 1;
+ }
+
+ $atf_content .= $section_shortcode;
+ $root->height += $element->height;
+
+ if ( $root->height >= $this->_above_the_fold_height ) {
+ $is_above_the_fold = false;
+ }
+ break;
+ default:
+ $parent->height += $element->height;
+ }
+
+ $parent->children[] = $element;
+
+ if ( 0 !== --$parent->count ) {
+ break;
+ }
+
+ $element = $parent;
+ array_pop( $stack );
+ if ( empty( $stack ) ) {
+ break;
+ }
+ } while ( $is_above_the_fold && 0 !== --$parent->count );
+ }
+ }
+
+ foreach ( $shortcodes as $shortcode ) {
+ $btf_content .= $shortcode[0];
+ }
+
+ $tags = array_unique( $tags );
+ $this->_modules = array_unique( array_merge( $this->_modules, $tags ) );
+ $this->_content = (object) [
+ 'atf' => $atf_content,
+ 'btf' => $btf_content,
+ ];
+
+ return $tags;
+ }
+
+ /**
+ * Calculate margin and padding.
+ *
+ * @param string $value Margin and padding values.
+ *
+ * @since 4.10.0
+ *
+ * @return int margin/padding height value.
+ */
+ public static function get_margin_padding_height( $value ) {
+ $values = explode( '|', $value );
+
+ if ( empty( $values ) ) {
+ return;
+ }
+
+ // Only top/bottom values are needed.
+ $values = array_map( 'trim', [ $values[0], $values[2] ] );
+ $total = 0;
+
+ foreach ( $values as $value ) {
+ if ( '' === $value ) {
+ continue;
+ }
+
+ $unit = et_pb_get_value_unit( $value );
+
+ // Remove the unit, if present.
+ if ( false !== strpos( $value, $unit ) ) {
+ $value = substr( $value, 0, -strlen( $unit ) );
+ }
+
+ $value = (int) $value;
+
+ switch ( $unit ) {
+ case 'rem':
+ case 'em':
+ $value *= self::FONT_HEIGHT;
+ break;
+ case 'vh':
+ $value = ( $value * self::VIEWPORT_HEIGHT ) / 100;
+ break;
+ case 'px':
+ break;
+ default:
+ $value = 0;
+ }
+
+ $total += $value;
+ }
+
+ return $total;
+ }
+
+ /**
+ * Disable Critical CSS.
+ *
+ * @since 4.12.0
+ *
+ * @return void
+ */
+ public function disable() {
+ remove_filter( 'et_builder_critical_css_enabled', '__return_true' );
+ remove_filter( 'et_dynamic_assets_modules_atf', [ $this, 'dynamic_assets_modules_atf' ] );
+ remove_filter( 'pre_do_shortcode_tag', [ $this, 'check_section_start' ] );
+ remove_filter( 'do_shortcode_tag', [ $this, 'check_section_end' ] );
+ remove_filter( 'et_builder_module_style_manager', [ $this, 'enable_builder' ] );
+ remove_filter( 'et_global_assets_list', [ $this, 'maybe_defer_global_asset' ] );
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 4.10.0
+ *
+ * @return ET_Builder_Critical_CSS
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+}
+
+ET_Builder_Critical_CSS::instance();
diff --git a/includes/builder/feature/DoNotCachePage.php b/includes/builder/feature/DoNotCachePage.php
new file mode 100644
index 0000000..a05567b
--- /dev/null
+++ b/includes/builder/feature/DoNotCachePage.php
@@ -0,0 +1,188 @@
+_processed ) {
+ return;
+ }
+
+ $this->_processed = true;
+
+ // Disable several plugins which do not honor `DONOTCACHEPAGE` (set in `PageResource.php`).
+ if ( ! headers_sent() ) {
+ // Sending `no-cache` header should prevent CDNs from caching the first request.
+ header( 'Cache-Control: no-store, no-cache' );
+ // Disable SiteGround Optimizer Dynamic Cache.
+ header( 'X-Cache-Enabled: False' );
+ }
+
+ // Disable LiteSpeed Cache.
+ $reason = esc_html__( 'Generating CSS', 'et_builder' );
+ do_action( 'litespeed_control_set_nocache', $reason );
+
+ // Disable WP Fastest Cache.
+ if ( class_exists( 'WpFastestCacheCreateCache' ) ) {
+ // This Plugin has no hook/API to disable cache programmatically....
+ // The only way we can do this is by setting the `exclude_current_page_text` public property
+ // to a non empty value... except the class instance is not made available anywhere in the code....
+ // However, the instance also adds itself to the `wp` hook so we can find it by scanning the list
+ // of all registered actions.
+ $hooks = et_()->array_get( $GLOBALS, 'wp_filter.wp.10', [] );
+ if ( is_array( $hooks ) ) {
+ foreach ( $hooks as $key => $hook ) {
+ if (
+ isset( $hook['function'] ) &&
+ is_array( $hook['function'] ) &&
+ is_a( $hook['function'][0], 'WpFastestCacheCreateCache' )
+ ) {
+ $wp_fastest_cache = $hook['function'][0];
+ $wp_fastest_cache->exclude_current_page_text = "";
+ break;
+ }
+ }
+ }
+ }
+
+ // Disable Breeze Cache.
+ if ( function_exists( 'breeze_cache' ) ) {
+ // This Plugin has no hook/API to disable cache programmatically....
+ // The only way we can do this is by overwriting its configuration
+ // which is exposed as global variable.
+ global $breeze_config;
+ if ( isset( $breeze_config['cache_options'] ) ) {
+ $cache_options =& $breeze_config['cache_options'];
+ if ( is_array( $cache_options ) ) {
+ $cache_options['breeze-browser-cache'] = 0;
+ $cache_options['breeze-desktop-cache'] = 0;
+ $cache_options['breeze-mobile-cache'] = 0;
+ }
+ }
+ }
+
+ // Disable Hyper Cache.
+ if ( function_exists( 'hyper_cache_callback' ) ) {
+ global $hyper_cache_stop;
+ $hyper_cache_stop = true;
+ }
+ }
+
+ /**
+ * Disable Cache on first page request.
+ *
+ * @see prevent_cache()
+ *
+ * @since 4.11.0
+ *
+ * @return void
+ */
+ public function maybe_prevent_cache() {
+ // Bail if the magic already happened.
+ if ( $this->_processed ) {
+ return;
+ }
+
+ // Disable in the Visual Builder
+ if ( et_fb_is_enabled() ) {
+ return;
+ }
+
+ $post_id = et_core_page_resource_get_the_ID();
+ $is_preview = is_preview() || is_et_pb_preview();
+ $forced_in_footer = $post_id && et_builder_setting_is_on( 'et_pb_css_in_footer', $post_id );
+ $forced_inline = (
+ ! $post_id ||
+ $is_preview ||
+ $forced_in_footer ||
+ et_builder_setting_is_off( 'et_pb_static_css_file', $post_id ) ||
+ et_core_is_safe_mode_active() ||
+ ET_GB_Block_Layout::is_layout_block_preview()
+ );
+
+ // If the post is password protected and a password has not been provided yet,
+ // no content (including any custom style) will be printed.
+ // When static css file option is enabled this will result in missing styles.
+ if ( ! $forced_inline && post_password_required( $post_id ? $post_id : null ) ) {
+ $forced_inline = true;
+ }
+
+ // Bail if using inline styles, page content won't be changing between requests anyway.
+ if ( $forced_inline ) {
+ return;
+ }
+
+ $unified = ! $forced_inline && ! $forced_in_footer;
+ $owner = $unified ? 'core' : 'builder';
+ $slug = $unified ? 'unified' : 'module-design';
+ $slug .= $unified && et_builder_post_is_of_custom_post_type( $post_id ) ? '-cpt' : '';
+ $slug = et_theme_builder_decorate_page_resource_slug( $post_id, $slug );
+
+ $resource = et_core_page_resource_get( $owner, $slug, $post_id );
+
+ // Bail if Builder CSS already exists in external file, this is the request we want to cache.
+ if ( $resource->has_file() ) {
+ return;
+ }
+
+ $this->prevent_cache();
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 4.11.0
+ *
+ * @return ET_Builder_Do_Not_Cache_Page
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+}
+
+ET_Builder_Do_Not_Cache_Page::instance();
diff --git a/includes/builder/feature/ErrorReport.php b/includes/builder/feature/ErrorReport.php
new file mode 100644
index 0000000..8fbcb17
--- /dev/null
+++ b/includes/builder/feature/ErrorReport.php
@@ -0,0 +1,419 @@
+ array(
+ 'role',
+ ),
+ 'errors' => array(
+ 'error_message',
+ 'error_message_stack',
+ 'error_stack',
+ 'component_info',
+ 'notes',
+ ),
+ 'page' => array(
+ 'post_type',
+ 'builder_settings',
+ 'builder_history',
+ 'preferences',
+ ),
+ 'installation' => array(
+ 'product_name',
+ 'product_version',
+ 'builder_version',
+ 'wp_version',
+ 'installed_plugins',
+ 'active_plugins',
+ 'must_use_plugins',
+ ),
+ );
+
+ // If the site uses divi builder plugin, provide the theme information.
+ if ( et_is_builder_plugin_active() ) {
+ array_unshift(
+ $info['installation'],
+ 'theme_name'
+ );
+ }
+
+ // If the site uses child theme, provide the child theme information.
+ if ( is_child_theme() ) {
+ array_unshift(
+ $info['installation'],
+ 'is_child_theme',
+ 'child_theme_name',
+ 'child_theme_version'
+ );
+ }
+
+ return $info;
+ }
+
+ /**
+ * Get current product name
+ *
+ * @since 3.21.4
+ *
+ * @return string|bool
+ */
+ protected function _get_product() {
+ if ( et_is_builder_plugin_active() ) {
+ return 'divi-builder';
+ }
+
+ if ( function_exists( 'et_divi_fonts_url' ) ) {
+ return 'Divi';
+ }
+
+ if ( function_exists( 'et_extra_fonts_url' ) ) {
+ return 'Extra';
+ }
+
+ return false;
+ }
+
+ /**
+ * Get debug item value
+ *
+ * @since 3.21.4
+ *
+ * @param string $info_name debug info item name.
+ * @param object $post alias for $_POST.
+ *
+ * @return string|array|object
+ */
+ protected function _get_debug_value( $info_name, $post ) {
+ switch ( $info_name ) {
+ case 'role':
+ $current_user = wp_get_current_user();
+ $value = esc_html( implode( ', ', $current_user->roles ) );
+ break;
+
+ case 'error_message':
+ case 'error_message_stack':
+ case 'error_stack':
+ case 'notes':
+ case 'post_type':
+ // this will be saved into a text report, no need to convert entities.
+ $value = self::$_->array_get( $post, $info_name, '' );
+ break;
+
+ case 'latest_content':
+ case 'loaded_content':
+ $value = et_fb_process_to_shortcode( self::$_->array_get( $post, $info_name, array() ) );
+ break;
+
+ case 'builder_settings':
+ case 'builder_history':
+ case 'component_info':
+ $value = wp_json_encode( self::$_->array_get( $post, $info_name, array() ) );
+ break;
+
+ case 'preferences':
+ $value = array();
+ foreach ( et_fb_app_preferences() as $name => $preference ) {
+ $value[ $name ] = $preference['value'];
+ }
+ $value = wp_json_encode( $value );
+ break;
+
+ case 'product_name':
+ $value = $this->_get_product();
+ break;
+
+ case 'product_version':
+ $value = et_is_builder_plugin_active() ?
+ self::$_->array_get( get_plugin_data( WP_PLUGIN_DIR . '/divi-builder/divi-builder.php' ), 'Version', '' ) :
+ et_get_theme_version();
+
+ $value = esc_html( $value );
+ break;
+
+ case 'builder_version':
+ $value = ET_BUILDER_PRODUCT_VERSION;
+ break;
+
+ case 'wp_version':
+ $value = esc_html( get_bloginfo( 'version' ) );
+ break;
+
+ case 'installed_plugins':
+ $all_plugins = get_plugins();
+ $value = wp_json_encode( array_keys( $all_plugins ), true );
+ break;
+
+ case 'active_plugins':
+ $all_plugins = get_plugins();
+ $active_plugins_saved = get_option( 'active_plugins' );
+ $active_plugins_keys = is_array( $active_plugins_saved ) ? $active_plugins_saved : array();
+ $active_plugins = array_intersect_key( $all_plugins, array_flip( $active_plugins_keys ) );
+ $value = wp_json_encode( $active_plugins, true );
+ break;
+
+ case 'must_use_plugins':
+ $value = wp_json_encode( get_mu_plugins(), true );
+ break;
+
+ case 'theme_name':
+ case 'child_theme_name':
+ $value = esc_html( wp_get_theme()->get( 'Name' ) );
+ break;
+
+ case 'theme_version':
+ case 'child_theme_version':
+ $value = esc_html( wp_get_theme()->get( 'Version' ) );
+ break;
+
+ case 'is_child_theme':
+ $value = is_child_theme() ? 'yes' : 'no';
+ break;
+
+ default:
+ $value = '';
+ break;
+ }
+
+ return $value;
+ }
+
+ /**
+ * Get error report content
+ *
+ * @since 3.21.4
+ *
+ * @param string $data Report data.
+ *
+ * @return string
+ */
+ protected function _get_report_content( $data ) {
+ $report_content = '';
+
+ $debug_info = self::get_debug_info();
+
+ $report_content = array();
+
+ foreach ( $debug_info as $items_title => $debug_items ) {
+ $item_key = 'group_title-' . $items_title;
+ $items_title = ucwords( $items_title );
+
+ $report_content[ $item_key ] = $items_title;
+
+ foreach ( $debug_items as $debug_item ) {
+ $item_value = et_core_esc_previously( $this->_get_debug_value( $debug_item, $data, 'array' ) );
+
+ $report_content[ $debug_item ] = $item_value;
+ }
+ }
+
+ return $report_content;
+ }
+
+ /**
+ * Get attachment data as string to be passed into endpoint
+ *
+ * @since 3.21.4
+ *
+ * @param string $data Report data.
+ * @param string $field Debug info item name.
+ *
+ * @return string
+ */
+ protected function _get_exported_layout_content( $data, $field ) {
+ // phpcs:disable WordPress.Security.NonceVerification -- Nonce has been verified in the {@see self::endpoint()}.
+ // Set faux $_POST value that is required by portability.
+ $_POST['post'] = isset( $_POST['post_id'] ) ? sanitize_text_field( $_POST['post_id'] ) : '';
+ $_POST['content'] = self::$_instance->_get_debug_value( $field, $data );
+
+ // Remove page value if it is equal to `false`, avoiding paginated images not accidentally triggered.
+ if ( isset( $_POST['page'] ) && false === $_POST['page'] ) {
+ unset( $_POST['page'] );
+ }
+
+ $portability = et_core_portability_load( 'et_builder' );
+ // Export the content.
+ $result = $portability->export( true );
+ // Delete temp files or else the same content will be used for all exports.
+ $portability->delete_temp_files( 'et_core_export' );
+ return $result;
+ // phpcs:enable
+ }
+
+ /**
+ * Endpoint for sending error report request
+ *
+ * @since 3.21.4
+ */
+ public static function endpoint() {
+ // Check for valid permission. Only administrator role can send error report.
+ if ( ! et_core_security_check_passed( 'manage_options', 'et_fb_send_error_report' ) ) {
+ wp_send_json_error(
+ array(
+ 'message' => esc_html__( 'You do not have valid permission to send error report', 'et_builder' ),
+ )
+ );
+ wp_die();
+ }
+
+ // Check valid post id.
+ $post_id = self::$_->array_get( $_POST, 'post_id', false );
+
+ if ( ! $post_id ) {
+ wp_send_json_error(
+ array(
+ 'message' => esc_html__( 'No valid post id found', 'et_builder' ),
+ )
+ );
+ wp_die();
+ }
+
+ // Check report data.
+ $data = self::$_->array_get( $_POST, 'data', false );
+
+ if ( ! $data ) {
+ wp_send_json_error(
+ array(
+ 'message' => esc_html__( 'No valid report data found', 'et_builder' ),
+ )
+ );
+ wp_die();
+ }
+
+ // Check for Elegant Themes username & API Key.
+ $updates_options = get_site_option( 'et_automatic_updates_options', array() );
+ $et_username = self::$_->array_get( $updates_options, 'username', '' );
+ $et_api_key = self::$_->array_get( $updates_options, 'api_key', '' );
+
+ if ( '' === $et_username || '' === $et_api_key ) {
+ wp_send_json_error(
+ array(
+ 'message' => esc_html__( 'No Elegant Themes username or API key found', 'et_builder' ),
+ )
+ );
+ wp_die();
+ }
+
+ // Check for account status.
+ $et_account_status = get_site_option( 'et_account_status', 'not_active' );
+
+ if ( 'active' !== $et_account_status ) {
+ wp_send_json_error(
+ array(
+ 'message' => esc_html__( 'Your Elegant Themes account is inactive', 'et_builder' ),
+ )
+ );
+ wp_die();
+ }
+
+ $data = self::json_decode_maybe_stripslashes( $data );
+ $et_endpoint = apply_filters( 'et_builder_report_endpoint', 'https://www.elegantthemes.com/api/reportV2.php' );
+
+ // Crafting reports and send to end endpoint.
+ $request_settings = array(
+ 'timeout' => 30,
+ 'body' => array(
+ 'username' => $et_username,
+ 'api_key' => $et_api_key,
+ 'error_report' => self::$_instance->_get_report_content( $data ),
+ 'site_url' => site_url(),
+ 'attachments' => array(
+ 'latest' => self::$_instance->_get_exported_layout_content( $data, 'latest_content' ),
+ 'loaded' => self::$_instance->_get_exported_layout_content( $data, 'loaded_content' ),
+ ),
+ ),
+ );
+
+ $request = wp_remote_post( $et_endpoint, $request_settings );
+ $request_response_code = wp_remote_retrieve_response_code( $request );
+ $request_body = wp_remote_retrieve_body( $request );
+
+ if ( 200 === $request_response_code ) {
+ wp_send_json_success();
+ } else {
+ wp_send_json_error( json_decode( $request_body ) );
+ }
+ wp_die();
+ }
+}
+
+ET_Builder_Error_Report::instance();
diff --git a/includes/builder/feature/I18n.php b/includes/builder/feature/I18n.php
new file mode 100644
index 0000000..4e94b7b
--- /dev/null
+++ b/includes/builder/feature/I18n.php
@@ -0,0 +1,125 @@
+post_content;
+ $tb_layouts = et_theme_builder_get_template_layouts();
+
+ // Add TB templates content.
+ if ( ! empty( $tb_layouts ) ) {
+ $post_types = [
+ ET_THEME_BUILDER_HEADER_LAYOUT_POST_TYPE,
+ ET_THEME_BUILDER_BODY_LAYOUT_POST_TYPE,
+ ET_THEME_BUILDER_FOOTER_LAYOUT_POST_TYPE,
+ ];
+
+ foreach ( $post_types as $post_type ) {
+ $layout = $tb_layouts[ $post_type ];
+ if ( $layout['override'] && ! empty( $layout['enabled'] ) ) {
+ $template = get_post( intval( $layout['id'] ) );
+ $all_content .= $template->post_content;
+ }
+ }
+ }
+
+ $integrations = [
+ 'head',
+ 'body',
+ 'single_top',
+ 'single_bottom',
+ ];
+
+ // Add Integration code.
+ foreach ( $integrations as $integration ) {
+ $all_content .= et_get_option( $shortname . '_integration_' . $integration );
+ }
+
+ return $all_content;
+ }
+
+ /**
+ * Recursively check if a script (or its deps) depends on JQuery.
+ *
+ * @since 4.10.0
+ * @param string $script Script Handle.
+ *
+ * @return bool
+ */
+ public function has_jquery_dep( $script ) {
+ global $wp_scripts;
+
+ $registered = $wp_scripts->registered;
+ $handles = [ $script ];
+ $stack = [];
+ $result = false;
+
+ while ( false === $result && $handles ) {
+ foreach ( $handles as $handle ) {
+ if ( ! empty( $this->_has_jquery_dep[ $handle ] ) ) {
+ $result = true;
+ break;
+ }
+
+ if ( isset( $registered[ $handle ] ) ) {
+ $deps = $registered[ $handle ]->deps;
+ if ( $deps ) {
+ if ( in_array( 'jquery-core', $deps, true ) ) {
+ $result = true;
+ break;
+ }
+ array_push( $stack, $deps );
+ }
+ }
+ }
+
+ $handles = array_pop( $stack );
+ }
+
+ $this->_has_jquery_dep[ $script ] = $result;
+ return $result;
+ }
+
+ /**
+ * Get script deps.
+ *
+ * @since 4.10.0
+ * @param string $script Script Handle.
+ *
+ * @return array
+ */
+ public function get_deps( $script ) {
+ global $wp_scripts;
+
+ $registered = $wp_scripts->registered;
+ $handles = is_array( $script ) ? $script : [ $script ];
+ $all_deps = $handles;
+ $stack = [];
+ $done = [];
+
+ while ( $handles ) {
+ foreach ( $handles as $handle ) {
+ if ( ! isset( $done[ $handle ] ) && isset( $registered[ $handle ] ) ) {
+ $deps = $registered[ $handle ]->deps;
+ if ( $deps ) {
+ $all_deps = array_merge( $all_deps, $deps );
+ array_push( $stack, $deps );
+ }
+ $done[ $handle ] = true;
+ }
+ }
+ $handles = array_pop( $stack );
+ }
+
+ return array_unique( $all_deps );
+ }
+
+ /**
+ * Check if a script is currently enqueued in HEAD.
+ *
+ * @since 4.10.0
+ * @param string $handle Script Handle.
+ *
+ * @return bool
+ */
+ public function in_head( $handle ) {
+ global $wp_scripts;
+
+ if ( empty( $wp_scripts->registered[ $handle ] ) ) {
+ return false;
+ }
+
+ $script = $wp_scripts->registered[ $handle ];
+
+ if ( isset( $script->args ) && 1 === $script->args ) {
+ return false;
+ }
+
+ if ( isset( $script->extra['group'] ) && 1 === $script->extra['group'] ) {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Check whether some content includes jQuery or not.
+ *
+ * @since 4.10.0
+ * @param string $content Content.
+ *
+ * @return bool
+ */
+ public static function has_jquery_content( $content ) {
+ $has_jquery_regex = '/\(jQuery|jQuery\.|jQuery\)/';
+ return 1 === preg_match( $has_jquery_regex, $content );
+ }
+
+ /**
+ * Move jQuery / migrate / 3P scripts in BODY.
+ *
+ * @since 4.10.0
+ *
+ * @return void
+ */
+ public function wp_print_scripts() {
+ global $shortname;
+
+ if ( $this->should_move_jquery() ) {
+ global $wp_scripts;
+ $queue = $this->get_deps( $wp_scripts->queue );
+ $head = in_array( 'jquery-migrate', $queue, true ) ? [ 'jquery-migrate' ] : [];
+ $mode = 'on' === et_get_option( $shortname . '_enable_jquery_body_super' ) ? 'super' : 'safe';
+
+ // Find all head scripts that depends on JQuery.
+ foreach ( $queue as $handle ) {
+ if ( $this->in_head( $handle ) && $this->has_jquery_dep( $handle ) ) {
+ if ( 'safe' === $mode && 'jquery' !== $handle && 'jquery-migrate' !== $handle ) {
+ // Bail out when a script requiring jQuery is found in head.
+ return;
+ }
+ $head[] = $handle;
+ }
+ }
+
+ $registered = $wp_scripts->registered;
+
+ // Disable the feature when finding a script which does not depend on jQuery
+ // but still uses it inside its inlined content (before/after).
+ foreach ( $queue as $handle ) {
+ if ( ! $this->has_jquery_dep( $handle ) ) {
+ $script = $registered[ $handle ];
+ $data = '';
+
+ if ( isset( $script->extra['data'] ) ) {
+ $data .= $script->extra['data'];
+ }
+ if ( isset( $script->extra['before'] ) ) {
+ $data .= join( '', $script->extra['before'] );
+ }
+ if ( isset( $script->extra['after'] ) ) {
+ $data .= join( '', $script->extra['after'] );
+ }
+
+ if ( ! empty( $data ) && self::has_jquery_content( $data ) ) {
+ return;
+ }
+ }
+ }
+
+ // Disable the feature when jQuery is found in TB/Post Content.
+ if ( self::has_jquery_content( $this->get_all_content() ) ) {
+ return;
+ }
+
+ if ( ! empty( $head ) ) {
+ foreach ( $this->get_deps( $head ) as $handle ) {
+ $wp_scripts->add_data( $handle, 'group', 1 );
+ }
+ }
+ }
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 4.10.0
+ *
+ * @return ET_Builder_JQuery_Body
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Fake jQuery in head when jQuery body option is true.
+ */
+ public function add_jquery_sub() {
+ global $shortname;
+
+ $jquery_compatibility_enabled = 'on' === et_get_option( $shortname . '_enable_jquery_compatibility', 'on' ) ? true : false;
+
+ if ( $this->should_move_jquery() && $jquery_compatibility_enabled ) {
+ echo '';
+ }
+ }
+
+ /**
+ * Disable the Fake jQuery in head when jQuery body option is true.
+ */
+ public function remove_jquery_sub() {
+ global $shortname;
+
+ $jquery_compatibility_enabled = 'on' === et_get_option( $shortname . '_enable_jquery_compatibility', 'on' ) ? true : false;
+
+ if ( $this->should_move_jquery() && $jquery_compatibility_enabled ) {
+ $script = 'jqueryParams.length&&$.each(jqueryParams,function(e,r){if("function"==typeof r){var n=String(r);n.replace("$","jQuery");var a=new Function("return "+n)();$(document).ready(a)}});';
+
+ wp_add_inline_script( 'jquery', $script, 'after' );
+ }
+ }
+
+ /**
+ * Check if jQuery should be moved to the body.
+ */
+ public function should_move_jquery() {
+ global $shortname;
+
+ if ( null === self::$_should_move_jquery ) {
+ /**
+ * Filters whether JQuery Body feature is enabled or not.
+ *
+ * @since 4.10.5
+ *
+ * @param bool $enabled JQuery Body enabled value.
+ * @param string $content TB/Post Content.
+ */
+ if ( false === apply_filters( 'et_builder_enable_jquery_body', true, $this->get_all_content() ) ) {
+ // Bail out if disabled by filter.
+ self::$_should_move_jquery = false;
+ return false;
+ }
+ self::$_should_move_jquery = ! ( is_admin() || wp_doing_ajax() || et_is_builder_plugin_active() || is_customize_preview() || is_et_pb_preview() || 'wp-login.php' === $GLOBALS['pagenow'] || et_fb_is_enabled() ) && 'on' === et_get_option( $shortname . '_enable_jquery_body', 'on' );
+ }
+
+ return self::$_should_move_jquery;
+ }
+}
+
+ET_Builder_JQuery_Body::instance();
diff --git a/includes/builder/feature/Library.php b/includes/builder/feature/Library.php
new file mode 100644
index 0000000..6d066cb
--- /dev/null
+++ b/includes/builder/feature/Library.php
@@ -0,0 +1,1164 @@
+_instance_check();
+ $this->_register_cpt_and_taxonomies();
+
+ self::$_ = ET_Core_Data_Utils::instance();
+
+ $this->_register_hooks();
+ $this->_register_ajax_callbacks();
+
+ self::$_i18n = require ET_BUILDER_DIR . '/frontend-builder/i18n/library.php';
+
+ self::$_standard_post_types = self::_standard_post_types();
+ }
+
+ /**
+ * Compare by slug
+ *
+ * @param object $a First category in comparison.
+ * @param object $b Second category in comparison.
+ *
+ * @return bool
+ */
+ public static function compare_by_slug( $a, $b ) {
+ return strcmp( $a->slug, $b->slug );
+ }
+
+ /**
+ * Gets a translated string from {@see self::$_i18n}.
+ *
+ * @param string $string The untranslated string.
+ * @param string $path Optional path for nested strings.
+ *
+ * @return string The translated string if found, the original string otherwise.
+ */
+ public static function __( $string, $path = '' ) {
+ $path .= $path ? ".{$string}" : $string;
+
+ return self::$_->array_get( self::$_i18n, $path, $string );
+ }
+
+ /**
+ * Dies if an instance already exists.
+ *
+ * @since 3.0.99
+ */
+ protected function _instance_check() {
+ if ( self::$_instance ) {
+ et_error( 'Multiple instances are not allowed!' );
+ wp_die();
+ }
+ }
+
+ /**
+ * Get the name of a thumbnail image size used in the library UI.
+ *
+ * @since 3.0.99
+ *
+ * @param string $type The thumbnail type. Accepts 'thumbnail', 'screenshot'.
+ *
+ * @return string
+ */
+ protected static function _get_image_size_name( $type ) {
+ $names = array(
+ 'thumbnail' => 'et-pb-portfolio-image',
+ 'thumbnail_small' => 'et-pb-portfolio-image',
+ 'screenshot' => 'et-pb-portfolio-image-single',
+ );
+
+ $name = $names[ $type ];
+
+ /**
+ * Filters the names of the registered image sizes to use for layout thumbnails. The
+ * dynamic portion of the filter name, '$type', refers to the layout image
+ * type ('thumbnail' or 'screenshot').
+ *
+ * @since 3.0.99
+ *
+ * @param string $name The name of the registered image size that should be used.
+ */
+ return apply_filters( "et_builder_layout_{$type}_image_size_name", $name );
+ }
+
+ /**
+ * Returns a filtered short name for a layout.
+ *
+ * @since 3.0.99
+ *
+ * @param string $long_name Layout title.
+ * @param WP_Post $layout Layout post.
+ *
+ * @return string
+ */
+ protected function _get_layout_short_name( $long_name, $layout ) {
+ /**
+ * Filters the short name for layouts that do not have one.
+ *
+ * @since 3.0.99
+ *
+ * @param string $long_name
+ * @param WP_Post $layout
+ */
+ return apply_filters( 'et_builder_library_layout_short_name', $long_name, $layout );
+ }
+
+ /**
+ * Processes layout categories for inclusion in the library UI layouts data.
+ *
+ * @since 3.0.99
+ *
+ * @param WP_POST $post Unprocessed layout.
+ * @param object $layout Currently processing layout.
+ * @param int $index The layout's index position.
+ * @param array[] $layout_categories Processed layouts.
+ */
+ protected function _process_layout_categories( $post, $layout, $index, &$layout_categories ) {
+ $terms = wp_get_post_terms( $post->ID, $this->layout_categories->name );
+ if ( ! $terms ) {
+ $layout->category_slug = 'uncategorized';
+ return;
+ }
+
+ foreach ( $terms as $category ) {
+ $category_name = self::__( html_entity_decode( $category->name ), '@categories' );
+ $category_name = et_core_intentionally_unescaped( $category_name, 'react_jsx' );
+
+ if ( ! isset( $layout_categories[ $category->term_id ] ) ) {
+ $layout_categories[ $category->term_id ] = array(
+ 'id' => $category->term_id,
+ 'name' => $category_name,
+ 'slug' => $category->slug,
+ 'layouts' => array(),
+ );
+ }
+
+ $layout_categories[ $category->term_id ]['layouts'][] = $index;
+
+ $layout->categories[] = $category_name;
+ $layout->category_ids[] = $category->term_id;
+
+ if ( ! isset( $layout->category_slug ) ) {
+ $layout->category_slug = $category->slug;
+ }
+
+ $id = get_post_meta( $post->ID, self::$_primary_category_key, true );
+
+ if ( $id ) {
+ // $id is a string, $category->term_id is an int.
+ if ( $id === $category->term_id ) {
+ // This is the primary category (used in the layout URL).
+ $layout->category_slug = $category->slug;
+ }
+ }
+ }
+ }
+
+ /**
+ * Processes layout packs for inclusion in the library UI layouts data.
+ *
+ * @since 3.0.99
+ *
+ * @param WP_POST $post Unprocessed layout.
+ * @param object $layout Currently processing layout.
+ * @param int $index The layout's index position.
+ * @param array[] $layout_packs Processed layouts.
+ */
+ protected function _process_layout_packs( $post, $layout, $index, &$layout_packs ) {
+ $terms = wp_get_post_terms( $post->ID, $this->layout_packs->name );
+ if ( ! $terms ) {
+ return;
+ }
+
+ $pack = array_shift( $terms );
+ $pack_name = self::__( html_entity_decode( $pack->name ), '@packs' );
+ $pack_name = et_core_intentionally_unescaped( $pack_name, 'react_jsx' );
+
+ if ( ! isset( $layout_packs[ $pack->term_id ] ) ) {
+ $layout_packs[ $pack->term_id ] = array(
+ 'id' => $pack->term_id,
+ 'name' => $pack_name,
+ 'slug' => $pack->slug,
+ 'date' => $layout->date,
+ 'layouts' => array(),
+ );
+ }
+
+ if ( $layout->is_landing ) {
+ $layout_packs[ $pack->term_id ]['thumbnail'] = $layout->thumbnail;
+ $layout_packs[ $pack->term_id ]['screenshot'] = $layout->screenshot;
+ $layout_packs[ $pack->term_id ]['description'] = et_core_intentionally_unescaped( html_entity_decode( $post->post_excerpt ), 'react_jsx' );
+ $layout_packs[ $pack->term_id ]['category_slug'] = $layout->category_slug;
+ $layout_packs[ $pack->term_id ]['landing_index'] = $index;
+ }
+
+ $layout_packs[ $pack->term_id ]['layouts'][] = $index;
+
+ $layout_packs[ $pack->term_id ]['categories'] = $layout->categories;
+ $layout_packs[ $pack->term_id ]['category_ids'] = $layout->category_ids;
+
+ $layout->pack = $pack_name;
+ $layout->pack_id = $pack->term_id;
+ }
+
+ /**
+ * Registers the Library's AJAX callbacks.
+ *
+ * @since 3.0.99
+ */
+ protected function _register_ajax_callbacks() {
+ add_action( 'wp_ajax_et_builder_library_get_layouts_data', array( $this, 'wp_ajax_et_builder_library_get_layouts_data' ) );
+ add_action( 'wp_ajax_et_builder_library_get_layout', array( $this, 'wp_ajax_et_builder_library_get_layout' ) );
+ add_action( 'wp_ajax_et_builder_library_update_account', array( $this, 'wp_ajax_et_builder_library_update_account' ) );
+ }
+
+ /**
+ * Registers the Library's custom post types and taxonomies.
+ *
+ * @since 3.0.99
+ */
+ protected function _register_cpt_and_taxonomies() {
+ $files = glob( ET_BUILDER_DIR . 'post/*/Layout*.php' );
+ if ( ! $files ) {
+ return;
+ }
+
+ foreach ( $files as $file ) {
+ require_once $file;
+ }
+
+ $this->layouts = ET_Builder_Post_Type_Layout::instance();
+ $this->layout_categories = ET_Builder_Post_Taxonomy_LayoutCategory::instance();
+ $this->layout_packs = ET_Builder_Post_Taxonomy_LayoutPack::instance();
+ $this->layout_types = ET_Builder_Post_Taxonomy_LayoutType::instance();
+
+ ET_Builder_Post_Taxonomy_LayoutScope::instance();
+ ET_Builder_Post_Taxonomy_LayoutWidth::instance();
+
+ // We manually call register_all() now to ensure the CPT and taxonomies are registered
+ // at exactly the same point during the request that they were in prior releases.
+ ET_Builder_Post_Type_Layout::register_all( 'builder' );
+
+ self::$_primary_category_key = "_yoast_wpseo_primary_{$this->layout_categories->name}";
+ }
+
+ /**
+ * Registers the Library's non-AJAX callbacks.
+ *
+ * @since 3.0.99
+ */
+ public function _register_hooks() {
+ add_action( 'admin_init', 'ET_Builder_Library::update_old_layouts' );
+ add_action( 'admin_enqueue_scripts', array( $this, 'wp_hook_admin_enqueue_scripts' ), 4 );
+ }
+
+ /**
+ * Returns sorted layout category and pack IDs for use in library UI layouts data.
+ *
+ * @since 3.0.99
+ *
+ * @param array[] $categories Layout categories.
+ * @param array[] $packs Layout packs.
+ *
+ * @return array[] {
+ *
+ * @type int[] $categories Layout category ids sorted alphabetically by category name.
+ * @type int[] $packs Layout pack ids sorted alphabetically by pack name.
+ * }
+ */
+ protected static function _sort_builder_library_data( $categories, $packs ) {
+ $categories = array_values( $categories );
+ $packs = array_values( $packs );
+ $sorted = array();
+
+ foreach ( array( 'categories', 'packs' ) as $taxonomy ) {
+ $sorted[ $taxonomy ] = array();
+
+ $$taxonomy = self::$_->array_sort_by( $$taxonomy, 'slug' );
+
+ foreach ( $$taxonomy as $term ) {
+ $sorted[ $taxonomy ][] = $term['id'];
+ }
+ }
+
+ return $sorted;
+ }
+
+ /**
+ * Get Divi Library's Standard Post Types.
+ *
+ * @return mixed|void
+ */
+ public static function _standard_post_types() {
+ /**
+ * Filters the Divi Library's Standard Post Types.
+ *
+ * @since 3.0.99
+ *
+ * @param string[] $standard_post_types
+ */
+ return apply_filters( 'et_pb_standard_post_types', self::$_standard_post_types );
+ }
+
+ /**
+ * Generates layouts data for the builder's library UI.
+ *
+ * @since 3.0.99
+ *
+ * @return array $data
+ */
+ public function builder_library_layouts_data() {
+ $layout_categories = array();
+ $layout_packs = array();
+ $layouts = array();
+ $index = 0;
+
+ $thumbnail = self::_get_image_size_name( 'thumbnail' );
+ $thumbnail_small = self::_get_image_size_name( 'thumbnail_small' );
+ $screenshot = self::_get_image_size_name( 'screenshot' );
+
+ $extra_layout_post_type = 'layout';
+
+ $posts = $this->layouts
+ ->query()
+ ->not()->with_meta( '_et_pb_built_for_post_type', $extra_layout_post_type )
+ ->run();
+
+ $posts = self::$_->array_sort_by( is_array( $posts ) ? $posts : array( $posts ), 'post_name' );
+
+ foreach ( $posts as $post ) {
+ $layout = new stdClass();
+
+ setup_postdata( $post );
+
+ $layout->id = $post->ID;
+ $layout->index = $index;
+ $layout->date = $post->post_date;
+ $types = wp_get_post_terms( $layout->id, $this->layout_types->name );
+
+ if ( ! $types ) {
+ continue;
+ }
+
+ $layout->type = $types[0]->name;
+
+ // For the initial release of new library UI, only 'layouts' are needed.
+ if ( 'layout' !== $layout->type ) {
+ continue;
+ }
+
+ $title = html_entity_decode( $post->post_title );
+ $short_name = get_post_meta( $post->ID, '_et_builder_library_short_name', true );
+
+ if ( ! $short_name ) {
+ $short_name = $this->_get_layout_short_name( $title, $post );
+
+ if ( $short_name !== $title ) {
+ update_post_meta( $post->ID, '_et_builder_library_short_name', $short_name );
+ }
+ }
+ $layout->short_name = '';
+ $layout->name = $layout->short_name;
+
+ if ( $title ) {
+ // Remove periods since we use dot notation to retrieve translation.
+ str_replace( '.', '', $title );
+
+ $layout->name = et_core_intentionally_unescaped( self::__( $title, '@layoutsLong' ), 'react_jsx' );
+ }
+
+ if ( $short_name ) {
+ // Remove periods since we use dot notation to retrieve translation.
+ str_replace( '.', '', $title );
+
+ $layout->short_name = et_core_intentionally_unescaped( self::__( $short_name, '@layoutsShort' ), 'react_jsx' );
+ }
+
+ $layout->slug = $post->post_name;
+ $layout->url = esc_url( wp_make_link_relative( get_permalink( $post ) ) );
+
+ $layout->thumbnail = esc_url( get_the_post_thumbnail_url( $post->ID, $thumbnail ) );
+ $layout->thumbnail_small = esc_url( get_the_post_thumbnail_url( $post->ID, $thumbnail_small ) );
+ $layout->screenshot = esc_url( get_the_post_thumbnail_url( $post->ID, $screenshot ) );
+
+ $layout->categories = array();
+ $layout->category_ids = array();
+
+ $layout->is_global = $this->layouts->is_global( $layout->id );
+ $layout->is_landing = ! empty( $post->post_excerpt );
+ $layout->description = '';
+
+ $this->_process_layout_categories( $post, $layout, $index, $layout_categories );
+ $this->_process_layout_packs( $post, $layout, $index, $layout_packs );
+
+ wp_reset_postdata();
+
+ $layouts[] = $layout;
+
+ $index++;
+ }
+
+ /**
+ * Filters data for the 'My Saved Layouts' tab.
+ *
+ * @since 3.1
+ *
+ * @param array[] $saved_layouts_data {
+ * Saved Layouts Data
+ *
+ * @type array[] $categories {
+ * Layout Categories
+ *
+ * @type $id mixed[] {
+ * Category
+ *
+ * @type int $id Id.
+ * @type int[] $layouts Id's of layouts in category.
+ * @type string $name Name.
+ * @type string $slug Slug.
+ * }
+ * ...
+ * }
+ * @type array[] $packs {
+ * Layout Packs
+ *
+ * @type $id mixed[] {
+ * Pack
+ *
+ * @type string $category_ids Category ids.
+ * @type string $category_slug Primary category slug.
+ * @type string $date Published date.
+ * @type string $description Description.
+ * @type int $id Id.
+ * @type int[] $layouts Id's of layouts in pack.
+ * @type string $name Name.
+ * @type string $screenshot Screenshot URL.
+ * @type string $slug Slug.
+ * @type string $thumbnail Thumbnail URL.
+ * }
+ * ...
+ * }
+ * @type object[] $layouts {
+ * Layouts
+ *
+ * @type object {
+ * Layout
+ *
+ * @type int $id ID
+ * @type string[] $categories
+ * @type int[] $category_ids
+ * @type string $category_slug
+ * @type int $date
+ * @type string $description
+ * @type int $index
+ * @type bool $is_global
+ * @type bool $is_landing
+ * @type string $name
+ * @type string $screenshot
+ * @type string $short_name
+ * @type string $slug
+ * @type string $thumbnail
+ * @type string $thumbnail_small
+ * @type string $type
+ * @type string $url
+ * }
+ * ...
+ * }
+ * @type array[] $sorted {
+ * Sorted Ids
+ *
+ * @type int[] $categories
+ * @type int[] $packs
+ * }
+ * }
+ */
+ $saved_layouts_data = array(
+ 'categories' => $layout_categories,
+ 'packs' => $layout_packs,
+ 'layouts' => $layouts,
+ 'sorted' => self::_sort_builder_library_data( $layout_categories, $layout_packs ),
+ );
+ $saved_layouts_data = apply_filters( 'et_builder_library_saved_layouts', $saved_layouts_data );
+
+ /**
+ * Filters custom tabs layout data for the library modal. Custom tabs must be registered
+ * via the {@see 'et_builder_library_modal_custom_tabs'} filter.
+ *
+ * @since 3.1
+ *
+ * @param array[] $custom_layouts_data {
+ * Custom Layouts Data Organized By Modal Tab
+ *
+ * @type array[] $tab_slug See {@see 'et_builder_library_saved_layouts'} for array structure.
+ * ...
+ * }
+ * @param array[] $saved_layouts_data {@see 'et_builder_library_saved_layouts'} for array structure.
+ */
+ $custom_layouts_data = apply_filters(
+ 'et_builder_library_custom_layouts',
+ array(
+ 'existing_pages' => $this->_builder_library_modal_custom_tabs_existing_pages(),
+ ),
+ $saved_layouts_data
+ );
+
+ return array(
+ 'layouts_data' => $saved_layouts_data,
+ 'custom_layouts_data' => $custom_layouts_data,
+ );
+ }
+
+ /**
+ * Filters data for the 'Your Existing Pages' tab.
+ *
+ * @since 3.4
+ *
+ * @return array[] $saved_layouts_data {
+ * Existing Pages/Posts Data
+ *
+ * @type array[] $categories {
+ * Post Types Filters
+ *
+ * @type $id mixed[] {
+ * Post Type
+ *
+ * @type int $id Id.
+ * @type int[] $layouts Id's of layouts in filter.
+ * @type string $name Name.
+ * @type string $slug Slug.
+ * }
+ * ...
+ * }
+ * @type array[] $packs {
+ * Layout Packs
+ *
+ * @type $id mixed[] {
+ * Pack
+ *
+ * @type string $category_ids Category ids.
+ * @type string $category_slug Primary category slug.
+ * @type string $date Published date.
+ * @type string $description Description.
+ * @type int $id Id.
+ * @type int[] $layouts Id's of layouts in pack.
+ * @type string $name Name.
+ * @type string $screenshot Screenshot URL.
+ * @type string $slug Slug.
+ * @type string $thumbnail Thumbnail URL.
+ * }
+ * ...
+ * }
+ * @type object[] $layouts {
+ * Pages/Posts Data
+ *
+ * @type object {
+ * Page/Post Object
+ *
+ * @type int $id ID
+ * @type string[] $categories
+ * @type int[] $category_ids
+ * @type string $category_slug
+ * @type int $date
+ * @type string $description
+ * @type int $index
+ * @type bool $is_global
+ * @type bool $is_landing
+ * @type string $name
+ * @type string $screenshot
+ * @type string $short_name
+ * @type string $slug
+ * @type string $thumbnail
+ * @type string $thumbnail_small
+ * @type string $type
+ * @type string $url
+ * }
+ * ...
+ * }
+ * @type array[] $sorted {
+ * Sorted Ids
+ *
+ * @type int[] $categories
+ * @type int[] $packs
+ * }
+ * }
+ */
+ protected function _builder_library_modal_custom_tabs_existing_pages() {
+ et_core_nonce_verified_previously();
+
+ $categories = array();
+ $packs = array();
+ $layouts = array();
+ $index = 0;
+
+ $thumbnail = self::_get_image_size_name( 'thumbnail' );
+ $thumbnail_small = self::_get_image_size_name( 'thumbnail_small' );
+ $screenshot = self::_get_image_size_name( 'screenshot' );
+
+ /**
+ * Array of post types that should be listed as categories under "Existing Pages".
+ *
+ * @since 4.0
+ *
+ * @param string[] $post_types
+ */
+ $post_types = apply_filters( 'et_library_builder_post_types', et_builder_get_builder_post_types() );
+
+ // Remove Extra's category layouts from "Your Existing Pages" layout list.
+ if ( in_array( 'layout', $post_types, true ) ) {
+ unset( $post_types[ array_search( 'layout', $post_types, true ) ] );
+ }
+
+ if ( wp_doing_ajax() ) {
+ // VB case.
+ $exclude = isset( $_POST['postId'] ) ? (int) $_POST['postId'] : false;
+ } else {
+ // BB case.
+ $exclude = get_the_ID();
+ }
+
+ if ( $post_types ) {
+ $category_id = 1;
+ $layout_index = 0;
+
+ // Keep track of slugs in case there are duplicates.
+ $seen = array();
+
+ foreach ( $post_types as $post_type ) {
+ if ( ET_BUILDER_LAYOUT_POST_TYPE === $post_type ) {
+ continue;
+ }
+
+ $post_type_obj = get_post_type_object( $post_type );
+
+ if ( ! $post_type_obj ) {
+ continue;
+ }
+
+ $category = new StdClass();
+
+ $category->id = $category_id;
+ $category->layouts = array();
+ $category->slug = $post_type;
+ $category->name = $post_type_obj->label;
+
+ $query = new ET_Core_Post_Query( $post_type );
+
+ $posts = $query
+ // Do not include unused Theme Builder layouts. For more information
+ // see et_theme_builder_trash_draft_and_unused_posts().
+ ->not()->with_meta( '_et_theme_builder_marked_as_unused' )
+ ->run();
+
+ $posts = self::$_->array_sort_by( is_array( $posts ) ? $posts : array( $posts ), 'post_name' );
+
+ if ( ! empty( $posts ) ) {
+ foreach ( $posts as $post ) {
+ // Check if page builder is activated.
+ if ( ! et_pb_is_pagebuilder_used( $post->ID ) ) {
+ continue;
+ }
+
+ // Do not add the current page to the list.
+ if ( $post->ID === $exclude ) {
+ continue;
+ }
+
+ // Check if content has shortcode.
+ if ( ! has_shortcode( $post->post_content, 'et_pb_section' ) ) {
+ continue;
+ }
+
+ // Only include posts that the user is allowed to edit.
+ if ( ! current_user_can( 'edit_post', $post->ID ) ) {
+ continue;
+ }
+
+ $title = html_entity_decode( $post->post_title );
+
+ $slug = $post->post_name;
+
+ if ( ! $slug ) {
+ // Generate a slug, if none is available - this is necessary as draft posts
+ // that have never been published will not have a slug by default.
+ $slug = wp_unique_post_slug( $post->post_title . '-' . $post->ID, $post->ID, $post->post_status, $post->post_type, $post->post_parent );
+ }
+
+ if ( empty( $title ) || empty( $slug ) ) {
+ continue;
+ }
+
+ // Make sure we don't have duplicate slugs since we're using them as key in React.
+ // slugs should always be unique but enabling/disabling WPML can break this rule.
+ if ( isset( $seen[ $slug ] ) ) {
+ continue;
+ }
+
+ $type_label = et_theme_builder_is_layout_post_type( $post_type )
+ ? $post_type_obj->labels->singular_name
+ : $post_type;
+
+ $seen[ $slug ] = true;
+ $layout = new stdClass();
+ $layout->index = $index;
+ $layout->id = $post->ID;
+ $layout->date = $post->post_date;
+ $layout->status = $post->post_status;
+ $layout->icon = 'layout';
+ $layout->type = $type_label;
+ $layout->name = et_core_intentionally_unescaped( $title, 'react_jsx' );
+ $layout->short_name = et_core_intentionally_unescaped( $title, 'react_jsx' );
+ $layout->slug = $slug;
+ $layout->url = esc_url( wp_make_link_relative( get_permalink( $post ) ) );
+
+ $layout->thumbnail = esc_url( get_the_post_thumbnail_url( $post->ID, $thumbnail ) );
+ $layout->thumbnail_small = esc_url( get_the_post_thumbnail_url( $post->ID, $thumbnail_small ) );
+ $layout->screenshot = esc_url( get_the_post_thumbnail_url( $post->ID, $screenshot ) );
+
+ $layout->categories = array();
+ $layout->category_ids = array( $category_id );
+
+ $layout->is_global = false;
+ $layout->is_landing = false;
+ $layout->description = '';
+ $layout->category_slug = $post_type;
+ // $layout_index is the array index, not the $post->ID
+ $category->layouts[] = $layout_index;
+
+ $post_status_object = get_post_status_object( $post->post_status );
+
+ $layout->status = isset( $post_status_object->label ) ? $post_status_object->label : $post->post_status;
+
+ $layouts[ $layout_index++ ] = $layout;
+
+ $index++;
+ }
+ }
+
+ $categories[ $category_id++ ] = $category;
+ }
+ }
+
+ if ( count( $categories ) > 1 ) {
+ // Sort categories (post_type in this case) by slug.
+ uasort( $categories, array( 'self', 'compare_by_slug' ) );
+ }
+
+ return array(
+ 'categories' => $categories,
+ 'packs' => $packs,
+ 'layouts' => $layouts,
+ 'options' => array(
+ 'content' => array(
+ 'title' => array(
+ et_core_intentionally_unescaped( self::__( '%d Pages' ), 'react_jsx' ),
+ et_core_intentionally_unescaped( self::__( '%d Page' ), 'react_jsx' ),
+ ),
+ ),
+ 'sidebar' => array(
+ 'title' => et_core_intentionally_unescaped( self::__( 'Find A Page' ), 'react_jsx' ),
+ ),
+ 'list' => array(
+ 'columns' => array(
+ 'status' => et_core_intentionally_unescaped( self::__( 'Status' ), 'react_jsx' ),
+ ),
+ ),
+ ),
+ 'sorted' => array(
+ 'categories' => array_keys( $categories ),
+ 'packs' => $packs,
+ ),
+ );
+ }
+
+ /**
+ * Get custom tabs for the library modal.
+ *
+ * @param string $post_type Post type.
+ *
+ * @return array[] {
+ * Custom Tabs
+ *
+ * @type string $tab_slug Tab display name.
+ * ...
+ * }
+ */
+ public static function builder_library_modal_custom_tabs( $post_type ) {
+ /**
+ * Filters custom tabs for the library modal.
+ *
+ * @since 3.1
+ *
+ * @param array[] $custom_tabs See {@self::builder_library_modal_custom_tabs()} return value.
+ */
+ $custom_tabs = array();
+
+ if ( 'layout' !== $post_type ) {
+ $custom_tabs['existing_pages'] = esc_html__( 'Your Existing Pages', 'et_builder' );
+ }
+
+ return apply_filters( 'et_builder_library_modal_custom_tabs', $custom_tabs, $post_type );
+ }
+
+ /**
+ * Gets the post types that have existing layouts built for them.
+ *
+ * @since 3.1 Supersedes {@see et_pb_get_standard_post_types()}
+ * Supersedes {@see et_pb_get_used_built_for_post_types()}
+ * @since 2.0
+ *
+ * @param string $type Accepts 'standard' or 'all'. Default 'standard'.
+ *
+ * @return string[] $post_types
+ */
+ public static function built_for_post_types( $type = 'standard' ) {
+ static $all_built_for_post_types;
+
+ if ( 'standard' === $type ) {
+ return self::$_standard_post_types;
+ }
+
+ if ( $all_built_for_post_types ) {
+ return $all_built_for_post_types;
+ }
+
+ global $wpdb;
+
+ $all_built_for_post_types = $wpdb->get_col(
+ $wpdb->prepare(
+ "SELECT DISTINCT( meta_value ) FROM {$wpdb->postmeta} WHERE meta_key = %s AND meta_value > ''",
+ '_et_pb_built_for_post_type'
+ )
+ );
+
+ return $all_built_for_post_types;
+ }
+
+ /**
+ * Get the class instance.
+ *
+ * @since 3.0.99
+ *
+ * @return ET_Builder_Library
+ */
+ public static function instance() {
+ if ( ! self::$_instance ) {
+ self::$_instance = new self();
+ }
+
+ return self::$_instance;
+ }
+
+ /**
+ * Performs one-time maintenance tasks on library layouts in the database.
+ * {@see 'admin_init'}
+ *
+ * @since 3.1 Relocated from `builder/layouts.php`. New task: create 'Legacy Layouts' category.
+ * @since 2.0
+ */
+ public static function update_old_layouts() {
+ $layouts = ET_Builder_Post_Type_Layout::instance();
+
+ if ( 'yes' !== get_theme_mod( 'et_updated_layouts_built_for_post_types', 'no' ) ) {
+ $posts = $layouts
+ ->query()
+ ->not()->with_meta( '_et_pb_built_for_post_type' )
+ ->run();
+
+ foreach ( (array) $posts as $single_post ) {
+ update_post_meta( $single_post->ID, '_et_pb_built_for_post_type', 'page' );
+ }
+
+ set_theme_mod( 'et_updated_layouts_built_for_post_types', 'yes' );
+ }
+
+ if ( ! et_get_option( 'et_pb_layouts_updated', false ) ) {
+ $types = array(
+ 'section',
+ 'row',
+ 'module',
+ 'fullwidth_section',
+ 'specialty_section',
+ 'fullwidth_module',
+ );
+
+ $posts = $layouts
+ ->query()
+ ->not()->is_type( $types )
+ ->run();
+
+ foreach ( (array) $posts as $single_post ) {
+ if ( ! get_the_terms( $single_post->ID, 'layout_type' ) ) {
+ wp_set_object_terms( $single_post->ID, 'layout', 'layout_type', true );
+ }
+ }
+
+ et_update_option( 'et_pb_layouts_updated', true );
+ }
+
+ if ( ! et_get_option( 'library_removed_legacy_layouts', false ) ) {
+ $posts = $layouts
+ ->query()
+ ->with_meta( '_et_pb_predefined_layout' )
+ ->run();
+
+ foreach ( $posts as $post ) {
+ if ( 'layout' === get_post_meta( $post->ID, '_et_pb_built_for_post_type', true ) ) {
+ // Don't touch Extra's Category Builder layouts.
+ continue;
+ }
+
+ // Sanity check just to be safe.
+ if ( get_post_meta( $post->ID, '_et_pb_predefined_layout', true ) ) {
+ wp_delete_post( $post->ID, true );
+ }
+ }
+
+ et_update_option( 'library_removed_legacy_layouts', true );
+ }
+ }
+
+ /**
+ * AJAX Callback: Gets a layout by ID.
+ *
+ * @since 3.0.99
+ *
+ * @global $_POST['id'] The id of the desired layout.
+ * @global $_POST ['nonce'] Nonce: 'et_builder_library_get_layout'.
+ *
+ * @return string|void $layout JSON encoded. See return value of {@see et_pb_retrieve_templates()}
+ * for array structure.
+ */
+ public function wp_ajax_et_builder_library_get_layout() {
+ et_core_security_check( 'edit_posts', 'et_builder_library_get_layout', 'nonce' );
+
+ $id = isset( $_POST['id'] ) ? (int) $_POST['id'] : 0;
+
+ if ( empty( $id ) ) {
+ wp_send_json_error();
+ }
+
+ $result = array();
+ $post = get_post( $id );
+
+ $post_type = isset( $post->post_type ) ? $post->post_type : ET_BUILDER_LAYOUT_POST_TYPE;
+
+ switch ( $post_type ) {
+ case ET_BUILDER_LAYOUT_POST_TYPE:
+ $layouts = et_pb_retrieve_templates( 'layout', '', 'all', '0', 'all', 'all', array(), $post_type );
+
+ foreach ( $layouts as $layout ) {
+ if ( $id === $layout['ID'] ) {
+ $result = $layout;
+ break;
+ }
+ }
+
+ $result['savedShortcode'] = $result['shortcode'];
+
+ if ( ! isset( $_POST['is_BB'] ) ) {
+ $result['savedShortcode'] = et_fb_process_shortcode( $result['savedShortcode'] );
+ } else {
+ $post_content_processed = do_shortcode( $result['shortcode'] );
+ $result['migrations'] = ET_Builder_Module_Settings_Migration::$migrated;
+ }
+
+ unset( $result['shortcode'] );
+ break;
+ default:
+ $post_content = $post->post_content;
+ if ( ! isset( $_POST['is_BB'] ) ) {
+ $post_content = et_fb_process_shortcode( stripslashes( $post_content ) );
+ }
+ $result['savedShortcode'] = $post_content;
+ break;
+ }
+
+ $response = wp_json_encode(
+ array(
+ 'success' => true,
+ 'data' => $result,
+ )
+ );
+
+ $tmp_dir = function_exists( 'sys_get_temp_dir' ) ? sys_get_temp_dir() : '/tmp';
+
+ $tmp_file = tempnam( $tmp_dir, 'et' );
+
+ et_()->WPFS()->put_contents( $tmp_file, $response );
+
+ // Remove any previous buffered content since we're setting `Content-Length` header
+ // based on $response value only.
+ while ( ob_get_level() ) {
+ ob_end_clean();
+ }
+
+ header( 'Content-Length: ' . @filesize( $tmp_file ) ); // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged -- `filesize` may fail due to the permissions denied error.
+
+ @unlink( $tmp_file ); // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged -- `unlink` may fail due to the permissions denied error.
+
+ // Charset has to be explicitly mentioned when it is other than UTF-8.
+ header( 'Content-Type: application/json; charset=' . esc_attr( get_option( 'blog_charset' ) ) );
+
+ die( et_core_intentionally_unescaped( $response, 'html' ) );
+ }
+
+ /**
+ * AJAX Callback: Gets layouts data for the builder's library UI.
+ *
+ * @since 3.0.99
+ *
+ * @global $_POST['nonce'] Nonce: 'et_builder_library_get_layouts_data'.
+ *
+ * @return string|void $layouts_data JSON Encoded.
+ */
+ public function wp_ajax_et_builder_library_get_layouts_data() {
+ et_core_security_check( 'edit_posts', 'et_builder_library_get_layouts_data', 'nonce' );
+ wp_send_json_success( $this->builder_library_layouts_data() );
+ }
+
+ /**
+ * AJAX Callback: Updates ET Account in database.
+ *
+ * @since 3.0.99
+ *
+ * @global $_POST['nonce'] Nonce: 'et_builder_library_update_account'.
+ * @global $_POST['username'] Username
+ * @global $_POST['api_key'] API Key
+ * @global $_POST['status'] Account Status
+ */
+ public function wp_ajax_et_builder_library_update_account() {
+ et_core_security_check( 'manage_options', 'et_builder_library_update_account', 'nonce' );
+
+ $args = $_POST;
+
+ if ( ! self::$_->all( $args ) ) {
+ wp_send_json_error();
+ }
+
+ $args = array_map( 'sanitize_text_field', $args );
+ $updates_options = get_site_option( 'et_automatic_updates_options', array() );
+ $account = array(
+ 'username' => $args['et_username'],
+ 'api_key' => $args['et_api_key'],
+ );
+
+ update_site_option( 'et_automatic_updates_options', array_merge( $updates_options, $account ) );
+ update_site_option( 'et_account_status', $args['status'] );
+
+ wp_send_json_success();
+ }
+
+ /**
+ * Enqueues library-related styles and scripts in the admin.
+ * {@see 'admin_enqueue_scripts'}
+ *
+ * @param string $page The current admin page.
+ *
+ * @since 3.0.99
+ */
+ public function wp_hook_admin_enqueue_scripts( $page ) {
+ global $typenow;
+
+ et_core_load_main_fonts();
+
+ wp_enqueue_style( 'et-builder-notification-popup-styles', ET_BUILDER_URI . '/styles/notification_popup_styles.css', array(), ET_BUILDER_PRODUCT_VERSION );
+
+ if ( 'et_pb_layout' === $typenow ) {
+ $new_layout_modal = et_pb_generate_new_layout_modal();
+
+ wp_enqueue_style( 'library-styles', ET_BUILDER_URI . '/styles/library_pages.css', array( 'et-core-admin' ), ET_BUILDER_PRODUCT_VERSION );
+ $deps = array(
+ 'jquery',
+ );
+ wp_enqueue_script( 'library-scripts', ET_BUILDER_URI . '/scripts/library_scripts.js', $deps, ET_BUILDER_PRODUCT_VERSION, false );
+
+ $new_template_options_data = array(
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
+ 'et_admin_load_nonce' => wp_create_nonce( 'et_admin_load_nonce' ),
+ 'modal_output' => $new_layout_modal,
+ );
+ wp_localize_script( 'library-scripts', 'et_pb_new_template_options', $new_template_options_data );
+ } else {
+ wp_enqueue_script( 'et-builder-failure-notice', ET_BUILDER_URI . '/scripts/failure_notice.js', array( 'jquery' ), ET_BUILDER_PRODUCT_VERSION, false );
+ }
+ }
+}
+
+ET_Builder_Library::instance();
diff --git a/includes/builder/feature/ajax-data/AjaxData.php b/includes/builder/feature/ajax-data/AjaxData.php
new file mode 100644
index 0000000..db2560b
--- /dev/null
+++ b/includes/builder/feature/ajax-data/AjaxData.php
@@ -0,0 +1,408 @@
+is_displayable( $conditions, true );
+
+ if ( ! $status ) {
+ wp_send_json_error();
+ }
+
+ wp_send_json_success( $status );
+ }
+
+ /**
+ * AJAX Action for Searching within Products.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_search_products() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_search_products', 'nonce', '_GET' );
+
+ $current_page = isset( $_GET['page'] ) ? (int) $_GET['page'] : 0;
+ $current_page = max( $current_page, 1 );
+ $search = isset( $_GET['search'] ) ? sanitize_text_field( $_GET['search'] ) : '';
+ $results_per_page = 20;
+ $results = [
+ 'results' => [],
+ 'meta' => [],
+ ];
+
+ $query = [
+ 'post_type' => 'product',
+ 'posts_per_page' => $results_per_page,
+ 'post_status' => 'publish',
+ 's' => $search,
+ 'orderby' => 'date',
+ 'order' => 'desc',
+ 'paged' => $current_page,
+ ];
+
+ $query = new \WP_Query( $query );
+
+ if ( ! empty( $query->posts ) ) {
+ foreach ( $query->posts as $post ) {
+ $results['results'][] = [
+ 'value' => (int) $post->ID,
+ 'label' => et_core_intentionally_unescaped( wp_strip_all_tags( $post->post_title ), 'react_jsx' ),
+ ];
+ }
+ }
+
+ $results['meta']['pagination'] = array(
+ 'results' => array(
+ 'per_page' => (int) $results_per_page,
+ 'total' => (int) $query->found_posts,
+ ),
+ 'pages' => array(
+ 'current' => (int) $current_page,
+ 'total' => (int) $query->max_num_pages,
+ ),
+ );
+
+ // Only reset if the query is successful to avoid resetting previous query by mistake.
+ if ( ! empty( $query->posts ) ) {
+ wp_reset_postdata();
+ }
+
+ wp_send_json_success( $results );
+ }
+
+ /**
+ * AJAX Action for getting a list of all Categories (All Taxonomies Terms) except excluded taxonomies.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_get_categories() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_get_categories', 'nonce', '_GET' );
+
+ $data = [];
+ $search = isset( $_GET['search'] ) ? sanitize_text_field( $_GET['search'] ) : '';
+ $excluded_taxonomies = [ 'post_tag', 'project_tag', 'product_tag', 'nav_menu', 'link_category', 'post_format', 'layout_category', 'layout_pack', 'layout_type', 'scope', 'module_width' ];
+
+ /**
+ * Filters excluded taxonomies for `et_builder_ajax_get_categories` ajax action.
+ *
+ * @since 4.11.0
+ *
+ * @param array $excluded_taxonomies
+ */
+ $excluded_taxonomies = apply_filters( 'et_builder_ajax_get_categories_excluded_taxonomies', $excluded_taxonomies );
+
+ $taxonomies = array_diff( get_taxonomies(), $excluded_taxonomies );
+ $categories = get_terms(
+ [
+ 'taxonomy' => $taxonomies,
+ 'hide_empty' => false,
+ 'search' => $search,
+ ]
+ );
+
+ foreach ( $categories as $cat ) {
+ $tax_name = get_taxonomy( $cat->taxonomy )->label;
+ $tax_slug = get_taxonomy( $cat->taxonomy )->name;
+ $data[ $cat->taxonomy ][] = [
+ 'name' => et_core_intentionally_unescaped( wp_strip_all_tags( $cat->name ), 'react_jsx' ),
+ 'id' => $cat->term_id,
+ 'taxonomyName' => et_core_intentionally_unescaped( wp_strip_all_tags( $tax_name ), 'react_jsx' ),
+ 'taxonomySlug' => $tax_slug,
+ ];
+ }
+
+ $results = [
+ 'results' => $data,
+ ];
+
+ if ( is_wp_error( $categories ) ) {
+ wp_send_json_error( $categories );
+ }
+
+ wp_send_json_success( $results );
+ }
+
+ /**
+ * AJAX Action for getting a list of Divi registered Tags.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_get_tags() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_get_tags', 'nonce', '_GET' );
+
+ $data = [];
+ $search = isset( $_GET['search'] ) ? sanitize_text_field( $_GET['search'] ) : '';
+ $included_taxonomies = [ 'post_tag', 'project_tag', 'product_tag' ];
+
+ /**
+ * Filters included taxonomies for `et_builder_ajax_get_tags` ajax action.
+ *
+ * @since 4.11.0
+ *
+ * @param array $included_taxonomies
+ */
+ $included_taxonomies = apply_filters( 'et_builder_ajax_get_tags_included_taxonomies', $included_taxonomies );
+
+ $included_taxonomies = array_filter(
+ $included_taxonomies,
+ function( $taxonomy_slug ) {
+ return taxonomy_exists( $taxonomy_slug );
+ }
+ );
+
+ $tags = get_terms(
+ [
+ 'taxonomy' => $included_taxonomies,
+ 'hide_empty' => false,
+ 'search' => $search,
+ ]
+ );
+
+ foreach ( $tags as $tag ) {
+ $tax_name = get_taxonomy( $tag->taxonomy )->label;
+ $tax_slug = get_taxonomy( $tag->taxonomy )->name;
+ $data[ $tag->taxonomy ][] = [
+ 'name' => et_core_intentionally_unescaped( wp_strip_all_tags( $tag->name ), 'react_jsx' ),
+ 'id' => $tag->term_id,
+ 'taxonomyName' => et_core_intentionally_unescaped( wp_strip_all_tags( $tax_name ), 'react_jsx' ),
+ 'taxonomySlug' => $tax_slug,
+ ];
+ }
+
+ $results = [
+ 'results' => $data,
+ ];
+
+ if ( is_wp_error( $tags ) ) {
+ wp_send_json_error( $tags );
+ }
+
+ wp_send_json_success( $results );
+ }
+
+ /**
+ * AJAX Action for getting a list of Post Types.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_get_post_types() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_get_post_types', 'nonce', '_GET' );
+
+ $current_page = isset( $_GET['page'] ) ? (int) $_GET['page'] : 0;
+ $current_page = max( $current_page, 1 );
+ $post_types = array_values( get_post_types( [ 'public' => true ], 'objects' ) );
+
+ /**
+ * Filters included post types for `et_builder_ajax_get_post_types` ajax action.
+ *
+ * @since 4.11.0
+ *
+ * @param array $post_types
+ */
+ $post_types = apply_filters( 'et_builder_ajax_get_post_types', $post_types );
+
+ $total = count( $post_types );
+ $results_per_page = 20;
+ $pages_total = 1;
+
+ $post_types_data = array_map(
+ function( $item ) {
+ return [
+ 'label' => et_core_intentionally_unescaped( wp_strip_all_tags( $item->labels->name ), 'react_jsx' ),
+ 'singular_label' => et_core_intentionally_unescaped( wp_strip_all_tags( $item->labels->singular_name ), 'react_jsx' ),
+ 'value' => $item->name,
+ ];
+ },
+ $post_types
+ );
+
+ $results = [
+ 'results' => $post_types_data,
+ 'meta' => [],
+ ];
+ $results['meta']['pagination'] = array(
+ 'results' => array(
+ 'per_page' => $results_per_page,
+ 'total' => $total,
+ ),
+ 'pages' => array(
+ 'current' => $current_page,
+ 'total' => $pages_total,
+ ),
+ );
+
+ wp_send_json_success( $results );
+ }
+
+ /**
+ * AJAX Action for getting a list of Authors.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_get_authors() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_get_authors', 'nonce', '_GET' );
+
+ $current_page = isset( $_GET['page'] ) ? (int) $_GET['page'] : 0;
+ $current_page = max( $current_page, 1 );
+ $results_per_page = 10;
+ $users_data = [];
+ $role__in = [];
+
+ foreach ( wp_roles()->roles as $role_slug => $role ) {
+ if ( ! empty( $role['capabilities']['publish_posts'] ) ) {
+ $role__in[] = $role_slug;
+ }
+ }
+
+ /**
+ * Filters included roles for `et_builder_ajax_get_authors` ajax action.
+ *
+ * @since 4.11.0
+ *
+ * @param array $role__in
+ */
+ $role__in = apply_filters( 'et_builder_ajax_get_authors_included_roles', $role__in );
+
+ $user_query = new \WP_User_Query(
+ [
+ 'role__in' => $role__in,
+ 'fields' => [ 'ID', 'user_login' ],
+ 'number' => $results_per_page,
+ 'paged' => 1,
+ ]
+ );
+ $found_users = $user_query->get_results();
+
+ if ( ! empty( $found_users ) ) {
+ $users_data = array_map(
+ function( $item ) {
+ return [
+ 'label' => et_core_intentionally_unescaped( wp_strip_all_tags( $item->user_login ), 'react_jsx' ),
+ 'value' => $item->ID,
+ ];
+ },
+ $found_users
+ );
+ }
+
+ $total = $user_query->get_total();
+ $pages_total = max( $total / $results_per_page, 1 );
+
+ $results = [
+ 'results' => $users_data,
+ 'meta' => [],
+ ];
+ $results['meta']['pagination'] = array(
+ 'results' => array(
+ 'per_page' => (int) $results_per_page,
+ 'total' => (int) $total,
+ ),
+ 'pages' => array(
+ 'current' => (int) $current_page,
+ 'total' => (int) $pages_total,
+ ),
+ );
+
+ wp_send_json_success( $results );
+ }
+
+ /**
+ * AJAX Action for getting a list of User Roles.
+ *
+ * @return void
+ */
+ public function et_builder_ajax_get_user_roles() {
+ et_core_security_check( 'edit_posts', 'et_builder_ajax_get_user_roles', 'nonce', '_GET' );
+
+ $user_roles = [];
+
+ foreach ( wp_roles()->roles as $key => $value ) {
+ $user_roles[] = [
+ 'label' => et_core_intentionally_unescaped( wp_strip_all_tags( $value['name'] ), 'react_jsx' ),
+ 'value' => $key,
+ ];
+ }
+
+ /**
+ * Filters included user roles for `et_builder_ajax_get_user_roles` ajax action.
+ *
+ * @since 4.11.0
+ *
+ * @param array $user_roles
+ */
+ $user_roles = apply_filters( 'et_builder_ajax_get_user_roles_included_roles', $user_roles );
+
+ $results = [
+ 'results' => $user_roles,
+ ];
+
+ wp_send_json_success( $results );
+ }
+
+}
+
+ET_Builder_Ajax_Data::get_instance();
diff --git a/includes/builder/feature/content-retriever/ContentRetriever.php b/includes/builder/feature/content-retriever/ContentRetriever.php
new file mode 100644
index 0000000..da2b1e2
--- /dev/null
+++ b/includes/builder/feature/content-retriever/ContentRetriever.php
@@ -0,0 +1,53 @@
+_cache && isset( $this->_cache[ $wp_post->ID ] ) ) {
+ return $this->_cache[ $wp_post->ID ];
+ }
+
+ if ( $is_using_global_post ) {
+ $layouts = et_theme_builder_get_template_layouts();
+ } else {
+ $layouts = et_theme_builder_get_template_layouts( \ET_Theme_Builder_Request::from_post( $wp_post->ID ) );
+ }
+
+ $entire_page_content = '';
+ $enabled_layout_ids = [
+ ET_THEME_BUILDER_HEADER_LAYOUT_POST_TYPE => null,
+ ET_THEME_BUILDER_BODY_LAYOUT_POST_TYPE => null,
+ 'content' => 'content',
+ ET_THEME_BUILDER_FOOTER_LAYOUT_POST_TYPE => null,
+ ];
+
+ foreach ( $layouts as $key => $layout ) {
+ $is_layout_enabled = isset( $layout['enabled'], $layout['override'] ) && true === $layout['enabled'] && true === $layout['override'];
+ $enabled_layout_ids[ $key ] = ( array_key_exists( $key, $enabled_layout_ids ) && $is_layout_enabled ) ? $layout['id'] : null;
+ }
+
+ $enabled_layout_ids = array_filter( $enabled_layout_ids );
+
+ /**
+ * $enabled_layout_ids will be in the following order, (assuming each are present):
+ * header, body, footer.
+ * We're intentionally adding the post content so that it's appended
+ * right after the body layout, making the final order of $entire_page_content:
+ * header, body, post content, footer.
+ * They need to be in order for Critical CSS. Otherwise we don't know what
+ * content comes first and is above the fold.
+ */
+ foreach ( $enabled_layout_ids as $key => $layout_id ) {
+ if ( 'content' === $layout_id ) {
+ $entire_page_content .= $wp_post->post_content;
+ } else {
+ $layout = get_post( $layout_id );
+ $entire_page_content .= $layout->post_content;
+ }
+ }
+
+ $this->_cache = array_replace( $this->_cache, [ $wp_post->ID => $entire_page_content ] );
+
+ return $entire_page_content;
+ }
+
+}
diff --git a/includes/builder/feature/display-conditions/DisplayConditions.php b/includes/builder/feature/display-conditions/DisplayConditions.php
new file mode 100644
index 0000000..9bd5e3d
--- /dev/null
+++ b/includes/builder/feature/display-conditions/DisplayConditions.php
@@ -0,0 +1,367 @@
+=' ) ) {
+ add_action( 'wp', array( $this, 'et_display_conditions_post_visit_set_cookie' ) );
+ add_action( 'template_redirect', array( $this, 'et_display_conditions_number_of_views_set_cookie' ) );
+ add_action( 'save_post', array( $this, 'et_display_conditions_save_tracking_post_ids' ), 10, 3 );
+ add_action( 'delete_post', array( $this, 'et_display_conditions_delete_tracking_post_ids' ), 10, 1 );
+ }
+ }
+
+ /**
+ * Saves Post IDs selected in PageVisit/PostVisit Display Conditions into WP Options.
+ *
+ * This data will be used to only track the Posts which are selected by the user
+ * It is to keep the PageVisit/PostVisit related Cookie minimal and under 4KB limitation.
+ *
+ * @since 4.11.0
+ *
+ * @param int $post_id Post ID which is being saved.
+ * @param WP_Post $post Post object which is being saved.
+ * @param bool $update Whether this is an existing post being updated.
+ *
+ * @return void
+ */
+ public function et_display_conditions_save_tracking_post_ids( $post_id, $post, $update ) {
+
+ /**
+ * Validation and Security Checks.
+ */
+ if ( ! $post || ! $post instanceof WP_Post ) {
+ return;
+ }
+
+ if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
+ return;
+ }
+
+ if ( wp_is_post_autosave( $post ) || wp_is_post_revision( $post ) ) {
+ return;
+ }
+
+ $post_type = get_post_type_object( $post->post_type );
+ if ( ! $post_type instanceof WP_Post_Type || ! current_user_can( $post_type->cap->edit_post, $post_id ) ) {
+ return;
+ }
+
+ if ( ! isset( $_POST['et_fb_save_nonce'] ) || ! wp_verify_nonce( sanitize_text_field( $_POST['et_fb_save_nonce'] ), 'et_fb_save_nonce' ) ) {
+ return;
+ }
+
+ /**
+ * Setup Prerequisites.
+ */
+ $tracking_post_ids = [];
+ $content = get_the_content( null, false, $post );
+ $preg_match = preg_match_all( '/display_conditions="[^"]*"/mi', $content, $matches, PREG_SET_ORDER ); // Return format: `display_conditions="base_64_encoded_data"`.
+ $display_conditions_attrs = array_reduce( $matches, 'array_merge', [] ); // Flatten and Store All `display_conditions` attributes found.
+
+ /**
+ * Decode each `display_conditions` attribute, and store post IDs used in PageVisit/PostVisit conditions.
+ */
+ foreach ( $display_conditions_attrs as $display_condition_attr ) {
+ $display_condition_base64 = substr( $display_condition_attr, strpos( $display_condition_attr, '"' ), -1 );
+ $display_conditions = json_decode( base64_decode( $display_condition_base64 ), true ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- The returned data is an array and necessary validation checks are performed.
+
+ if ( ! is_array( $display_conditions ) ) {
+ continue;
+ }
+
+ foreach ( $display_conditions as $display_condition ) {
+ $condition_name = $display_condition['condition'];
+ $condition_settings = $display_condition['conditionSettings'];
+
+ if ( 'pageVisit' !== $condition_name && 'postVisit' !== $condition_name ) {
+ continue;
+ }
+
+ $pages_raw = isset( $condition_settings['pages'] ) ? $condition_settings['pages'] : [];
+ $pages_ids = array_map(
+ function( $item ) {
+ return isset( $item['value'] ) ? (int) $item['value'] : null;
+ },
+ $pages_raw
+ );
+ $pages_ids = array_filter( $pages_ids );
+ $tracking_post_ids = array_merge( $pages_ids, $tracking_post_ids );
+ }
+ }
+
+ $tracking_post_ids = array_unique( $tracking_post_ids );
+
+ if ( $tracking_post_ids ) {
+ $result = [ (int) $post_id => $tracking_post_ids ];
+ } else {
+ $result = null;
+ }
+
+ $wp_option = get_option( 'et_display_conditions_tracking_post_ids', null );
+
+ // If option exist, Either update it OR remove from it.
+ if ( is_array( $wp_option ) ) {
+ if ( $result ) {
+ $result = array_replace( $wp_option, $result );
+ } else {
+ $result = array_filter(
+ $wp_option,
+ function( $key ) use ( $post_id ) {
+ return $key !== $post_id;
+ },
+ ARRAY_FILTER_USE_KEY
+ );
+ }
+ }
+
+ if ( $wp_option === $result ) {
+ return;
+ }
+
+ update_option( 'et_display_conditions_tracking_post_ids', $result );
+ }
+
+ /**
+ * Deletes Post IDs selected in PageVisit/PostVisit Display Conditions from WP Options.
+ *
+ * This data will be used to only track the Posts which are selected by the user
+ * It is to keep the PageVisit/PostVisit related Cookie minimal and under 4KB limitation.
+ *
+ * @since 4.11.0
+ *
+ * @param int $post_id Post ID which is being deleted.
+ *
+ * @return void
+ */
+ public function et_display_conditions_delete_tracking_post_ids( $post_id ) {
+ $post = get_post( $post_id );
+ $wp_option = get_option( 'et_display_conditions_tracking_post_ids', null );
+ $is_wp_option_exist = is_array( $wp_option ) && ! empty( $wp_option );
+
+ if ( ! $is_wp_option_exist ) {
+ return;
+ }
+
+ if ( ! $post || ! $post instanceof WP_Post ) {
+ return;
+ }
+
+ // Get real Post ID if Revision ID is passed, Using `Empty Trash` button will set $post_id to revision id.
+ $revision_parent_id = wp_is_post_revision( $post_id );
+ if ( $revision_parent_id ) {
+ $post_id = $revision_parent_id;
+ }
+
+ $post_type = get_post_type_object( $post->post_type );
+ if ( ! current_user_can( $post_type->cap->delete_post, $post_id ) ) {
+ return;
+ }
+
+ $result = array_filter(
+ $wp_option,
+ function( $key ) use ( $post_id ) {
+ return (int) $key !== (int) $post_id;
+ },
+ ARRAY_FILTER_USE_KEY
+ );
+
+ if ( $wp_option === $result ) {
+ return;
+ }
+
+ update_option( 'et_display_conditions_tracking_post_ids', $result );
+ }
+
+ /**
+ * Sets a cookie based on page visits so Page/Post Visit Display Conditions would function as expected.
+ *
+ * @since 4.11.0
+ *
+ * @return void
+ */
+ public function et_display_conditions_post_visit_set_cookie() {
+ if ( ! is_singular() ) {
+ return;
+ }
+
+ $current_post_id = get_queried_object_id();
+ $new_cookie = [];
+ $has_visited_page_before = false;
+ $wp_option = get_option( 'et_display_conditions_tracking_post_ids', null );
+ $is_wp_option_exist = is_array( $wp_option ) && ! empty( $wp_option );
+ $flatten_wp_option = is_array( $wp_option ) ? array_unique( array_reduce( $wp_option, 'array_merge', [] ) ) : [];
+ $is_post_id_in_wp_option = array_search( $current_post_id, $flatten_wp_option, true ) !== false;
+
+ if ( ! $is_wp_option_exist || ! $is_post_id_in_wp_option ) {
+ return;
+ }
+
+ if ( isset( $_COOKIE['divi_post_visit'] ) ) {
+ $new_cookie = json_decode( base64_decode( $_COOKIE['divi_post_visit'] ), true ); // phpcs:ignore ET.Sniffs.ValidatedSanitizedInput, WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- Cookie is not stored or displayed therefore XSS safe, base64_decode returned data is an array and necessary validation checks are performed.
+ $has_visited_page_before = array_search( $current_post_id, array_column( $new_cookie, 'id' ), true );
+ }
+
+ if ( false === $has_visited_page_before ) {
+ $new_cookie[] = [
+ 'id' => $current_post_id,
+ ];
+ $new_cookie = base64_encode( wp_json_encode( $new_cookie ) ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode -- base64_encode data is an array.
+ setrawcookie( 'divi_post_visit', $new_cookie, time() + 3600 * 24 * 365, COOKIEPATH, COOKIE_DOMAIN, is_ssl() );
+ }
+ }
+
+ /**
+ * Sets a cookie based on how many times a module is displayed so "Number of Views" Condition would function as expected.
+ *
+ * @since 4.11.0
+ *
+ * @return void
+ */
+ public function et_display_conditions_number_of_views_set_cookie() {
+
+ // Do not run on VB itself.
+ if ( et_core_is_fb_enabled() ) {
+ return;
+ }
+
+ /**
+ * This is to ensure that network request such as '/favicon.ico' won't change the cookie
+ * since those requests do trigger these functions to run again without the proper context
+ * resulting updating cookie >=2 times on 1 page load.
+ */
+ $is_existing_wp_query = ( is_home() || is_404() || is_archive() || is_search() );
+ if ( get_queried_object_id() === 0 && ! $is_existing_wp_query ) {
+ return;
+ }
+
+ // Setup prerequisite.
+ $display_conditions_attrs = [];
+ $cookie = [];
+ $entire_page_content = \Feature\ContentRetriever\ET_Builder_Content_Retriever::init()->get_entire_page_content( get_queried_object_id() );
+
+ // Find all display conditions used in the page, flat the results, filter to only include NumberOfViews conditions.
+ if ( preg_match_all( '/(?<=display_conditions=")[^"]*/mi', $entire_page_content, $matches, PREG_SET_ORDER ) ) {
+ $display_conditions_attrs = array_reduce( $matches, 'array_merge', [] ); // Flatten and Store All `display_conditions` attributes found.
+ $cookie = $this->number_of_views_process_conditions( $display_conditions_attrs );
+ if ( false === $cookie ) {
+ return;
+ }
+ }
+
+ /**
+ * Encode cookie content and set cookie only if quired object id can be retrieved.
+ * `serrawcookie` is used to ignore automatic `urlencode` with `setcookie` since it corrupts base64 data.
+ */
+ if ( ! empty( $cookie ) ) {
+ $cookie = base64_encode( wp_json_encode( $cookie ) ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode -- base64_encode data is an array.
+ setrawcookie( 'divi_module_views', $cookie, time() + 3600 * 24 * 365, COOKIEPATH, COOKIE_DOMAIN );
+ }
+
+ }
+
+ /**
+ * Checks "NumberOFViews" conditions against respective $_COOKIE content and updates/reset the
+ * condition when necessary.
+ *
+ * @since 4.11.0
+ *
+ * @param array $display_conditions_attrs Array of conditions as base64 encoded data.
+ *
+ * @return array
+ */
+ public function number_of_views_process_conditions( $display_conditions_attrs ) {
+ $is_cookie_set = isset( $_COOKIE['divi_module_views'] ) ? true : false;
+ $current_datetime = current_datetime();
+ $cookie = $is_cookie_set ? json_decode( base64_decode( $_COOKIE['divi_module_views'] ), true ) : []; // phpcs:ignore ET.Sniffs.ValidatedSanitizedInput, WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- Cookie is not stored or displayed therefore XSS safe, The returned data is an array and necessary validation checks are performed.
+
+ // Decode NumberOfViews conditions one by one then set or update cookie.
+ foreach ( $display_conditions_attrs as $condition_base64 ) {
+ $display_conditions = json_decode( base64_decode( $condition_base64 ), true ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- The returned data is an array and necessary validation checks are performed.
+
+ if ( ! is_array( $display_conditions ) ) {
+ continue;
+ }
+
+ foreach ( $display_conditions as $display_condition ) {
+ $condition_id = $display_condition['id'];
+ $condition_name = $display_condition['condition'];
+ $condition_settings = $display_condition['conditionSettings'];
+
+ if ( 'numberOfViews' !== $condition_name ) {
+ continue;
+ }
+
+ $is_reset_on = 'on' === $condition_settings['resetAfterDuration'] ? true : false;
+ $reset_time = $condition_settings['displayAgainAfter'] . ' ' . $condition_settings['displayAgainAfterUnit'];
+ $is_condition_id_in_cookie = array_search( $condition_id, array_column( $cookie, 'id' ), true ) !== false ? true : false;
+
+ if ( $is_reset_on && $is_cookie_set && isset( $cookie[ $condition_id ] ) ) {
+ $first_visit_timestamp = $cookie[ $condition_id ]['first_visit_timestamp'];
+ $first_visit_datetime = $current_datetime->setTimestamp( $first_visit_timestamp );
+ $reset_datetime = $first_visit_datetime->modify( $reset_time );
+ if ( $current_datetime > $reset_datetime ) {
+ $cookie[ $condition_id ]['visit_count'] = 1;
+ $cookie[ $condition_id ]['first_visit_timestamp'] = $current_datetime->getTimestamp();
+ continue;
+ }
+ }
+
+ if ( $is_cookie_set && $is_condition_id_in_cookie ) {
+ $cookie[ $condition_id ]['visit_count'] += 1;
+ } else {
+ $cookie[ $condition_id ] = [
+ 'id' => $condition_id,
+ 'visit_count' => 1,
+ 'first_visit_timestamp' => $current_datetime->getTimestamp(),
+ ];
+ }
+ }
+ }
+
+ return $cookie;
+ }
+
+}
+
+ET_Builder_Display_Conditions::get_instance();
diff --git a/includes/builder/feature/dynamic-assets/assets/css/accordion.css b/includes/builder/feature/dynamic-assets/assets/css/accordion.css
new file mode 100644
index 0000000..1e2c499
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/accordion.css
@@ -0,0 +1 @@
+.et_pb_accordion.et_pb_text_align_left .et_pb_toggle_title,.et_pb_accordion.et_pb_text_align_left h5.et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left .et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}.et_pb_accordion .et_pb_toggle_title:before{right:0;left:auto}.et_pb_accordion .et_pb_toggle{margin-bottom:10px;position:relative}.et_pb_accordion .et_pb_toggle:last-child{margin-bottom:0}.et_pb_accordion .et_pb_toggle_open .et_pb_toggle_title:before{display:none}@media (max-width:980px){.et_pb_accordion.et_pb_text_align_left-tablet .et_pb_toggle_title,.et_pb_accordion.et_pb_text_align_left-tablet h5.et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left-tablet .et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left-tablet h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}@media (max-width:767px){.et_pb_accordion.et_pb_text_align_left-phone .et_pb_toggle_title,.et_pb_accordion.et_pb_text_align_left-phone h5.et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left-phone .et_pb_toggle_title,.et_pb_accordion .et_pb_toggle.et_pb_text_align_left-phone h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/accordion_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/accordion_cpt.css
new file mode 100644
index 0000000..a60940e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/accordion_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left h5.et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle_title:before{right:0;left:auto}.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle{margin-bottom:10px;position:relative}.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle_open .et_pb_toggle_title:before{display:none}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left-tablet .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left-tablet h5.et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left-tablet .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left-tablet h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left-phone .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion.et_pb_text_align_left-phone h5.et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left-phone .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_accordion .et_pb_toggle.et_pb_text_align_left-phone h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/animations.css b/includes/builder/feature/dynamic-assets/assets/css/animations.css
new file mode 100644
index 0000000..5b74457
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/animations.css
@@ -0,0 +1 @@
+.et_animated{opacity:0;animation-duration:1s;animation-fill-mode:both!important}.et_animated.infinite{animation-iteration-count:infinite}.et_had_animation{position:relative}@keyframes et_pb_fade{to{opacity:1}}.et_animated.fade{animation-name:et_pb_fade}@keyframes et_pb_fadeTop{0%{transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.et_animated.fadeTop{animation-name:et_pb_fadeTop}@keyframes et_pb_fadeRight{0%{transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.et_animated.fadeRight{animation-name:et_pb_fadeRight}@keyframes et_pb_fadeBottom{0%{transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.et_animated.fadeBottom{animation-name:et_pb_fadeBottom}@keyframes et_pb_fadeLeft{0%{transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.et_animated.fadeLeft{animation-name:et_pb_fadeLeft}.et_animated.slide{animation-name:et_pb_zoomLeft}.et_animated.slideBottom,.et_animated.slideRight,.et_animated.slideTop{animation-name:et_pb_slideLeft}@keyframes et_pb_slideLeft{to{transform:translateZ(0);opacity:1}}.et_animated.slideLeft{animation-name:et_pb_slideLeft}@keyframes et_pb_bounce{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}.et_animated.bounce{animation-name:et_pb_bounce}@keyframes et_pb_bounceTop{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(0,-200px,0)}60%{transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none;opacity:1}}.et_animated.bounceTop{animation-name:et_pb_bounceTop}@keyframes et_pb_bounceRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(200px,0,0)}60%{transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none;opacity:1}}.et_animated.bounceRight{animation-name:et_pb_bounceRight}@keyframes et_pb_bounceBottom{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(0,200px,0)}60%{transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0);opacity:1}}.et_animated.bounceBottom{animation-name:et_pb_bounceBottom}@keyframes et_pb_bounceLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(-200px,0,0)}60%{transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none;opacity:1}}.et_animated.bounceLeft{animation-name:et_pb_bounceLeft}.et_animated.zoom,.et_animated.zoomTop{animation-name:et_pb_zoomLeft}.et_animated.zoomTop{transform-origin:top}.et_animated.zoomRight{animation-name:et_pb_zoomLeft;transform-origin:right}.et_animated.zoomBottom{animation-name:et_pb_zoomLeft;transform-origin:bottom}@keyframes et_pb_zoomLeft{to{transform:scaleX(1);opacity:1}}.et_animated.zoomLeft{animation-name:et_pb_zoomLeft;transform-origin:left}.et_animated.flip,.et_animated.flipTop{animation-name:et_pb_foldBottom}.et_animated.flipRight,.et_animated.flipTop{transform-origin:center}.et_animated.flipRight{animation-name:et_pb_foldLeft}.et_animated.flipBottom{animation-name:et_pb_foldBottom;transform-origin:center}.et_animated.flipLeft,.et_animated.fold{animation-name:et_pb_foldLeft;transform-origin:center}.et_animated.foldTop{transform-origin:top;animation-name:et_pb_foldBottom}.et_animated.foldRight{transform-origin:right;animation-name:et_pb_foldLeft}@keyframes et_pb_foldBottom{to{opacity:1;transform:rotateX(0deg)}}.et_animated.foldBottom{transform-origin:bottom;animation-name:et_pb_foldBottom}@keyframes et_pb_foldLeft{to{opacity:1;transform:rotateY(0deg)}}.et_animated.foldLeft{transform-origin:left;animation-name:et_pb_foldLeft}@keyframes et_pb_roll{0%{transform-origin:center}to{transform-origin:center;transform:none;opacity:1}}.et_animated.roll{animation-name:et_pb_roll}@keyframes et_pb_rollTop{0%{transform-origin:top}to{transform-origin:top;transform:none;opacity:1}}.et_animated.rollTop{animation-name:et_pb_rollTop}@keyframes et_pb_rollRight{0%{transform-origin:right}to{transform-origin:right;transform:none;opacity:1}}.et_animated.rollRight{animation-name:et_pb_rollRight}@keyframes et_pb_rollBottom{0%{transform-origin:bottom}to{transform-origin:bottom;transform:none;opacity:1}}.et_animated.rollBottom{animation-name:et_pb_rollBottom}@keyframes et_pb_rollLeft{0%{transform-origin:left}to{transform-origin:left;transform:none;opacity:1}}.et_animated.rollLeft{animation-name:et_pb_rollLeft}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/animations_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/animations_cpt.css
new file mode 100644
index 0000000..4491afc
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/animations_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_animated{opacity:0;animation-duration:1s;animation-fill-mode:both!important}.et-db #et-boc .et-l .et_animated.infinite{animation-iteration-count:infinite}.et-db #et-boc .et-l .et_had_animation{position:relative}@keyframes et_pb_fade{to{opacity:1}}.et-db #et-boc .et-l .et_animated.fade{animation-name:et_pb_fade}@keyframes et_pb_fadeTop{0%{transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.et-db #et-boc .et-l .et_animated.fadeTop{animation-name:et_pb_fadeTop}@keyframes et_pb_fadeRight{0%{transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.et-db #et-boc .et-l .et_animated.fadeRight{animation-name:et_pb_fadeRight}@keyframes et_pb_fadeBottom{0%{transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.et-db #et-boc .et-l .et_animated.fadeBottom{animation-name:et_pb_fadeBottom}@keyframes et_pb_fadeLeft{0%{transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.et-db #et-boc .et-l .et_animated.fadeLeft{animation-name:et_pb_fadeLeft}.et-db #et-boc .et-l .et_animated.slide{animation-name:et_pb_zoomLeft}.et-db #et-boc .et-l .et_animated.slideBottom,.et-db #et-boc .et-l .et_animated.slideRight,.et-db #et-boc .et-l .et_animated.slideTop{animation-name:et_pb_slideLeft}@keyframes et_pb_slideLeft{to{transform:translateZ(0);opacity:1}}.et-db #et-boc .et-l .et_animated.slideLeft{animation-name:et_pb_slideLeft}@keyframes et_pb_bounce{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}.et-db #et-boc .et-l .et_animated.bounce{animation-name:et_pb_bounce}@keyframes et_pb_bounceTop{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(0,-200px,0)}60%{transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.bounceTop{animation-name:et_pb_bounceTop}@keyframes et_pb_bounceRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(200px,0,0)}60%{transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.bounceRight{animation-name:et_pb_bounceRight}@keyframes et_pb_bounceBottom{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(0,200px,0)}60%{transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0);opacity:1}}.et-db #et-boc .et-l .et_animated.bounceBottom{animation-name:et_pb_bounceBottom}@keyframes et_pb_bounceLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{transform:translate3d(-200px,0,0)}60%{transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.bounceLeft{animation-name:et_pb_bounceLeft}.et-db #et-boc .et-l .et_animated.zoom{animation-name:et_pb_zoomLeft}.et-db #et-boc .et-l .et_animated.zoomTop{animation-name:et_pb_zoomLeft;transform-origin:top}.et-db #et-boc .et-l .et_animated.zoomRight{animation-name:et_pb_zoomLeft;transform-origin:right}.et-db #et-boc .et-l .et_animated.zoomBottom{animation-name:et_pb_zoomLeft;transform-origin:bottom}@keyframes et_pb_zoomLeft{to{transform:scaleX(1);opacity:1}}.et-db #et-boc .et-l .et_animated.zoomLeft{animation-name:et_pb_zoomLeft;transform-origin:left}.et-db #et-boc .et-l .et_animated.flip{animation-name:et_pb_foldBottom}.et-db #et-boc .et-l .et_animated.flipTop{animation-name:et_pb_foldBottom;transform-origin:center}.et-db #et-boc .et-l .et_animated.flipRight{animation-name:et_pb_foldLeft;transform-origin:center}.et-db #et-boc .et-l .et_animated.flipBottom{animation-name:et_pb_foldBottom;transform-origin:center}.et-db #et-boc .et-l .et_animated.flipLeft,.et-db #et-boc .et-l .et_animated.fold{animation-name:et_pb_foldLeft;transform-origin:center}.et-db #et-boc .et-l .et_animated.foldTop{transform-origin:top;animation-name:et_pb_foldBottom}.et-db #et-boc .et-l .et_animated.foldRight{transform-origin:right;animation-name:et_pb_foldLeft}@keyframes et_pb_foldBottom{to{opacity:1;transform:rotateX(0deg)}}.et-db #et-boc .et-l .et_animated.foldBottom{transform-origin:bottom;animation-name:et_pb_foldBottom}@keyframes et_pb_foldLeft{to{opacity:1;transform:rotateY(0deg)}}.et-db #et-boc .et-l .et_animated.foldLeft{transform-origin:left;animation-name:et_pb_foldLeft}@keyframes et_pb_roll{0%{transform-origin:center}to{transform-origin:center;transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.roll{animation-name:et_pb_roll}@keyframes et_pb_rollTop{0%{transform-origin:top}to{transform-origin:top;transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.rollTop{animation-name:et_pb_rollTop}@keyframes et_pb_rollRight{0%{transform-origin:right}to{transform-origin:right;transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.rollRight{animation-name:et_pb_rollRight}@keyframes et_pb_rollBottom{0%{transform-origin:bottom}to{transform-origin:bottom;transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.rollBottom{animation-name:et_pb_rollBottom}@keyframes et_pb_rollLeft{0%{transform-origin:left}to{transform-origin:left;transform:none;opacity:1}}.et-db #et-boc .et-l .et_animated.rollLeft{animation-name:et_pb_rollLeft}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio.css b/includes/builder/feature/dynamic-assets/assets/css/audio.css
new file mode 100644
index 0000000..1467f27
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio.css
@@ -0,0 +1 @@
+.et_pb_audio_module{position:relative}.et_pb_audio_cover_art{position:absolute;top:0;left:0;height:100%;width:220px;background-size:cover;background-repeat:no-repeat;background-position:50%;transition:inherit}.et_pb_with_border .et_pb_audio_cover_art{border:0 solid #333}.et_pb_column_1_2 .et_pb_audio_cover_art,.et_pb_column_1_3 .et_pb_audio_cover_art,.et_pb_column_1_4 .et_pb_audio_cover_art,.et_pb_column_1_5 .et_pb_audio_cover_art,.et_pb_column_1_6 .et_pb_audio_cover_art,.et_pb_column_2_5 .et_pb_audio_cover_art,.et_pb_column_3_5 .et_pb_audio_cover_art,.et_pb_column_3_8 .et_pb_audio_cover_art{float:none;width:100%;position:relative}.et_pb_column_1_2 .et_pb_audio_cover_art,.et_pb_column_3_5 .et_pb_audio_cover_art{height:380px}.et_pb_column_3_8 .et_pb_audio_cover_art{height:275px}.et_pb_column_1_3 .et_pb_audio_cover_art,.et_pb_column_2_5 .et_pb_audio_cover_art{height:240px}.et_pb_column_1_4 .et_pb_audio_cover_art,.et_pb_column_1_5 .et_pb_audio_cover_art,.et_pb_column_1_6 .et_pb_audio_cover_art{height:170px}.et_audio_module_meta{margin-bottom:17px;color:#fff}.et_pb_audio_module_content{text-align:center;word-wrap:break-word;position:relative;padding:50px 60px;margin-left:220px}.et_pb_audio_module_content h2{color:#fff!important}.et_pb_text_color_dark .et_pb_audio_module_content h2{color:#666!important}.et_pb_text_color_dark.et_pb_audio_module_content h2{color:#bbb!important}.et_pb_audio_module_content h2{margin-top:0}.et_pb_column_2_3 .et_pb_audio_module_content{padding:40px 40px 45px}.et_pb_column_1_2 .et_pb_audio_module_content,.et_pb_column_3_5 .et_pb_audio_module_content{padding:40px 40px 35px}.et_pb_column_1_3 .et_pb_audio_module_content,.et_pb_column_1_4 .et_pb_audio_module_content,.et_pb_column_3_8 .et_pb_audio_module_content{padding:30px}.et_pb_audio_no_image .et_pb_audio_module_content,.et_pb_column_1_2 .et_pb_audio_module_content,.et_pb_column_1_3 .et_pb_audio_module_content,.et_pb_column_1_4 .et_pb_audio_module_content,.et_pb_column_1_5 .et_pb_audio_module_content,.et_pb_column_1_6 .et_pb_audio_module_content,.et_pb_column_2_5 .et_pb_audio_module_content,.et_pb_column_3_5 .et_pb_audio_module_content,.et_pb_column_3_8 .et_pb_audio_module_content{margin-left:0}@media (min-width:981px){.et_pb_column_4_4 .et_pb_audio_cover_art.has-box-shadow-overlay{position:absolute}}@media (min-width:981px) and (max-width:1100px){.et_pb_column_1_2 .et_pb_audio_cover_art,.et_pb_column_3_5 .et_pb_audio_cover_art{height:340px}.et_pb_column_3_8 .et_pb_audio_cover_art{height:242px}.et_pb_column_1_3 .et_pb_audio_cover_art,.et_pb_column_2_5 .et_pb_audio_cover_art{height:210px}.et_pb_column_1_4 .et_pb_audio_cover_art,.et_pb_column_1_5 .et_pb_audio_cover_art,.et_pb_column_1_6 .et_pb_audio_cover_art{height:145px}}@media (max-width:980px){.et_pb_text_color_dark_tablet.et_pb_audio_module_content h2{color:#bbb!important}}@media (min-width:768px) and (max-width:980px){.et_audio_content h2{font-size:26px!important;line-height:44px!important;margin-bottom:24px!important}.et_pb_blog_grid .et_audio_content h2{font-size:20px!important;line-height:26px!important}.et_pb_audio_cover_art{float:none!important;width:100%!important;position:relative;height:400px!important}.et_pb_audio_module_content{margin-left:0!important;padding:55px 60px!important}.et_pb_audio_module_content h2{font-size:36px}.et_pb_column_1_4 .et_audio_module_meta,.et_pb_column_1_5 .et_audio_module_meta,.et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}}@media (max-width:767px){.et_pb_audio_module_content{margin-left:0!important;padding:30px!important}.et_pb_audio_module_content h2{font-size:26px}.et_pb_column_1_4 .et_audio_module_meta,.et_pb_column_1_5 .et_audio_module_meta,.et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}.et_pb_text_color_dark_phone.et_pb_audio_module_content h2{color:#bbb!important}.et_pb_audio_cover_art{float:none!important;width:100%!important;position:relative;height:300px!important}}@media (max-width:479px){.et_pb_audio_module_content h2{font-size:20px}.et_pb_column_1_4 .et_audio_module_meta,.et_pb_column_1_5 .et_audio_module_meta,.et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}.et_pb_audio_cover_art{float:none!important;width:100%!important;height:210px!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/audio_cpt.css
new file mode 100644
index 0000000..63a92b8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_audio_module{position:relative}.et-db #et-boc .et-l .et_pb_audio_cover_art{position:absolute;top:0;left:0;height:100%;width:220px;background-size:cover;background-repeat:no-repeat;background-position:50%;transition:inherit}.et-db #et-boc .et-l .et_pb_with_border .et_pb_audio_cover_art{border:0 solid #333}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_audio_cover_art{float:none;width:100%;position:relative}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_audio_cover_art{height:380px}.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_audio_cover_art{height:275px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_audio_cover_art{height:240px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_audio_cover_art{height:170px}.et-db #et-boc .et-l .et_audio_module_meta{margin-bottom:17px;color:#fff}.et-db #et-boc .et-l .et_pb_audio_module_content{text-align:center;word-wrap:break-word;position:relative;padding:50px 60px;margin-left:220px}.et-db #et-boc .et-l .et_pb_audio_module_content h2{color:#fff!important}.et-db #et-boc .et-l .et_pb_text_color_dark .et_pb_audio_module_content h2{color:#666!important}.et-db #et-boc .et-l .et_pb_text_color_dark.et_pb_audio_module_content h2{color:#bbb!important}.et-db #et-boc .et-l .et_pb_audio_module_content h2{margin-top:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_audio_module_content{padding:40px 40px 45px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_audio_module_content{padding:40px 40px 35px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_audio_module_content{padding:30px}.et-db #et-boc .et-l .et_pb_audio_no_image .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_audio_module_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_audio_module_content{margin-left:0}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_audio_cover_art.has-box-shadow-overlay{position:absolute}}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_audio_cover_art{height:340px}.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_audio_cover_art{height:242px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_audio_cover_art{height:210px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_audio_cover_art,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_audio_cover_art{height:145px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_pb_audio_module_content h2{color:#bbb!important}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_audio_content h2{font-size:26px!important;line-height:44px!important;margin-bottom:24px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content h2{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_pb_audio_cover_art{float:none!important;width:100%!important;position:relative;height:400px!important}.et-db #et-boc .et-l .et_pb_audio_module_content{margin-left:0!important;padding:55px 60px!important}.et-db #et-boc .et-l .et_pb_audio_module_content h2{font-size:36px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_audio_module_content{margin-left:0!important;padding:30px!important}.et-db #et-boc .et-l .et_pb_audio_module_content h2{font-size:26px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_pb_audio_module_content h2{color:#bbb!important}.et-db #et-boc .et-l .et_pb_audio_cover_art{float:none!important;width:100%!important;position:relative;height:300px!important}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_audio_module_content h2{font-size:20px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_module_meta,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_module_meta{font-size:14px!important}.et-db #et-boc .et-l .et_pb_audio_cover_art{float:none!important;width:100%!important;height:210px!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio_player-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/audio_player-rtl.css
new file mode 100644
index 0000000..3f45c9a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio_player-rtl.css
@@ -0,0 +1 @@
+body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total,body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{left:0;right:auto}body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{margin-left:0}body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-time{margin-left:90px;margin-right:10px}body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-android .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-ios .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-ipad .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-iphone .mejs-time{margin-left:0}body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-button.mejs-volume-button{right:auto;left:59px}body.rtl.et-db:not(.et-fb-no-rtl) .et_audio_container .mejs-controls div.mejs-time-rail{margin-right:42px;margin-left:5px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio_player.css b/includes/builder/feature/dynamic-assets/assets/css/audio_player.css
new file mode 100644
index 0000000..53919d4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio_player.css
@@ -0,0 +1 @@
+.et_pb_blog_grid .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px}.et_audio_container .mejs-container{width:auto!important;min-width:unset!important;height:auto!important}.et_audio_container .mejs-container,.et_audio_container .mejs-container .mejs-controls,.et_audio_container .mejs-embed,.et_audio_container .mejs-embed body{background:none;height:auto}.et_audio_container .mejs-controls .mejs-time-rail .mejs-time-loaded,.et_audio_container .mejs-time.mejs-currenttime-container{display:none!important}.et_audio_container .mejs-time{display:block!important;padding:0;margin-left:10px;margin-right:90px;line-height:inherit}.et_audio_container .mejs-android .mejs-time,.et_audio_container .mejs-ios .mejs-time,.et_audio_container .mejs-ipad .mejs-time,.et_audio_container .mejs-iphone .mejs-time{margin-right:0}.et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5);border-radius:5px;height:4px;margin:8px 0 0;top:0;right:0;left:auto}.et_audio_container .mejs-controls>div{height:20px!important}.et_audio_container .mejs-controls div.mejs-time-rail{padding-top:0;position:relative;display:block!important;margin-left:42px;margin-right:0}.et_audio_container span.mejs-time-total.mejs-time-slider{display:block!important;position:relative!important;max-width:100%;min-width:unset!important}.et_audio_container .mejs-button.mejs-volume-button{width:auto;height:auto;margin-left:auto;position:absolute;right:59px;bottom:-2px}.et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff;height:4px;border-radius:5px}.et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_audio_container .mejs-controls .mejs-time-rail .mejs-time-handle{display:block;border:none;width:10px}.et_audio_container .mejs-time-rail .mejs-time-handle-content{border-radius:100%;transform:scale(1)}.et_audio_container .mejs-time-rail .mejs-time-hovered{height:4px}.et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle{background:#fff;border-radius:5px;height:10px;position:absolute;top:-3px}.et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{display:block!important;height:19px;margin-left:5px;position:absolute;right:0;bottom:0}.et_audio_container .mejs-controls div.mejs-horizontal-volume-slider{height:4px}.et_audio_container .mejs-playpause-button button,.et_audio_container .mejs-volume-button button{background:none!important;margin:0!important;width:auto!important;height:auto!important;position:relative!important;z-index:99}.et_audio_container .mejs-playpause-button button:before{content:"E"!important;font-size:32px;left:0;top:-8px}.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before{color:#fff}.et_audio_container .mejs-playpause-button{margin-top:-7px!important;width:auto!important;height:auto!important;position:absolute}.et_audio_container .mejs-controls .mejs-button button:focus{outline:none}.et_audio_container .mejs-playpause-button.mejs-pause button:before{content:"`"!important}.et_audio_container .mejs-volume-button button:before{content:"\E068";font-size:18px}.et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et_pb_text_color_dark .et_audio_container .mejs-playpause-button button:before,.et_pb_text_color_dark .et_audio_container .mejs-volume-button button:before{color:#666}.et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_pb_text_color_dark .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et_pb_text_color_dark .mejs-container .mejs-controls .mejs-time span{color:#999}.et_pb_column_1_3 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_4 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_6 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_2_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_3_8 .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px}.et_audio_container .mejs-container .mejs-controls{padding:0;-ms-flex-wrap:wrap;flex-wrap:wrap;min-width:unset!important;position:relative}@media (max-width:980px){.et_pb_column_1_3 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_4 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_1_6 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_2_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et_pb_column_3_8 .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5)}.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff}.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-playpause-button button:before,.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-volume-button button:before{color:#fff}.et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_pb_bg_layout_dark_tablet .mejs-controls .mejs-time-rail .mejs-time-handle{background:#fff}.et_pb_bg_layout_dark_tablet .mejs-container .mejs-controls .mejs-time span{color:#fff}.et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et_pb_text_color_dark_tablet .et_audio_container .mejs-playpause-button button:before,.et_pb_text_color_dark_tablet .et_audio_container .mejs-volume-button button:before{color:#666}.et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_pb_text_color_dark_tablet .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et_pb_text_color_dark_tablet .mejs-container .mejs-controls .mejs-time span{color:#999}}@media (max-width:767px){.et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px!important}.et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5)}.et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff}.et_pb_bg_layout_dark_phone .et_audio_container .mejs-playpause-button button:before,.et_pb_bg_layout_dark_phone .et_audio_container .mejs-volume-button button:before{color:#fff}.et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_pb_bg_layout_dark_phone .mejs-controls .mejs-time-rail .mejs-time-handle{background:#fff}.et_pb_bg_layout_dark_phone .mejs-container .mejs-controls .mejs-time span{color:#fff}.et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et_pb_text_color_dark_phone .et_audio_container .mejs-playpause-button button:before,.et_pb_text_color_dark_phone .et_audio_container .mejs-volume-button button:before{color:#666}.et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et_pb_text_color_dark_phone .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et_pb_text_color_dark_phone .mejs-container .mejs-controls .mejs-time span{color:#999}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt-rtl.css
new file mode 100644
index 0000000..76cf925
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt-rtl.css
@@ -0,0 +1 @@
+body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total,body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{left:0;right:auto}body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{margin-left:0}body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-time{margin-left:90px;margin-right:10px}body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-android .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-ios .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-ipad .mejs-time,body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-iphone .mejs-time{margin-left:0}body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-button.mejs-volume-button{right:auto;left:59px}body.rtl.et-db:not(.et-fb-no-rtl).et-db #et-boc .et-l .et_audio_container .mejs-controls div.mejs-time-rail{margin-right:42px;margin-left:5px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt.css
new file mode 100644
index 0000000..09dd92c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/audio_player_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px}.et-db #et-boc .et-l .et_audio_container .mejs-container{width:auto!important;min-width:unset!important;height:auto!important}.et-db #et-boc .et-l .et_audio_container .mejs-container,.et-db #et-boc .et-l .et_audio_container .mejs-container .mejs-controls,.et-db #et-boc .et-l .et_audio_container .mejs-embed,.et-db #et-boc .et-l .et_audio_container .mejs-embed body{background:none;height:auto}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-loaded,.et-db #et-boc .et-l .et_audio_container .mejs-time.mejs-currenttime-container{display:none!important}.et-db #et-boc .et-l .et_audio_container .mejs-time{display:block!important;padding:0;margin-left:10px;margin-right:90px;line-height:inherit}.et-db #et-boc .et-l .et_audio_container .mejs-android .mejs-time,.et-db #et-boc .et-l .et_audio_container .mejs-ios .mejs-time,.et-db #et-boc .et-l .et_audio_container .mejs-ipad .mejs-time,.et-db #et-boc .et-l .et_audio_container .mejs-iphone .mejs-time{margin-right:0}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5);border-radius:5px;height:4px;margin:8px 0 0;top:0;right:0;left:auto}.et-db #et-boc .et-l .et_audio_container .mejs-controls>div{height:20px!important}.et-db #et-boc .et-l .et_audio_container .mejs-controls div.mejs-time-rail{padding-top:0;position:relative;display:block!important;margin-left:42px;margin-right:0}.et-db #et-boc .et-l .et_audio_container span.mejs-time-total.mejs-time-slider{display:block!important;position:relative!important;max-width:100%;min-width:unset!important}.et-db #et-boc .et-l .et_audio_container .mejs-button.mejs-volume-button{width:auto;height:auto;margin-left:auto;position:absolute;right:59px;bottom:-2px}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff;height:4px;border-radius:5px}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-handle{display:block;border:none;width:10px}.et-db #et-boc .et-l .et_audio_container .mejs-time-rail .mejs-time-handle-content{border-radius:100%;transform:scale(1)}.et-db #et-boc .et-l .et_audio_container .mejs-time-rail .mejs-time-hovered{height:4px}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle{background:#fff;border-radius:5px;height:10px;position:absolute;top:-3px}.et-db #et-boc .et-l .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et-db #et-boc .et-l .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider{display:block!important;height:19px;margin-left:5px;position:absolute;right:0;bottom:0}.et-db #et-boc .et-l .et_audio_container .mejs-controls div.mejs-horizontal-volume-slider{height:4px}.et-db #et-boc .et-l .et_audio_container .mejs-playpause-button button,.et-db #et-boc .et-l .et_audio_container .mejs-volume-button button{background:none!important;margin:0!important;width:auto!important;height:auto!important;position:relative!important;z-index:99}.et-db #et-boc .et-l .et_audio_container .mejs-playpause-button button:before{content:"E"!important;font-size:32px;left:0;top:-8px}.et-db #et-boc .et-l .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_audio_container .mejs-volume-button button:before{color:#fff}.et-db #et-boc .et-l .et_audio_container .mejs-playpause-button{margin-top:-7px!important;width:auto!important;height:auto!important;position:absolute}.et-db #et-boc .et-l .et_audio_container .mejs-controls .mejs-button button:focus{outline:none}.et-db #et-boc .et-l .et_audio_container .mejs-playpause-button.mejs-pause button:before{content:"`"!important}.et-db #et-boc .et-l .et_audio_container .mejs-volume-button button:before{content:"\E068";font-size:18px}.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-volume-button button:before{color:#666}.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_pb_text_color_dark .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et-db #et-boc .et-l .et_pb_text_color_dark .mejs-container .mejs-controls .mejs-time span{color:#999}.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px}.et-db #et-boc .et-l .et_audio_container .mejs-container .mejs-controls{padding:0;-ms-flex-wrap:wrap;flex-wrap:wrap;min-width:unset!important;position:relative}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_container .mejs-container .mejs-controls .mejs-time span,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-volume-button button:before{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .mejs-controls .mejs-time-rail .mejs-time-handle{background:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .mejs-container .mejs-controls .mejs-time span{color:#fff}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-volume-button button:before{color:#666}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .mejs-container .mejs-controls .mejs-time span{color:#999}}@media (max-width:767px){.et-db #et-boc .et-l .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:14px!important}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,100%,.5)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-volume-button button:before{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .mejs-controls .mejs-time-rail .mejs-time-handle{background:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .mejs-container .mejs-controls .mejs-time span{color:#fff}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total{background:hsla(0,0%,60%,.5)}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-current{background:#999}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-playpause-button button:before,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-volume-button button:before{color:#666}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_container .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .mejs-controls .mejs-time-rail .mejs-time-handle{background:#666}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .mejs-container .mejs-controls .mejs-time span{color:#999}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blog-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/blog-rtl.css
new file mode 100644
index 0000000..dfb2e8f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blog-rtl.css
@@ -0,0 +1 @@
+.rtl .et_pb_blog_grid .column{float:right}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blog.css b/includes/builder/feature/dynamic-assets/assets/css/blog.css
new file mode 100644
index 0000000..bb0e2a9
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blog.css
@@ -0,0 +1 @@
+.et_pb_blog_grid{position:relative}.et_pb_blog_grid.et_pb_text_align_left{text-align:left}.et_pb_blog_grid.et_pb_text_align_center{text-align:center}.et_pb_blog_grid.et_pb_text_align_right{text-align:right}.et_pb_blog_grid.et_pb_text_align_justified{text-align:justify}.et_pb_blog_grid .column{float:left;max-width:100%}.et_pb_blog_grid .et_pb_post{border:1px solid #d8d8d8;padding:19px;background-color:#fff;word-wrap:break-word}.et_pb_blog_grid .et_pb_image_container{position:relative}.et_pb_blog_grid .et_audio_content,.et_pb_blog_grid .et_main_video_container,.et_pb_blog_grid .et_pb_post .et_pb_slider{margin:-20px -20px 29px}.et_pb_blog_grid .et_pb_image_container img{min-width:100%;max-width:100%;height:auto}.et_pb_blog_grid .et_pb_no_thumb .entry-title,.et_pb_blog_grid .et_pb_no_thumb h2{margin-top:0}.et_pb_blog_grid .et_audio_content{margin-bottom:0}.et_pb_blog_grid h2{font-size:18px}.et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{display:none;opacity:0;line-height:0}.et_pb_blog_grid .et_pb_salvattore_content[data-columns] .et_pb_post{opacity:0}.et_pb_blog_grid .et_pb_salvattore_content[data-columns] .column .et_pb_post{opacity:1}.et_pb_blog_grid .et_main_video_overlay:hover:before{background:rgba(0,0,0,.6)}.et_pb_blog_grid .et_audio_content h2{margin-bottom:9px;margin-top:0}.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content{padding:35px 30px 32px}.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_audio_content,.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content{padding:35px 20px}.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_audio_content h2,.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content h2,.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content blockquote p{font-size:18px;line-height:26px}.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content a.et_link_main_url,.et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px}.et_pb_blog_grid .et_link_content,.et_pb_blog_grid .et_quote_content{margin:-20px -20px 19px}.et_pb_posts.et_pb_module article .et_pb_row{width:100%}.et_pb_posts.et_pb_module article .et_pb_with_background .et_pb_row{width:80%}@media (min-width:981px){.et_pb_column_4_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"3 .column.size-1of3"}.et_pb_column_2_3 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_3_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"2 .column.size-1of2"}.et_pb_column_1_2 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_1_3 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_1_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_1_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_1_6 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_2_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_3_4 .et_pb_column_3_8 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et_pb_column_3_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"1 .column.size-1of1"}}@media (min-width:981px) and (max-width:1100px){.et_pb_blog_grid .et_quote_content{padding:35px 25px 32px}.et_pb_blog_grid .et_pb_post .et_pb_slide{min-height:155px}}@media (max-width:980px){.et_pb_blog_grid .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et_pb_blog_grid.et_pb_text_align_left-tablet{text-align:left}.et_pb_blog_grid.et_pb_text_align_center-tablet{text-align:center}.et_pb_blog_grid.et_pb_text_align_right-tablet{text-align:right}.et_pb_blog_grid.et_pb_text_align_justified-tablet{text-align:justify}.et_pb_column .et_pb_blog_grid .column.size-1of2{margin:0 5.5% 7.5% 0;width:47.25%;clear:none;float:left}.et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(2n){margin-right:0}.et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(odd){clear:both}.et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.21%}.et_pb_column .et_pb_blog_grid .column.size-1of1,.et_pb_column .et_pb_blog_grid .column.size-1of2{margin-bottom:0}.et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child{margin-bottom:30px}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2{margin:0 0 11.5%;width:100%}}@media (min-width:768px) and (max-width:980px){.et_pb_blog_grid .et_quote_content{padding:35px 30px!important}.et_pb_blog_grid .et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px!important}.et_pb_blog_grid .et_link_content h2{font-size:20px!important;line-height:26px!important}.et_pb_blog_grid .et_link_content a.et_link_main_url{font-size:14px!important}.et_pb_blog_grid>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_post .et_pb_slide{min-height:182px!important}.et_pb_blog_grid .et_audio_content h2{font-size:20px!important;line-height:26px!important}.et_pb_column .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"2 .column.size-1of2"}}@media (max-width:767px){.et_pb_blog_grid.et_pb_text_align_left-phone{text-align:left}.et_pb_blog_grid.et_pb_text_align_center-phone{text-align:center}.et_pb_blog_grid.et_pb_text_align_right-phone{text-align:right}.et_pb_blog_grid.et_pb_text_align_justified-phone{text-align:justify}.et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-right:0;margin-bottom:9.5%;width:100%}.et_pb_blog_grid .column{float:none}.et_pb_column .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"1 .column.size-1of1"}.et_pb_blog_grid .et_quote_content{padding:35px 30px!important}.et_pb_blog_grid .et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px!important}.et_pb_blog_grid .et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:222px!important}}@media (max-width:479px){.et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-right:0;margin-bottom:11.5%;width:100%}.et_pb_blog_grid h2{font-size:16px;padding-bottom:0}.et_pb_blog_grid .et_audio_content,.et_pb_blog_grid .et_main_video_container,.et_pb_blog_grid .et_pb_post .et_pb_slider,.et_pb_blog_grid .et_pb_post.format-link>*,.et_pb_blog_grid .et_pb_post.format-quote>*,.et_pb_blog_grid .et_pb_post>.et_pb_image_container,.et_pb_blog_grid .et_pb_post>.post-meta,.et_pb_blog_grid .et_pb_post>h2{display:block}.et_pb_blog_grid .et_pb_post .post-meta{display:block!important;padding:0}.et_pb_blog_grid .et_link_content,.et_pb_blog_grid .et_quote_content{padding:35px 20px!important}.et_pb_blog_grid>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_post .et_pb_slide{min-height:156px!important}}.et_ie9 .et_pb_blog_grid .et_pb_salvattore_content[data-columns] .et_pb_post{opacity:1}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blog_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/blog_cpt-rtl.css
new file mode 100644
index 0000000..72c32f2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blog_cpt-rtl.css
@@ -0,0 +1 @@
+.rtl.et-db #et-boc .et-l .et_pb_blog_grid .column{float:right}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blog_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/blog_cpt.css
new file mode 100644
index 0000000..a29516a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blog_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_blog_grid{position:relative}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_left{text-align:left}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_center{text-align:center}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_right{text-align:right}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_justified{text-align:justify}.et-db #et-boc .et-l .et_pb_blog_grid .column{float:left;max-width:100%}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post{border:1px solid #d8d8d8;padding:19px;background-color:#fff;word-wrap:break-word}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_image_container{position:relative}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content,.et-db #et-boc .et-l .et_pb_blog_grid .et_main_video_container,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post .et_pb_slider{margin:-20px -20px 29px}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_image_container img{min-width:100%;max-width:100%;height:auto}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_no_thumb .entry-title,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_no_thumb h2{margin-top:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content{margin-bottom:0}.et-db #et-boc .et-l .et_pb_blog_grid h2{font-size:18px}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{display:none;opacity:0;line-height:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_salvattore_content[data-columns] .et_pb_post{opacity:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_salvattore_content[data-columns] .column .et_pb_post{opacity:1}.et-db #et-boc .et-l .et_pb_blog_grid .et_main_video_overlay:hover:before{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content h2{margin-bottom:9px;margin-top:0}.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content{padding:35px 30px 32px}.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_audio_content,.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content{padding:35px 20px}.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_audio_content h2,.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content h2,.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content blockquote p{font-size:18px;line-height:26px}.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_blog_grid_wrapper .et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px}.et-db #et-boc .et-l .et_pb_blog_grid .et_link_content,.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content{margin:-20px -20px 19px}.et-db #et-boc .et-l .et_pb_posts.et_pb_module article .et_pb_row{width:100%}.et-db #et-boc .et-l .et_pb_posts.et_pb_module article .et_pb_with_background .et_pb_row{width:80%}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"3 .column.size-1of3"}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"2 .column.size-1of2"}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_3_8 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"1 .column.size-1of1"}}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content{padding:35px 25px 32px}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post .et_pb_slide{min-height:155px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_container .mejs-container .mejs-controls .mejs-time span{font-size:18px}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_left-tablet{text-align:left}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_center-tablet{text-align:center}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_right-tablet{text-align:right}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_justified-tablet{text-align:justify}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2{margin:0 5.5% 7.5% 0;width:47.25%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.21%}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2{margin:0 0 11.5%;width:100%}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content{padding:35px 30px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_link_content h2{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_link_content a.et_link_main_url{font-size:14px!important}.et-db #et-boc .et-l .et_pb_blog_grid>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_post .et_pb_slide{min-height:182px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content h2{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"2 .column.size-1of2"}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_left-phone{text-align:left}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_center-phone{text-align:center}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_right-phone{text-align:right}.et-db #et-boc .et-l .et_pb_blog_grid.et_pb_text_align_justified-phone{text-align:justify}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-right:0;margin-bottom:9.5%;width:100%}.et-db #et-boc .et-l .et_pb_blog_grid .column{float:none}.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .et_pb_salvattore_content[data-columns]:before{content:"1 .column.size-1of1"}.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content{padding:35px 30px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content blockquote cite{font-size:14px!important}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:222px!important}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-right:0;margin-bottom:11.5%;width:100%}.et-db #et-boc .et-l .et_pb_blog_grid h2{font-size:16px;padding-bottom:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content,.et-db #et-boc .et-l .et_pb_blog_grid .et_main_video_container,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post .et_pb_slider,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post.format-link>*,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post.format-quote>*,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post>.et_pb_image_container,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post>.post-meta,.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post>h2{display:block}.et-db #et-boc .et-l .et_pb_blog_grid .et_pb_post .post-meta{display:block!important;padding:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_link_content,.et-db #et-boc .et-l .et_pb_blog_grid .et_quote_content{padding:35px 20px!important}.et-db #et-boc .et-l .et_pb_blog_grid>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_post .et_pb_slide{min-height:156px!important}}.et_ie9 .et_pb_blog_grid .et_pb_salvattore_content[data-columns] .et_pb_post{opacity:1}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blurb.css b/includes/builder/feature/dynamic-assets/assets/css/blurb.css
new file mode 100644
index 0000000..7319575
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blurb.css
@@ -0,0 +1 @@
+.et_pb_with_border .et-pb-icon,.et_pb_with_border .et_pb_image_wrap{border:0 solid #333}.et_pb_blurb_content{max-width:550px;margin:0 auto;position:relative;text-align:center;word-wrap:break-word;width:100%}.et_pb_blurb.et_pb_text_align_left .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et_pb_blurb.et_pb_text_align_right .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et_pb_blurb.et_pb_text_align_justified .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et_pb_blurb.et_pb_text_align_center .et_pb_blurb_content .et_pb_blurb_container{text-align:center}.et_pb_blurb_content p:last-of-type{padding-bottom:0}.et_pb_blurb .et_pb_module_header a,.et_pb_blurb h4 a{text-decoration:none}.et_pb_blurb .et_pb_image_wrap{display:block;margin:auto}.et_pb_main_blurb_image img{border-radius:inherit}.et_pb_main_blurb_image img[src*=".svg"]{width:auto}.et_pb_sticky_module .et_pb_main_blurb_image .et_pb_image_wrap{width:100%;max-width:100%}.et_pb_blurb_position_left .et_pb_blurb_content,.et_pb_blurb_position_right .et_pb_blurb_content{display:table}.et_pb_blurb_position_left .et_pb_main_blurb_image,.et_pb_blurb_position_right .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et_pb_blurb_position_left .et_pb_main_blurb_image img,.et_pb_blurb_position_right .et_pb_main_blurb_image img{width:inherit}.et_pb_blurb_position_left .et-pb-icon,.et_pb_blurb_position_right .et-pb-icon{font-size:32px;display:table-cell}.et_pb_blurb_position_left .et_pb_blurb_container,.et_pb_blurb_position_right .et_pb_blurb_container{display:table-cell;vertical-align:top}.et_pb_blurb_position_left .et_pb_blurb_container{padding-left:15px}.et_pb_blurb_position_left .et_pb_blurb_content{text-align:left}.et_pb_blurb_position_right .et_pb_blurb_container{padding-right:15px}.et_pb_blurb_position_right .et_pb_blurb_content{text-align:right}.et_pb_blurb_position_right .et_pb_main_blurb_image{left:auto;right:0}.et_pb_blurb_position_right .et-pb-icon{margin-right:0;margin-left:20px}.et_pb_main_blurb_image{display:inline-block;margin-bottom:30px;line-height:0;max-width:100%}@media (max-width:980px){.et_pb_blurb_position_left_tablet .et_pb_main_blurb_image,.et_pb_blurb_position_right_tablet .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et_pb_blurb_position_left_tablet .et_pb_main_blurb_image img,.et_pb_blurb_position_right_tablet .et_pb_main_blurb_image img{width:inherit}.et_pb_blurb_position_left_tablet .et-pb-icon,.et_pb_blurb_position_right_tablet .et-pb-icon{font-size:32px;display:table-cell}.et_pb_blurb_position_left_tablet .et_pb_blurb_container,.et_pb_blurb_position_right_tablet .et_pb_blurb_container{display:table-cell;vertical-align:top}.et_pb_blurb_position_left_tablet .et_pb_blurb_container{padding-left:15px}.et_pb_blurb_position_left_tablet .et_pb_blurb_content{text-align:left}.et_pb_blurb_position_right_tablet .et_pb_blurb_container{padding-right:15px}.et_pb_blurb_position_right_tablet .et_pb_blurb_content{padding-right:52px;text-align:right}.et_pb_blurb_position_right_tablet .et_pb_main_blurb_image{left:auto;right:0}.et_pb_blurb_position_right_tablet .et-pb-icon{margin-right:0;margin-left:20px}.et_pb_blurb_position_top_tablet .et_pb_main_blurb_image{display:block;width:auto}.et_pb_blurb_position_top_tablet .et-pb-icon{font-size:96px;display:initial}.et_pb_blurb_position_top_tablet .et_pb_blurb_container{display:block;padding-left:0;padding-right:0}.et_pb_blurb_position_top_tablet .et_pb_blurb_content{display:inline-block;text-align:center;padding-right:0}}@media (max-width:767px){.et_pb_blurb_position_left_phone .et_pb_main_blurb_image,.et_pb_blurb_position_right_phone .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et_pb_blurb_position_left_phone .et_pb_main_blurb_image img,.et_pb_blurb_position_right_phone .et_pb_main_blurb_image img{width:inherit}.et_pb_blurb_position_left_phone .et-pb-icon,.et_pb_blurb_position_right_phone .et-pb-icon{font-size:32px;display:table-cell}.et_pb_blurb_position_left_phone .et_pb_blurb_container,.et_pb_blurb_position_right_phone .et_pb_blurb_container{display:table-cell;vertical-align:top}.et_pb_blurb_position_left_phone .et_pb_blurb_container{padding-left:15px}.et_pb_blurb_position_left_phone .et_pb_blurb_content{text-align:left}.et_pb_blurb_position_right_phone .et_pb_blurb_container{padding-right:15px}.et_pb_blurb_position_right_phone .et_pb_blurb_content{padding-right:52px;text-align:right}.et_pb_blurb_position_right_phone .et_pb_main_blurb_image{left:auto;right:0}.et_pb_blurb_position_right_phone .et-pb-icon{margin-right:0;margin-left:20px}.et_pb_blurb_position_top_phone .et_pb_main_blurb_image{display:block;width:auto}.et_pb_blurb_position_top_phone .et-pb-icon{font-size:96px;display:initial}.et_pb_blurb_position_top_phone .et_pb_blurb_container{display:block;padding-left:0;padding-right:0}.et_pb_blurb_position_top_phone .et_pb_blurb_content{display:inline-block;text-align:center;padding-right:0}}@media (max-width:980px){.et_pb_blurb.et_pb_text_align_left-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et_pb_blurb.et_pb_text_align_right-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et_pb_blurb.et_pb_text_align_justified-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et_pb_blurb.et_pb_text_align_center-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:center}}@media (max-width:767px){.et_pb_blurb.et_pb_text_align_left-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et_pb_blurb.et_pb_text_align_right-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et_pb_blurb.et_pb_text_align_justified-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et_pb_blurb.et_pb_text_align_center-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:center}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/blurb_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/blurb_cpt.css
new file mode 100644
index 0000000..963492d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/blurb_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border .et-pb-icon,.et-db #et-boc .et-l .et_pb_with_border .et_pb_image_wrap{border:0 solid #333}.et-db #et-boc .et-l .et_pb_blurb_content{max-width:550px;margin:0 auto;position:relative;text-align:center;word-wrap:break-word;width:100%}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_left .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_right .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_justified .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_center .et_pb_blurb_content .et_pb_blurb_container{text-align:center}.et-db #et-boc .et-l .et_pb_blurb_content p:last-of-type{padding-bottom:0}.et-db #et-boc .et-l .et_pb_blurb .et_pb_module_header a,.et-db #et-boc .et-l .et_pb_blurb h4 a{text-decoration:none}.et-db #et-boc .et-l .et_pb_blurb .et_pb_image_wrap{display:block;margin:auto}.et-db #et-boc .et-l .et_pb_main_blurb_image img{border-radius:inherit}.et-db #et-boc .et-l .et_pb_main_blurb_image img[src*=".svg"]{width:auto}.et-db #et-boc .et-l .et_pb_sticky_module .et_pb_main_blurb_image .et_pb_image_wrap{width:100%;max-width:100%}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_blurb_content,.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_blurb_content{display:table}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_main_blurb_image,.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_main_blurb_image img,.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_main_blurb_image img{width:inherit}.et-db #et-boc .et-l .et_pb_blurb_position_left .et-pb-icon,.et-db #et-boc .et-l .et_pb_blurb_position_right .et-pb-icon{font-size:32px;display:table-cell}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_blurb_container,.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_blurb_container{display:table-cell;vertical-align:top}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_blurb_container{padding-left:15px}.et-db #et-boc .et-l .et_pb_blurb_position_left .et_pb_blurb_content{text-align:left}.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_blurb_container{padding-right:15px}.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_blurb_content{text-align:right}.et-db #et-boc .et-l .et_pb_blurb_position_right .et_pb_main_blurb_image{left:auto;right:0}.et-db #et-boc .et-l .et_pb_blurb_position_right .et-pb-icon{margin-right:0;margin-left:20px}.et-db #et-boc .et-l .et_pb_main_blurb_image{display:inline-block;margin-bottom:30px;line-height:0;max-width:100%}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et_pb_main_blurb_image,.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et_pb_main_blurb_image img,.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_main_blurb_image img{width:inherit}.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et-pb-icon,.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et-pb-icon{font-size:32px;display:table-cell}.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et_pb_blurb_container,.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_blurb_container{display:table-cell;vertical-align:top}.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et_pb_blurb_container{padding-left:15px}.et-db #et-boc .et-l .et_pb_blurb_position_left_tablet .et_pb_blurb_content{text-align:left}.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_blurb_container{padding-right:15px}.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_blurb_content{padding-right:52px;text-align:right}.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et_pb_main_blurb_image{left:auto;right:0}.et-db #et-boc .et-l .et_pb_blurb_position_right_tablet .et-pb-icon{margin-right:0;margin-left:20px}.et-db #et-boc .et-l .et_pb_blurb_position_top_tablet .et_pb_main_blurb_image{display:block;width:auto}.et-db #et-boc .et-l .et_pb_blurb_position_top_tablet .et-pb-icon{font-size:96px;display:initial}.et-db #et-boc .et-l .et_pb_blurb_position_top_tablet .et_pb_blurb_container{display:block;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_blurb_position_top_tablet .et_pb_blurb_content{display:inline-block;text-align:center;padding-right:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et_pb_main_blurb_image,.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_main_blurb_image{width:32px;display:table-cell;line-height:0}.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et_pb_main_blurb_image img,.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_main_blurb_image img{width:inherit}.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et-pb-icon,.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et-pb-icon{font-size:32px;display:table-cell}.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et_pb_blurb_container,.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_blurb_container{display:table-cell;vertical-align:top}.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et_pb_blurb_container{padding-left:15px}.et-db #et-boc .et-l .et_pb_blurb_position_left_phone .et_pb_blurb_content{text-align:left}.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_blurb_container{padding-right:15px}.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_blurb_content{padding-right:52px;text-align:right}.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et_pb_main_blurb_image{left:auto;right:0}.et-db #et-boc .et-l .et_pb_blurb_position_right_phone .et-pb-icon{margin-right:0;margin-left:20px}.et-db #et-boc .et-l .et_pb_blurb_position_top_phone .et_pb_main_blurb_image{display:block;width:auto}.et-db #et-boc .et-l .et_pb_blurb_position_top_phone .et-pb-icon{font-size:96px;display:initial}.et-db #et-boc .et-l .et_pb_blurb_position_top_phone .et_pb_blurb_container{display:block;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_blurb_position_top_phone .et_pb_blurb_content{display:inline-block;text-align:center;padding-right:0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_left-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_right-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_justified-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_center-tablet .et_pb_blurb_content .et_pb_blurb_container{text-align:center}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_left-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:left}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_right-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:right}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_justified-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:justify}.et-db #et-boc .et-l .et_pb_blurb.et_pb_text_align_center-phone .et_pb_blurb_content .et_pb_blurb_container{text-align:center}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/button.css b/includes/builder/feature/dynamic-assets/assets/css/button.css
new file mode 100644
index 0000000..88791fe
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/button.css
@@ -0,0 +1 @@
+.et_pb_bg_layout_light.et_pb_module.et_pb_button{color:#2ea3f2}.et_pb_module.et_pb_button{display:inline-block;color:inherit}.et_pb_button_module_wrapper.et_pb_button_alignment_left{text-align:left}.et_pb_button_module_wrapper.et_pb_button_alignment_right{text-align:right}.et_pb_button_module_wrapper.et_pb_button_alignment_center{text-align:center}.et_pb_button_module_wrapper>a{display:inline-block}@media (max-width:980px){.et_pb_button_module_wrapper.et_pb_button_alignment_tablet_left{text-align:left}.et_pb_button_module_wrapper.et_pb_button_alignment_tablet_right{text-align:right}.et_pb_button_module_wrapper.et_pb_button_alignment_tablet_center{text-align:center}}@media (max-width:767px){.et_pb_button_module_wrapper.et_pb_button_alignment_phone_left{text-align:left}.et_pb_button_module_wrapper.et_pb_button_alignment_phone_right{text-align:right}.et_pb_button_module_wrapper.et_pb_button_alignment_phone_center{text-align:center}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/button_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/button_cpt.css
new file mode 100644
index 0000000..905af79
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/button_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_bg_layout_light.et_pb_module.et_pb_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_module.et_pb_button{display:inline-block;color:inherit}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_left{text-align:left}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_right{text-align:right}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_center{text-align:center}.et-db #et-boc .et-l .et_pb_button_module_wrapper>a{display:inline-block}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_tablet_left{text-align:left}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_tablet_right{text-align:right}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_tablet_center{text-align:center}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_phone_left{text-align:left}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_phone_right{text-align:right}.et-db #et-boc .et-l .et_pb_button_module_wrapper.et_pb_button_alignment_phone_center{text-align:center}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/buttons.css b/includes/builder/feature/dynamic-assets/assets/css/buttons.css
new file mode 100644
index 0000000..6909f9b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/buttons.css
@@ -0,0 +1 @@
+.et_pb_button[data-icon]:not([data-icon=""]):after{content:attr(data-icon)}@media (max-width:980px){.et_pb_button[data-icon-tablet]:not([data-icon-tablet=""]):after{content:attr(data-icon-tablet)}}@media (max-width:767px){.et_pb_button[data-icon-phone]:not([data-icon-phone=""]):after{content:attr(data-icon-phone)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/buttons_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/buttons_cpt.css
new file mode 100644
index 0000000..5c3dfa4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/buttons_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_button[data-icon]:not([data-icon=""]):after{content:attr(data-icon)}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_button[data-icon-tablet]:not([data-icon-tablet=""]):after{content:attr(data-icon-tablet)}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_button[data-icon-phone]:not([data-icon-phone=""]):after{content:attr(data-icon-phone)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/circle_counter.css b/includes/builder/feature/dynamic-assets/assets/css/circle_counter.css
new file mode 100644
index 0000000..4869741
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/circle_counter.css
@@ -0,0 +1 @@
+.et_pb_circle_counter{word-wrap:break-word;margin:0 auto 30px;position:relative;text-align:center;max-width:225px}.et_pb_circle_counter_inner{position:relative;display:block}.et_pb_circle_counter canvas{position:absolute;top:0;left:0;width:100%!important;height:auto!important}.et_pb_circle_counter .percent{word-wrap:normal;position:relative;z-index:2}.et_pb_circle_counter .percent p{visibility:hidden;font-size:40px;font-weight:500;position:relative;line-height:.1em;padding:49% 0}.et_pb_circle_counter h3{font-size:18px;position:relative}.et_pb_circle_counter .et_pb_module_header{position:relative}.et_pb_circle_counter.et_pb_with_title .percent{margin-bottom:20px}.et_pb_slide_content .et_pb_circle_counter .percent p:last-of-type{font-size:40px;font-weight:500;position:relative;line-height:.1em;padding:49% 0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/circle_counter_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/circle_counter_cpt.css
new file mode 100644
index 0000000..93f77c8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/circle_counter_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_circle_counter{word-wrap:break-word;margin:0 auto 30px;position:relative;text-align:center;max-width:225px}.et-db #et-boc .et-l .et_pb_circle_counter_inner{position:relative;display:block}.et-db #et-boc .et-l .et_pb_circle_counter canvas{position:absolute;top:0;left:0;width:100%!important;height:auto!important}.et-db #et-boc .et-l .et_pb_circle_counter .percent{word-wrap:normal;position:relative;z-index:2}.et-db #et-boc .et-l .et_pb_circle_counter .percent p{visibility:hidden;font-size:40px;font-weight:500;position:relative;line-height:.1em;padding:49% 0}.et-db #et-boc .et-l .et_pb_circle_counter h3{font-size:18px;position:relative}.et-db #et-boc .et-l .et_pb_circle_counter .et_pb_module_header{position:relative}.et-db #et-boc .et-l .et_pb_circle_counter.et_pb_with_title .percent{margin-bottom:20px}.et-db #et-boc .et-l .et_pb_slide_content .et_pb_circle_counter .percent p:last-of-type{font-size:40px;font-weight:500;position:relative;line-height:.1em;padding:49% 0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/code.css b/includes/builder/feature/dynamic-assets/assets/css/code.css
new file mode 100644
index 0000000..22e4c94
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/code.css
@@ -0,0 +1 @@
+.et_pb_code_inner{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/code_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/code_cpt.css
new file mode 100644
index 0000000..d8c8556
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/code_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_code_inner{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/comments.css b/includes/builder/feature/dynamic-assets/assets/css/comments.css
new file mode 100644
index 0000000..49f5f4f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/comments.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_comments_module .commentlist li img.avatar,.et_pb_with_border.et_pb_comments_module input,.et_pb_with_border.et_pb_comments_module textarea{border:0 solid #333}.et_pb_comments_module #comment-wrap{padding-top:0;position:relative}.et_pb_comments_module.et_pb_no_avatar .comment_avatar{display:none}.et_pb_comments_module.et_pb_no_avatar .comment-body{padding-left:0!important;min-height:0!important}.et_pb_comments_module.et_pb_no_avatar.et_pb_no_reply_button .comment-body{margin-bottom:15px!important}.et_pb_comments_module.et_pb_no_reply_button span.reply-container{display:none}.et_pb_comments_module.et_pb_no_reply_button .comment-body{padding-right:0!important}.et_pb_comments_module.et_pb_no_comments_count #comments{display:none}.et_pb_bg_layout_dark .comment_postinfo a,.et_pb_bg_layout_dark .comment_postinfo span{color:#fff}@media (min-width:480px){.et_pb_column_1_4 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_5 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_6 .et_pb_comments_module .comment_avatar img{max-width:50%}.et_pb_column_1_4 .et_pb_comments_module .comment-body,.et_pb_column_1_5 .et_pb_comments_module .comment-body,.et_pb_column_1_6 .et_pb_comments_module .comment-body{padding:0 0 0 50px}.et_pb_column_1_4 .et_pb_comments_module .comment .children,.et_pb_column_1_5 .et_pb_comments_module .comment .children,.et_pb_column_1_6 .et_pb_comments_module .comment .children{margin-left:0}.et_pb_column_1_4 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_5 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_6 .et_pb_comments_module .comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}}@media (min-width:981px){.et_pb_column_1_2 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_3 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_4 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_5 .et_pb_comments_module .comment_avatar img,.et_pb_column_1_6 .et_pb_comments_module .comment_avatar img,.et_pb_column_2_5 .et_pb_comments_module .comment_avatar img,.et_pb_column_3_5 .et_pb_comments_module .comment_avatar img{max-width:50%}.et_pb_column_1_2 .et_pb_comments_module .comment-body,.et_pb_column_1_3 .et_pb_comments_module .comment-body,.et_pb_column_1_4 .et_pb_comments_module .comment-body,.et_pb_column_1_5 .et_pb_comments_module .comment-body,.et_pb_column_1_6 .et_pb_comments_module .comment-body,.et_pb_column_2_5 .et_pb_comments_module .comment-body,.et_pb_column_3_5 .et_pb_comments_module .comment-body{padding:0 0 0 50px}.et_pb_column_1_2 .et_pb_comments_module .comment .children,.et_pb_column_1_3 .et_pb_comments_module .comment .children,.et_pb_column_1_4 .et_pb_comments_module .comment .children,.et_pb_column_1_5 .et_pb_comments_module .comment .children,.et_pb_column_1_6 .et_pb_comments_module .comment .children,.et_pb_column_2_5 .et_pb_comments_module .comment .children,.et_pb_column_3_5 .et_pb_comments_module .comment .children{margin-left:25px}.et_pb_column_1_2 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_3 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_4 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_5 .et_pb_comments_module .comment-reply-link,.et_pb_column_1_6 .et_pb_comments_module .comment-reply-link,.et_pb_column_2_5 .et_pb_comments_module .comment-reply-link,.et_pb_column_3_5 .et_pb_comments_module .comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}.et_pb_column_1_2 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_1_3 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_1_4 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_1_5 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_1_6 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_2_5 .et_pb_comments_module #commentform [class*=comment-form-] input,.et_pb_column_3_5 .et_pb_comments_module #commentform [class*=comment-form-] input{box-sizing:border-box;width:100%}}.single-project #comment-wrap{padding-top:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/comments_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/comments_cpt.css
new file mode 100644
index 0000000..6900028
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/comments_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_comments_module .commentlist li img.avatar,.et-db #et-boc .et-l .et_pb_with_border.et_pb_comments_module input,.et-db #et-boc .et-l .et_pb_with_border.et_pb_comments_module textarea{border:0 solid #333}.et-db #et-boc .et-l .et_pb_comments_module #comment-wrap{padding-top:0;position:relative}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_avatar .comment_avatar{display:none}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_avatar .comment-body{padding-left:0!important;min-height:0!important}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_avatar.et_pb_no_reply_button .comment-body{margin-bottom:15px!important}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_reply_button span.reply-container{display:none}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_reply_button .comment-body{padding-right:0!important}.et-db #et-boc .et-l .et_pb_comments_module.et_pb_no_comments_count #comments{display:none}.et-db #et-boc .et-l .et_pb_bg_layout_dark .comment_postinfo a,.et-db #et-boc .et-l .et_pb_bg_layout_dark .comment_postinfo span{color:#fff}@media (min-width:480px){.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment_avatar img{max-width:50%}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment-body{padding:0 0 0 50px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment .children{margin-left:0}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_comments_module .comment_avatar img,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_comments_module .comment_avatar img{max-width:50%}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_comments_module .comment-body,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_comments_module .comment-body{padding:0 0 0 50px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_comments_module .comment .children,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_comments_module .comment .children{margin-left:25px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_comments_module .comment-reply-link,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_comments_module .comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_comments_module #commentform [class*=comment-form-] input,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_comments_module #commentform [class*=comment-form-] input{box-sizing:border-box;width:100%}}.single-project #comment-wrap{padding-top:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/comments_shared.css b/includes/builder/feature/dynamic-assets/assets/css/comments_shared.css
new file mode 100644
index 0000000..d6f1c21
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/comments_shared.css
@@ -0,0 +1 @@
+#comment-wrap{padding-top:75px}.comment-body{position:relative;padding:0 110px 0 100px;margin-bottom:48px;min-height:87px}.comment_avatar{left:0;position:absolute;top:7px}.comment_avatar img{display:block;height:auto;max-width:100%;width:auto}.comment_postinfo{margin-bottom:8px}span.fn,span.fn a{color:#000;font-weight:700;text-decoration:none;font-size:16px;display:inline-block}span.comment_date{color:#000;font-size:14px;font-weight:300}.comment_area .comment-reply-link{position:absolute;top:7px;right:0;display:block}.comment-reply-link:hover,.form-submit:hover{text-decoration:none}.comment .children{margin-left:100px;padding-left:0!important}#comment-wrap li.comment.depth-5 article{padding-right:0}.comment #respond{margin:-30px 0 0}#respond{padding-top:17px}#commentform{padding-bottom:50px}#commentform input[type=email],#commentform input[type=text],#commentform input[type=url]{width:47%}#commentform textarea{width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}#commentform input[type=email],#commentform input[type=text],#commentform input[type=url],#commentform textarea{padding:12px;color:#999;line-height:1em;background-color:#eee;font-size:18px;border-width:0}.form-submit{text-align:right}.form-submit .et_pb_button{display:inline-block;cursor:pointer;color:#2ea3f2}#reply-title small{display:block;font-size:14px;font-weight:400}@media (max-width:767px){#comment-wrap li.comment article{padding-right:0}.comment-body{padding:0 0 0 100px}.comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}#commentform input[type=email],#commentform input[type=text],#commentform input[type=url]{width:100%;box-sizing:border-box;margin-left:0}.comment .children{margin-left:50px}}@media (max-width:479px){.comment_avatar img{max-width:50%}.comment-body{padding:0 0 0 50px}.comment .children{margin-left:25px}a.comment-reply-link.et_pb_button{font-size:15px}a.comment-reply-link.et_pb_button:after{font-size:25px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/comments_shared_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/comments_shared_cpt.css
new file mode 100644
index 0000000..475f223
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/comments_shared_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l #comment-wrap{padding-top:75px}.et-db #et-boc .et-l .comment-body{position:relative;padding:0 110px 0 100px;margin-bottom:48px;min-height:87px}.et-db #et-boc .et-l .comment_avatar{left:0;position:absolute;top:7px}.et-db #et-boc .et-l .comment_avatar img{display:block;height:auto;max-width:100%;width:auto}.et-db #et-boc .et-l .comment_postinfo{margin-bottom:8px}.et-db #et-boc .et-l span.fn,.et-db #et-boc .et-l span.fn a{color:#000;font-weight:700;text-decoration:none;font-size:16px;display:inline-block}.et-db #et-boc .et-l span.comment_date{color:#000;font-size:14px;font-weight:300}.et-db #et-boc .et-l .comment_area .comment-reply-link{position:absolute;top:7px;right:0;display:block}.et-db #et-boc .et-l .comment-reply-link:hover,.et-db #et-boc .et-l .form-submit:hover{text-decoration:none}.et-db #et-boc .et-l .comment .children{margin-left:100px;padding-left:0!important}.et-db #et-boc .et-l #comment-wrap li.comment.depth-5 article{padding-right:0}.et-db #et-boc .et-l .comment #respond{margin:-30px 0 0}.et-db #et-boc .et-l #respond{padding-top:17px}.et-db #et-boc .et-l #commentform{padding-bottom:50px}.et-db #et-boc .et-l #commentform input[type=email],.et-db #et-boc .et-l #commentform input[type=text],.et-db #et-boc .et-l #commentform input[type=url]{width:47%}.et-db #et-boc .et-l #commentform textarea{width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.et-db #et-boc .et-l #commentform input[type=email],.et-db #et-boc .et-l #commentform input[type=text],.et-db #et-boc .et-l #commentform input[type=url],.et-db #et-boc .et-l #commentform textarea{padding:12px;color:#999;line-height:1em;background-color:#eee;font-size:18px;border-width:0}.et-db #et-boc .et-l .form-submit{text-align:right}.et-db #et-boc .et-l .form-submit .et_pb_button{display:inline-block;cursor:pointer;color:#2ea3f2}.et-db #et-boc .et-l #reply-title small{display:block;font-size:14px;font-weight:400}@media (max-width:767px){.et-db #et-boc .et-l #comment-wrap li.comment article{padding-right:0}.et-db #et-boc .et-l .comment-body{padding:0 0 0 100px}.et-db #et-boc .et-l .comment-reply-link{position:relative!important;float:right;bottom:-10px;top:auto!important}.et-db #et-boc .et-l #commentform input[type=email],.et-db #et-boc .et-l #commentform input[type=text],.et-db #et-boc .et-l #commentform input[type=url]{width:100%;box-sizing:border-box;margin-left:0}.et-db #et-boc .et-l .comment .children{margin-left:50px}}@media (max-width:479px){.et-db #et-boc .et-l .comment_avatar img{max-width:50%}.et-db #et-boc .et-l .comment-body{padding:0 0 0 50px}.et-db #et-boc .et-l .comment .children{margin-left:25px}.et-db #et-boc .et-l a.comment-reply-link.et_pb_button{font-size:15px}.et-db #et-boc .et-l a.comment-reply-link.et_pb_button:after{font-size:25px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/contact_form-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/contact_form-rtl.css
new file mode 100644
index 0000000..1ea3563
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/contact_form-rtl.css
@@ -0,0 +1 @@
+.rtl .et_pb_contact_select,.rtl .et_pb_contact p input[type=checkbox]+label i,.rtl .et_pb_contact p input[type=radio]+label i{padding:16px 16px 16px 20px}.rtl .et_pb_contact_field[data-type=select]:after{right:auto;left:42px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/contact_form.css b/includes/builder/feature/dynamic-assets/assets/css/contact_form.css
new file mode 100644
index 0000000..516d465
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/contact_form.css
@@ -0,0 +1 @@
+.et_pb_with_border .et_pb_contact_form .input[type=checkbox]+label i,.et_pb_with_border .et_pb_contact_form .input[type=radio]+label i,.et_pb_with_border .et_pb_contact_form input,.et_pb_with_border .et_pb_contact_form select,.et_pb_with_border .et_pb_contact_form textarea{border:0 solid #333}.et_pb_contact_main_title{word-wrap:break-word}.et_pb_contact_submit{color:#2ea3f2}.et_pb_contact_form{margin-left:-3%}.et_pb_contact_reset:hover,.et_pb_contact_submit:hover{background-color:rgba(0,0,0,.05)}.et_pb_contact_reset:hover{padding:.3em 1em}.et_pb_contact_form [data-conditional-logic]{display:none}.et_pb_contact .et_pb_contact_form p.et_contact_error .et_pb_contact_field_radio_title,.et_pb_contact .et_pb_contact_form p.et_contact_error .et_pb_contact_field_radio label,.et_pb_contact .et_pb_contact_form p.et_contact_error input[type=checkbox]+label{color:red!important}.et_pb_contact_form p[data-id=et_number]{position:absolute!important;transform:scale(.01)!important}.et_pb_contact_form p[data-id=et_number] input{background:transparent!important;border:none!important}.et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_title{float:none}.et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et_pb_contact_main_title{font-weight:500;padding-bottom:16px;position:relative}h1.et_pb_contact_main_title{font-size:26px}.et-pb-contact-message{position:relative}.et_pb_column_1_3 .et_pb_contact_main_title,.et_pb_column_1_4 .et_pb_contact_main_title,.et_pb_column_1_5 .et_pb_contact_main_title,.et_pb_column_1_6 .et_pb_contact_main_title,.et_pb_column_2_5 .et_pb_contact_main_title{font-size:22px}.et_pb_contact_right{display:inline-block;min-width:105px;margin:0;text-align:right}.et_pb_contact_right .et_pb_contact_captcha_question{vertical-align:middle}.et_pb_contact{position:relative}.et_pb_contact .et_pb_contact_field_half{width:50%;float:left}.et_pb_contact p input,.et_pb_contact p textarea{-webkit-appearance:none;background-color:#eee;width:100%;border-width:0;border-radius:0;color:#999;font-size:14px;padding:16px}.et_pb_contact p textarea{font-family:inherit}.et_pb_contact p input:-moz-placeholder,.et_pb_contact p input::-moz-placeholder,.et_pb_contact p textarea:-moz-placeholder,.et_pb_contact p textarea::-moz-placeholder{opacity:1}.et_pb_contact_right p input{max-width:50px;padding:16px}.et_pb_contact p input[type=checkbox],.et_pb_contact p input[type=radio]{margin:0;width:auto;max-width:none;padding:0;display:none}.et_pb_contact p input[type=checkbox]+label,.et_pb_contact p input[type=radio]+label{display:inline-block;vertical-align:middle;position:relative;cursor:pointer;line-height:1.7em;min-height:1.7em}.et_pb_contact p input[type=checkbox]+label i,.et_pb_contact p input[type=radio]+label i{content:"";width:18px;height:18px;background-color:#eee;font-style:normal;display:inline-block;vertical-align:middle;position:relative;margin-right:6px}.et_pb_contact p input[type=radio]+label i{border-radius:50%}.et_pb_contact p input[type=checkbox]:checked+label i:before,.et_pb_contact p input[type=radio]:checked+label i:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.et_pb_contact p input[type=checkbox]:checked+label i:before{content:"N";font-family:ETmodules;color:#2ea3f2;width:17px;height:17px;font-size:13px;font-weight:600;line-height:17px;text-align:center}.et_pb_contact p input[type=radio]:checked+label i:before{background:#2ea3f2;border-radius:50%;width:6px;height:6px}.et_pb_contact p input[type=checkbox]~input[type=text]{display:none!important}.et_pb_contact_reset,.et_pb_contact_submit{font-family:inherit;display:inline-block;margin:0 0 0 18px;cursor:pointer}.et_pb_contact p .et_contact_error{border:1px solid red!important}.et_contact_bottom_container{float:right;text-align:right;margin-top:-1.5%;display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex}@media (min-width:981px) and (max-width:1100px){.et_pb_column_1_4 .et_pb_contact_right,.et_pb_column_1_5 .et_pb_contact_right,.et_pb_column_1_6 .et_pb_contact_right{margin-right:5px}}@media (max-width:980px){.et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_title{float:none}.et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et_pb_contact .et_pb_contact_field_half_tablet{width:50%;float:left}.et_pb_contact .et_pb_contact_field_last_tablet{width:100%}}@media (max-width:767px){.et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_title,.et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_list,.et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_title{float:none}.et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper,.et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et_pb_column .et_pb_contact p.et_pb_contact_field_half{width:100%;margin-right:0}.et_pb_contact .et_pb_contact_field_half_phone{width:50%;float:left}.et_pb_contact .et_pb_contact_field_last_phone{width:100%}}.iphone .et_pb_contact_form input,.iphone .et_pb_contact_form select,.iphone .et_pb_contact_form textarea{-webkit-appearance:initial}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt-rtl.css
new file mode 100644
index 0000000..5b168fb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt-rtl.css
@@ -0,0 +1 @@
+.rtl .et-db #et-boc .et-l .et_pb_contact_select,.rtl .et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]+label i,.rtl .et-db #et-boc .et-l .et_pb_contact p input[type=radio]+label i{padding:16px 16px 16px 20px}.rtl .et-db #et-boc .et-l .et_pb_contact_field[data-type=select]:after{right:auto;left:42px}.rtl.et-db #et-boc .et-l .et_pb_contact_select,.rtl.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]+label i,.rtl.et-db #et-boc .et-l .et_pb_contact p input[type=radio]+label i{padding:16px 16px 16px 20px}.rtl.et-db #et-boc .et-l .et_pb_contact_field[data-type=select]:after{right:auto;left:42px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt.css
new file mode 100644
index 0000000..80ea74a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/contact_form_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border .et_pb_contact_form .input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_with_border .et_pb_contact_form .input[type=radio]+label i,.et-db #et-boc .et-l .et_pb_with_border .et_pb_contact_form input,.et-db #et-boc .et-l .et_pb_with_border .et_pb_contact_form select,.et-db #et-boc .et-l .et_pb_with_border .et_pb_contact_form textarea{border:0 solid #333}.et-db #et-boc .et-l .et_pb_contact_main_title{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_contact_submit{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_contact_form{margin-left:-3%}.et-db #et-boc .et-l .et_pb_contact_reset:hover,.et-db #et-boc .et-l .et_pb_contact_submit:hover{background-color:rgba(0,0,0,.05)}.et-db #et-boc .et-l .et_pb_contact_reset:hover{padding:.3em 1em}.et-db #et-boc .et-l .et_pb_contact_form [data-conditional-logic]{display:none}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_form p.et_contact_error .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_form p.et_contact_error .et_pb_contact_field_radio label,.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_form p.et_contact_error input[type=checkbox]+label{color:red!important}.et-db #et-boc .et-l .et_pb_contact_form p[data-id=et_number]{position:absolute!important;transform:scale(.01)!important}.et-db #et-boc .et-l .et_pb_contact_form p[data-id=et_number] input{background:transparent!important;border:none!important}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_contact_main_title{font-weight:500;padding-bottom:16px;position:relative}.et-db #et-boc .et-l h1.et_pb_contact_main_title{font-size:26px}.et-db #et-boc .et-l .et-pb-contact-message{position:relative}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_contact_main_title,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_contact_main_title,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_contact_main_title,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_contact_main_title,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_contact_main_title{font-size:22px}.et-db #et-boc .et-l .et_pb_contact_right{display:inline-block;min-width:105px;margin:0;text-align:right}.et-db #et-boc .et-l .et_pb_contact_right .et_pb_contact_captcha_question{vertical-align:middle}.et-db #et-boc .et-l .et_pb_contact{position:relative}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_field_half{width:50%;float:left}.et-db #et-boc .et-l .et_pb_contact p input,.et-db #et-boc .et-l .et_pb_contact p textarea{-webkit-appearance:none;background-color:#eee;width:100%;border-width:0;border-radius:0;color:#999;font-size:14px;padding:16px}.et-db #et-boc .et-l .et_pb_contact p textarea{font-family:inherit}.et-db #et-boc .et-l .et_pb_contact p input:-moz-placeholder,.et-db #et-boc .et-l .et_pb_contact p input::-moz-placeholder,.et-db #et-boc .et-l .et_pb_contact p textarea:-moz-placeholder,.et-db #et-boc .et-l .et_pb_contact p textarea::-moz-placeholder{opacity:1}.et-db #et-boc .et-l .et_pb_contact_right p input{max-width:50px;padding:16px}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox],.et-db #et-boc .et-l .et_pb_contact p input[type=radio]{margin:0;width:auto;max-width:none;padding:0;display:none}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]+label,.et-db #et-boc .et-l .et_pb_contact p input[type=radio]+label{display:inline-block;vertical-align:middle;position:relative;cursor:pointer;line-height:1.7em;min-height:1.7em}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_contact p input[type=radio]+label i{content:"";width:18px;height:18px;background-color:#eee;font-style:normal;display:inline-block;vertical-align:middle;position:relative;margin-right:6px}.et-db #et-boc .et-l .et_pb_contact p input[type=radio]+label i{border-radius:50%}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]:checked+label i:before,.et-db #et-boc .et-l .et_pb_contact p input[type=radio]:checked+label i:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]:checked+label i:before{content:"N";font-family:ETmodules;color:#2ea3f2;width:17px;height:17px;font-size:13px;font-weight:600;line-height:17px;text-align:center}.et-db #et-boc .et-l .et_pb_contact p input[type=radio]:checked+label i:before{background:#2ea3f2;border-radius:50%;width:6px;height:6px}.et-db #et-boc .et-l .et_pb_contact p input[type=checkbox]~input[type=text]{display:none!important}.et-db #et-boc .et-l .et_pb_contact_reset,.et-db #et-boc .et-l .et_pb_contact_submit{font-family:inherit;display:inline-block;margin:0 0 0 18px;cursor:pointer}.et-db #et-boc .et-l .et_pb_contact p .et_contact_error{border:1px solid red!important}.et-db #et-boc .et-l .et_contact_bottom_container{float:right;text-align:right;margin-top:-1.5%;display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_contact_right,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_contact_right,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_contact_right{margin-right:5px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_field_half_tablet{width:50%;float:left}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_field_last_tablet{width:100%}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_form_container.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_column .et_pb_contact p.et_pb_contact_field_half{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_field_half_phone{width:50%;float:left}.et-db #et-boc .et-l .et_pb_contact .et_pb_contact_field_last_phone{width:100%}}.iphone .et_pb_contact_form input,.iphone .et_pb_contact_form select,.iphone .et_pb_contact_form textarea{-webkit-appearance:initial}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/countdown_timer.css b/includes/builder/feature/dynamic-assets/assets/css/countdown_timer.css
new file mode 100644
index 0000000..fff4d58
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/countdown_timer.css
@@ -0,0 +1 @@
+.et_pb_countdown_timer_container{word-wrap:break-word}.et_pb_countdown_timer{padding:4%}.et_pb_countdown_timer .et_pb_countdown_timer_container{width:100%;text-align:center;position:relative;vertical-align:top}.et_pb_countdown_timer .title{font-weight:500;margin:0 0 30px;padding:0;text-align:center}.et_pb_countdown_timer h4.title{font-size:26px}.et_pb_countdown_timer .section{display:inline-block;position:relative}.et_pb_countdown_timer .section.values{width:17%;max-width:160px;vertical-align:top}.et_pb_countdown_timer .section p{font-size:54px;line-height:54px;padding-bottom:0;text-align:center;display:inline-block}.et_pb_countdown_timer .section.zero p{opacity:.4}.et_pb_countdown_timer .section p.value{min-width:100%}.et_pb_countdown_timer .section p.label{text-align:center;font-size:14px;line-height:25px;display:block}.et_pb_countdown_timer .sep{position:relative}.et_pb_countdown_timer .sep.sep.sep.sep.sep p{text-decoration:none!important}.et_pb_column_1_2 .et_pb_countdown_timer .section p,.et_pb_column_3_5 .et_pb_countdown_timer .section p{font-size:38px;line-height:38px}.et_pb_column_1_2 .et_pb_countdown_timer .section p.label,.et_pb_column_3_5 .et_pb_countdown_timer .section p.label{font-size:12px;line-height:20px}.et_pb_column_1_3 .et_pb_countdown_timer .title,.et_pb_column_1_4 .et_pb_countdown_timer .title,.et_pb_column_1_5 .et_pb_countdown_timer .title,.et_pb_column_1_6 .et_pb_countdown_timer .title,.et_pb_column_2_5 .et_pb_countdown_timer .title{font-size:22px;margin-bottom:20px}.et_pb_column_1_3 .et_pb_countdown_timer .section p,.et_pb_column_2_5 .et_pb_countdown_timer .section p,.et_pb_column_3_8 .et_pb_countdown_timer .section p{font-size:28px;line-height:28px}.et_pb_column_1_4 .et_pb_countdown_timer .section p,.et_pb_column_1_5 .et_pb_countdown_timer .section p,.et_pb_column_1_6 .et_pb_countdown_timer .section p{font-size:20px;line-height:20px}.et_pb_column_1_3 .et_pb_countdown_timer .section p.label,.et_pb_column_1_4 .et_pb_countdown_timer .section p.label,.et_pb_column_1_5 .et_pb_countdown_timer .section p.label,.et_pb_column_1_6 .et_pb_countdown_timer .section p.label,.et_pb_column_2_5 .et_pb_countdown_timer .section p.label,.et_pb_column_3_8 .et_pb_countdown_timer .section p.label{font-size:11px;line-height:19px}@media (max-width:980px){.et_pb_countdown_timer .title{font-size:22px!important}.et_pb_countdown_timer .section p{font-size:64px!important;line-height:64px!important}.et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}.et_pb_countdown_timer .sep.sep.sep.sep.sep p{text-decoration:none!important}.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}}@media (min-width:768px) and (max-width:800px){.et_pb_countdown_timer .section p{font-size:50px!important;line-height:50px!important}.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:25px!important;line-height:25px!important}}@media (max-width:767px){.et_pb_countdown_timer .title{font-size:22px!important;margin-bottom:20px!important}.et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}.et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:16px!important;line-height:16px!important}.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}}@media (max-width:479px){.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}}@media (max-width:380px){.et_pb_countdown_timer .section p,.et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:24px!important;line-height:24px!important}.et_pb_countdown_timer .section p.label{font-size:12px!important;line-height:25px!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/countdown_timer_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/countdown_timer_cpt.css
new file mode 100644
index 0000000..da5dd93
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/countdown_timer_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_countdown_timer_container{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_countdown_timer{padding:4%}.et-db #et-boc .et-l .et_pb_countdown_timer .et_pb_countdown_timer_container{width:100%;text-align:center;position:relative;vertical-align:top}.et-db #et-boc .et-l .et_pb_countdown_timer .title{font-weight:500;margin:0 0 30px;padding:0;text-align:center}.et-db #et-boc .et-l .et_pb_countdown_timer h4.title{font-size:26px}.et-db #et-boc .et-l .et_pb_countdown_timer .section{display:inline-block;position:relative}.et-db #et-boc .et-l .et_pb_countdown_timer .section.values{width:17%;max-width:160px;vertical-align:top}.et-db #et-boc .et-l .et_pb_countdown_timer .section p{font-size:54px;line-height:54px;padding-bottom:0;text-align:center;display:inline-block}.et-db #et-boc .et-l .et_pb_countdown_timer .section.zero p{opacity:.4}.et-db #et-boc .et-l .et_pb_countdown_timer .section p.value{min-width:100%}.et-db #et-boc .et-l .et_pb_countdown_timer .section p.label{text-align:center;font-size:14px;line-height:25px;display:block}.et-db #et-boc .et-l .et_pb_countdown_timer .sep{position:relative}.et-db #et-boc .et-l .et_pb_countdown_timer .sep.sep.sep.sep.sep p{text-decoration:none!important}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_countdown_timer .section p{font-size:38px;line-height:38px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_countdown_timer .section p.label{font-size:12px;line-height:20px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_countdown_timer .title,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_countdown_timer .title,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_countdown_timer .title,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_countdown_timer .title,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_countdown_timer .title{font-size:22px;margin-bottom:20px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_countdown_timer .section p{font-size:28px;line-height:28px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_countdown_timer .section p{font-size:20px;line-height:20px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_countdown_timer .section p.label,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_countdown_timer .section p.label{font-size:11px;line-height:19px}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_countdown_timer .title{font-size:22px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .section p{font-size:64px!important;line-height:64px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .sep.sep.sep.sep.sep p{text-decoration:none!important}.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}}@media (min-width:768px) and (max-width:800px){.et-db #et-boc .et-l .et_pb_countdown_timer .section p{font-size:50px!important;line-height:50px!important}.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:25px!important;line-height:25px!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_countdown_timer .title{font-size:22px!important;margin-bottom:20px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:16px!important;line-height:16px!important}.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p.label{font-size:14px!important;line-height:25px!important}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:32px!important;line-height:32px!important}}@media (max-width:380px){.et-db #et-boc .et-l .et_pb_countdown_timer .section p,.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column_1_4 .et_pb_countdown_timer .section p{font-size:24px!important;line-height:24px!important}.et-db #et-boc .et-l .et_pb_countdown_timer .section p.label{font-size:12px!important;line-height:25px!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/counter.css b/includes/builder/feature/dynamic-assets/assets/css/counter.css
new file mode 100644
index 0000000..70bf2e3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/counter.css
@@ -0,0 +1 @@
+.et_pb_counter_title{word-wrap:break-word}.et_pb_counter_amount{background-color:#2ea3f2}.et_pb_counters .et_pb_counter_container{background-size:cover;background-position:50%;background-repeat:no-repeat}.et_pb_with_border .et_pb_counter_container{border:0 solid #333}.et_pb_counter_title{font-size:12px;line-height:1.6em;display:block}.et_pb_bg_layout_light .et_pb_counter_title{color:#666}.et_pb_counter_container{background-color:#ddd;color:#fff;margin-bottom:10px;overflow:hidden;position:relative;display:block}.et_pb_counter_amount{opacity:0;float:left;font-size:12px;font-weight:600;line-height:1.6em;text-align:right;padding:1px;display:block;min-height:6px;z-index:2;overflow:hidden}.et_pb_counter_amount.overlay{background-color:transparent!important;color:#2ea3f2;position:absolute!important;top:0;left:0;z-index:1;overflow:visible}.et_pb_counters span.et_pb_counter_amount_number{display:inline-block;padding:0 10px}.et_pb_counters span.et_pb_counter_amount_number:after,.et_pb_counters span.et_pb_counter_amount_number:before{content:"";display:block;max-width:20px;min-width:5px}.et_pb_counters.et_pb_section_video>li,.et_pb_counters>li.et_pb_section_video .et_pb_counter_amount{position:relative}.et_pb_counters li:last-of-type .et_pb_counter_container{margin-bottom:0}.et_pb_text_align_left .et_pb_counter_amount{text-align:left}.et_pb_text_align_center .et_pb_counter_amount{text-align:center}.et_pb_text_align_right .et_pb_counter_amount{text-align:right}.et_pb_text_align_justified .et_pb_counter_amount{text-align:justify}.et_pb_counters{list-style:none!important;padding:0!important;line-height:inherit!important}.et-animated li span .et_pb_counter_amount{opacity:1;animation:slideWidth 1s 1 cubic-bezier(.77,0,.175,1);position:relative}.et_pb_bg_layout_light_tablet .et_pb_counter_title{color:#666}.et_pb_bg_layout_dark_tablet .et_pb_counter_title{color:#fff}@keyframes slideWidth{0%{width:0}}@media (max-width:767px){.et_pb_text_align_left-tablet .et_pb_counter_amount{text-align:left}.et_pb_text_align_center-tablet .et_pb_counter_amount{text-align:center}.et_pb_text_align_right-tablet .et_pb_counter_amount{text-align:right}.et_pb_text_align_justified-tablet .et_pb_counter_amount{text-align:justify}}@media (min-width:768px) and (max-width:980px){.et_pb_bg_layout_light_phone .et_pb_counter_title{color:#666}.et_pb_bg_layout_dark_phone .et_pb_counter_title{color:#fff}.et_pb_text_align_left-phone .et_pb_counter_amount{text-align:left}.et_pb_text_align_center-phone .et_pb_counter_amount{text-align:center}.et_pb_text_align_right-phone .et_pb_counter_amount{text-align:right}.et_pb_text_align_justified-phone .et_pb_counter_amount{text-align:justify}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/counter_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/counter_cpt.css
new file mode 100644
index 0000000..9484b5c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/counter_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_counter_title{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_counter_amount{background-color:#2ea3f2}.et-db #et-boc .et-l .et_pb_counters .et_pb_counter_container{background-size:cover;background-position:50%;background-repeat:no-repeat}.et-db #et-boc .et-l .et_pb_with_border .et_pb_counter_container{border:0 solid #333}.et-db #et-boc .et-l .et_pb_counter_title{font-size:12px;line-height:1.6em;display:block}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_counter_title{color:#666}.et-db #et-boc .et-l .et_pb_counter_container{background-color:#ddd;color:#fff;margin-bottom:10px;overflow:hidden;position:relative;display:block}.et-db #et-boc .et-l .et_pb_counter_amount{opacity:0;float:left;font-size:12px;font-weight:600;line-height:1.6em;text-align:right;padding:1px;display:block;min-height:6px;z-index:2;overflow:hidden}.et-db #et-boc .et-l .et_pb_counter_amount.overlay{background-color:transparent!important;color:#2ea3f2;position:absolute!important;top:0;left:0;z-index:1;overflow:visible}.et-db #et-boc .et-l .et_pb_counters span.et_pb_counter_amount_number{display:inline-block;padding:0 10px}.et-db #et-boc .et-l .et_pb_counters span.et_pb_counter_amount_number:after,.et-db #et-boc .et-l .et_pb_counters span.et_pb_counter_amount_number:before{content:"";display:block;max-width:20px;min-width:5px}.et-db #et-boc .et-l .et_pb_counters.et_pb_section_video>li,.et-db #et-boc .et-l .et_pb_counters>li.et_pb_section_video .et_pb_counter_amount{position:relative}.et-db #et-boc .et-l .et_pb_counters li:last-of-type .et_pb_counter_container{margin-bottom:0}.et-db #et-boc .et-l .et_pb_text_align_left .et_pb_counter_amount{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center .et_pb_counter_amount{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right .et_pb_counter_amount{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified .et_pb_counter_amount{text-align:justify}.et-db #et-boc .et-l .et_pb_counters{list-style:none!important;padding:0!important;line-height:inherit!important}.et-db #et-boc .et-l .et-animated li span .et_pb_counter_amount{opacity:1;animation:slideWidth 1s 1 cubic-bezier(.77,0,.175,1);position:relative}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_counter_title{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_counter_title{color:#fff}@keyframes slideWidth{0%{width:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_text_align_left-tablet .et_pb_counter_amount{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-tablet .et_pb_counter_amount{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-tablet .et_pb_counter_amount{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-tablet .et_pb_counter_amount{text-align:justify}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_counter_title{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_counter_title{color:#fff}.et-db #et-boc .et-l .et_pb_text_align_left-phone .et_pb_counter_amount{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-phone .et_pb_counter_amount{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-phone .et_pb_counter_amount{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-phone .et_pb_counter_amount{text-align:justify}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/cta.css b/includes/builder/feature/dynamic-assets/assets/css/cta.css
new file mode 100644
index 0000000..5fdd58c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/cta.css
@@ -0,0 +1 @@
+.et_pb_bg_layout_light .et_pb_promo_button{color:#2ea3f2}.et-promo{background-color:#1f6581;padding:40px 0 25px}.et-promo-description{float:left;padding:0 60px;word-wrap:break-word;width:754px}.et-promo-description p{color:#fff}.et-promo-button{padding-right:60px;display:inline-block;font-weight:500;font-size:20px;color:#fff;background-color:rgba(0,0,0,.35);border-radius:5px;padding:14px 20px;margin-top:20px;float:left}.et_pb_promo{padding:40px 60px;text-align:center}.et_pb_promo_description{padding-bottom:20px;position:relative}.et_pb_promo_description p:last-of-type{padding-bottom:0}.et_pb_promo_button{display:inline-block;color:inherit}.et_pb_promo_button:hover{text-decoration:none}.et_pb_promo_button:hover:after{opacity:1;margin-left:0}.et_pb_column_1_2 .et_pb_promo,.et_pb_column_1_3 .et_pb_promo,.et_pb_column_1_4 .et_pb_promo,.et_pb_column_1_5 .et_pb_promo,.et_pb_column_1_6 .et_pb_promo,.et_pb_column_2_5 .et_pb_promo,.et_pb_column_3_5 .et_pb_promo{padding:40px}.et_pb_has_bg_hover.et_pb_promo:hover{padding:40px 60px!important;transition:padding .4s ease-in-out}.et_pb_column_1_2 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_1_3 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_1_4 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_1_5 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_1_6 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_2_5 .et_pb_has_bg_hover.et_pb_promo:hover,.et_pb_column_3_5 .et_pb_has_bg_hover.et_pb_promo:hover{padding:40px!important}.et_pb_no_bg_hover.et_pb_promo:hover{padding:0!important}@media (max-width:980px){.et_pb_has_bg_tablet.et_pb_promo{padding:40px!important}.et_pb_no_bg_tablet.et_pb_promo{padding:0!important}.et_pb_bg_layout_light_tablet .et_pb_promo_button{color:#2ea3f2}.et_pb_bg_layout_dark_tablet .et_pb_promo_button{color:inherit}}@media (max-width:767px){.et_pb_promo{padding:40px}.et_pb_has_bg_phone.et_pb_promo{padding:40px!important}.et_pb_no_bg_phone.et_pb_promo{padding:0!important}.et_pb_bg_layout_light_phone .et_pb_promo_button{color:#2ea3f2}.et_pb_bg_layout_dark_phone .et_pb_promo_button{color:inherit}}@media (max-width:479px){.et_pb_promo{padding:40px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/cta_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/cta_cpt.css
new file mode 100644
index 0000000..c069eef
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/cta_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_promo_button{color:#2ea3f2}.et-db #et-boc .et-l .et-promo{background-color:#1f6581;padding:40px 0 25px}.et-db #et-boc .et-l .et-promo-description{float:left;padding:0 60px;word-wrap:break-word;width:754px}.et-db #et-boc .et-l .et-promo-description p{color:#fff}.et-db #et-boc .et-l .et-promo-button{padding-right:60px;display:inline-block;font-weight:500;font-size:20px;color:#fff;background-color:rgba(0,0,0,.35);border-radius:5px;padding:14px 20px;margin-top:20px;float:left}.et-db #et-boc .et-l .et_pb_promo{padding:40px 60px;text-align:center}.et-db #et-boc .et-l .et_pb_promo_description{padding-bottom:20px;position:relative}.et-db #et-boc .et-l .et_pb_promo_description p:last-of-type{padding-bottom:0}.et-db #et-boc .et-l .et_pb_promo_button{display:inline-block;color:inherit}.et-db #et-boc .et-l .et_pb_promo_button:hover{text-decoration:none}.et-db #et-boc .et-l .et_pb_promo_button:hover:after{opacity:1;margin-left:0}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_promo,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_promo{padding:40px}.et-db #et-boc .et-l .et_pb_has_bg_hover.et_pb_promo:hover{padding:40px 60px!important;transition:padding .4s ease-in-out}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_has_bg_hover.et_pb_promo:hover,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_has_bg_hover.et_pb_promo:hover{padding:40px!important}.et-db #et-boc .et-l .et_pb_no_bg_hover.et_pb_promo:hover{padding:0!important}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_has_bg_tablet.et_pb_promo{padding:40px!important}.et-db #et-boc .et-l .et_pb_no_bg_tablet.et_pb_promo{padding:0!important}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_promo_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_promo_button{color:inherit}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_promo{padding:40px}.et-db #et-boc .et-l .et_pb_has_bg_phone.et_pb_promo{padding:40px!important}.et-db #et-boc .et-l .et_pb_no_bg_phone.et_pb_promo{padding:0!important}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_promo_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_promo_button{color:inherit}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_promo{padding:40px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/divider.css b/includes/builder/feature/dynamic-assets/assets/css/divider.css
new file mode 100644
index 0000000..ce2a06c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/divider.css
@@ -0,0 +1 @@
+.et_pb_space{box-sizing:content-box;height:23px}.et_pb_divider_hidden{margin-bottom:0!important}.et_pb_divider_internal{display:inline-block;width:100%}.et_pb_divider{margin:0 0 30px;position:relative}.et_pb_divider:before{content:"";width:100%;height:1px;border-top-color:#eee;border-top-color:rgba(0,0,0,.1);border-top-width:1px;border-top-style:solid;position:absolute;left:0;top:0;z-index:10}.et_pb_divider:after,.et_pb_space:after{content:"";display:table}.et_pb_divider_position_bottom:before{top:auto!important;bottom:0!important}.et_pb_divider_position_center:before{top:50%!important}@media (max-width:980px){.et_pb_divider_position_top_tablet:before{top:0!important;bottom:auto!important}.et_pb_divider_position_bottom_tablet:before{top:auto!important;bottom:0!important}.et_pb_divider_position_center_tablet:before{top:50%!important}.et_pb_space.et-hide-mobile{display:none}}@media (max-width:767px){.et_pb_divider_position_top_phone:before{top:0!important;bottom:auto!important}.et_pb_divider_position_bottom_phone:before{top:auto!important;bottom:0!important}.et_pb_divider_position_center_phone:before{top:50%!important}}.ie .et_pb_divider{overflow:visible}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/divider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/divider_cpt.css
new file mode 100644
index 0000000..8287165
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/divider_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_space{box-sizing:content-box;height:23px}.et-db #et-boc .et-l .et_pb_divider_hidden{margin-bottom:0!important}.et-db #et-boc .et-l .et_pb_divider_internal{display:inline-block;width:100%}.et-db #et-boc .et-l .et_pb_divider{margin:0 0 30px;position:relative}.et-db #et-boc .et-l .et_pb_divider:before{content:"";width:100%;height:1px;border-top-color:#eee;border-top-color:rgba(0,0,0,.1);border-top-width:1px;border-top-style:solid;position:absolute;left:0;top:0;z-index:10}.et-db #et-boc .et-l .et_pb_divider:after,.et-db #et-boc .et-l .et_pb_space:after{content:"";display:table}.et-db #et-boc .et-l .et_pb_divider_position_bottom:before{top:auto!important;bottom:0!important}.et-db #et-boc .et-l .et_pb_divider_position_center:before{top:50%!important}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_divider_position_top_tablet:before{top:0!important;bottom:auto!important}.et-db #et-boc .et-l .et_pb_divider_position_bottom_tablet:before{top:auto!important;bottom:0!important}.et-db #et-boc .et-l .et_pb_divider_position_center_tablet:before{top:50%!important}.et-db #et-boc .et-l .et_pb_space.et-hide-mobile{display:none}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_divider_position_top_phone:before{top:0!important;bottom:auto!important}.et-db #et-boc .et-l .et_pb_divider_position_bottom_phone:before{top:auto!important;bottom:0!important}.et-db #et-boc .et-l .et_pb_divider_position_center_phone:before{top:50%!important}}.ie .et_pb_divider{overflow:visible}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fields.css b/includes/builder/feature/dynamic-assets/assets/css/fields.css
new file mode 100644
index 0000000..d167860
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fields.css
@@ -0,0 +1 @@
+.et_pb_contact_form_label{display:none}.et_pb_with_border.et_pb_contact_field .input[type=checkbox]+label i,.et_pb_with_border.et_pb_contact_field .input[type=radio]+label i,.et_pb_with_border.et_pb_contact_field input,.et_pb_with_border.et_pb_contact_field select,.et_pb_with_border.et_pb_contact_field textarea{border:0 solid #333}.et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_title{float:none}.et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et_pb_contact_field_options_list label a:empty:before{content:"\E906";font-family:ETmodules;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-style:normal;display:inline-block;box-sizing:border-box;font-size:16px}.et_pb_contact_field[data-type=booleancheckbox] .et_pb_contact_field_options_title{display:inline-block}.et_pb_contact_field[data-type=select]{position:relative}.et_pb_contact_field[data-type=select]:after{content:"";position:absolute;top:50%;right:10px;transform:translateY(-50%);width:0;height:0;border:6px solid;border-color:#666 transparent transparent;margin-top:3px;pointer-events:none}p.et_pb_contact_field{padding:0 0 0 3%;margin-bottom:3%;background-position:50%;background-size:cover}p.et_pb_contact_field.et_pb_contact_field_last+p.et_pb_contact_field.et_pb_contact_field_last,p.et_pb_contact_field:not(.et_pb_contact_field_last),p.et_pb_contact_field_half+p.et_pb_contact_field_last:not(.et_pb_contact_field_half){clear:both}.et_pb_contact_field *,.et_pb_contact_field.et_pb_section_parallax,.et_pb_contact_field.et_pb_section_video{position:relative}.et_pb_contact_field a{color:inherit;font-weight:700;text-decoration:underline}.et_pb_contact_select{color:#999;background-color:#eee;padding:16px 20px 16px 16px;font-size:14px;box-sizing:border-box;width:100%;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;border-radius:0}.et_pb_contact_select::-ms-expand{display:none}.et_pb_contact_field_options_wrapper{display:block}.et_pb_contact_field_options_wrapper .et_pb_contact_field_options_title{margin-bottom:.5em;font-weight:600}.et_pb_contact_field_options_wrapper:after{clear:both;content:" ";display:block}.et_pb_contact_field_checkbox,.et_pb_contact_field_options_title,.et_pb_contact_field_radio,.et_pb_contact_field_select_title{display:block}.et_pb_contact_field_radio_title,.et_pb_contact_field_select_title{font-size:16px;padding-bottom:4px}.et_pb_contact_field textarea.et_pb_contact_message{min-height:150px;display:block}@media (max-width:980px){.et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_title{float:none}.et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}}@media (max-width:767px){.et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_title,.et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_list,.et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_title{float:none}.et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper,.et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}p.et_pb_contact_field.et_pb_contact_field_last_phone+p.et_pb_contact_field.et_pb_contact_field_last_phone,p.et_pb_contact_field_half_phone+p.et_pb_contact_field_last_phone:not(.et_pb_contact_field_half_phone){clear:both}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fields_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fields_cpt.css
new file mode 100644
index 0000000..991e5cf
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fields_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_contact_form_label{display:none}.et-db #et-boc .et-l .et_pb_with_border.et_pb_contact_field .input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_with_border.et_pb_contact_field .input[type=radio]+label i,.et-db #et-boc .et-l .et_pb_with_border.et_pb_contact_field input,.et-db #et-boc .et-l .et_pb_with_border.et_pb_contact_field select,.et-db #et-boc .et-l .et_pb_with_border.et_pb_contact_field textarea{border:0 solid #333}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_contact_field_options_list label a:empty:before{content:"\E906";font-family:ETmodules;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-style:normal;display:inline-block;box-sizing:border-box;font-size:16px}.et-db #et-boc .et-l .et_pb_contact_field[data-type=booleancheckbox] .et_pb_contact_field_options_title{display:inline-block}.et-db #et-boc .et-l .et_pb_contact_field[data-type=select]{position:relative}.et-db #et-boc .et-l .et_pb_contact_field[data-type=select]:after{content:"";position:absolute;top:50%;right:10px;transform:translateY(-50%);width:0;height:0;border:6px solid;border-color:#666 transparent transparent;margin-top:3px;pointer-events:none}.et-db #et-boc .et-l p.et_pb_contact_field{padding:0 0 0 3%;margin-bottom:3%;background-position:50%;background-size:cover}.et-db #et-boc .et-l p.et_pb_contact_field.et_pb_contact_field_last+p.et_pb_contact_field.et_pb_contact_field_last,.et-db #et-boc .et-l p.et_pb_contact_field:not(.et_pb_contact_field_last),.et-db #et-boc .et-l p.et_pb_contact_field_half+p.et_pb_contact_field_last:not(.et_pb_contact_field_half){clear:both}.et-db #et-boc .et-l .et_pb_contact_field *,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_section_parallax,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_section_video{position:relative}.et-db #et-boc .et-l .et_pb_contact_field a{color:inherit;font-weight:700;text-decoration:underline}.et-db #et-boc .et-l .et_pb_contact_select{color:#999;background-color:#eee;padding:16px 20px 16px 16px;font-size:14px;box-sizing:border-box;width:100%;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;border-radius:0}.et-db #et-boc .et-l .et_pb_contact_select::-ms-expand{display:none}.et-db #et-boc .et-l .et_pb_contact_field_options_wrapper{display:block}.et-db #et-boc .et-l .et_pb_contact_field_options_wrapper .et_pb_contact_field_options_title{margin-bottom:.5em;font-weight:600}.et-db #et-boc .et-l .et_pb_contact_field_options_wrapper:after{clear:both;content:" ";display:block}.et-db #et-boc .et-l .et_pb_contact_field_checkbox,.et-db #et-boc .et-l .et_pb_contact_field_options_title,.et-db #et-boc .et-l .et_pb_contact_field_radio,.et-db #et-boc .et-l .et_pb_contact_field_select_title{display:block}.et-db #et-boc .et-l .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field_select_title{font-size:16px;padding-bottom:4px}.et-db #et-boc .et-l .et_pb_contact_field textarea.et_pb_contact_message{min-height:150px;display:block}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-tablet .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_title,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_list,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_title{float:none}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper,.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{display:-ms-flexbox;display:flex}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_center-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_right-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_contact_field.et_pb_text_align_justified-phone .et_pb_contact_field_radio_wrapper{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l p.et_pb_contact_field.et_pb_contact_field_last_phone+p.et_pb_contact_field.et_pb_contact_field_last_phone,.et-db #et-boc .et-l p.et_pb_contact_field_half_phone+p.et_pb_contact_field_last_phone:not(.et_pb_contact_field_half_phone){clear:both}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio.css b/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio.css
new file mode 100644
index 0000000..efcd0c1
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio.css
@@ -0,0 +1 @@
+.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active,.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#2ea3f2}.et_pb_filterable_portfolio_grid .et_pb_portfolio_item{display:none}.et_pb_text_align_left.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et_pb_text_align_center.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et_pb_text_align_right.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et_pb_text_align_justified.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et_pb_filterable_portfolio .et_pb_portfolio_filters{clear:both;margin:0 0 40px}.et_pb_filterable_portfolio.et_pb_section_parallax .et_pb_portfolio_filters,.et_pb_filterable_portfolio.et_pb_section_video .et_pb_portfolio_filters{position:relative}.et_pb_filterable_portfolio .et_pb_portfolio_filters ul{list-style-type:none!important;padding:0}.et_pb_filterable_portfolio.et_pb_text_align_center .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_justified .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_right .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio .et_pb_portfolio_filters li{float:left;font-size:14px;line-height:1em}.et_pb_filterable_portfolio .et_pb_portfolio_filters li a{color:#666;padding:10px 20px;border:1px solid #e2e2e2;display:block;height:auto;overflow:hidden;margin:-1px -1px 0 0;background-color:#fff}.et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 3px}.et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 3px 3px 0}.et_pb_filterable_portfolio .et_pb_portfolio_filters li a:hover{color:#666;background-color:#f4f4f4}.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active{color:#82c0c7;background-color:#f9f9f9}.et_pb_filterable_portfolio .et_pb_portfolio_items,.et_pb_filterable_portfolio .et_pb_portfolio_items_wrapper{width:100%;position:relative}.et_pb_filterable_portfolio .et_pb_portfolio_item.active{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:100%}.et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 3px 0 0}.et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 0 3px 3px}.et_pb_filterable_portfolio .et_pb_portofolio_pagination{width:100%;border-top:1px solid #e2e2e2;position:relative}.et_pb_filterable_portfolio.et_pb_section_parallax .et_pb_portofolio_pagination,.et_pb_filterable_portfolio.et_pb_section_video .et_pb_portofolio_pagination{position:relative}.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{list-style-type:none!important;text-align:right;margin:0;padding:0}.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li{display:inline-block;padding:10px}.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{font-size:16px;line-height:16px;color:#999}.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et_pb_filterable_portfolio.et_pb_bg_layout_dark .et_pb_portofolio_pagination ul li a{color:#fff}@media (min-width:981px){.et_pb_filterable_portfolio_grid .et_pb_portfolio_item img{width:100%}.et_pb_filterable_portfolio_grid .et_pb_portfolio_item .et_pb_module_header,.et_pb_filterable_portfolio_grid .et_pb_portfolio_item h2{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et_pb_filterable_portfolio_grid .et_pb_portfolio_item h2{font-size:18px}}@media (max-width:980px){.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:auto}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li a{width:auto;border-radius:0}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 3px}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 3px 3px 0}.et_pb_bg_layout_light_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#999}.et_pb_bg_layout_light_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et_pb_bg_layout_dark_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#fff}.et_pb_text_align_left-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et_pb_text_align_center-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et_pb_text_align_right-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et_pb_text_align_justified-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et_pb_filterable_portfolio.et_pb_text_align_center-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_justified-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_right-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}}@media (max-width:767px){.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters ul{width:100%}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:50%}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 0}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:nth-child(2) a{border-radius:0 3px 0 0}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child:nth-child(odd) a{border-radius:0 0 3px 3px}.et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child:nth-child(even) a{border-radius:0 0 3px}.et_pb_bg_layout_light_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#999}.et_pb_bg_layout_light_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et_pb_bg_layout_dark_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#fff}.et_pb_text_align_left-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et_pb_text_align_center-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et_pb_text_align_right-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et_pb_text_align_justified-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et_pb_filterable_portfolio.et_pb_text_align_center-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_justified-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_filterable_portfolio.et_pb_text_align_right-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio_cpt.css
new file mode 100644
index 0000000..b1c3109
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/filterable_portfolio_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active,.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_filterable_portfolio_grid .et_pb_portfolio_item{display:none}.et-db #et-boc .et-l .et_pb_text_align_left.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters{clear:both;margin:0 0 40px}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_section_parallax .et_pb_portfolio_filters,.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_section_video .et_pb_portfolio_filters{position:relative}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters ul{list-style-type:none!important;padding:0}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_center .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_justified .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_right .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li{float:left;font-size:14px;line-height:1em}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li a{color:#666;padding:10px 20px;border:1px solid #e2e2e2;display:block;height:auto;overflow:hidden;margin:-1px -1px 0 0;background-color:#fff}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 3px}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 3px 3px 0}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li a:hover{color:#666;background-color:#f4f4f4}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active{color:#82c0c7;background-color:#f9f9f9}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_items,.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_items_wrapper{width:100%;position:relative}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_item.active{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:100%}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 3px 0 0}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 0 3px 3px}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination{width:100%;border-top:1px solid #e2e2e2;position:relative}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_section_parallax .et_pb_portofolio_pagination,.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_section_video .et_pb_portofolio_pagination{position:relative}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{list-style-type:none!important;text-align:right;margin:0;padding:0}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li{display:inline-block;padding:10px}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{font-size:16px;line-height:16px;color:#999}.et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_bg_layout_dark .et_pb_portofolio_pagination ul li a{color:#fff}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_filterable_portfolio_grid .et_pb_portfolio_item img{width:100%}.et-db #et-boc .et-l .et_pb_filterable_portfolio_grid .et_pb_portfolio_item .et_pb_module_header,.et-db #et-boc .et-l .et_pb_filterable_portfolio_grid .et_pb_portfolio_item h2{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_filterable_portfolio_grid .et_pb_portfolio_item h2{font-size:18px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:auto}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li a{width:auto;border-radius:0}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 3px}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child a{border-radius:0 3px 3px 0}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#999}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_text_align_left-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-tablet.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_center-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_justified-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_right-tablet .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters ul{width:100%}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li{width:50%}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:first-child a{border-radius:3px 0 0 0}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:nth-child(2) a{border-radius:0 3px 0 0}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child:nth-child(odd) a{border-radius:0 0 3px 3px}.et-db #et-boc .et-l .et_pb_column .et_pb_filterable_portfolio .et_pb_portfolio_filters li:last-child:nth-child(even) a{border-radius:0 0 3px}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#999}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_text_align_left-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-phone.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul{text-align:justify}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_center-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_justified-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_filterable_portfolio.et_pb_text_align_right-phone .et_pb_portfolio_filters ul{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;-ms-flex-wrap:wrap;flex-wrap:wrap}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/forms.css b/includes/builder/feature/dynamic-assets/assets/css/forms.css
new file mode 100644
index 0000000..8207d80
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/forms.css
@@ -0,0 +1 @@
+.et_pb_bg_layout_light .et_pb_newsletter_button{color:#2ea3f2}.et_pb_with_border .et_pb_newsletter_form .input[type=checkbox]+label i,.et_pb_with_border .et_pb_newsletter_form .input[type=radio]+label i,.et_pb_with_border .et_pb_newsletter_form input,.et_pb_with_border .et_pb_newsletter_form select,.et_pb_with_border .et_pb_newsletter_form textarea,.et_pb_with_focus_border .et_pb_newsletter_form input:focus{border:0 solid #333}.et_pb_newsletter_description{word-wrap:break-word}.et_pb_newsletter_form p.et_pb_newsletter_field.et_pb_signup_custom_field{padding-left:0}.et_pb_newsletter p .et_pb_signup_error{border:1px solid red!important}.et_pb_newsletter{padding:25px}.et_pb_newsletter .et_pb_module_header:empty{display:none}.et_pb_newsletter_description p:last-of-type{padding-bottom:0}.et_pb_newsletter_description_no_title.et_pb_newsletter_description_no_content .et_pb_newsletter_form{-ms-flex-order:2;order:2}.et_pb_newsletter_form p.et_pb_newsletter_field{padding-bottom:1em;margin-bottom:0}.et_pb_newsletter_form .input,.et_pb_newsletter_form input[type=password],.et_pb_newsletter_form input[type=text],.et_pb_newsletter_form p.et_pb_newsletter_field input[type=text],.et_pb_newsletter_form p.et_pb_newsletter_field textarea,.et_pb_newsletter_form select,.et_pb_newsletter_form textarea{-webkit-appearance:none;padding:14px 4%!important;font-size:16px;color:#666;background-color:#fff;width:100%;font-weight:400;border-width:0;border-radius:3px}.et_pb_newsletter_form .et_pb_newsletter_field[data-type=select]:after{margin-top:-3px}.et_pb_newsletter_form p .et_pb_subscribe_error{border:1px solid red!important}.et_pb_newsletter_result{display:none}.et_pb_newsletter_success{text-align:center}.et_pb_newsletter_button{display:block;color:inherit;width:100%;text-align:center;box-sizing:border-box}.et_pb_newsletter_button:hover{text-decoration:none}.et_pb_newsletter_button:hover:after{opacity:1;margin-left:0}.et_pb_newsletter_button_text{word-break:break-word}.et_pb_newsletter_fields,.et_pb_newsletter_footer{width:100%}.et_pb_newsletter_footer{margin-top:20px}.et_pb_newsletter_footer:empty{margin-top:0}.et_pb_newsletter .et_pb_newsletter_fields{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between}.et_pb_newsletter .et_pb_newsletter_fields>*{-ms-flex-preferred-size:100%;flex-basis:100%}.et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_description,.et_pb_newsletter_layout_right_left .et_pb_newsletter_description{-ms-flex-order:1;order:1}.et_pb_newsletter .et_pb_contact_field_last+.et_pb_newsletter_field{padding-left:0}.et_pb_newsletter .et_pb_contact_field--hidden{display:none}.et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}@media (max-width:980px){.et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}p.et_pb_contact_field.et_pb_contact_field_last_tablet+p.et_pb_contact_field.et_pb_contact_field_last_tablet,p.et_pb_contact_field_half_tablet+p.et_pb_contact_field_last_tablet:not(.et_pb_contact_field_half_tablet){clear:both}.et_pb_newsletter .et_pb_contact_field_last_tablet+.et_pb_newsletter_field{padding-left:0}.et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half_tablet{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_last_tablet{-ms-flex-preferred-size:100%;flex-basis:100%}.et_pb_bg_layout_light_tablet .et_pb_newsletter_button{color:#2ea3f2}.et_pb_bg_layout_dark_tablet .et_pb_newsletter_button{color:inherit}}@media (max-width:767px){.et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_newsletter .et_pb_contact_field_last_phone+.et_pb_newsletter_field{padding-left:0}.et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half_phone{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_last_phone{-ms-flex-preferred-size:100%;flex-basis:100%}.et_pb_bg_layout_light_phone .et_pb_newsletter_button{color:#2ea3f2}.et_pb_bg_layout_dark_phone .et_pb_newsletter_button{color:inherit}}.gecko .et_pb_newsletter .et_pb_newsletter_field{margin-bottom:1vw}body .grecaptcha-badge{visibility:hidden}body.et_pb_recaptcha_enabled .grecaptcha-badge{visibility:initial;z-index:9999}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/forms_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/forms_cpt.css
new file mode 100644
index 0000000..02a7378
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/forms_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_newsletter_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_with_border .et_pb_newsletter_form .input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_with_border .et_pb_newsletter_form .input[type=radio]+label i,.et-db #et-boc .et-l .et_pb_with_border .et_pb_newsletter_form input,.et-db #et-boc .et-l .et_pb_with_border .et_pb_newsletter_form select,.et-db #et-boc .et-l .et_pb_with_border .et_pb_newsletter_form textarea,.et-db #et-boc .et-l .et_pb_with_focus_border .et_pb_newsletter_form input:focus{border:0 solid #333}.et-db #et-boc .et-l .et_pb_newsletter_description{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_newsletter_form p.et_pb_newsletter_field.et_pb_signup_custom_field{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter p .et_pb_signup_error{border:1px solid red!important}.et-db #et-boc .et-l .et_pb_newsletter{padding:25px}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_module_header:empty{display:none}.et-db #et-boc .et-l .et_pb_newsletter_description p:last-of-type{padding-bottom:0}.et-db #et-boc .et-l .et_pb_newsletter_description_no_title.et_pb_newsletter_description_no_content .et_pb_newsletter_form{-ms-flex-order:2;order:2}.et-db #et-boc .et-l .et_pb_newsletter_form p.et_pb_newsletter_field{padding-bottom:1em;margin-bottom:0}.et-db #et-boc .et-l .et_pb_newsletter_form .input,.et-db #et-boc .et-l .et_pb_newsletter_form input[type=password],.et-db #et-boc .et-l .et_pb_newsletter_form input[type=text],.et-db #et-boc .et-l .et_pb_newsletter_form p.et_pb_newsletter_field input[type=text],.et-db #et-boc .et-l .et_pb_newsletter_form p.et_pb_newsletter_field textarea,.et-db #et-boc .et-l .et_pb_newsletter_form select,.et-db #et-boc .et-l .et_pb_newsletter_form textarea{-webkit-appearance:none;padding:14px 4%!important;font-size:16px;color:#666;background-color:#fff;width:100%;font-weight:400;border-width:0;border-radius:3px}.et-db #et-boc .et-l .et_pb_newsletter_form .et_pb_newsletter_field[data-type=select]:after{margin-top:-3px}.et-db #et-boc .et-l .et_pb_newsletter_form p .et_pb_subscribe_error{border:1px solid red!important}.et-db #et-boc .et-l .et_pb_newsletter_result{display:none}.et-db #et-boc .et-l .et_pb_newsletter_success{text-align:center}.et-db #et-boc .et-l .et_pb_newsletter_button{display:block;color:inherit;width:100%;text-align:center;box-sizing:border-box}.et-db #et-boc .et-l .et_pb_newsletter_button:hover{text-decoration:none}.et-db #et-boc .et-l .et_pb_newsletter_button:hover:after{opacity:1;margin-left:0}.et-db #et-boc .et-l .et_pb_newsletter_button_text{word-break:break-word}.et-db #et-boc .et-l .et_pb_newsletter_fields,.et-db #et-boc .et-l .et_pb_newsletter_footer{width:100%}.et-db #et-boc .et-l .et_pb_newsletter_footer{margin-top:20px}.et-db #et-boc .et-l .et_pb_newsletter_footer:empty{margin-top:0}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_fields{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_fields>*{-ms-flex-preferred-size:100%;flex-basis:100%}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et-db #et-boc .et-l .et_pb_newsletter_layout_bottom_top .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter_layout_right_left .et_pb_newsletter_description{-ms-flex-order:1;order:1}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_contact_field_last+.et_pb_newsletter_field{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_contact_field--hidden{display:none}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l p.et_pb_contact_field.et_pb_contact_field_last_tablet+p.et_pb_contact_field.et_pb_contact_field_last_tablet,.et-db #et-boc .et-l p.et_pb_contact_field_half_tablet+p.et_pb_contact_field_last_tablet:not(.et_pb_contact_field_half_tablet){clear:both}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_contact_field_last_tablet+.et_pb_newsletter_field{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half_tablet{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_last_tablet{-ms-flex-preferred-size:100%;flex-basis:100%}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_newsletter_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_newsletter_button{color:inherit}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_contact_field_last_phone+.et_pb_newsletter_field{padding-left:0}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_half_phone{-ms-flex-preferred-size:48.5%;flex-basis:48.5%}.et-db #et-boc .et-l .et_pb_newsletter .et_pb_newsletter_form .et_pb_contact_field_last_phone{-ms-flex-preferred-size:100%;flex-basis:100%}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_newsletter_button{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_newsletter_button{color:inherit}}.gecko .et_pb_newsletter .et_pb_newsletter_field{margin-bottom:1vw}body .grecaptcha-badge{visibility:hidden}body.et_pb_recaptcha_enabled .grecaptcha-badge{visibility:initial;z-index:9999}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/forms_specialty.css b/includes/builder/feature/dynamic-assets/assets/css/forms_specialty.css
new file mode 100644
index 0000000..ebe9c63
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/forms_specialty.css
@@ -0,0 +1 @@
+.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}@media (max-width:980px){.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}}@media (max-width:767px){.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/forms_specialty_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/forms_specialty_cpt.css
new file mode 100644
index 0000000..bc3389c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/forms_specialty_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_1_6 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:50%;padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{padding-left:40px;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:row;flex-direction:row}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-top:0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form{padding-left:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-right:40px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form{padding-left:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_2_3 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_3_4 .et_pb_column_4_4 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{width:100%;padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left{-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_pb_newsletter_form{padding-top:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_left_right .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_top_bottom .et_multi_view_hidden+.et_pb_newsletter_form{padding-top:0}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_pb_newsletter_form{padding-bottom:25px}.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_bottom_top .et_multi_view_hidden+.et_pb_newsletter_form,.et-db #et-boc .et-l .et_pb_specialty_column.et_pb_column_1_2 .et_pb_newsletter.et_pb_subscribe.et_pb_newsletter_layout_right_left .et_multi_view_hidden+.et_pb_newsletter_form{padding-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code.css
new file mode 100644
index 0000000..f17bb40
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_code.et_pb_module{z-index:9;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code_cpt.css
new file mode 100644
index 0000000..8855bfe
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_code_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_code.et_pb_module{z-index:9;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header.css
new file mode 100644
index 0000000..f851512
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_fullwidth_header .header-image-container img,.et_pb_with_border.et_pb_fullwidth_header .header-logo{border:0 solid #333}.et_pb_fullwidth_header{padding:50px 0;position:relative;background-position:50%;background-size:cover}.et_pb_fullwidth_header p{padding-bottom:0}.et_pb_fullwidth_header_subhead{display:block}.et_pb_fullscreen{padding:0}.et_pb_fullwidth_header .et_pb_fullwidth_header_container{position:relative;z-index:3;width:80%;max-width:1080px;margin-left:auto;margin-right:auto}.et_pb_fullscreen .et_pb_fullwidth_header_container{min-height:100vh;width:80%;max-width:none;height:100%}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center{display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-moz-justify-content:center;-ms-justify-content:center;-ms-flex-pack:center;justify-content:center}.et_pb_fullscreen .et_pb_fullwidth_header_container.center.bottom-bottom{-ms-flex-flow:column wrap;flex-flow:column wrap;-moz-justify-content:flex-end;-ms-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-center{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-bottom .header-content-container{display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-bottom .header-content-container .header-content{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et_pb_fullscreen .et_pb_fullwidth_header_container.center.bottom-center .header-image-container.center{-ms-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-image-container{width:100%;-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content-container.center,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-image-container.center{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et_pb_fullscreen .et_pb_fullwidth_header_container.center .header-content-container.bottom,.et_pb_fullscreen .et_pb_fullwidth_header_container.center .header-image-container.bottom{-ms-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left{display:-moz-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row;flex-flow:row}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right{display:-moz-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row-reverse;flex-flow:row-reverse}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container{width:100%}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container,.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content-container,.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content-container{width:50%;-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container.center,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container.center,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container.center,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container.center{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-image-container.bottom,.et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-content-container.bottom,.et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-image-container.bottom,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container.bottom,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container.bottom,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container.bottom{-ms-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content{text-align:left;margin-left:0}.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content{margin-right:6%}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{text-align:right;margin-right:0;float:right}.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content{margin-left:6%}.et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-content-container.bottom{margin-bottom:80px}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content{padding-left:0}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{padding-right:0}.et_pb_fullwidth_header .header-content{padding:10px;text-align:center}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content{margin:20px auto;width:80%;max-width:800px}.et_pb_fullwidth_header .header-image{text-align:center;margin-left:2%;margin-right:2%;line-height:0}.et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button{margin-top:20px;display:inline-block}.et_pb_fullwidth_header .et_pb_fullwidth_header_container .et_pb_button_one{margin-right:15px}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .et_pb_button_one{margin-right:0}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .et_pb_button_two{margin-left:15px}.et_pb_fullwidth_header .et_pb_fullwidth_header_overlay{content:"";position:absolute;top:0;left:0;bottom:0;right:0;z-index:2;pointer-events:none}.et_pb_fullwidth_header .et_pb_parallax_css{background-repeat:no-repeat;background-position:top;background-size:cover;background-attachment:fixed;position:absolute;width:100%;height:100%;overflow:hidden}.et_pb_fullwidth_header .et_pb_fullwidth_header_scroll{width:100%;min-height:30px;text-align:center;padding-top:10px;padding-bottom:20px;margin:0 auto;position:absolute;z-index:3;right:0;bottom:0;left:0;pointer-events:none}.et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a{display:inline-block;pointer-events:all}.et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a .et-pb-icon{color:#fff;font-size:3.5em}.et_pb_fullwidth_header .scroll-down-container .scroll-down-phone,.et_pb_fullwidth_header .scroll-down-container .scroll-down-tablet{display:none}@media (max-width:980px){.et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down,.et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down-phone{display:none}.et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down-tablet{display:inline-block}}@media (max-width:767px){.et_pb_fullwidth_header .scroll-down-container-phone .scroll-down,.et_pb_fullwidth_header .scroll-down-container-phone .scroll-down-tablet{display:none}.et_pb_fullwidth_header .scroll-down-container-phone .scroll-down-phone{display:inline-block}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right{-ms-flex-flow:column;flex-flow:column;-moz-justify-content:center;-ms-justify-content:center;-ms-flex-pack:center;justify-content:center}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container,.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content-container,.et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content-container{width:100%}.et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content,.et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{margin:20px 2%}}.ie .et_pb_fullwidth_header.et_pb_fullscreen .et_pb_fullwidth_header_container.left,.ie .et_pb_fullwidth_header.et_pb_fullscreen .et_pb_fullwidth_header_container.right{height:100px}.ie .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{float:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header_cpt.css
new file mode 100644
index 0000000..a67dbdb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_header_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_fullwidth_header .header-image-container img,.et-db #et-boc .et-l .et_pb_with_border.et_pb_fullwidth_header .header-logo{border:0 solid #333}.et-db #et-boc .et-l .et_pb_fullwidth_header{padding:50px 0;position:relative;background-position:50%;background-size:cover}.et-db #et-boc .et-l .et_pb_fullwidth_header p{padding-bottom:0}.et-db #et-boc .et-l .et_pb_fullwidth_header_subhead{display:block}.et-db #et-boc .et-l .et_pb_fullscreen{padding:0}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container{position:relative;z-index:3;width:80%;max-width:1080px;margin-left:auto;margin-right:auto}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container{min-height:100vh;width:80%;max-width:none;height:100%}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center{display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-moz-justify-content:center;-ms-justify-content:center;-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center.bottom-bottom{-ms-flex-flow:column wrap;flex-flow:column wrap;-moz-justify-content:flex-end;-ms-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-center{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-bottom .header-content-container{display:-moz-flex;display:-ms-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center.center-bottom .header-content-container .header-content{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center.bottom-center .header-image-container.center{-ms-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-image-container{width:100%;-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content-container.center,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-image-container.center{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.center .header-image-container.bottom{-ms-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left{display:-moz-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row;flex-flow:row}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right{display:-moz-flex;display:-ms-flexbox;display:flex;-ms-flex-flow:row-reverse;flex-flow:row-reverse}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container{width:100%}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container,.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content-container{width:50%;-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container.center,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container.center,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container.center,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container.center{-ms-align-self:center;-ms-flex-item-align:center;align-self:center}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-image-container.bottom,.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-image-container.bottom,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container.bottom,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container.bottom{-ms-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content{text-align:left;margin-left:0}.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content{margin-right:6%}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{text-align:right;margin-right:0;float:right}.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content{margin-left:6%}.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.left .header-content-container.bottom,.et-db #et-boc .et-l .et_pb_fullscreen .et_pb_fullwidth_header_container.right .header-content-container.bottom{margin-bottom:80px}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content{padding-left:0}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{padding-right:0}.et-db #et-boc .et-l .et_pb_fullwidth_header .header-content{padding:10px;text-align:center}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content{margin:20px auto;width:80%;max-width:800px}.et-db #et-boc .et-l .et_pb_fullwidth_header .header-image{text-align:center;margin-left:2%;margin-right:2%;line-height:0}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button{margin-top:20px;display:inline-block}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container .et_pb_button_one{margin-right:15px}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .et_pb_button_one{margin-right:0}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .et_pb_button_two{margin-left:15px}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_overlay{content:"";position:absolute;top:0;left:0;bottom:0;right:0;z-index:2;pointer-events:none}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_parallax_css{background-repeat:no-repeat;background-position:top;background-size:cover;background-attachment:fixed;position:absolute;width:100%;height:100%;overflow:hidden}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll{width:100%;min-height:30px;text-align:center;padding-top:10px;padding-bottom:20px;margin:0 auto;position:absolute;z-index:3;right:0;bottom:0;left:0;pointer-events:none}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a{display:inline-block;pointer-events:all}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_scroll a .et-pb-icon{color:#fff;font-size:3.5em}.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container .scroll-down-phone,.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container .scroll-down-tablet{display:none}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down,.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down-phone{display:none}.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-tablet .scroll-down-tablet{display:inline-block}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-phone .scroll-down,.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-phone .scroll-down-tablet{display:none}.et-db #et-boc .et-l .et_pb_fullwidth_header .scroll-down-container-phone .scroll-down-phone{display:inline-block}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right{-ms-flex-flow:column;flex-flow:column;-moz-justify-content:center;-ms-justify-content:center;-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-image-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-image-container,.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.left .header-content-container,.et-db #et-boc .et-l .et_pb_fullwidth_header.et_pb_header_with_image .et_pb_fullwidth_header_container.right .header-content-container{width:100%}.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.left .header-content,.et-db #et-boc .et-l .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{margin:20px 2%}}.ie .et_pb_fullwidth_header.et_pb_fullscreen .et_pb_fullwidth_header_container.left,.ie .et_pb_fullwidth_header.et_pb_fullscreen .et_pb_fullwidth_header_container.right{height:100px}.ie .et_pb_fullwidth_header .et_pb_fullwidth_header_container.right .header-content{float:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image.css
new file mode 100644
index 0000000..6d24b0b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_image{position:relative;line-height:0}.et_pb_fullwidth_image img{width:100%;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image_cpt.css
new file mode 100644
index 0000000..505157c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_image_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_image{position:relative;line-height:0}.et-db #et-boc .et-l .et_pb_fullwidth_image img{width:100%;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map.css
new file mode 100644
index 0000000..8ea3e50
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_section .et_pb_map_container{margin:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map_cpt.css
new file mode 100644
index 0000000..447a00a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_map_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_map_container{margin:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu.css
new file mode 100644
index 0000000..8dcf990
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_section .et_pb_fullwidth_menu{position:relative}.et_pb_with_border.et_pb_fullwidth_menu .et_pb_menu__logo img{border:0 solid #333}.et_pb_fullwidth_menu.et_hover_enabled:hover{z-index:auto}.et_pb_fullwidth_menu .et-menu-nav,.et_pb_fullwidth_menu .et-menu-nav>ul{float:none}.et_pb_fullwidth_menu .et-menu-nav>ul{padding:0!important;line-height:1.7em}.et_pb_fullwidth_menu .et-menu-nav>ul ul{padding:20px 0;text-align:left}.et_pb_bg_layout_dark.et_pb_fullwidth_menu ul li a{color:#fff}.et_pb_bg_layout_dark.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}.et_pb_fullwidth_menu .et-menu-nav>ul.upwards li ul{bottom:100%;top:auto;border-bottom-width:3px;border-bottom-style:solid;border-top:none;border-bottom-color:#2ea3f2;box-shadow:2px -2px 5px rgba(0,0,0,.1)}.et_pb_fullwidth_menu .et-menu-nav>ul.upwards li ul li ul{bottom:-23px}.et_pb_fullwidth_menu .et-menu-nav>ul.upwards li.mega-menu ul ul{bottom:0;top:auto;border:none}.et_pb_fullwidth_menu .et_pb_menu__wrap{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:stretch;align-items:stretch;-ms-flex-wrap:wrap;flex-wrap:wrap;opacity:1}.et_pb_fullwidth_menu .et_pb_menu__wrap--visible{animation:fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_fullwidth_menu .et_pb_menu__wrap--hidden{opacity:0;animation:fadeOutBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_fullwidth_menu .et_pb_menu__menu{-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-pack:start;justify-content:flex-start}.et_pb_fullwidth_menu .et_pb_menu__menu,.et_pb_fullwidth_menu .et_pb_menu__menu>nav,.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;margin:0}.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li.mega-menu{position:static}.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li>ul{top:calc(100% - 1px);left:0}.et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul.upwards>li>ul{top:auto;bottom:calc(100% - 1px)}.et_pb_fullwidth_menu--with-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:31px 0;white-space:nowrap}.et_pb_fullwidth_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:after{top:50%!important;transform:translateY(-50%)}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul{padding:0!important}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:8px}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{padding-bottom:8px}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-bottom:8px}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:8px}.et_pb_fullwidth_menu .et_pb_menu__icon{-ms-flex:0 0 auto;flex:0 0 auto}.et_pb_fullwidth_menu .et-menu{margin-left:-11px;margin-right:-11px}.et_pb_fullwidth_menu .et-menu>li{padding-left:11px;padding-right:11px}.et_pb_fullwidth_menu--style-left_aligned .et_pb_menu_inner_container,.et_pb_fullwidth_menu--style-left_aligned .et_pb_row{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo-wrap{-ms-flex:0 1 auto;flex:0 1 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo{margin-right:30px}.rtl .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo{margin-right:0;margin-left:30px}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__menu>nav>ul,.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu,.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav,.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-positive:1;flex-grow:1}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav>ul{-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between}.et_pb_fullwidth_menu--style-centered .et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu--style-centered .et_pb_menu__logo,.et_pb_fullwidth_menu--style-centered .et_pb_menu__logo img{margin:0 auto}.et_pb_fullwidth_menu--style-centered .et_pb_menu__menu>nav>ul,.et_pb_fullwidth_menu--style-centered .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:none;margin-bottom:30px}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo,.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo img{margin:0 auto}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot{-ms-flex-align:center!important;align-items:center!important}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo,.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo-wrap{width:100%;height:100%}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot img{max-height:100%}.et_pb_fullwidth_menu .et_pb_menu__logo-slot .et-fb-content-placeholder{min-width:96px}.et_pb_fullwidth_menu .et_pb_menu__search-container{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-line-pack:stretch;align-content:stretch;left:0;bottom:0;width:100%;height:100%;opacity:0;z-index:999}.et_pb_fullwidth_menu .et_pb_menu__search-container--visible{opacity:1;animation:fadeInTop 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_fullwidth_menu .et_pb_menu__search-container--hidden{animation:fadeOutTop 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_fullwidth_menu .et_pb_menu__search-container--disabled{display:none}.et_pb_fullwidth_menu .et_pb_menu__search{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu .et_pb_menu__search-form{-ms-flex:1 1 auto;flex:1 1 auto}.et_pb_fullwidth_menu .et_pb_menu__search-input{border:0;width:100%;color:#333;background:transparent}.et_pb_fullwidth_menu .et_pb_menu__close-search-button{-ms-flex:0 0 auto;flex:0 0 auto}.et_pb_fullwidth_menu .et_pb_menu__close-search-button:after{content:"M";font-size:1.7em}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul{padding:28px 0 0!important}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:5px}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-bottom:29px;white-space:nowrap}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards{padding:0 0 28px!important}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-top:0;margin-bottom:5px}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:29px;padding-bottom:0}.et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a:after{top:auto;bottom:0}@media (min-width:981px){.et_dropdown_animation_fade.et_pb_fullwidth_menu ul li:hover>ul{transition:all .2s ease-in-out}.et_dropdown_animation_slide.et_pb_fullwidth_menu ul li:hover>ul{animation:fadeLeft .4s ease-in-out}.et_dropdown_animation_expand.et_pb_fullwidth_menu ul li:hover>ul{-webkit-transform-origin:0 0;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_dropdown_animation_flip.et_pb_fullwidth_menu ul li ul li:hover>ul{animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_dropdown_animation_flip.et_pb_fullwidth_menu ul li:hover>ul{animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_pb_fullwidth_menu.et_pb_fullwidth_menu_fullwidth .et_pb_row{width:100%;max-width:100%;padding:0 30px!important}}@media (max-width:980px){.et_pb_fullwidth_menu--style-left_aligned .et_pb_menu_inner_container,.et_pb_fullwidth_menu--style-left_aligned .et_pb_row{-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-pack:justify;justify-content:space-between}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo,.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo{margin:0 auto}.et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot{display:none}.et_pb_fullwidth_menu .et_pb_row{min-height:81px}.et_pb_fullwidth_menu .et_pb_menu__menu{display:none}.et_pb_fullwidth_menu .et_mobile_nav_menu{float:none;margin:0 6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_fullwidth_menu .et_mobile_menu{top:100%;padding:5%}.et_pb_fullwidth_menu .et_mobile_menu,.et_pb_fullwidth_menu .et_mobile_menu ul{list-style:none!important;text-align:left}.et_pb_fullwidth_menu .et_mobile_menu ul{padding:0}.et_pb_fullwidth_menu .et_pb_mobile_menu_upwards .et_mobile_menu{top:auto;bottom:100%}.et_pb_bg_layout_dark_tablet.et_pb_fullwidth_menu ul li a{color:#fff}.et_pb_bg_layout_dark_tablet.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}}@media (max-width:767px){.et_pb_bg_layout_dark_phone.et_pb_fullwidth_menu ul li a{color:#fff}.et_pb_bg_layout_dark_phone.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu_cpt.css
new file mode 100644
index 0000000..fba246d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_menu_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_fullwidth_menu{position:relative}.et-db #et-boc .et-l .et_pb_with_border.et_pb_fullwidth_menu .et_pb_menu__logo img{border:0 solid #333}.et-db #et-boc .et-l .et_pb_fullwidth_menu.et_hover_enabled:hover{z-index:auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav,.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul{float:none}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul{padding:0!important;line-height:1.7em}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul ul{padding:20px 0;text-align:left}.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_fullwidth_menu ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul.upwards li ul{bottom:100%;top:auto;border-bottom-width:3px;border-bottom-style:solid;border-top:none;border-bottom-color:#2ea3f2;box-shadow:2px -2px 5px rgba(0,0,0,.1)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul.upwards li ul li ul{bottom:-23px}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu-nav>ul.upwards li.mega-menu ul ul{bottom:0;top:auto;border:none}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__wrap{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:stretch;align-items:stretch;-ms-flex-wrap:wrap;flex-wrap:wrap;opacity:1}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__wrap--visible{animation:fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__wrap--hidden{opacity:0;animation:fadeOutBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu{-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-pack:start;justify-content:flex-start}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu,.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav,.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;margin:0}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li.mega-menu{position:static}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul>li>ul{top:calc(100% - 1px);left:0}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu>nav>ul.upwards>li>ul{top:auto;bottom:calc(100% - 1px)}.et-db #et-boc .et-l .et_pb_fullwidth_menu--with-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:31px 0;white-space:nowrap}.et-db #et-boc .et-l .et_pb_fullwidth_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:after{top:50%!important;transform:translateY(-50%)}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul{padding:0!important}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:8px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{padding-bottom:8px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-bottom:8px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:8px}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__icon{-ms-flex:0 0 auto;flex:0 0 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu{margin-left:-11px;margin-right:-11px}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et-menu>li{padding-left:11px;padding-right:11px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu_inner_container,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_row{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo-wrap{-ms-flex:0 1 auto;flex:0 1 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo{margin-right:30px}.rtl .et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__logo{margin-right:0;margin-left:30px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-positive:1;flex-grow:1}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav>ul{-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-centered .et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-centered .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-centered .et_pb_menu__logo img{margin:0 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-centered .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-centered .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:none;margin-bottom:30px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo img{margin:0 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot{-ms-flex-align:center!important;align-items:center!important}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo-wrap{width:100%;height:100%}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot img{max-height:100%}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__logo-slot .et-fb-content-placeholder{min-width:96px}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-container{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-line-pack:stretch;align-content:stretch;left:0;bottom:0;width:100%;height:100%;opacity:0;z-index:999}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-container--visible{opacity:1;animation:fadeInTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-container--hidden{animation:fadeOutTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-container--disabled{display:none}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-form{-ms-flex:1 1 auto;flex:1 1 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__search-input{border:0;width:100%;color:#333;background:transparent}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__close-search-button{-ms-flex:0 0 auto;flex:0 0 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__close-search-button:after{content:"M";font-size:1.7em}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul{padding:28px 0 0!important}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:5px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-bottom:29px;white-space:nowrap}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards{padding:0 0 28px!important}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-top:0;margin-bottom:5px}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:29px;padding-bottom:0}.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a:after{top:auto;bottom:0}@media (min-width:981px){.et-db #et-boc .et-l .et_dropdown_animation_fade.et_pb_fullwidth_menu ul li:hover>ul{transition:all .2s ease-in-out}.et-db #et-boc .et-l .et_dropdown_animation_slide.et_pb_fullwidth_menu ul li:hover>ul{animation:fadeLeft .4s ease-in-out}.et-db #et-boc .et-l .et_dropdown_animation_expand.et_pb_fullwidth_menu ul li:hover>ul{-webkit-transform-origin:0 0;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_dropdown_animation_flip.et_pb_fullwidth_menu ul li ul li:hover>ul{animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_dropdown_animation_flip.et_pb_fullwidth_menu ul li:hover>ul{animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_pb_fullwidth_menu.et_pb_fullwidth_menu_fullwidth .et_pb_row{width:100%;max-width:100%;padding:0 30px!important}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu_inner_container,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_row{-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo{margin:0 auto}.et-db #et-boc .et-l .et_pb_fullwidth_menu--style-inline_centered_logo .et_pb_menu__logo-slot{display:none}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_row{min-height:81px}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_menu__menu{display:none}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_nav_menu{float:none;margin:0 6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu{top:100%;padding:5%}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu,.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu ul{list-style:none!important;text-align:left}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu ul{padding:0}.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_pb_mobile_menu_upwards .et_mobile_menu{top:auto;bottom:100%}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_fullwidth_menu ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_fullwidth_menu ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_fullwidth_menu ul li a:hover{color:hsla(0,0%,100%,.8)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio.css
new file mode 100644
index 0000000..15979c6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .meta{z-index:3;opacity:1}.et_pb_fullwidth_portfolio{margin:0;position:relative;overflow:hidden}.et_pb_fullwidth_portfolio .et_overlay{border:none;pointer-events:auto}.et_pb_fullwidth_portfolio .et_pb_carousel_group{display:none;float:left;width:100%;position:relative}.et_pb_fullwidth_portfolio .et_pb_carousel_group.active,.et_pb_fullwidth_portfolio.et_pb_fullwidth_portfolio_grid .et_pb_carousel_group{display:block}.et_pb_fullwidth_portfolio .et_pb_portfolio_items{width:100%;position:relative;overflow:hidden;left:0;top:0}.et_pb_fullwidth_portfolio .et_pb_portfolio_item{float:left;margin:0;height:0;width:20%;position:relative}.et_pb_fullwidth_portfolio .et_pb_portfolio_image{position:relative;overflow:hidden;width:100%;height:100%;margin:0}.et_pb_with_border .et_pb_portfolio_image,.et_pb_with_border .et_pb_portfolio_item{border:0 solid #333}.et_pb_fullwidth_portfolio .et_pb_portfolio_image img{max-width:100%;height:inherit;min-height:100%;min-width:100%}.et_pb_fullwidth_portfolio .et_pb_portfolio_image.landscape img{height:100%}.et_pb_fullwidth_portfolio .et_pb_portfolio_image.portrait img{width:100%}.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_overlay,.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .meta{z-index:3;opacity:1}.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay:before{top:45%;transition:all .4s}.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_overlay:before{top:33%}.et_pb_fullwidth_portfolio.et_pb_bg_layout_dark .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et_pb_fullwidth_portfolio.et_pb_bg_layout_dark .meta p{color:#fff}.et_pb_fullwidth_portfolio .et_pb_portfolio_image .meta{position:absolute;opacity:0;z-index:-1;top:0;left:0;width:100%;height:100%;transition:all .3s;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0)}.et_pb_fullwidth_portfolio .et_pb_portfolio_title,.et_pb_fullwidth_portfolio h2.et_pb_portfolio_title{text-align:center;margin:30px 0;position:relative}.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_pb_module_header,.et_pb_fullwidth_portfolio .et_pb_portfolio_image h3,.et_pb_fullwidth_portfolio .et_pb_portfolio_image p{display:block;position:relative;float:left;z-index:5;width:100%;text-align:center;transition:all .3s;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0)}.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_pb_module_header,.et_pb_fullwidth_portfolio .et_pb_portfolio_image h3{margin-top:40%;padding:0 5px}.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay+p.post-meta{position:absolute;top:50%;left:0;width:100%;transform:translateY(-50%)}.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_pb_module_header,.et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover h3{margin-top:35%}.et_pb_fullwidth_portfolio:hover .et-pb-arrow-prev{left:22px;opacity:1}.et_pb_fullwidth_portfolio:hover .et-pb-arrow-next{right:22px;opacity:1}.et_pb_fullwidth_portfolio .et_pb_no_results .entry{height:285.75px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}@media (max-width:980px){.et_pb_bg_layout_light_tablet.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:hsla(0,0%,100%,.9)}.et_pb_bg_layout_light_tablet.et_pb_fullwidth_portfolio .meta p{color:#666}.et_pb_bg_layout_dark_tablet.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et_pb_bg_layout_dark_tablet.et_pb_fullwidth_portfolio .meta p{color:#fff}}@media (max-width:767px){.et_pb_bg_layout_light_phone.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:hsla(0,0%,100%,.9)}.et_pb_bg_layout_light_phone.et_pb_fullwidth_portfolio .meta p{color:#666}.et_pb_bg_layout_dark_phone.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et_pb_bg_layout_dark_phone.et_pb_fullwidth_portfolio .meta p{color:#fff}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio_cpt.css
new file mode 100644
index 0000000..1c7073f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_portfolio_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .meta{z-index:3;opacity:1}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio{margin:0;position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_overlay{border:none;pointer-events:auto}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_carousel_group{display:none;float:left;width:100%;position:relative}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_carousel_group.active,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio.et_pb_fullwidth_portfolio_grid .et_pb_carousel_group{display:block}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_items{width:100%;position:relative;overflow:hidden;left:0;top:0}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_item{float:left;margin:0;height:0;width:20%;position:relative}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image{position:relative;overflow:hidden;width:100%;height:100%;margin:0}.et-db #et-boc .et-l .et_pb_with_border .et_pb_portfolio_image,.et-db #et-boc .et-l .et_pb_with_border .et_pb_portfolio_item{border:0 solid #333}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image img{max-width:100%;height:inherit;min-height:100%;min-width:100%}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image.landscape img{height:100%}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image.portrait img{width:100%}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_overlay,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .meta{z-index:3;opacity:1}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay:before{top:45%;transition:all .4s}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_overlay:before{top:33%}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio.et_pb_bg_layout_dark .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio.et_pb_bg_layout_dark .meta p{color:#fff}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image .meta{position:absolute;opacity:0;z-index:-1;top:0;left:0;width:100%;height:100%;transition:all .3s;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0)}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_title,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio h2.et_pb_portfolio_title{text-align:center;margin:30px 0;position:relative}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_pb_module_header,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image h3,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image p{display:block;position:relative;float:left;z-index:5;width:100%;text-align:center;transition:all .3s;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0)}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_pb_module_header,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image h3{margin-top:40%;padding:0 5px}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay+p.post-meta{position:absolute;top:50%;left:0;width:100%;transform:translateY(-50%)}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover .et_pb_module_header,.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_portfolio_image:hover h3{margin-top:35%}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio:hover .et-pb-arrow-prev{left:22px;opacity:1}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio:hover .et-pb-arrow-next{right:22px;opacity:1}.et-db #et-boc .et-l .et_pb_fullwidth_portfolio .et_pb_no_results .entry{height:285.75px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:hsla(0,0%,100%,.9)}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_fullwidth_portfolio .meta p{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_fullwidth_portfolio .meta p{color:#fff}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:hsla(0,0%,100%,.9)}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_fullwidth_portfolio .meta p{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_fullwidth_portfolio .et_pb_portfolio_image .et_overlay{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_fullwidth_portfolio .meta p{color:#fff}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider.css
new file mode 100644
index 0000000..99dd1c0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_post_slider.et_pb_slider .et_pb_container{width:80%;max-width:1080px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider_cpt.css
new file mode 100644
index 0000000..0912050
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_slider_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_post_slider.et_pb_slider .et_pb_container{width:80%;max-width:1080px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title.css
new file mode 100644
index 0000000..e7019d2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title.css
@@ -0,0 +1 @@
+.et_pb_fullwidth_section .et_pb_post_title{padding:6% 0;position:relative}.et_pb_fullwidth_section .et_pb_post_title.et_pb_image_above{padding-top:0}.et_pb_fullwidth_section .et_pb_post_title.et_pb_featured_bg .et_pb_title_container,.et_pb_fullwidth_section .et_pb_post_title.et_pb_image_below{padding-bottom:0}.et_pb_fullwidth_section .et_pb_title_container,.et_pb_fullwidth_section .et_pb_title_featured_container{width:80%;max-width:1080px;margin:auto;display:block}@media (max-width:980px){.et_pb_fullwidth_section .et_pb_post_title{padding:80px 0}}.single-post.et_left_sidebar .et_pb_fullwidth_section .et_pb_post_title,.single-post.et_right_sidebar .et_pb_fullwidth_section .et_pb_post_title{padding-top:0}.single-post.et_right_sidebar .et_pb_fullwidth_section .et_pb_post_title.et_pb_featured_bg{padding-top:6%}.single .et_pb_fullwidth_section .et_pb_title_featured_container,.single.et_right_sidebar .et_pb_fullwidth_section .et_pb_title_container{width:100%;max-width:100%;padding-top:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title_cpt.css
new file mode 100644
index 0000000..c0f47a8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_post_title_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_post_title{padding:6% 0;position:relative}.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_post_title.et_pb_image_above{padding-top:0}.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_post_title.et_pb_featured_bg .et_pb_title_container,.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_post_title.et_pb_image_below{padding-bottom:0}.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_title_container,.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_title_featured_container{width:80%;max-width:1080px;margin:auto;display:block}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_fullwidth_section .et_pb_post_title{padding:80px 0}}.single-post.et_left_sidebar .et_pb_fullwidth_section .et_pb_post_title,.single-post.et_right_sidebar .et_pb_fullwidth_section .et_pb_post_title{padding-top:0}.single-post.et_right_sidebar .et_pb_fullwidth_section .et_pb_post_title.et_pb_featured_bg{padding-top:6%}.single .et_pb_fullwidth_section .et_pb_title_featured_container,.single.et_right_sidebar .et_pb_fullwidth_section .et_pb_title_container{width:100%;max-width:100%;padding-top:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_slider.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_slider.css
new file mode 100644
index 0000000..e69de29
diff --git a/includes/builder/feature/dynamic-assets/assets/css/fullwidth_slider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/fullwidth_slider_cpt.css
new file mode 100644
index 0000000..e69de29
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gallery.css b/includes/builder/feature/dynamic-assets/assets/css/gallery.css
new file mode 100644
index 0000000..78c3af8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gallery.css
@@ -0,0 +1 @@
+.et_pb_gallery_item{word-wrap:break-word}.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#2ea3f2}p.et_pb_gallery_caption{line-height:1.7}.et_pb_with_border .et_pb_gallery_image,.et_pb_with_border .et_pb_gallery_item{border:0 solid #333}.et_pb_gallery_grid .et_pb_gallery_item .et_pb_gallery_title,.et_pb_gallery_grid .et_pb_gallery_item h3{margin-top:10px}.et_pb_gallery_image:hover .et_overlay:before{top:50%}.et_pb_gallery_image:hover .et_overlay{z-index:3;opacity:1}.et_pb_slider.et_pb_gallery_fullwidth span.et_overlay{display:none}.et_pb_gallery_fullwidth .et_pb_gallery_item{display:none;float:left;margin-right:-100%;position:relative}.et_pb_gallery_fullwidth .et_pb_gallery_image img,.et_pb_gallery_fullwidth .et_pb_gallery_item{width:100%}.et_pb_gallery_fullwidth .et_pb_gallery_item:first-child{display:block}.et_pb_gallery .et_pb_gallery_items,.et_pb_gallery.et_pb_section_parallax{width:100%}.et_pb_gallery.et_pb_section_parallax:hover{overflow:hidden}.et_pb_gallery_grid .et_pb_gallery_items{transition:height .2s ease-in-out}.et_pb_gallery_grid .et_pb_gallery_image{position:relative}.et_pb_gallery_image{line-height:0}.et_pb_gallery_grid .et_pb_gallery_item{display:none}.et_pb_text_align_left.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et_pb_text_align_center.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et_pb_text_align_right.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et_pb_text_align_justified.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}.et_pb_gallery_grid .et_pb_gallery_item{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_gallery .et_pb_gallery_pagination{width:100%;border-top:1px solid #e2e2e2;position:relative}.et_pb_gallery .et_pb_gallery_pagination ul{list-style-type:none!important;text-align:right;margin:0;padding:0}.et_pb_gallery .et_pb_gallery_pagination ul li{display:inline-block;padding:10px}.et_pb_gallery .et_pb_gallery_pagination ul li a{font-size:16px;line-height:16px;color:#999}.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et_pb_gallery_pagination ul:after{content:"";width:100%;height:0;display:inline-block}.et_pb_gallery.et_pb_bg_layout_dark .et_pb_gallery_pagination ul li a{color:#fff}.et_pb_gallery .et_pb_bg_layout_light .et-pb-arrow-next,.et_pb_gallery .et_pb_bg_layout_light .et-pb-arrow-prev{color:inherit}.et_pb_slider.gallery-not-found .et_pb_slide,.et_pb_slider.gallery-not-found .et_pb_slide .et_pb_container{min-height:0!important}@media (min-width:981px){.et_pb_gallery_grid .et_pb_gallery_item img{width:100%}.et_pb_gallery_grid .et_pb_gallery_item .et_pb_gallery_title,.et_pb_gallery_grid .et_pb_gallery_item h3{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et_pb_gallery_grid .et_pb_gallery_item h3{font-size:18px}.et_pb_gallery_item .et_pb_gallery_caption{font-size:14px;margin:.4em 0 0}.et_pb_row [class*=et_pb_gutters] .et_pb_gallery .et_pb_gallery_items .et_pb_gallery_item.et_pb_grid_item.last_in_row{margin-right:0}}@media (max-width:980px){.et_pb_bg_layout_light_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#999}.et_pb_bg_layout_light_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et_pb_bg_layout_dark_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#fff}.et_pb_text_align_left-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et_pb_text_align_center-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et_pb_text_align_right-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et_pb_text_align_justified-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}}@media (max-width:767px){.et_pb_bg_layout_light_phone.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#999}.et_pb_bg_layout_light_phone.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et_pb_bg_layout_dark_phone.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#fff}.et_pb_text_align_left-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et_pb_text_align_center-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et_pb_text_align_right-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et_pb_text_align_justified-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}}.safari .et_pb_gallery_grid .et_pb_gallery_image{overflow:visible}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gallery_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gallery_cpt.css
new file mode 100644
index 0000000..adfd0ee
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gallery_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_gallery_item{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#2ea3f2}.et-db #et-boc .et-l p.et_pb_gallery_caption{line-height:1.7}.et-db #et-boc .et-l .et_pb_with_border .et_pb_gallery_image,.et-db #et-boc .et-l .et_pb_with_border .et_pb_gallery_item{border:0 solid #333}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item .et_pb_gallery_title,.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item h3{margin-top:10px}.et-db #et-boc .et-l .et_pb_gallery_image:hover .et_overlay:before{top:50%}.et-db #et-boc .et-l .et_pb_gallery_image:hover .et_overlay{z-index:3;opacity:1}.et-db #et-boc .et-l .et_pb_slider.et_pb_gallery_fullwidth span.et_overlay{display:none}.et-db #et-boc .et-l .et_pb_gallery_fullwidth .et_pb_gallery_item{display:none;float:left;margin-right:-100%;position:relative}.et-db #et-boc .et-l .et_pb_gallery_fullwidth .et_pb_gallery_image img,.et-db #et-boc .et-l .et_pb_gallery_fullwidth .et_pb_gallery_item{width:100%}.et-db #et-boc .et-l .et_pb_gallery_fullwidth .et_pb_gallery_item:first-child{display:block}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_items,.et-db #et-boc .et-l .et_pb_gallery.et_pb_section_parallax{width:100%}.et-db #et-boc .et-l .et_pb_gallery.et_pb_section_parallax:hover{overflow:hidden}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_items{transition:height .2s ease-in-out}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_image{position:relative}.et-db #et-boc .et-l .et_pb_gallery_image{line-height:0}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item{display:none}.et-db #et-boc .et-l .et_pb_text_align_left.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination{width:100%;border-top:1px solid #e2e2e2;position:relative}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul{list-style-type:none!important;text-align:right;margin:0;padding:0}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul li{display:inline-block;padding:10px}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul li a{font-size:16px;line-height:16px;color:#999}.et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_gallery_pagination ul:after{content:"";width:100%;height:0;display:inline-block}.et-db #et-boc .et-l .et_pb_gallery.et_pb_bg_layout_dark .et_pb_gallery_pagination ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_gallery .et_pb_bg_layout_light .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_gallery .et_pb_bg_layout_light .et-pb-arrow-prev{color:inherit}.et-db #et-boc .et-l .et_pb_slider.gallery-not-found .et_pb_slide,.et-db #et-boc .et-l .et_pb_slider.gallery-not-found .et_pb_slide .et_pb_container{min-height:0!important}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item img{width:100%}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item .et_pb_gallery_title,.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item h3{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_gallery_grid .et_pb_gallery_item h3{font-size:18px}.et-db #et-boc .et-l .et_pb_gallery_item .et_pb_gallery_caption{font-size:14px;margin:.4em 0 0}.et-db #et-boc .et-l .et_pb_row [class*=et_pb_gutters] .et_pb_gallery .et_pb_gallery_items .et_pb_gallery_item.et_pb_grid_item.last_in_row{margin-right:0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#999}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_text_align_left-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-tablet.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#999}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_gallery .et_pb_gallery_pagination ul li a.active{color:#82c0c7}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_gallery .et_pb_gallery_pagination ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_text_align_left-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:left}.et-db #et-boc .et-l .et_pb_text_align_center-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:center}.et-db #et-boc .et-l .et_pb_text_align_right-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:right}.et-db #et-boc .et-l .et_pb_text_align_justified-phone.et_pb_gallery .et_pb_gallery_pagination ul{text-align:justify}}.safari .et_pb_gallery_grid .et_pb_gallery_image{overflow:visible}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/grid_items.css
new file mode 100644
index 0000000..c7af90b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/grid_items.css
@@ -0,0 +1 @@
+.et_pb_grid_item.first_in_row{clear:both}.et_pb_grid_item:not(.first_in_row){clear:none}@media (min-width:981px){.et_pb_grid_item{float:left;position:relative}}@media (max-width:980px){.et_pb_column .et_pb_grid_item{margin:0 5.5% 7.5% 0;width:29.666%;clear:none;float:left}.et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item{margin:0 0 11.5%;width:100%}}@media (max-width:767px){.et_pb_column .et_pb_grid_item{margin:0 5.5% 9.5% 0;width:47.25%;clear:none;float:left}.et_pb_column .et_pb_grid_item:nth-child(3n){margin-right:5.5%}.et_pb_column .et_pb_grid_item:nth-child(3n+1){clear:none}.et_pb_column .et_pb_grid_item .last_in_row,.et_pb_column .et_pb_grid_item:nth-child(2n){margin-right:0}.et_pb_column .et_pb_grid_item .first_in_row,.et_pb_column .et_pb_grid_item:nth-child(odd){clear:both}}@media (max-width:479px){.et_pb_column .et_pb_grid_item{margin:0 0 11.5%;width:100%}.et_pb_column .et_pb_grid_item .on_last_row{margin-bottom:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item{margin:0 0 11.5%;width:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/grid_items_cpt.css
new file mode 100644
index 0000000..d0ab285
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/grid_items_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_grid_item.first_in_row{clear:both}.et-db #et-boc .et-l .et_pb_grid_item:not(.first_in_row){clear:none}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_grid_item{float:left;position:relative}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item{margin:0 5.5% 7.5% 0;width:29.666%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item{margin:0 0 11.5%;width:100%}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item{margin:0 5.5% 9.5% 0;width:47.25%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n){margin-right:5.5%}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n+1){clear:none}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item .last_in_row,.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item .first_in_row,.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(odd){clear:both}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item{margin:0 0 11.5%;width:100%}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item .on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item{margin:0 0 11.5%;width:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1-rtl.css
new file mode 100644
index 0000000..d1bf8eb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:0}.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1.css
new file mode 100644
index 0000000..7d98219
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters1 #left-area{width:75%}.et_pb_gutter.et_pb_gutters1 #sidebar{width:25%}.et_pb_gutters1.et_right_sidebar #left-area{padding-right:0}.et_pb_gutters1.et_left_sidebar #left-area{padding-left:0}.et_pb_gutter.et_pb_gutters1.et_right_sidebar #main-content .container:before{right:25%!important}.et_pb_gutter.et_pb_gutters1.et_left_sidebar #main-content .container:before{left:25%!important}.et_pb_gutters1 .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column{margin-right:0}.et_pb_gutters1 .et_pb_column_4_4,.et_pb_gutters1.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_4,.et_pb_gutters1.et_pb_row .et_pb_column_3_4{width:75%}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_3,.et_pb_gutters1.et_pb_row .et_pb_column_2_3{width:66.667%}.et_pb_gutters1 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_5,.et_pb_gutters1.et_pb_row .et_pb_column_3_5{width:60%}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2,.et_pb_gutters1.et_pb_row .et_pb_column_1_2{width:50%}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_5,.et_pb_gutters1.et_pb_row .et_pb_column_2_5{width:40%}.et_pb_gutters1 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_3,.et_pb_gutters1.et_pb_row .et_pb_column_1_3{width:33.3333%}.et_pb_gutters1 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_4,.et_pb_gutters1.et_pb_row .et_pb_column_1_4{width:25%}.et_pb_gutters1 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_5,.et_pb_gutters1.et_pb_row .et_pb_column_1_5{width:20%}.et_pb_gutters1 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_6,.et_pb_gutters1.et_pb_row .et_pb_column_1_6{width:16.6667%}.et_pb_gutters1 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_full_width_page.woocommerce-page ul.products li.product{width:25%;margin-right:0;margin-bottom:0}.et_pb_gutters1.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters1.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:33.333%;margin-right:0}}@media (max-width:980px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:50%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:33.333%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:50%;margin-right:0}}@media (max-width:767px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}}@media (max-width:479px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column{margin:0!important}.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt-rtl.css
new file mode 100644
index 0000000..8a69fdf
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:0}.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt.css
new file mode 100644
index 0000000..76f6f81
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters1 #left-area{width:75%}.et_pb_gutter.et_pb_gutters1 #sidebar{width:25%}.et_pb_gutters1.et_right_sidebar #left-area{padding-right:0}.et_pb_gutters1.et_left_sidebar #left-area{padding-left:0}.et_pb_gutter.et_pb_gutters1.et_right_sidebar #main-content .container:before{right:25%!important}.et_pb_gutter.et_pb_gutters1.et_left_sidebar #main-content .container:before{left:25%!important}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4{width:75%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3{width:66.667%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5{width:60%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2{width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5{width:40%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3{width:33.3333%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4{width:25%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5{width:20%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6{width:16.6667%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_full_width_page.woocommerce-page ul.products li.product{width:25%;margin-right:0;margin-bottom:0}.et_pb_gutters1.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters1.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:33.333%;margin-right:0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:33.333%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:50%;margin-right:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column{margin:0!important}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items.css
new file mode 100644
index 0000000..887fca2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget{width:25%;margin-right:0;margin-bottom:0}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:33.333%;margin-right:0}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget{width:33.333%;margin-right:0;margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et_pb_gutters1 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:0}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters1 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters1 .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item .et_pb_module_header:last-child,.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item h2:last-child{line-height:normal}}@media (max-width:980px){.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:33.333%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{width:50%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0;width:100%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{margin:0}}@media (max-width:767px){.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:50%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1 .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n){margin-right:0}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1){clear:none}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0;width:100%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item{margin:0;width:50%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{margin:0;width:100%}}@media (max-width:479px){.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{width:100%;margin:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items_cpt.css
new file mode 100644
index 0000000..beaecb0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget{width:25%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:33.333%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget{width:33.333%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item .et_pb_module_header:last-child,.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item h2:last-child{line-height:normal}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:33.333%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0;width:100%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0;width:100%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item{margin:0;width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0;width:100%}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{width:100%;margin:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty-rtl.css
new file mode 100644
index 0000000..abe8358
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:0}.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty.css
new file mode 100644
index 0000000..b01abc1
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:50%;margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:33.33333%;margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:50%;margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:25%;margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:33.33333%;margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:50%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:33.333%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt-rtl.css
new file mode 100644
index 0000000..e5e4a3d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:0}.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt.css
new file mode 100644
index 0000000..2db9e7f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters1 #left-area{width:75%}.et_pb_gutter.et_pb_gutters1 #sidebar{width:25%}.et_pb_gutters1.et_right_sidebar #left-area{padding-right:0}.et_pb_gutters1.et_left_sidebar #left-area{padding-left:0}.et_pb_gutter.et_pb_gutters1.et_right_sidebar #main-content .container:before{right:25%!important}.et_pb_gutter.et_pb_gutters1.et_left_sidebar #main-content .container:before{left:25%!important}.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:33.33333%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:25%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:33.33333%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:33.333%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:50%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:33.333%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:50%;margin-right:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column{margin:0!important}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_module{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items.css
new file mode 100644
index 0000000..ff562f0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:33.333%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:33.333%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:50%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:0;width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:50%;margin-right:0;margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1 .et_pb_grid_item.on_last_row,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_widget,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_widget,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item .et_pb_module_header:last-child,.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item h2:last-child{line-height:normal}}@media (max-width:980px){.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:33.333%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{width:50%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0;width:100%}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{margin:0}}@media (max-width:767px){.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:50%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1 .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n){margin-right:0}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1){clear:none}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0;width:100%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item{margin:0;width:50%}.et_pb_gutters1 .et_pb_column .et_pb_grid_item.last_in_row,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{margin:0;width:100%}}@media (max-width:479px){.et_pb_gutters1 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1 .et_pb_column .et_pb_grid_item,.et_pb_gutters1 .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_column .et_pb_widget,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget{width:100%;margin:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items_cpt.css
new file mode 100644
index 0000000..a9b6403
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters1_specialty_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:33.333%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:33.333%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:50%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:0;width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_2_9 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:50%;margin-right:0;margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters1>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters1 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item .et_pb_module_header:last-child,.et_pb_gutters1 .et_pb_portfolio_grid .et_pb_grid_item h2:last-child{line-height:normal}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:33.333%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0;width:100%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product{margin:0;width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item:nth-child(3n+1),.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0;width:100%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item{margin:0;width:50%}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item.last_in_row,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0;width:100%}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters1.et_pb_row .et_pb_column .et_pb_widget,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters1.et-db #et-boc .et-l .et_pb_column .et_pb_widget{width:100%;margin:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2-rtl.css
new file mode 100644
index 0000000..53e5e4d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:3%}.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.04%}.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.569%}.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2.css
new file mode 100644
index 0000000..82b2de9
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters2 #left-area{width:77.25%}.et_pb_gutter.et_pb_gutters2 #sidebar{width:22.75%}.et_pb_gutters2.et_right_sidebar #left-area{padding-right:3%}.et_pb_gutters2.et_left_sidebar #left-area{padding-left:3%}.et_pb_gutter.et_pb_gutters2.et_right_sidebar #main-content .container:before{right:22.75%!important}.et_pb_gutter.et_pb_gutters2.et_left_sidebar #main-content .container:before{left:22.75%!important}.et_pb_gutters2 .et_pb_column,.et_pb_gutters2.et_pb_row .et_pb_column{margin-right:3%}.et_pb_gutters2 .et_pb_column_4_4,.et_pb_gutters2.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:1.5%}.et_pb_gutters2 .et_pb_column_3_4,.et_pb_gutters2.et_pb_row .et_pb_column_3_4{width:74.25%}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:2.02%}.et_pb_gutters2 .et_pb_column_2_3,.et_pb_gutters2.et_pb_row .et_pb_column_2_3{width:65.667%}.et_pb_gutters2 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:2.284%}.et_pb_gutters2 .et_pb_column_3_5,.et_pb_gutters2.et_pb_row .et_pb_column_3_5{width:58.8%}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:2.551%}.et_pb_gutters2 .et_pb_column_1_2,.et_pb_gutters2.et_pb_row .et_pb_column_1_2{width:48.5%}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:3.093%}.et_pb_gutters2 .et_pb_column_2_5,.et_pb_gutters2.et_pb_row .et_pb_column_2_5{width:38.2%}.et_pb_gutters2 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:3.927%}.et_pb_gutters2 .et_pb_column_1_3,.et_pb_gutters2.et_pb_row .et_pb_column_1_3{width:31.3333%}.et_pb_gutters2 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et_pb_gutters2 .et_pb_column_1_4,.et_pb_gutters2.et_pb_row .et_pb_column_1_4{width:22.75%}.et_pb_gutters2 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et_pb_gutters2 .et_pb_column_1_5,.et_pb_gutters2.et_pb_row .et_pb_column_1_5{width:17.6%}.et_pb_gutters2 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:8.523%}.et_pb_gutters2 .et_pb_column_1_6,.et_pb_gutters2.et_pb_row .et_pb_column_1_6{width:14.1667%}.et_pb_gutters2 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}.et_pb_gutters2 .et_full_width_page.woocommerce-page ul.products li.product{width:22.75%;margin-right:3%;margin-bottom:3%}.et_pb_gutters2.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters2.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:30.64%;margin-right:4.04%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt-rtl.css
new file mode 100644
index 0000000..fc3d598
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:3%}.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.04%}.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.569%}.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt.css
new file mode 100644
index 0000000..ac8e6c3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters2 #left-area{width:77.25%}.et_pb_gutter.et_pb_gutters2 #sidebar{width:22.75%}.et_pb_gutters2.et_right_sidebar #left-area{padding-right:3%}.et_pb_gutters2.et_left_sidebar #left-area{padding-left:3%}.et_pb_gutter.et_pb_gutters2.et_right_sidebar #main-content .container:before{right:22.75%!important}.et_pb_gutter.et_pb_gutters2.et_left_sidebar #main-content .container:before{left:22.75%!important}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column{margin-right:3%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_module{margin-bottom:1.5%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4{width:74.25%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_module{margin-bottom:2.02%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3{width:65.667%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_module{margin-bottom:2.284%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5{width:58.8%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_module{margin-bottom:2.551%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2{width:48.5%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_module{margin-bottom:3.093%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5{width:38.2%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_module{margin-bottom:3.927%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3{width:31.3333%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4{width:22.75%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5{width:17.6%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_module{margin-bottom:8.523%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6{width:14.1667%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}.et_pb_gutters2 .et_full_width_page.woocommerce-page ul.products li.product{width:22.75%;margin-right:3%;margin-bottom:3%}.et_pb_gutters2.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters2.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:30.64%;margin-right:4.04%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items.css
new file mode 100644
index 0000000..34f6758
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters2 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters2 .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget{width:22.75%;margin-right:3%;margin-bottom:3%}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:31.333%;margin-right:3%}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:9.574%}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:47.98%;margin-right:4.04%}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:8.081%}.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et_pb_gutters2 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:47.716%;margin-right:4.569%}.et_pb_gutters2 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:9.137%}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget{width:47.449%;margin-right:5.102%;margin-bottom:5.102%}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:5.102%}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:6.186%}.et_pb_gutters2 .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:7.853%}.et_pb_gutters2 .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:9.574%}.et_pb_gutters2 .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:13.187%}.et_pb_gutters2 .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:17.045%}.et_pb_gutters2 .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:21.176%}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters2 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters2 .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters2 .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items_cpt.css
new file mode 100644
index 0000000..a95bf31
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget{width:22.75%;margin-right:3%;margin-bottom:3%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:31.333%;margin-right:3%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:9.574%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:47.98%;margin-right:4.04%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:8.081%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:47.716%;margin-right:4.569%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:9.137%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget{width:47.449%;margin-right:5.102%;margin-bottom:5.102%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:5.102%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:6.186%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:7.853%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:9.574%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:13.187%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:17.045%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:21.176%}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty-rtl.css
new file mode 100644
index 0000000..f095302
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.04%}.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.569%}.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty.css
new file mode 100644
index 0000000..7e88eee
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:3.093%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:2.02%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:47.9798%;margin-right:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:30.63973%;margin-right:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:2.284%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:47.716%;margin-right:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:21.574%;margin-right:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:30.28765%;margin-right:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:10.588%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:3.093%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:46.90722%;margin-right:6.186%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:29.21%;margin-right:6.186%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt-rtl.css
new file mode 100644
index 0000000..fd8de99
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.04%}.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:4.569%}.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt.css
new file mode 100644
index 0000000..73e8ccd
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters2 #left-area{width:77.25%}.et_pb_gutter.et_pb_gutters2 #sidebar{width:22.75%}.et_pb_gutters2.et_right_sidebar #left-area{padding-right:3%}.et_pb_gutters2.et_left_sidebar #left-area{padding-left:3%}.et_pb_gutter.et_pb_gutters2.et_right_sidebar #main-content .container:before{right:22.75%!important}.et_pb_gutter.et_pb_gutters2.et_left_sidebar #main-content .container:before{left:22.75%!important}.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et_pb_gutters2 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters2.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:3.093%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:2.02%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:47.9798%;margin-right:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:30.63973%;margin-right:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:2.284%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:47.716%;margin-right:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:4.787%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:21.574%;margin-right:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:30.28765%;margin-right:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:10.588%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:3.093%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:46.90722%;margin-right:6.186%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:6.593%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:29.21%;margin-right:6.186%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:10.588%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items.css
new file mode 100644
index 0000000..a86f2a5
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters2 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:47.98%;margin-right:4.04%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:8.081%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:8.081%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:13.187%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:47.716%;margin-right:4.569%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:9.137%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:9.574%;width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:21.176%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:21.176%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:6.186%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:13.187%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:21.176%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2 .et_pb_grid_item.on_last_row,.et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items_cpt.css
new file mode 100644
index 0000000..3b54f3d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters2_specialty_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:30.64%;margin-right:4.04%;margin-bottom:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:47.98%;margin-right:4.04%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:8.081%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:8.081%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:13.187%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:47.716%;margin-right:4.569%;margin-bottom:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:47.716%;margin-right:4.569%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:9.137%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:9.574%;width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:21.176%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:21.176%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:46.907%;margin-right:6.186%;margin-bottom:6.186%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:6.186%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:13.187%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:21.176%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters2 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et_pb_gutters2.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3-rtl.css
new file mode 100644
index 0000000..ec2f3cc
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:5.5%}.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:7.47%}.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:8.483%}.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3.css
new file mode 100644
index 0000000..b617c39
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3 .et_pb_column,.et_pb_gutters3.et_pb_row .et_pb_column{margin-right:5.5%}.et_pb_gutters3 .et_pb_column_4_4,.et_pb_gutters3.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:2.75%}.et_pb_gutters3 .et_pb_column_3_4,.et_pb_gutters3.et_pb_row .et_pb_column_3_4{width:73.625%}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:3.735%}.et_pb_gutters3 .et_pb_column_2_3,.et_pb_gutters3.et_pb_row .et_pb_column_2_3{width:64.833%}.et_pb_gutters3 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:4.242%}.et_pb_gutters3 .et_pb_column_3_5,.et_pb_gutters3.et_pb_row .et_pb_column_3_5{width:57.8%}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:4.758%}.et_pb_gutters3 .et_pb_column_1_2,.et_pb_gutters3.et_pb_row .et_pb_column_1_2{width:47.25%}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:5.82%}.et_pb_gutters3 .et_pb_column_2_5,.et_pb_gutters3.et_pb_row .et_pb_column_2_5{width:36.7%}.et_pb_gutters3 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:7.493%}.et_pb_gutters3 .et_pb_column_1_3,.et_pb_gutters3.et_pb_row .et_pb_column_1_3{width:29.6667%}.et_pb_gutters3 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et_pb_gutters3 .et_pb_column_1_4,.et_pb_gutters3.et_pb_row .et_pb_column_1_4{width:20.875%}.et_pb_gutters3 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_gutters3 .et_pb_column_1_5,.et_pb_gutters3.et_pb_row .et_pb_column_1_5{width:15.6%}.et_pb_gutters3 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:17.628%}.et_pb_gutters3 .et_pb_column_1_6,.et_pb_gutters3.et_pb_row .et_pb_column_1_6{width:12.0833%}.et_pb_gutters3 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et_pb_gutters3 .et_full_width_page.woocommerce-page ul.products li.product{width:20.875%;margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:28.353%;margin-right:7.47%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product{width:100%;margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product{width:48%;margin-right:4%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2){margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1){clear:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt-rtl.css
new file mode 100644
index 0000000..63f352f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:5.5%}.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:7.47%}.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:8.483%}.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt.css
new file mode 100644
index 0000000..cbb6d02
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column{margin-right:5.5%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_module{margin-bottom:2.75%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4{width:73.625%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_module{margin-bottom:3.735%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3{width:64.833%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_module{margin-bottom:4.242%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5{width:57.8%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_module{margin-bottom:4.758%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2{width:47.25%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_module{margin-bottom:5.82%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5{width:36.7%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_module{margin-bottom:7.493%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3{width:29.6667%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4{width:20.875%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5{width:15.6%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_module{margin-bottom:17.628%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6{width:12.0833%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et_pb_gutters3 .et_full_width_page.woocommerce-page ul.products li.product{width:20.875%;margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:28.353%;margin-right:7.47%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product{width:100%;margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product{width:48%;margin-right:4%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2){margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1){clear:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items.css
new file mode 100644
index 0000000..a840192
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters3 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters3 .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget{width:20.875%;margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:29.667%;margin-right:5.5%}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:18.539%}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:46.265%;margin-right:7.47%}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:14.941%}.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et_pb_gutters3 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:45.758%;margin-right:8.483%}.et_pb_gutters3 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.967%}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget{width:45.242%;margin-right:9.516%;margin-bottom:9.516%}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:9.516%}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:11.64%}.et_pb_gutters3 .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:14.986%}.et_pb_gutters3 .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:18.539%}.et_pb_gutters3 .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:26.347%}.et_pb_gutters3 .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:35.256%}.et_pb_gutters3 .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:45.517%}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters3 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters3 .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items_cpt.css
new file mode 100644
index 0000000..9a2590a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget{width:20.875%;margin-right:5.5%;margin-bottom:5.5%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:29.667%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:18.539%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:46.265%;margin-right:7.47%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:14.941%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:45.758%;margin-right:8.483%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.967%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget{width:45.242%;margin-right:9.516%;margin-bottom:9.516%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:9.516%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:11.64%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:14.986%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:18.539%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:26.347%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:35.256%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:45.517%}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty-rtl.css
new file mode 100644
index 0000000..62e18b6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:7.47%}.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:8.483%}.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty.css
new file mode 100644
index 0000000..b5d117e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:5.82%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:3.735%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:46.26486%;margin-right:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:28.35314%;margin-right:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:4.242%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:45.758%;margin-right:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:18.638%;margin-right:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:27.67781%;margin-right:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:22.759%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:5.82%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:44.17989%;margin-right:11.64%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:25.573%;margin-right:11.64%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt-rtl.css
new file mode 100644
index 0000000..f33df85
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:7.47%}.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:8.483%}.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt.css
new file mode 100644
index 0000000..7131ed4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et_pb_gutters3 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:5.82%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:3.735%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:46.26486%;margin-right:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:28.35314%;margin-right:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:4.242%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:45.758%;margin-right:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:18.638%;margin-right:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:27.67781%;margin-right:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:22.759%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:5.82%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:44.17989%;margin-right:11.64%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:25.573%;margin-right:11.64%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product{width:100%;margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product{width:48%;margin-right:4%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2){margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1){clear:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items.css
new file mode 100644
index 0000000..7e550fe
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:46.265%;margin-right:7.47%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:14.941%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:14.941%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:26.347%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:45.758%;margin-right:8.483%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.967%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:18.539%;width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:45.517%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:45.517%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:11.64%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:26.347%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:45.517%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3 .et_pb_grid_item.on_last_row,.et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items_cpt.css
new file mode 100644
index 0000000..fddfff3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters3_specialty_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:28.353%;margin-right:7.47%;margin-bottom:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:46.265%;margin-right:7.47%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:14.941%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:14.941%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:26.347%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:45.758%;margin-right:8.483%;margin-bottom:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:45.758%;margin-right:8.483%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:16.967%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:18.539%;width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:45.517%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:45.517%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:44.18%;margin-right:11.64%;margin-bottom:11.64%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:11.64%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:26.347%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:45.517%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters3 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4-rtl.css
new file mode 100644
index 0000000..f0bb1eb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:8%}.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:10.959%}.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:12.5%}.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4.css
new file mode 100644
index 0000000..443ba06
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters4 #left-area{width:81%}.et_pb_gutter.et_pb_gutters4 #sidebar{width:19%}.et_pb_gutters4.et_right_sidebar #left-area{padding-right:8%}.et_pb_gutters4.et_left_sidebar #left-area{padding-left:8%}.et_pb_gutter.et_pb_gutters4.et_right_sidebar #main-content .container:before{right:19%!important}.et_pb_gutter.et_pb_gutters4.et_left_sidebar #main-content .container:before{left:19%!important}.et_pb_gutters4 .et_pb_column,.et_pb_gutters4.et_pb_row .et_pb_column{margin-right:8%}.et_pb_gutters4 .et_pb_column_4_4,.et_pb_gutters4.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:4%}.et_pb_gutters4 .et_pb_column_3_4,.et_pb_gutters4.et_pb_row .et_pb_column_3_4{width:73%}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:5.479%}.et_pb_gutters4 .et_pb_column_2_3,.et_pb_gutters4.et_pb_row .et_pb_column_2_3{width:64%}.et_pb_gutters4 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:6.25%}.et_pb_gutters4 .et_pb_column_3_5,.et_pb_gutters4.et_pb_row .et_pb_column_3_5{width:56.8%}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:7.042%}.et_pb_gutters4 .et_pb_column_1_2,.et_pb_gutters4.et_pb_row .et_pb_column_1_2{width:46%}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:8.696%}.et_pb_gutters4 .et_pb_column_2_5,.et_pb_gutters4.et_pb_row .et_pb_column_2_5{width:35.2%}.et_pb_gutters4 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:11.364%}.et_pb_gutters4 .et_pb_column_1_3,.et_pb_gutters4.et_pb_row .et_pb_column_1_3{width:28%}.et_pb_gutters4 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et_pb_gutters4 .et_pb_column_1_4,.et_pb_gutters4.et_pb_row .et_pb_column_1_4{width:19%}.et_pb_gutters4 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et_pb_gutters4 .et_pb_column_1_5,.et_pb_gutters4.et_pb_row .et_pb_column_1_5{width:13.6%}.et_pb_gutters4 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:29.412%}.et_pb_gutters4 .et_pb_column_1_6,.et_pb_gutters4.et_pb_row .et_pb_column_1_6{width:10%}.et_pb_gutters4 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:40%}.et_pb_gutters4 .et_full_width_page.woocommerce-page ul.products li.product{width:19%;margin-right:8%;margin-bottom:8%}.et_pb_gutters4.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters4.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:26.027%;margin-right:10.959%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt-rtl.css
new file mode 100644
index 0000000..1e2232b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{margin-right:0;margin-left:8%}.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:10.959%}.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:12.5%}.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt.css
new file mode 100644
index 0000000..399f9b8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters4 #left-area{width:81%}.et_pb_gutter.et_pb_gutters4 #sidebar{width:19%}.et_pb_gutters4.et_right_sidebar #left-area{padding-right:8%}.et_pb_gutters4.et_left_sidebar #left-area{padding-left:8%}.et_pb_gutter.et_pb_gutters4.et_right_sidebar #main-content .container:before{right:19%!important}.et_pb_gutter.et_pb_gutters4.et_left_sidebar #main-content .container:before{left:19%!important}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column{margin-right:8%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_module{margin-bottom:4%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4{width:73%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_module{margin-bottom:5.479%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3{width:64%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_module{margin-bottom:6.25%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5{width:56.8%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_module{margin-bottom:7.042%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2{width:46%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_module{margin-bottom:8.696%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5{width:35.2%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_module{margin-bottom:11.364%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3{width:28%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4{width:19%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5{width:13.6%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_module{margin-bottom:29.412%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6{width:10%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_module{margin-bottom:40%}.et_pb_gutters4 .et_full_width_page.woocommerce-page ul.products li.product{width:19%;margin-right:8%;margin-bottom:8%}.et_pb_gutters4.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters4.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:26.027%;margin-right:10.959%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items.css
new file mode 100644
index 0000000..37ec3f8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4 .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters4 .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters4 .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget{width:19%;margin-right:8%;margin-bottom:8%}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:28%;margin-right:8%}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:28.571%}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:44.521%;margin-right:10.959%}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:21.918%}.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et_pb_gutters4 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:43.75%;margin-right:12.5%}.et_pb_gutters4 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:25%}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget{width:42.958%;margin-right:14.085%;margin-bottom:14.085%}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:14.085%}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:17.391%}.et_pb_gutters4 .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:22.727%}.et_pb_gutters4 .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:28.571%}.et_pb_gutters4 .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:42.105%}.et_pb_gutters4 .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:58.824%}.et_pb_gutters4 .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:80%}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters4 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters4 .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters4 .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items_cpt.css
new file mode 100644
index 0000000..ddc3324
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post:last-child,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .et_pb_post:last-child,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of3 .et_pb_post:last-child{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget{width:19%;margin-right:8%;margin-bottom:8%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3{width:28%;margin-right:8%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3 .et_pb_post{margin-bottom:28.571%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2{width:44.521%;margin-right:10.959%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:21.918%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2{width:43.75%;margin-right:12.5%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:25%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget{width:42.958%;margin-right:14.085%;margin-bottom:14.085%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:14.085%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:17.391%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_5 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_widget{width:100%;margin-bottom:22.727%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_widget{width:100%;margin-bottom:28.571%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:42.105%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_widget{width:100%;margin-bottom:58.824%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:80%}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_5 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty-rtl.css
new file mode 100644
index 0000000..48a94b8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:10.959%}.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:12.5%}.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty.css
new file mode 100644
index 0000000..6ef626d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:8.696%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:5.479%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:44.52055%;margin-right:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:26.0274%;margin-right:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:6.25%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:43.75%;margin-right:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:15.625%;margin-right:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:40%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:25%;margin-right:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:40%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:8.696%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:41.30435%;margin-right:17.391%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:21.739%;margin-right:17.391%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:40%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt-rtl.css
new file mode 100644
index 0000000..7e82c00
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt-rtl.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:10.959%}.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{margin-right:0;margin-left:12.5%}.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.rtl.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_row_inner .et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n){margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt.css
new file mode 100644
index 0000000..075b640
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutter.et_pb_gutters4 #left-area{width:81%}.et_pb_gutter.et_pb_gutters4 #sidebar{width:19%}.et_pb_gutters4.et_right_sidebar #left-area{padding-right:8%}.et_pb_gutters4.et_left_sidebar #left-area{padding-left:8%}.et_pb_gutter.et_pb_gutters4.et_right_sidebar #main-content .container:before{right:19%!important}.et_pb_gutter.et_pb_gutters4.et_left_sidebar #main-content .container:before{left:19%!important}.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_3 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et_pb_gutters4 .et_pb_column_single.et_pb_column_1_2 .et_pb_module,.et_pb_gutters4.et_pb_row .et_pb_column_single.et_pb_column_1_2 .et_pb_module{margin-bottom:8.696%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:5.479%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8{width:44.52055%;margin-right:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_module{margin-bottom:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4{width:26.0274%;margin-right:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:6.25%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3{width:43.75%;margin-right:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_module{margin-bottom:14.286%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6{width:15.625%;margin-right:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:40%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9{width:25%;margin-right:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_module{margin-bottom:40%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4{width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_module{margin-bottom:8.696%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4{width:41.30435%;margin-right:17.391%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_module{margin-bottom:21.053%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6{width:21.739%;margin-right:17.391%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_module,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_module{margin-bottom:40%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items.css
new file mode 100644
index 0000000..41ae83e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et_pb_gutters4 .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:44.521%;margin-right:10.959%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:21.918%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:21.918%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:42.105%}.et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:43.75%;margin-right:12.5%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:25%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:28.571%;width:100%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:80%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:80%}.et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:17.391%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:42.105%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:80%}.et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4 .et_pb_grid_item.on_last_row,.et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items_cpt.css
new file mode 100644
index 0000000..88f81a5
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/gutters4_specialty_grid_items_cpt.css
@@ -0,0 +1 @@
+@media (min-width:981px){.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of3:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.last_in_row{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4.et_pb_row .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_inner.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(3n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(3n+1){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(4n+1),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:26.027%;margin-right:10.959%;margin-bottom:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:44.521%;margin-right:10.959%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:21.918%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_widget{width:100%;margin-bottom:21.918%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_3_8 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{width:100%;margin-bottom:42.105%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_3_4>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:43.75%;margin-right:12.5%;margin-bottom:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2{width:43.75%;margin-right:12.5%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of2 .et_pb_post{margin-bottom:25%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_widget{margin-bottom:28.571%;width:100%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_3 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{width:100%;margin-bottom:80%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_widget{margin-bottom:80%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_2_3>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_row_inner>.et_pb_column_2_9 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(2n),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_shop_grid .woocommerce ul.products li.product:nth-child(odd),.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item{width:41.304%;margin-right:17.391%;margin-bottom:17.391%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_4_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-bottom:17.391%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_widget{margin-bottom:42.105%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_4 .et_pb_grid_item.on_last_row{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4>.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_blog_grid .column.size-1of1 .et_pb_post,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_grid_item,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner>.et_pb_column_1_6 .et_pb_widget{margin-bottom:80%}.et-db #et-boc .et-l .et_pb_column.et_pb_column_1_2>.et_pb_row_inner.et_pb_gutters4 .et_pb_grid_item.on_last_row,.et-db #et-boc .et-l .et_pb_gutters4 .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row,.et_pb_gutters4.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_row_inner .et_pb_grid_item.on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/header_animations.css b/includes/builder/feature/dynamic-assets/assets/css/header_animations.css
new file mode 100644
index 0000000..9d92ef5
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/header_animations.css
@@ -0,0 +1,7 @@
+@keyframes fadeOutTop{0%{opacity:1;transform:translatey(0)}to{opacity:0;transform:translatey(-60%)}}@keyframes fadeInTop{0%{opacity:0;transform:translatey(-60%)}to{opacity:1;transform:translatey(0)}}@keyframes fadeInBottom{0%{opacity:0;transform:translatey(60%)}to{opacity:1;transform:translatey(0)}}@keyframes fadeOutBottom{0%{opacity:1;transform:translatey(0)}to{opacity:0;transform:translatey(60%)}}@keyframes Grow{0%{opacity:0;transform:scaleY(.5)}to{opacity:1;transform:scale(1)}}
+
+/*!
+ * Animate.css - http://daneden.me/animate
+ * Licensed under the MIT license - http://opensource.org/licenses/MIT
+ * Copyright (c) 2015 Daniel Eden
+ */@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateY(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateY(10deg);opacity:1}80%{transform:perspective(400px) rotateY(-5deg)}to{transform:perspective(400px)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/header_animations_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/header_animations_cpt.css
new file mode 100644
index 0000000..dc51705
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/header_animations_cpt.css
@@ -0,0 +1,6 @@
+.et-db #et-boc .et-l{
+ /*!
+ * Animate.css - http://daneden.me/animate
+ * Licensed under the MIT license - http://opensource.org/licenses/MIT
+ * Copyright (c) 2015 Daniel Eden
+ */}@keyframes fadeOutTop{0%{opacity:1;transform:translatey(0)}to{opacity:0;transform:translatey(-60%)}}@keyframes fadeInTop{0%{opacity:0;transform:translatey(-60%)}to{opacity:1;transform:translatey(0)}}@keyframes fadeInBottom{0%{opacity:0;transform:translatey(60%)}to{opacity:1;transform:translatey(0)}}@keyframes fadeOutBottom{0%{opacity:1;transform:translatey(0)}to{opacity:0;transform:translatey(60%)}}@keyframes Grow{0%{opacity:0;transform:scaleY(.5)}to{opacity:1;transform:scale(1)}}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateY(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateY(10deg);opacity:1}80%{transform:perspective(400px) rotateY(-5deg)}to{transform:perspective(400px)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/header_shared.css b/includes/builder/feature/dynamic-assets/assets/css/header_shared.css
new file mode 100644
index 0000000..d4659db
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/header_shared.css
@@ -0,0 +1 @@
+#main-header{line-height:23px;font-weight:500;top:0;background-color:#fff;width:100%;box-shadow:0 1px 0 rgba(0,0,0,.1);position:relative;z-index:99999}.nav li li{padding:0 20px;margin:0}.et-menu li li a{padding:6px 20px;width:200px}.nav li{position:relative;line-height:1em}.nav li li{position:relative;line-height:2em}.nav li ul{position:absolute;padding:20px 0;z-index:9999;width:240px;background:#fff;visibility:hidden;opacity:0;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-transform:translateZ(0);text-align:left}.nav li.et-hover>ul{visibility:visible}.nav li.et-touch-hover>ul,.nav li:hover>ul{opacity:1;visibility:visible}.nav li li ul{z-index:1000;top:-23px;left:240px}.nav li.et-reverse-direction-nav li ul{left:auto;right:240px}.nav li:hover{visibility:inherit}.et_mobile_menu li a,.nav li li a{font-size:14px;transition:all .2s ease-in-out}.et_mobile_menu li a:hover,.nav ul li a:hover{background-color:rgba(0,0,0,.03);opacity:.7}.et-dropdown-removing>ul{display:none}.mega-menu .et-dropdown-removing>ul{display:block}.et-menu .menu-item-has-children>a:first-child:after{font-family:ETmodules;content:"3";font-size:16px;position:absolute;right:0;top:0;font-weight:800}.et-menu .menu-item-has-children>a:first-child{padding-right:20px}.et-menu li li.menu-item-has-children>a:first-child:after{right:20px;top:6px}.et-menu-nav li.mega-menu{position:inherit}.et-menu-nav li.mega-menu>ul{padding:30px 20px;position:absolute!important;width:100%;left:0!important}.et-menu-nav li.mega-menu ul li{margin:0;float:left!important;display:block!important;padding:0!important}.et-menu-nav li.mega-menu li>ul{animation:none!important;padding:0;border:none;left:auto;top:auto;width:240px!important;position:relative;box-shadow:none;-webkit-box-shadow:none}.et-menu-nav li.mega-menu li ul{visibility:visible;opacity:1;display:none}.et-menu-nav li.mega-menu.et-hover li ul,.et-menu-nav li.mega-menu:hover li ul{display:block}.et-menu-nav li.mega-menu:hover>ul{opacity:1!important;visibility:visible!important}.et-menu-nav li.mega-menu>ul>li>a:first-child{padding-top:0!important;font-weight:700;border-bottom:1px solid rgba(0,0,0,.03)}.et-menu-nav li.mega-menu>ul>li>a:first-child:hover{background-color:transparent!important}.et-menu-nav li.mega-menu li>a{width:200px!important}.et-menu-nav li.mega-menu.mega-menu-parent li>a,.et-menu-nav li.mega-menu.mega-menu-parent li li{width:100%!important}.et-menu-nav li.mega-menu.mega-menu-parent li>.sub-menu{float:left;width:100%!important}.et-menu-nav li.mega-menu>ul>li{width:25%;margin:0}.et-menu-nav li.mega-menu.mega-menu-parent-3>ul>li{width:33.33%}.et-menu-nav li.mega-menu.mega-menu-parent-2>ul>li{width:50%}.et-menu-nav li.mega-menu.mega-menu-parent-1>ul>li{width:100%}.et_pb_fullwidth_menu li.mega-menu .menu-item-has-children>a:first-child:after,.et_pb_menu li.mega-menu .menu-item-has-children>a:first-child:after{display:none}.et_fullwidth_nav #top-menu li.mega-menu>ul{width:auto;left:30px!important;right:30px!important}.et_mobile_menu{position:absolute;left:0;padding:5%;background:#fff;width:100%;visibility:visible;opacity:1;display:none;z-index:9999;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1)}#main-header .et_mobile_menu li ul,.et_pb_fullwidth_menu .et_mobile_menu li ul,.et_pb_menu .et_mobile_menu li ul{visibility:visible!important;display:block!important;padding-left:10px}.et_mobile_menu li li{padding-left:5%}.et_mobile_menu li a{border-bottom:1px solid rgba(0,0,0,.03);color:#666;padding:10px 5%;display:block}.et_mobile_menu .menu-item-has-children>a{font-weight:700;background-color:rgba(0,0,0,.03)}.et_mobile_menu li .menu-item-has-children>a{background-color:transparent}.et_mobile_nav_menu{float:right;display:none}.mobile_menu_bar{position:relative;display:block;line-height:0}.mobile_menu_bar:before{content:"a";font-size:32px;position:relative;left:0;top:0;cursor:pointer}.et_pb_module .mobile_menu_bar:before{top:2px}.mobile_nav .select_page{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/header_shared_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/header_shared_cpt.css
new file mode 100644
index 0000000..e5055f9
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/header_shared_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l #main-header{line-height:23px;font-weight:500;top:0;background-color:#fff;width:100%;box-shadow:0 1px 0 rgba(0,0,0,.1);position:relative;z-index:99999}.et-db #et-boc .et-l .nav li li{padding:0 20px;margin:0}.et-db #et-boc .et-l .et-menu li li a{padding:6px 20px;width:200px}.et-db #et-boc .et-l .nav li{position:relative;line-height:1em}.et-db #et-boc .et-l .nav li li{position:relative;line-height:2em}.et-db #et-boc .et-l .nav li ul{position:absolute;padding:20px 0;z-index:9999;width:240px;background:#fff;visibility:hidden;opacity:0;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-transform:translateZ(0);text-align:left}.et-db #et-boc .et-l .nav li.et-hover>ul{visibility:visible}.et-db #et-boc .et-l .nav li.et-touch-hover>ul,.et-db #et-boc .et-l .nav li:hover>ul{opacity:1;visibility:visible}.et-db #et-boc .et-l .nav li li ul{z-index:1000;top:-23px;left:240px}.et-db #et-boc .et-l .nav li.et-reverse-direction-nav li ul{left:auto;right:240px}.et-db #et-boc .et-l .nav li:hover{visibility:inherit}.et-db #et-boc .et-l .et_mobile_menu li a,.et-db #et-boc .et-l .nav li li a{font-size:14px;transition:all .2s ease-in-out}.et-db #et-boc .et-l .et_mobile_menu li a:hover,.et-db #et-boc .et-l .nav ul li a:hover{background-color:rgba(0,0,0,.03);opacity:.7}.et-db #et-boc .et-l .et-dropdown-removing>ul{display:none}.et-db #et-boc .et-l .mega-menu .et-dropdown-removing>ul{display:block}.et-db #et-boc .et-l .et-menu .menu-item-has-children>a:first-child:after{font-family:ETmodules;content:"3";font-size:16px;position:absolute;right:0;top:0;font-weight:800}.et-db #et-boc .et-l .et-menu .menu-item-has-children>a:first-child{padding-right:20px}.et-db #et-boc .et-l .et-menu li li.menu-item-has-children>a:first-child:after{right:20px;top:6px}.et-db #et-boc .et-l .et-menu-nav li.mega-menu{position:inherit}.et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul{padding:30px 20px;position:absolute!important;width:100%;left:0!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu ul li{margin:0;float:left!important;display:block!important;padding:0!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu li>ul{animation:none!important;padding:0;border:none;left:auto;top:auto;width:240px!important;position:relative;box-shadow:none;-webkit-box-shadow:none}.et-db #et-boc .et-l .et-menu-nav li.mega-menu li ul{visibility:visible;opacity:1;display:none}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.et-hover li ul,.et-db #et-boc .et-l .et-menu-nav li.mega-menu:hover li ul{display:block}.et-db #et-boc .et-l .et-menu-nav li.mega-menu:hover>ul{opacity:1!important;visibility:visible!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul>li>a:first-child{padding-top:0!important;font-weight:700;border-bottom:1px solid rgba(0,0,0,.03)}.et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul>li>a:first-child:hover{background-color:transparent!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu li>a{width:200px!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent li>a,.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent li li{width:100%!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent li>.sub-menu{float:left;width:100%!important}.et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul>li{width:25%;margin:0}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent-3>ul>li{width:33.33%}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent-2>ul>li{width:50%}.et-db #et-boc .et-l .et-menu-nav li.mega-menu.mega-menu-parent-1>ul>li{width:100%}.et-db #et-boc .et-l .et_pb_fullwidth_menu li.mega-menu .menu-item-has-children>a:first-child:after,.et-db #et-boc .et-l .et_pb_menu li.mega-menu .menu-item-has-children>a:first-child:after{display:none}.et-db #et-boc .et-l .et_fullwidth_nav #top-menu li.mega-menu>ul{width:auto;left:30px!important;right:30px!important}.et-db #et-boc .et-l .et_mobile_menu{position:absolute;left:0;padding:5%;background:#fff;width:100%;visibility:visible;opacity:1;display:none;z-index:9999;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1)}.et-db #et-boc .et-l #main-header .et_mobile_menu li ul,.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu li ul,.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li ul{visibility:visible!important;display:block!important;padding-left:10px}.et-db #et-boc .et-l .et_mobile_menu li li{padding-left:5%}.et-db #et-boc .et-l .et_mobile_menu li a{border-bottom:1px solid rgba(0,0,0,.03);color:#666;padding:10px 5%;display:block}.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a{font-weight:700;background-color:rgba(0,0,0,.03)}.et-db #et-boc .et-l .et_mobile_menu li .menu-item-has-children>a{background-color:transparent}.et-db #et-boc .et-l .et_mobile_nav_menu{float:right;display:none}.et-db #et-boc .et-l .mobile_menu_bar{position:relative;display:block;line-height:0}.et-db #et-boc .et-l .mobile_menu_bar:before{content:"a";font-size:32px;position:relative;left:0;top:0;cursor:pointer}.et-db #et-boc .et-l .et_pb_module .mobile_menu_bar:before{top:2px}.et-db #et-boc .et-l .mobile_nav .select_page{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icon.css b/includes/builder/feature/dynamic-assets/assets/css/icon.css
new file mode 100644
index 0000000..8e6e0dd
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icon.css
@@ -0,0 +1 @@
+.et_pb_icon{text-align:center;height:auto}.et_pb_icon .et-pb-icon{position:relative}.et_pb_icon .et_pb_icon_wrap{display:inline-block;border-style:solid;border-width:0;line-height:0;animation-fill-mode:both;background-size:cover;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icon_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/icon_cpt.css
new file mode 100644
index 0000000..8dc2fa4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icon_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_icon{text-align:center;height:auto}.et-db #et-boc .et-l .et_pb_icon .et-pb-icon{position:relative}.et-db #et-boc .et-l .et_pb_icon .et_pb_icon_wrap{display:inline-block;border-style:solid;border-width:0;line-height:0;animation-fill-mode:both;background-size:cover;position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icons_all.css b/includes/builder/feature/dynamic-assets/assets/css/icons_all.css
new file mode 100644
index 0000000..efb64b3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icons_all.css
@@ -0,0 +1 @@
+@font-face{font-family:ETmodules;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/modules/all/modules.eot);src:url(#dynamic-product-dir/core/admin/fonts/modules/all/modules.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/modules/all/modules.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/modules/all/modules.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/modules/all/modules.svg#ETmodules) format("svg");font-weight:400;font-style:normal}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icons_base.css b/includes/builder/feature/dynamic-assets/assets/css/icons_base.css
new file mode 100644
index 0000000..154c12b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icons_base.css
@@ -0,0 +1 @@
+@font-face{font-family:ETmodules;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/modules/base/modules.eot);src:url(#dynamic-product-dir/core/admin/fonts/modules/base/modules.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/modules/base/modules.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/modules/base/modules.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/modules/base/modules.svg#ETmodules) format("svg");font-weight:400;font-style:normal}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icons_base_social.css b/includes/builder/feature/dynamic-assets/assets/css/icons_base_social.css
new file mode 100644
index 0000000..c35d8ec
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icons_base_social.css
@@ -0,0 +1 @@
+@font-face{font-family:ETmodules;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/modules/social/modules.eot);src:url(#dynamic-product-dir/core/admin/fonts/modules/social/modules.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/modules/social/modules.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/modules/social/modules.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/modules/social/modules.svg#ETmodules) format("svg");font-weight:400;font-style:normal}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/icons_fa_all.css b/includes/builder/feature/dynamic-assets/assets/css/icons_fa_all.css
new file mode 100644
index 0000000..ad203cb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/icons_fa_all.css
@@ -0,0 +1 @@
+@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.eot);src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.woff2) format("woff2"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-regular-400.svg#fontawesome) format("svg")}@font-face{font-family:FontAwesome;font-style:normal;font-weight:900;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.eot);src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.woff2) format("woff2"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-solid-900.svg#fontawesome) format("svg")}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;font-display:block;src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.eot);src:url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.woff2) format("woff2"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.woff) format("woff"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.ttf) format("truetype"),url(#dynamic-product-dir/core/admin/fonts/fontawesome/fa-brands-400.svg#fontawesome) format("svg")}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/image.css b/includes/builder/feature/dynamic-assets/assets/css/image.css
new file mode 100644
index 0000000..08d4f44
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/image.css
@@ -0,0 +1 @@
+.et_pb_with_border .et_pb_image_wrap{border:0 solid #333}.et_pb_image{margin-left:auto;margin-right:auto;line-height:0}.et_pb_image.aligncenter{text-align:center}.et_pb_image.et_pb_has_overlay a.et_pb_lightbox_image{display:block;position:relative}.et_pb_image{display:block}.et_pb_image .et_pb_image_wrap{display:inline-block;position:relative;max-width:100%}.et_pb_image .et_pb_image_wrap img[src*=".svg"]{width:auto}.et_pb_image img{position:relative}.et_pb_image_sticky{margin-bottom:0!important;display:inherit}.et_pb_image.et_pb_has_overlay .et_pb_image_wrap:hover .et_overlay{z-index:3;opacity:1}@media (min-width:981px){.et_pb_section_sticky,.et_pb_section_sticky.et_pb_bottom_divider .et_pb_row:nth-last-child(2),.et_pb_section_sticky .et_pb_column_single,.et_pb_section_sticky .et_pb_row.et-last-child,.et_pb_section_sticky .et_pb_row:last-child,.et_pb_section_sticky .et_pb_specialty_column .et_pb_row_inner.et-last-child,.et_pb_section_sticky .et_pb_specialty_column .et_pb_row_inner:last-child{padding-bottom:0!important}}@media (max-width:980px){.et_pb_image_sticky_tablet{margin-bottom:0!important;display:inherit}.et_pb_section_sticky_mobile,.et_pb_section_sticky_mobile.et_pb_bottom_divider .et_pb_row:nth-last-child(2),.et_pb_section_sticky_mobile .et_pb_column_single,.et_pb_section_sticky_mobile .et_pb_row.et-last-child,.et_pb_section_sticky_mobile .et_pb_row:last-child,.et_pb_section_sticky_mobile .et_pb_specialty_column .et_pb_row_inner.et-last-child,.et_pb_section_sticky_mobile .et_pb_specialty_column .et_pb_row_inner:last-child{padding-bottom:0!important}.et_pb_section_sticky .et_pb_row.et-last-child .et_pb_column.et_pb_row_sticky.et-last-child,.et_pb_section_sticky .et_pb_row:last-child .et_pb_column.et_pb_row_sticky:last-child{margin-bottom:0}.et_pb_image_bottom_space_tablet{margin-bottom:30px!important;display:block}.et_always_center_on_mobile{text-align:center!important;margin-left:auto!important;margin-right:auto!important}}@media (max-width:767px){.et_pb_image_sticky_phone{margin-bottom:0!important;display:inherit}.et_pb_image_bottom_space_phone{margin-bottom:30px!important;display:block}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/image_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/image_cpt.css
new file mode 100644
index 0000000..b37ba1d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/image_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border .et_pb_image_wrap{border:0 solid #333}.et-db #et-boc .et-l .et_pb_image{margin-left:auto;margin-right:auto;line-height:0}.et-db #et-boc .et-l .et_pb_image.aligncenter{text-align:center}.et-db #et-boc .et-l .et_pb_image.et_pb_has_overlay a.et_pb_lightbox_image{display:block;position:relative}.et-db #et-boc .et-l .et_pb_image{display:block}.et-db #et-boc .et-l .et_pb_image .et_pb_image_wrap{display:inline-block;position:relative;max-width:100%}.et-db #et-boc .et-l .et_pb_image .et_pb_image_wrap img[src*=".svg"]{width:auto}.et-db #et-boc .et-l .et_pb_image img{position:relative}.et-db #et-boc .et-l .et_pb_image_sticky{margin-bottom:0!important;display:inherit}.et-db #et-boc .et-l .et_pb_image.et_pb_has_overlay .et_pb_image_wrap:hover .et_overlay{z-index:3;opacity:1}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_section_sticky,.et-db #et-boc .et-l .et_pb_section_sticky.et_pb_bottom_divider .et_pb_row:nth-last-child(2),.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_column_single,.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_row.et-last-child,.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_row:last-child,.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_specialty_column .et_pb_row_inner.et-last-child,.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_specialty_column .et_pb_row_inner:last-child{padding-bottom:0!important}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_image_sticky_tablet{margin-bottom:0!important;display:inherit}.et-db #et-boc .et-l .et_pb_section_sticky_mobile,.et-db #et-boc .et-l .et_pb_section_sticky_mobile.et_pb_bottom_divider .et_pb_row:nth-last-child(2),.et-db #et-boc .et-l .et_pb_section_sticky_mobile .et_pb_column_single,.et-db #et-boc .et-l .et_pb_section_sticky_mobile .et_pb_row.et-last-child,.et-db #et-boc .et-l .et_pb_section_sticky_mobile .et_pb_row:last-child,.et-db #et-boc .et-l .et_pb_section_sticky_mobile .et_pb_specialty_column .et_pb_row_inner.et-last-child,.et-db #et-boc .et-l .et_pb_section_sticky_mobile .et_pb_specialty_column .et_pb_row_inner:last-child{padding-bottom:0!important}.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_row.et-last-child .et_pb_column.et_pb_row_sticky.et-last-child,.et-db #et-boc .et-l .et_pb_section_sticky .et_pb_row:last-child .et_pb_column.et_pb_row_sticky:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_image_bottom_space_tablet{margin-bottom:30px!important;display:block}.et-db #et-boc .et-l .et_always_center_on_mobile{text-align:center!important;margin-left:auto!important;margin-right:auto!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_image_sticky_phone{margin-bottom:0!important;display:inherit}.et-db #et-boc .et-l .et_pb_image_bottom_space_phone{margin-bottom:30px!important;display:block}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/legacy_animations.css b/includes/builder/feature/dynamic-assets/assets/css/legacy_animations.css
new file mode 100644
index 0000000..45c5aa2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/legacy_animations.css
@@ -0,0 +1 @@
+.et-waypoint.et_pb_animation_off,.et-waypoint:not(.et_pb_counters).et_pb_animation_off,.et_pb_animation_off{opacity:1}.et-waypoint.et_pb_animation_left.et-animated,.et_pb_animation_left.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_right.et-animated,.et_pb_animation_right.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_top.et-animated,.et_pb_animation_top.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_bottom.et-animated,.et_pb_animation_bottom.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_fade_in.et-animated,.et_pb_animation_fade_in.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}@media (max-width:980px){.et-waypoint.et_pb_animation_off_tablet,.et-waypoint:not(.et_pb_counters).et_pb_animation_off_tablet,.et_pb_animation_off_tablet{opacity:1;animation:none}.et-waypoint.et_pb_animation_left_tablet.et-animated,.et_pb_animation_left_tablet.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_right_tablet.et-animated,.et_pb_animation_right_tablet.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_top_tablet.et-animated,.et_pb_animation_top_tablet.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_bottom_tablet.et-animated,.et_pb_animation_bottom_tablet.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_fade_in_tablet.et-animated,.et_pb_animation_fade_in_tablet.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}}@media (max-width:767px){.et-waypoint.et_pb_animation_off_phone,.et-waypoint:not(.et_pb_counters).et_pb_animation_off_phone,.et_pb_animation_off_phone{opacity:1;animation:none}.et-waypoint.et_pb_animation_left_phone.et-animated,.et_pb_animation_left_phone.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_right_phone.et-animated,.et_pb_animation_right_phone.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_top_phone.et-animated,.et_pb_animation_top_phone.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_bottom_phone.et-animated,.et_pb_animation_bottom_phone.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-waypoint.et_pb_animation_fade_in_phone.et-animated,.et_pb_animation_fade_in_phone.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/legacy_animations_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/legacy_animations_cpt.css
new file mode 100644
index 0000000..757ec50
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/legacy_animations_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et-waypoint.et_pb_animation_off,.et-db #et-boc .et-l .et-waypoint:not(.et_pb_counters).et_pb_animation_off,.et-db #et-boc .et-l .et_pb_animation_off{opacity:1}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_left.et-animated,.et-db #et-boc .et-l .et_pb_animation_left.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_right.et-animated,.et-db #et-boc .et-l .et_pb_animation_right.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_top.et-animated,.et-db #et-boc .et-l .et_pb_animation_top.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_bottom.et-animated,.et-db #et-boc .et-l .et_pb_animation_bottom.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_fade_in.et-animated,.et-db #et-boc .et-l .et_pb_animation_fade_in.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}@media (max-width:980px){.et-db #et-boc .et-l .et-waypoint.et_pb_animation_off_tablet,.et-db #et-boc .et-l .et-waypoint:not(.et_pb_counters).et_pb_animation_off_tablet,.et-db #et-boc .et-l .et_pb_animation_off_tablet{opacity:1;animation:none}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_left_tablet.et-animated,.et-db #et-boc .et-l .et_pb_animation_left_tablet.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_right_tablet.et-animated,.et-db #et-boc .et-l .et_pb_animation_right_tablet.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_top_tablet.et-animated,.et-db #et-boc .et-l .et_pb_animation_top_tablet.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_bottom_tablet.et-animated,.et-db #et-boc .et-l .et_pb_animation_bottom_tablet.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_fade_in_tablet.et-animated,.et-db #et-boc .et-l .et_pb_animation_fade_in_tablet.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}}@media (max-width:767px){.et-db #et-boc .et-l .et-waypoint.et_pb_animation_off_phone,.et-db #et-boc .et-l .et-waypoint:not(.et_pb_counters).et_pb_animation_off_phone,.et-db #et-boc .et-l .et_pb_animation_off_phone{opacity:1;animation:none}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_left_phone.et-animated,.et-db #et-boc .et-l .et_pb_animation_left_phone.et-animated{opacity:1;animation:fadeLeft 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_right_phone.et-animated,.et-db #et-boc .et-l .et_pb_animation_right_phone.et-animated{opacity:1;animation:fadeRight 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_top_phone.et-animated,.et-db #et-boc .et-l .et_pb_animation_top_phone.et-animated{opacity:1;animation:fadeTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_bottom_phone.et-animated,.et-db #et-boc .et-l .et_pb_animation_bottom_phone.et-animated{opacity:1;animation:fadeBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et-waypoint.et_pb_animation_fade_in_phone.et-animated,.et-db #et-boc .et-l .et_pb_animation_fade_in_phone.et-animated{opacity:1;animation:fadeIn 1s 1 cubic-bezier(.77,0,.175,1)}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/login.css b/includes/builder/feature/dynamic-assets/assets/css/login.css
new file mode 100644
index 0000000..c092398
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/login.css
@@ -0,0 +1 @@
+.et_pb_login_form .et_pb_newsletter_button{margin:0;width:100%;cursor:pointer}.et_pb_login_form form{text-align:left}.et_pb_login_form ::-webkit-input-placeholder{color:#666}.et_pb_login_form ::-moz-placeholder{color:#666}.et_pb_login_form :-ms-input-placeholder{color:#666}.et_pb_newsletter.et_pb_login{display:block}.et_pb_newsletter.et_pb_login .et_pb_module_header:empty+.et_pb_newsletter_description_content>br:first-child{display:none}.et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et_pb_newsletter.et_pb_login .et_pb_newsletter_form{float:left;position:relative}.et_pb_newsletter.et_pb_login .et_pb_newsletter_description{margin-bottom:20px}body.logged-in:not(.et-fb) .et_pb_newsletter.et_pb_login .et_pb_newsletter_description{margin-bottom:0}.et_pb_forgot_password{font-size:12px;margin-top:-5px}.et_pb_forgot_password a{color:#fff;text-decoration:underline}.et_pb_bg_layout_light .et_pb_forgot_password a{color:#666}@media (min-width:768px){.et_pb_in_customizer.et_pb_login .et_pb_newsletter_description{width:50%}}.logged-in:not(.et-fb) .et_pb_login .et_pb_newsletter_description{width:100%;padding:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/login_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/login_cpt.css
new file mode 100644
index 0000000..9ac7bc2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/login_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_login_form .et_pb_newsletter_button{margin:0;width:100%;cursor:pointer}.et-db #et-boc .et-l .et_pb_login_form form{text-align:left}.et-db #et-boc .et-l .et_pb_login_form ::-webkit-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_login_form ::-moz-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_login_form :-ms-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login{display:block}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_module_header:empty+.et_pb_newsletter_description_content>br:first-child{display:none}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_form{float:left;position:relative}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description{margin-bottom:20px}body.logged-in:not(.et-fb) .et-db #et-boc .et-l .et_pb_newsletter.et_pb_login .et_pb_newsletter_description{margin-bottom:0}.et-db #et-boc .et-l .et_pb_forgot_password{font-size:12px;margin-top:-5px}.et-db #et-boc .et-l .et_pb_forgot_password a{color:#fff;text-decoration:underline}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_forgot_password a{color:#666}@media (min-width:768px){.et-db #et-boc .et-l .et_pb_in_customizer.et_pb_login .et_pb_newsletter_description{width:50%}}.logged-in:not(.et-fb) .et_pb_login .et_pb_newsletter_description{width:100%;padding:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/magnific_popup.css b/includes/builder/feature/dynamic-assets/assets/css/magnific_popup.css
new file mode 100644
index 0000000..d48f722
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/magnific_popup.css
@@ -0,0 +1 @@
+.mfp-wrap .mfp-container button:hover{background:transparent!important}.mfp-wrap .mfp-arrow:active{position:absolute;top:50%}.mfp-wrap .mfp-close:active{position:absolute;top:-10px}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after,.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{font-family:ETmodules;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mfp-fade.mfp-bg{opacity:.001;transition:all .5s ease-out}.mfp-fade.mfp-bg.mfp-ready{opacity:.8}.mfp-fade.mfp-bg.mfp-removing{opacity:0}.mfp-fade .mfp-wrap.mfp-wrap.mfp-ready .mfp-content{opacity:1}.mfp-fade .mfp-wrap.mfp-wrap.mfp-removing .mfp-content{opacity:0}.mfp-fade .mfp-wrap .mfp-content{opacity:.001;transition:all .5s ease-out}.mfp-bg{z-index:1000000;overflow:hidden;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-bg,.mfp-wrap{top:0;left:0;width:100%;height:100%;position:fixed}.mfp-wrap{z-index:1000001;outline:none!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;box-sizing:border-box}.mfp-container:before{content:"";display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom{cursor:pointer;cursor:zoom-in}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:zoom-out}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#ccc;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#ccc}.mfp-preloader a:hover{color:#fff}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;display:block;outline:none;padding:0;z-index:1046;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;color:#fff;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#fff;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#ccc;font-size:12px;line-height:18px}.mfp-arrow{position:absolute;opacity:.55;filter:alpha(opacity=55);margin:0;top:50%;margin-top:-32px;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow-left{left:10px}.mfp-arrow-right{right:10px}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}.mfp-arrow{background:none!important;margin-top:-32px!important;line-height:1em!important}.mfp-arrow,.mfp-arrow:after{width:48px!important;height:48px!important}.mfp-arrow:after{margin:0!important;top:0!important;border:none!important}.mfp-arrow-left{left:0!important}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after,.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border:none;font-size:64px;color:#fff}.mfp-arrow-left:before,.mfp-arrow-right:before{display:none}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{content:"4"}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{content:"5"}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{font-size:64px;font-family:Open Sans,Arial,sans-serif;font-weight:200;top:-10px;opacity:.2}.mfp-iframe-holder .mfp-close:hover,.mfp-image-holder .mfp-close:hover{opacity:1}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure,img.mfp-img{line-height:0}.mfp-figure:after{content:"";position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#bdbdbd;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#f3f3f3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-height:300px),screen and (max-width:800px) and (orientation:landscape){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media (max-width:900px){.mfp-arrow{transform:scale(.75)}.mfp-arrow-left{transform-origin:0}.mfp-arrow-right{transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/magnific_popup_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/magnific_popup_cpt.css
new file mode 100644
index 0000000..e221bef
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/magnific_popup_cpt.css
@@ -0,0 +1,365 @@
+.et-db #et-boc .et-l {
+ /* Magnific Popup Reset */
+ /* Magnific Popup CSS */
+ /* Image In Popup */
+ /* Image Shadow */
+ /* Responsive Styles */ }
+ .et-db #et-boc .et-l .mfp-wrap .mfp-container button:hover {
+ background: transparent !important; }
+ .et-db #et-boc .et-l .mfp-wrap .mfp-arrow:active {
+ position: absolute;
+ top: 50%; }
+ .et-db #et-boc .et-l .mfp-wrap .mfp-close:active {
+ position: absolute;
+ top: -10px; }
+ .et-db #et-boc .et-l .mfp-arrow-left:after,
+ .et-db #et-boc .et-l .mfp-arrow-left .mfp-a,
+ .et-db #et-boc .et-l .mfp-arrow-right:after,
+ .et-db #et-boc .et-l .mfp-arrow-right .mfp-a {
+ font-family: 'ETmodules';
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale; }
+ .et-db #et-boc .et-l .mfp-fade.mfp-bg {
+ opacity: 0.001;
+ -webkit-transition: all 0.5s ease-out;
+ transition: all 0.5s ease-out; }
+ .et-db #et-boc .et-l .mfp-fade.mfp-bg.mfp-ready {
+ opacity: 0.8; }
+ .et-db #et-boc .et-l .mfp-fade.mfp-bg.mfp-removing {
+ opacity: 0; }
+ .et-db #et-boc .et-l .mfp-fade .mfp-wrap.mfp-wrap.mfp-ready .mfp-content {
+ opacity: 1; }
+ .et-db #et-boc .et-l .mfp-fade .mfp-wrap.mfp-wrap.mfp-removing .mfp-content {
+ opacity: 0; }
+ .et-db #et-boc .et-l .mfp-fade .mfp-wrap .mfp-content {
+ opacity: 0.001;
+ -webkit-transition: all 0.5s ease-out;
+ transition: all 0.5s ease-out; }
+ .et-db #et-boc .et-l .mfp-bg {
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 1000000;
+ overflow: hidden;
+ position: fixed;
+ background: #0b0b0b;
+ opacity: 0.8;
+ filter: alpha(opacity=80); }
+ .et-db #et-boc .et-l .mfp-wrap {
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 1000001;
+ position: fixed;
+ outline: none !important;
+ -webkit-backface-visibility: hidden; }
+ .et-db #et-boc .et-l .mfp-container {
+ text-align: center;
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ left: 0;
+ top: 0;
+ padding: 0 8px;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box; }
+ .et-db #et-boc .et-l .mfp-container:before {
+ content: '';
+ display: inline-block;
+ height: 100%;
+ vertical-align: middle; }
+ .et-db #et-boc .et-l .mfp-align-top .mfp-container:before {
+ display: none; }
+ .et-db #et-boc .et-l .mfp-content {
+ position: relative;
+ display: inline-block;
+ vertical-align: middle;
+ margin: 0 auto;
+ text-align: left;
+ z-index: 1045; }
+ .et-db #et-boc .et-l .mfp-inline-holder .mfp-content,
+ .et-db #et-boc .et-l .mfp-ajax-holder .mfp-content {
+ width: 100%;
+ cursor: auto; }
+ .et-db #et-boc .et-l .mfp-ajax-cur {
+ cursor: progress; }
+ .et-db #et-boc .et-l .mfp-zoom {
+ cursor: pointer;
+ cursor: -webkit-zoom-in;
+ cursor: zoom-in; }
+ .et-db #et-boc .et-l .mfp-zoom-out-cur,
+ .et-db #et-boc .et-l .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
+ cursor: -webkit-zoom-out;
+ cursor: zoom-out; }
+ .et-db #et-boc .et-l .mfp-auto-cursor .mfp-content {
+ cursor: auto; }
+ .et-db #et-boc .et-l .mfp-close,
+ .et-db #et-boc .et-l .mfp-arrow,
+ .et-db #et-boc .et-l .mfp-preloader,
+ .et-db #et-boc .et-l .mfp-counter {
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none; }
+ .et-db #et-boc .et-l .mfp-loading.mfp-figure {
+ display: none; }
+ .et-db #et-boc .et-l .mfp-hide {
+ display: none !important; }
+ .et-db #et-boc .et-l .mfp-preloader {
+ color: #cccccc;
+ position: absolute;
+ top: 50%;
+ width: auto;
+ text-align: center;
+ margin-top: -0.8em;
+ left: 8px;
+ right: 8px;
+ z-index: 1044; }
+ .et-db #et-boc .et-l .mfp-preloader a {
+ color: #cccccc; }
+ .et-db #et-boc .et-l .mfp-preloader a:hover {
+ color: white; }
+ .et-db #et-boc .et-l .mfp-s-ready .mfp-preloader,
+ .et-db #et-boc .et-l .mfp-s-error .mfp-content {
+ display: none; }
+ .et-db #et-boc .et-l button.mfp-close,
+ .et-db #et-boc .et-l button.mfp-arrow {
+ overflow: visible;
+ cursor: pointer;
+ background: transparent;
+ border: 0;
+ -webkit-appearance: none;
+ display: block;
+ outline: none;
+ padding: 0;
+ z-index: 1046;
+ -webkit-box-shadow: none;
+ box-shadow: none; }
+ .et-db #et-boc .et-l button::-moz-focus-inner {
+ padding: 0;
+ border: 0; }
+ .et-db #et-boc .et-l .mfp-close {
+ width: 44px;
+ height: 44px;
+ line-height: 44px;
+ position: absolute;
+ right: 0;
+ top: 0;
+ text-decoration: none;
+ text-align: center;
+ opacity: 0.65;
+ filter: alpha(opacity=65);
+ padding: 0 0 18px 10px;
+ color: white;
+ font-style: normal;
+ font-size: 28px;
+ font-family: Arial, Baskerville, monospace; }
+ .et-db #et-boc .et-l .mfp-close:hover, .et-db #et-boc .et-l .mfp-close:focus {
+ opacity: 1;
+ filter: alpha(opacity=100); }
+ .et-db #et-boc .et-l .mfp-close:active {
+ top: 1px; }
+ .et-db #et-boc .et-l .mfp-close-btn-in .mfp-close {
+ color: #333333; }
+ .et-db #et-boc .et-l .mfp-image-holder .mfp-close,
+ .et-db #et-boc .et-l .mfp-iframe-holder .mfp-close {
+ color: white;
+ right: -6px;
+ text-align: right;
+ padding-right: 6px;
+ width: 100%; }
+ .et-db #et-boc .et-l .mfp-counter {
+ position: absolute;
+ top: 0;
+ right: 0;
+ color: #cccccc;
+ font-size: 12px;
+ line-height: 18px; }
+ .et-db #et-boc .et-l .mfp-arrow {
+ position: absolute;
+ opacity: 0.55;
+ filter: alpha(opacity=55);
+ margin: 0;
+ top: 50%;
+ margin-top: -32px;
+ padding: 0;
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
+ .et-db #et-boc .et-l .mfp-arrow:hover {
+ opacity: 1;
+ filter: alpha(opacity=100); }
+ .et-db #et-boc .et-l .mfp-arrow-left {
+ left: 10px; }
+ .et-db #et-boc .et-l .mfp-arrow-right {
+ right: 10px; }
+ .et-db #et-boc .et-l .mfp-iframe-holder {
+ padding-top: 40px;
+ padding-bottom: 40px; }
+ .et-db #et-boc .et-l .mfp-iframe-holder .mfp-content {
+ line-height: 0;
+ width: 100%;
+ max-width: 900px; }
+ .et-db #et-boc .et-l .mfp-iframe-holder .mfp-close {
+ top: -40px; }
+ .et-db #et-boc .et-l .mfp-iframe-scaler {
+ width: 100%;
+ height: 0;
+ overflow: hidden;
+ padding-top: 56.25%; }
+ .et-db #et-boc .et-l .mfp-iframe-scaler iframe {
+ position: absolute;
+ display: block;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
+ box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
+ background: black; }
+ .et-db #et-boc .et-l .mfp-arrow {
+ background: none !important;
+ margin-top: -32px !important;
+ width: 48px !important;
+ height: 48px !important;
+ line-height: 1em !important; }
+ .et-db #et-boc .et-l .mfp-arrow:after {
+ margin: 0 !important;
+ top: 0 !important;
+ border: none !important;
+ width: 48px !important;
+ height: 48px !important; }
+ .et-db #et-boc .et-l .mfp-arrow-left {
+ left: 0 !important; }
+ .et-db #et-boc .et-l .mfp-arrow-left:after,
+ .et-db #et-boc .et-l .mfp-arrow-left .mfp-a, .et-db #et-boc .et-l .mfp-arrow-right:after,
+ .et-db #et-boc .et-l .mfp-arrow-right .mfp-a {
+ border: none;
+ font-size: 64px;
+ color: #fff; }
+ .et-db #et-boc .et-l .mfp-arrow-left:before, .et-db #et-boc .et-l .mfp-arrow-right:before {
+ display: none; }
+ .et-db #et-boc .et-l .mfp-arrow-left:after,
+ .et-db #et-boc .et-l .mfp-arrow-left .mfp-a {
+ content: "4"; }
+ .et-db #et-boc .et-l .mfp-arrow-right:after,
+ .et-db #et-boc .et-l .mfp-arrow-right .mfp-a {
+ content: "5"; }
+ .et-db #et-boc .et-l .mfp-image-holder .mfp-close,
+ .et-db #et-boc .et-l .mfp-iframe-holder .mfp-close {
+ font-size: 64px;
+ font-family: 'Open Sans', Arial, sans-serif;
+ font-weight: 200;
+ top: -10px;
+ opacity: 0.2; }
+ .et-db #et-boc .et-l .mfp-image-holder .mfp-close:hover,
+ .et-db #et-boc .et-l .mfp-iframe-holder .mfp-close:hover {
+ opacity: 1; }
+ .et-db #et-boc .et-l img.mfp-img {
+ width: auto;
+ max-width: 100%;
+ height: auto;
+ display: block;
+ line-height: 0;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ padding: 40px 0 40px;
+ margin: 0 auto; }
+ .et-db #et-boc .et-l .mfp-figure {
+ line-height: 0; }
+ .et-db #et-boc .et-l .mfp-figure:after {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 40px;
+ bottom: 40px;
+ display: block;
+ right: 0;
+ width: auto;
+ height: auto;
+ z-index: -1;
+ -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
+ box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
+ background: #444444; }
+ .et-db #et-boc .et-l .mfp-figure small {
+ color: #bdbdbd;
+ display: block;
+ font-size: 12px;
+ line-height: 14px; }
+ .et-db #et-boc .et-l .mfp-figure figure {
+ margin: 0; }
+ .et-db #et-boc .et-l .mfp-bottom-bar {
+ margin-top: -36px;
+ position: absolute;
+ top: 100%;
+ left: 0;
+ width: 100%;
+ cursor: auto; }
+ .et-db #et-boc .et-l .mfp-title {
+ text-align: left;
+ line-height: 18px;
+ color: #f3f3f3;
+ word-wrap: break-word;
+ padding-right: 36px; }
+ .et-db #et-boc .et-l .mfp-image-holder .mfp-content {
+ max-width: 100%; }
+ .et-db #et-boc .et-l .mfp-gallery .mfp-image-holder .mfp-figure {
+ cursor: pointer; }
+ @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-image-holder {
+ padding-left: 0;
+ padding-right: 0; }
+ .et-db #et-boc .et-l .mfp-img-mobile img.mfp-img {
+ padding: 0; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-figure:after {
+ top: 0;
+ bottom: 0; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-figure small {
+ display: inline;
+ margin-left: 5px; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-bottom-bar {
+ background: rgba(0, 0, 0, 0.6);
+ bottom: 0;
+ margin: 0;
+ top: auto;
+ padding: 3px 5px;
+ position: fixed;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-bottom-bar:empty {
+ padding: 0; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-counter {
+ right: 5px;
+ top: 3px; }
+ .et-db #et-boc .et-l .mfp-img-mobile .mfp-close {
+ top: 0;
+ right: 0;
+ width: 35px;
+ height: 35px;
+ line-height: 35px;
+ background: rgba(0, 0, 0, 0.6);
+ position: fixed;
+ text-align: center;
+ padding: 0; } }
+ @media all and (max-width: 900px) {
+ .et-db #et-boc .et-l .mfp-arrow {
+ -webkit-transform: scale(0.75);
+ transform: scale(0.75); }
+ .et-db #et-boc .et-l .mfp-arrow-left {
+ -webkit-transform-origin: 0;
+ transform-origin: 0; }
+ .et-db #et-boc .et-l .mfp-arrow-right {
+ -webkit-transform-origin: 100%;
+ transform-origin: 100%; }
+ .et-db #et-boc .et-l .mfp-container {
+ padding-left: 6px;
+ padding-right: 6px; } }
+
+
+/*# sourceMappingURL=magnific_popup_cpt.css.map*/
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/map.css b/includes/builder/feature/dynamic-assets/assets/css/map.css
new file mode 100644
index 0000000..0886cf3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/map.css
@@ -0,0 +1 @@
+.et_pb_map{height:440px;width:100%;position:relative}.et_pb_map_container img{max-width:inherit}.et_pb_map_pin{display:none;visibility:hidden}.et_pb_column_2_3 .et_pb_map{height:400px}.et_pb_column_1_2 .et_pb_map,.et_pb_column_3_5 .et_pb_map,.et_pb_column_3_8 .et_pb_map{height:280px}.et_pb_column_1_3 .et_pb_map,.et_pb_column_1_4 .et_pb_map,.et_pb_column_1_5 .et_pb_map,.et_pb_column_1_6 .et_pb_map,.et_pb_column_2_5 .et_pb_map{height:230px}@media (min-width:981px) and (max-width:1405px){.et_pb_column .et_pb_map{max-width:100%}}@media (max-width:980px){.et_pb_map_container>.et_pb_map{height:350px}}@media (max-width:767px){.et_pb_map_container>.et_pb_map{height:220px}}@media (max-width:479px){.et_pb_map_container>.et_pb_map{height:200px}}.chrome.parallax-map-support .et_pb_map{transform:inherit!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/map_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/map_cpt.css
new file mode 100644
index 0000000..b7218fb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/map_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_map{height:440px;width:100%;position:relative}.et-db #et-boc .et-l .et_pb_map_container img{max-width:inherit}.et-db #et-boc .et-l .et_pb_map_pin{display:none;visibility:hidden}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_map{height:400px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_map{height:280px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_map,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_map{height:230px}@media (min-width:981px) and (max-width:1405px){.et-db #et-boc .et-l .et_pb_column .et_pb_map{max-width:100%}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_map_container>.et_pb_map{height:350px}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_map_container>.et_pb_map{height:220px}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_map_container>.et_pb_map{height:200px}}.chrome.parallax-map-support .et_pb_map{transform:inherit!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/menu.css b/includes/builder/feature/dynamic-assets/assets/css/menu.css
new file mode 100644
index 0000000..e90d385
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/menu.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_menu .et_pb_menu__logo img{border:0 solid #333}.et_pb_menu.et_hover_enabled:hover{z-index:auto}.et_pb_menu .et-menu-nav,.et_pb_menu .et-menu-nav>ul{float:none}.et_pb_menu .et-menu-nav>ul{padding:0!important;line-height:1.7em}.et_pb_menu .et-menu-nav>ul ul{padding:20px 0;text-align:left}.et_pb_bg_layout_dark.et_pb_menu ul li a{color:#fff}.et_pb_bg_layout_dark.et_pb_menu ul li a:hover{color:hsla(0,0%,100%,.8)}.et-menu li li.menu-item-has-children>a:first-child:after{top:12px}.et_pb_menu .et-menu-nav>ul.upwards li ul{bottom:100%;top:auto;border-bottom-width:3px;border-bottom-style:solid;border-top:none;border-bottom-color:#2ea3f2;box-shadow:2px -2px 5px rgba(0,0,0,.1)}.et_pb_menu .et-menu-nav>ul.upwards li ul li ul{bottom:-23px}.et_pb_menu .et-menu-nav>ul.upwards li.mega-menu ul ul{bottom:0;top:auto;border:none}.et_pb_menu_inner_container{position:relative}.et_pb_menu .et_pb_menu__wrap{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:stretch;align-items:stretch;-ms-flex-wrap:wrap;flex-wrap:wrap;opacity:1}.et_pb_menu .et_pb_menu__wrap--visible{animation:fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_menu .et_pb_menu__wrap--hidden{opacity:0;animation:fadeOutBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_menu .et_pb_menu__menu{-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-pack:start;justify-content:flex-start}.et_pb_menu .et_pb_menu__menu,.et_pb_menu .et_pb_menu__menu>nav,.et_pb_menu .et_pb_menu__menu>nav>ul{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et_pb_menu .et_pb_menu__menu>nav>ul{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.et_pb_menu .et_pb_menu__menu>nav>ul>li{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;margin:0}.et_pb_menu .et_pb_menu__menu>nav>ul>li.mega-menu{position:static}.et_pb_menu .et_pb_menu__menu>nav>ul>li>ul{top:calc(100% - 1px);left:0}.et_pb_menu .et_pb_menu__menu>nav>ul.upwards>li>ul{top:auto;bottom:calc(100% - 1px)}.et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:31px 0;white-space:nowrap}.et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:after{top:50%!important;transform:translateY(-50%)}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul{padding:0!important}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:8px}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{padding-bottom:8px}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-top:0;margin-bottom:8px}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:8px;padding-bottom:0}.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a:after{top:auto;bottom:0}.et_pb_menu .et_pb_menu__icon{-ms-flex:0 0 auto;flex:0 0 auto}.et_pb_menu .et-menu{margin-left:-11px;margin-right:-11px}.et_pb_menu .et-menu>li{padding-left:11px;padding-right:11px}.et_pb_menu--style-left_aligned .et_pb_menu_inner_container,.et_pb_menu--style-left_aligned .et_pb_row{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et_pb_menu--style-left_aligned .et_pb_menu__logo-wrap{-ms-flex:0 1 auto;flex:0 1 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_menu--style-left_aligned .et_pb_menu__logo{margin-right:30px}.rtl .et_pb_menu--style-left_aligned .et_pb_menu__logo{margin-right:0;margin-left:30px}.et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__menu>nav>ul,.et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,.et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu,.et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav,.et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-positive:1;flex-grow:1}.et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav>ul{-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between}.et_pb_menu--style-centered .et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et_pb_menu--style-centered .et_pb_menu__logo,.et_pb_menu--style-centered .et_pb_menu__logo img{margin:0 auto}.et_pb_menu--style-centered .et_pb_menu__menu>nav>ul,.et_pb_menu--style-centered .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:none;margin-bottom:30px}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo,.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo img{margin:0 auto}.et_pb_menu--style-inline_centered_logo .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot{-ms-flex-align:center!important;align-items:center!important}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo,.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo-wrap{width:100%;height:100%}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot img{max-height:100%}.et_pb_menu .et_pb_menu__logo-slot .et-fb-content-placeholder{min-width:96px}.et_pb_menu .et_pb_menu__search-container{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-line-pack:stretch;align-content:stretch;left:0;bottom:0;width:100%;height:100%;opacity:0;z-index:999}.et_pb_menu .et_pb_menu__search-container--visible{opacity:1;animation:fadeInTop 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_menu .et_pb_menu__search-container--hidden{animation:fadeOutTop 1s 1 cubic-bezier(.77,0,.175,1)}.et_pb_menu .et_pb_menu__search-container--disabled{display:none}.et_pb_menu .et_pb_menu__search{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:center;align-items:center}.et_pb_menu .et_pb_menu__search-form{-ms-flex:1 1 auto;flex:1 1 auto}.et_pb_menu .et_pb_menu__search-input{border:0;width:100%;color:#333;background:transparent}.et_pb_menu .et_pb_menu__close-search-button{-ms-flex:0 0 auto;flex:0 0 auto}.et_pb_menu .et_pb_menu__close-search-button:after{content:"M";font-size:1.7em}@media (min-width:981px){.et_dropdown_animation_fade.et_pb_menu ul li:hover>ul{transition:all .2s ease-in-out}.et_dropdown_animation_slide.et_pb_menu ul li:hover>ul{animation:fadeLeft .4s ease-in-out}.et_dropdown_animation_expand.et_pb_menu ul li:hover>ul{-webkit-transform-origin:0 0;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_dropdown_animation_flip.et_pb_menu ul li ul li:hover>ul{animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_dropdown_animation_flip.et_pb_menu ul li:hover>ul{animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et_pb_menu.et_pb_menu_fullwidth .et_pb_row{width:100%;max-width:100%;padding:0 30px!important}}@media (max-width:980px){.et_pb_menu--style-left_aligned .et_pb_menu_inner_container,.et_pb_menu--style-left_aligned .et_pb_row{-ms-flex-align:center;align-items:center}.et_pb_menu--style-left_aligned .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-pack:justify;justify-content:space-between}.et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo,.et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo{margin:0 auto}.et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot{display:none}.et_pb_menu .et_pb_row{min-height:81px}.et_pb_menu .et_pb_menu__menu{display:none}.et_pb_menu .et_mobile_nav_menu{float:none;margin:0 6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et_pb_menu .et_mobile_menu{top:100%;padding:5%}.et_pb_menu .et_mobile_menu,.et_pb_menu .et_mobile_menu ul{list-style:none!important;text-align:left}.et_pb_menu .et_mobile_menu ul{padding:0}.et_pb_menu .et_pb_mobile_menu_upwards .et_mobile_menu{top:auto;bottom:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/menu_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/menu_cpt.css
new file mode 100644
index 0000000..6715663
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/menu_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_menu .et_pb_menu__logo img{border:0 solid #333}.et-db #et-boc .et-l .et_pb_menu.et_hover_enabled:hover{z-index:auto}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav,.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul{float:none}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul{padding:0!important;line-height:1.7em}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul ul{padding:20px 0;text-align:left}.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_menu ul li a{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_menu ul li a:hover{color:hsla(0,0%,100%,.8)}.et-db #et-boc .et-l .et-menu li li.menu-item-has-children>a:first-child:after{top:12px}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul.upwards li ul{bottom:100%;top:auto;border-bottom-width:3px;border-bottom-style:solid;border-top:none;border-bottom-color:#2ea3f2;box-shadow:2px -2px 5px rgba(0,0,0,.1)}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul.upwards li ul li ul{bottom:-23px}.et-db #et-boc .et-l .et_pb_menu .et-menu-nav>ul.upwards li.mega-menu ul ul{bottom:0;top:auto;border:none}.et-db #et-boc .et-l .et_pb_menu_inner_container{position:relative}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__wrap{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:stretch;align-items:stretch;-ms-flex-wrap:wrap;flex-wrap:wrap;opacity:1}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__wrap--visible{animation:fadeInBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__wrap--hidden{opacity:0;animation:fadeOutBottom 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu{-ms-flex:0 1 auto;flex:0 1 auto;-ms-flex-pack:start;justify-content:flex-start}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu,.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav,.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul>li{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;margin:0}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul>li.mega-menu{position:static}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul>li>ul{top:calc(100% - 1px);left:0}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu>nav>ul.upwards>li>ul{top:auto;bottom:calc(100% - 1px)}.et-db #et-boc .et-l .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:31px 0;white-space:nowrap}.et-db #et-boc .et-l .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a:after{top:50%!important;transform:translateY(-50%)}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul{padding:0!important}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li{margin-top:8px}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a{padding-bottom:8px}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li{margin-top:0;margin-bottom:8px}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a{padding-top:8px;padding-bottom:0}.et-db #et-boc .et-l .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul.upwards>li>a:after{top:auto;bottom:0}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__icon{-ms-flex:0 0 auto;flex:0 0 auto}.et-db #et-boc .et-l .et_pb_menu .et-menu{margin-left:-11px;margin-right:-11px}.et-db #et-boc .et-l .et_pb_menu .et-menu>li{padding-left:11px;padding-right:11px}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu_inner_container,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_row{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu__logo-wrap{-ms-flex:0 1 auto;flex:0 1 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu__logo{margin-right:30px}.rtl .et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu__logo{margin-right:0;margin-left:30px}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-positive:1;flex-grow:1}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__menu>nav>ul{-ms-flex-positive:1;flex-grow:1;-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_menu--style-centered .et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu--style-centered .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_menu--style-centered .et_pb_menu__logo img{margin:0 auto}.et-db #et-boc .et-l .et_pb_menu--style-centered .et_pb_menu__menu>nav>ul,.et-db #et-boc .et-l .et_pb_menu--style-centered .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:none;margin-bottom:30px}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo img{margin:0 auto}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot{-ms-flex-align:center!important;align-items:center!important}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot .et_pb_menu__logo-wrap{width:100%;height:100%}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot img{max-height:100%}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__logo-slot .et-fb-content-placeholder{min-width:96px}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-container{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-line-pack:stretch;align-content:stretch;left:0;bottom:0;width:100%;height:100%;opacity:0;z-index:999}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-container--visible{opacity:1;animation:fadeInTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-container--hidden{animation:fadeOutTop 1s 1 cubic-bezier(.77,0,.175,1)}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-container--disabled{display:none}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search{-ms-flex:1 1 auto;flex:1 1 auto;display:-ms-flexbox;display:flex;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-form{-ms-flex:1 1 auto;flex:1 1 auto}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__search-input{border:0;width:100%;color:#333;background:transparent}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__close-search-button{-ms-flex:0 0 auto;flex:0 0 auto}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__close-search-button:after{content:"M";font-size:1.7em}@media (min-width:981px){.et-db #et-boc .et-l .et_dropdown_animation_fade.et_pb_menu ul li:hover>ul{transition:all .2s ease-in-out}.et-db #et-boc .et-l .et_dropdown_animation_slide.et_pb_menu ul li:hover>ul{animation:fadeLeft .4s ease-in-out}.et-db #et-boc .et-l .et_dropdown_animation_expand.et_pb_menu ul li:hover>ul{-webkit-transform-origin:0 0;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_dropdown_animation_flip.et_pb_menu ul li ul li:hover>ul{animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_dropdown_animation_flip.et_pb_menu ul li:hover>ul{animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}.et-db #et-boc .et-l .et_pb_menu.et_pb_menu_fullwidth .et_pb_row{width:100%;max-width:100%;padding:0 30px!important}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu_inner_container,.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_row{-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap{-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap{-ms-flex-pack:end;justify-content:flex-end}.et-db #et-boc .et-l .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap{-ms-flex-pack:justify;justify-content:space-between}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo,.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo{margin:0 auto}.et-db #et-boc .et-l .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot{display:none}.et-db #et-boc .et-l .et_pb_menu .et_pb_row{min-height:81px}.et-db #et-boc .et-l .et_pb_menu .et_pb_menu__menu{display:none}.et-db #et-boc .et-l .et_pb_menu .et_mobile_nav_menu{float:none;margin:0 6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu{top:100%;padding:5%}.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu,.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu ul{list-style:none!important;text-align:left}.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu ul{padding:0}.et-db #et-boc .et-l .et_pb_menu .et_pb_mobile_menu_upwards .et_mobile_menu{top:auto;bottom:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/menus.css b/includes/builder/feature/dynamic-assets/assets/css/menus.css
new file mode 100644
index 0000000..5da702b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/menus.css
@@ -0,0 +1 @@
+.et-menu li{display:inline-block;font-size:14px;padding-right:22px}.et-menu>li:last-child{padding-right:0}.et-menu a{color:rgba(0,0,0,.6);text-decoration:none;display:block;position:relative}.et-menu a,.et-menu a:hover{transition:all .4s ease-in-out}.et-menu a:hover{opacity:.7}.et-menu li>a{padding-bottom:29px;word-wrap:break-word}a.et_pb_menu__icon,button.et_pb_menu__icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0;margin:0 11px;font-family:ETmodules;font-size:17px;background:none;border:0;cursor:pointer}.et_pb_menu__wrap .mobile_menu_bar{transform:translateY(3%)}.et_pb_menu__wrap .mobile_menu_bar:before{top:0}.et_pb_menu__logo{overflow:hidden}.et_pb_menu__logo img{display:block}.et_pb_menu__logo img[src$=".svg"]{width:100%}.et_pb_menu__search-button:after{content:"U"}.et_pb_menu__cart-button:after{content:"\E07A"}@media (max-width:980px){.et-menu{display:none}.et_mobile_nav_menu{display:block;margin-top:-1px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/menus_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/menus_cpt.css
new file mode 100644
index 0000000..f2137f8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/menus_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et-menu li{display:inline-block;font-size:14px;padding-right:22px}.et-db #et-boc .et-l .et-menu>li:last-child{padding-right:0}.et-db #et-boc .et-l .et-menu a{color:rgba(0,0,0,.6);text-decoration:none;display:block;position:relative;transition:all .4s ease-in-out}.et-db #et-boc .et-l .et-menu a:hover{opacity:.7;transition:all .4s ease-in-out}.et-db #et-boc .et-l .et-menu li>a{padding-bottom:29px;word-wrap:break-word}.et-db #et-boc .et-l a.et_pb_menu__icon,.et-db #et-boc .et-l button.et_pb_menu__icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0;margin:0 11px;font-family:ETmodules;font-size:17px;background:none;border:0;cursor:pointer}.et-db #et-boc .et-l .et_pb_menu__wrap .mobile_menu_bar{transform:translateY(3%)}.et-db #et-boc .et-l .et_pb_menu__wrap .mobile_menu_bar:before{top:0}.et-db #et-boc .et-l .et_pb_menu__logo{overflow:hidden}.et-db #et-boc .et-l .et_pb_menu__logo img{display:block}.et-db #et-boc .et-l .et_pb_menu__logo img[src$=".svg"]{width:100%}.et-db #et-boc .et-l .et_pb_menu__search-button:after{content:"U"}.et-db #et-boc .et-l .et_pb_menu__cart-button:after{content:"\E07A"}@media (max-width:980px){.et-db #et-boc .et-l .et-menu{display:none}.et-db #et-boc .et-l .et_mobile_nav_menu{display:block;margin-top:-1px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/number_counter.css b/includes/builder/feature/dynamic-assets/assets/css/number_counter.css
new file mode 100644
index 0000000..995efb8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/number_counter.css
@@ -0,0 +1 @@
+.et_pb_number_counter{word-wrap:break-word;margin:0 auto 30px;position:relative;text-align:center}.et_pb_number_counter .percent{z-index:2}.et_pb_number_counter h3{font-size:18px;position:relative}.et_pb_number_counter .et_pb_module_header{position:relative}.et_pb_number_counter{opacity:0;transition:opacity 1s}.et_pb_number_counter.active{opacity:1}.et_pb_number_counter{width:auto}.et_pb_number_counter canvas{display:none;visibility:hidden}.et_pb_number_counter .percent{height:72px;position:relative}.et_pb_number_counter .percent p{font-size:72px;line-height:72px;font-weight:500}.et_pb_number_counter.et_pb_with_title .percent{margin-bottom:20px}@media (min-width:981px) and (max-width:1100px){.et_pb_column_1_4 .et_pb_number_counter .percent,.et_pb_column_1_5 .et_pb_number_counter .percent,.et_pb_column_1_6 .et_pb_number_counter .percent{height:55px}.et_pb_column_1_4 .et_pb_number_counter h3,.et_pb_column_1_5 .et_pb_number_counter h3,.et_pb_column_1_6 .et_pb_number_counter h3{padding:10px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/number_counter_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/number_counter_cpt.css
new file mode 100644
index 0000000..36be5e4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/number_counter_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_number_counter{word-wrap:break-word;margin:0 auto 30px;position:relative;text-align:center}.et-db #et-boc .et-l .et_pb_number_counter .percent{z-index:2}.et-db #et-boc .et-l .et_pb_number_counter h3{font-size:18px;position:relative}.et-db #et-boc .et-l .et_pb_number_counter .et_pb_module_header{position:relative}.et-db #et-boc .et-l .et_pb_number_counter{opacity:0;transition:opacity 1s}.et-db #et-boc .et-l .et_pb_number_counter.active{opacity:1}.et-db #et-boc .et-l .et_pb_number_counter{width:auto}.et-db #et-boc .et-l .et_pb_number_counter canvas{display:none;visibility:hidden}.et-db #et-boc .et-l .et_pb_number_counter .percent{height:72px;position:relative}.et-db #et-boc .et-l .et_pb_number_counter .percent p{font-size:72px;line-height:72px;font-weight:500}.et-db #et-boc .et-l .et_pb_number_counter.et_pb_with_title .percent{margin-bottom:20px}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_number_counter .percent,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_number_counter .percent,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_number_counter .percent{height:55px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_number_counter h3,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_number_counter h3,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_number_counter h3{padding:10px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/overlay.css b/includes/builder/feature/dynamic-assets/assets/css/overlay.css
new file mode 100644
index 0000000..8a1f40f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/overlay.css
@@ -0,0 +1 @@
+.et_overlay{z-index:-1;position:absolute;top:0;left:0;display:block;width:100%;height:100%;background:hsla(0,0%,100%,.9);opacity:0;pointer-events:none;transition:all .3s;border:1px solid #e5e5e5;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.et_overlay:before{color:#2ea3f2;content:"\E050";position:absolute;top:55%;left:50%;margin:-16px 0 0 -16px;font-size:32px;transition:all .4s}.et_portfolio_image,.et_shop_image{position:relative;display:block}.et_pb_has_overlay:not(.et_pb_image):hover .et_overlay,.et_portfolio_image:hover .et_overlay,.et_shop_image:hover .et_overlay{z-index:3;opacity:1}#ie7 .et_overlay,#ie8 .et_overlay{display:none}.et_pb_module.et_pb_has_overlay{position:relative}.et_pb_module.et_pb_has_overlay .et_overlay,article.et_pb_has_overlay{border:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/overlay_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/overlay_cpt.css
new file mode 100644
index 0000000..23359bf
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/overlay_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_overlay{z-index:-1;position:absolute;top:0;left:0;display:block;width:100%;height:100%;background:hsla(0,0%,100%,.9);opacity:0;pointer-events:none;transition:all .3s;border:1px solid #e5e5e5;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.et-db #et-boc .et-l .et_overlay:before{color:#2ea3f2;content:"\E050";position:absolute;top:55%;left:50%;margin:-16px 0 0 -16px;font-size:32px;transition:all .4s}.et-db #et-boc .et-l .et_portfolio_image,.et-db #et-boc .et-l .et_shop_image{position:relative;display:block}.et-db #et-boc .et-l .et_pb_has_overlay:not(.et_pb_image):hover .et_overlay,.et-db #et-boc .et-l .et_portfolio_image:hover .et_overlay,.et-db #et-boc .et-l .et_shop_image:hover .et_overlay{z-index:3;opacity:1}.et-db #et-boc .et-l #ie7 .et_overlay,.et-db #et-boc .et-l #ie8 .et_overlay{display:none}.et-db #et-boc .et-l .et_pb_module.et_pb_has_overlay{position:relative}.et-db #et-boc .et-l .et_pb_module.et_pb_has_overlay .et_overlay,.et-db #et-boc .et-l article.et_pb_has_overlay{border:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/portfolio.css b/includes/builder/feature/dynamic-assets/assets/css/portfolio.css
new file mode 100644
index 0000000..e61bd82
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/portfolio.css
@@ -0,0 +1 @@
+.et_pb_portfolio_item{word-wrap:break-word}.et_pb_with_border .et_portfolio_image{border:0 solid #333}.et_portfolio_image img{vertical-align:bottom;margin-bottom:0}.et_pb_portfolio_item{background-size:cover;background-position:50%;background-repeat:no-repeat}.et_pb_with_border .et_pb_portfolio_image,.et_pb_with_border .et_pb_portfolio_item{border:0 solid #333}.et_pb_portfolio_item .et_pb_module_header a,.et_pb_portfolio_item .post-meta a,.et_pb_portfolio_item h3 a{text-decoration:none}.et_pb_bg_layout_light .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_light .et_pb_portfolio_item .post-meta a{color:#666}.et_pb_bg_layout_dark .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_dark .et_pb_portfolio_item .post-meta a{color:inherit}.et_pb_portfolio_item .et_pb_module_header,.et_pb_portfolio_item h2{margin-top:10px}.et_pb_portfolio_image:hover .et_overlay{z-index:3;opacity:1}.et_pb_portfolio .et_pb_portfolio_item,.et_pb_portfolio.et_pb_section_parallax .pagination,.et_pb_portfolio.et_pb_section_parallax .wp-pagenavi,.et_pb_portfolio.et_pb_section_video .pagination,.et_pb_portfolio.et_pb_section_video .wp-pagenavi,.et_pb_portfolio_grid.et_pb_section_parallax .pagination,.et_pb_portfolio_grid.et_pb_section_parallax .wp-pagenavi,.et_pb_portfolio_grid.et_pb_section_video .pagination,.et_pb_portfolio_grid.et_pb_section_video .wp-pagenavi{position:relative}.et_pb_portfolio_items_wrapper.no_pagination{border-bottom:none}@media (min-width:981px){.et_pb_portfolio_grid .et_pb_portfolio_item img{width:100%}.et_pb_portfolio_grid .et_pb_portfolio_item .et_pb_module_header,.et_pb_portfolio_grid .et_pb_portfolio_item h2{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et_pb_portfolio_grid .et_pb_portfolio_item h2{font-size:18px}.et_pb_portfolio_item .post-meta{font-size:14px;margin:.4em 0 0}}@media (max-width:980px){.et_pb_bg_layout_light_tablet .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_light_tablet .et_pb_portfolio_item .post-meta a{color:#666}.et_pb_bg_layout_dark_tablet .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_dark_tablet .et_pb_portfolio_item .post-meta a{color:inherit}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 5.5% 7.5% 0;width:29.666%;clear:none;float:left}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n){margin-right:0}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1){clear:both}}@media (max-width:767px){.et_pb_portfolio_item h2{font-size:18px}.et_pb_bg_layout_light_phone .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_light_phone .et_pb_portfolio_item .post-meta a{color:#666}.et_pb_bg_layout_dark_phone .et_pb_portfolio_item .post-meta,.et_pb_bg_layout_dark_phone .et_pb_portfolio_item .post-meta a{color:inherit}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 5.5% 9.5% 0;width:47.25%;clear:none;float:left}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n){margin-right:5.5%}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1){clear:none}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item .last_in_row,.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n){margin-right:0}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item .first_in_row,.et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd){clear:both}}@media (max-width:479px){.et_pb_portfolio_item{margin-bottom:22px}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 0 11.5%;width:100%}.et_pb_column .et_pb_grid_item.et_pb_portfolio_item .on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/portfolio_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/portfolio_cpt.css
new file mode 100644
index 0000000..ea63301
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/portfolio_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_portfolio_item{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_with_border .et_portfolio_image{border:0 solid #333}.et-db #et-boc .et-l .et_portfolio_image img{vertical-align:bottom;margin-bottom:0}.et-db #et-boc .et-l .et_pb_portfolio_item{background-size:cover;background-position:50%;background-repeat:no-repeat}.et-db #et-boc .et-l .et_pb_with_border .et_pb_portfolio_image,.et-db #et-boc .et-l .et_pb_with_border .et_pb_portfolio_item{border:0 solid #333}.et-db #et-boc .et-l .et_pb_portfolio_item .et_pb_module_header a,.et-db #et-boc .et-l .et_pb_portfolio_item .post-meta a,.et-db #et-boc .et-l .et_pb_portfolio_item h3 a{text-decoration:none}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_portfolio_item .post-meta a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_portfolio_item .post-meta a{color:inherit}.et-db #et-boc .et-l .et_pb_portfolio_item .et_pb_module_header,.et-db #et-boc .et-l .et_pb_portfolio_item h2{margin-top:10px}.et-db #et-boc .et-l .et_pb_portfolio_image:hover .et_overlay{z-index:3;opacity:1}.et-db #et-boc .et-l .et_pb_portfolio .et_pb_portfolio_item,.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_parallax .pagination,.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_parallax .wp-pagenavi,.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_video .pagination,.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_video .wp-pagenavi,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_parallax .pagination,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_parallax .wp-pagenavi,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_video .pagination,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_video .wp-pagenavi{position:relative}.et-db #et-boc .et-l .et_pb_portfolio_items_wrapper.no_pagination{border-bottom:none}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_portfolio_grid .et_pb_portfolio_item img{width:100%}.et-db #et-boc .et-l .et_pb_portfolio_grid .et_pb_portfolio_item .et_pb_module_header,.et-db #et-boc .et-l .et_pb_portfolio_grid .et_pb_portfolio_item h2{word-wrap:break-word;margin:10px 0 0;padding-bottom:0}.et-db #et-boc .et-l .et_pb_portfolio_grid .et_pb_portfolio_item h2{font-size:18px}.et-db #et-boc .et-l .et_pb_portfolio_item .post-meta{font-size:14px;margin:.4em 0 0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_portfolio_item .post-meta a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_portfolio_item .post-meta a{color:inherit}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 5.5% 7.5% 0;width:29.666%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1){clear:both}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_portfolio_item h2{font-size:18px}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_portfolio_item .post-meta a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_portfolio_item .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_portfolio_item .post-meta a{color:inherit}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 5.5% 9.5% 0;width:47.25%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n){margin-right:5.5%}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(3n+1){clear:none}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item .last_in_row,.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item .first_in_row,.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item:nth-child(odd){clear:both}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_portfolio_item{margin-bottom:22px}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item{margin:0 0 11.5%;width:100%}.et-db #et-boc .et-l .et_pb_column .et_pb_grid_item.et_pb_portfolio_item .on_last_row{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_formats.css b/includes/builder/feature/dynamic-assets/assets/css/post_formats.css
new file mode 100644
index 0000000..dc39125
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_formats.css
@@ -0,0 +1 @@
+.et_audio_content,.et_link_content,.et_quote_content{background-color:#2ea3f2}.et_pb_post .et-pb-controllers a{margin-bottom:10px}.format-gallery .et-pb-controllers{bottom:0}.et_pb_blog_grid .et_audio_content{margin-bottom:19px}.et_pb_row .et_pb_blog_grid .et_pb_post .et_pb_slide{min-height:180px}.et_audio_content .wp-block-audio{margin:0;padding:0}.et_audio_content h2{line-height:44px}.et_pb_column_1_2 .et_audio_content h2,.et_pb_column_1_3 .et_audio_content h2,.et_pb_column_1_4 .et_audio_content h2,.et_pb_column_1_5 .et_audio_content h2,.et_pb_column_1_6 .et_audio_content h2,.et_pb_column_2_5 .et_audio_content h2,.et_pb_column_3_5 .et_audio_content h2,.et_pb_column_3_8 .et_audio_content h2{margin-bottom:9px;margin-top:0}.et_pb_column_1_2 .et_audio_content,.et_pb_column_3_5 .et_audio_content{padding:35px 40px}.et_pb_column_1_2 .et_audio_content h2,.et_pb_column_3_5 .et_audio_content h2{line-height:32px}.et_pb_column_1_3 .et_audio_content,.et_pb_column_1_4 .et_audio_content,.et_pb_column_1_5 .et_audio_content,.et_pb_column_1_6 .et_audio_content,.et_pb_column_2_5 .et_audio_content,.et_pb_column_3_8 .et_audio_content{padding:35px 20px}.et_pb_column_1_3 .et_audio_content h2,.et_pb_column_1_4 .et_audio_content h2,.et_pb_column_1_5 .et_audio_content h2,.et_pb_column_1_6 .et_audio_content h2,.et_pb_column_2_5 .et_audio_content h2,.et_pb_column_3_8 .et_audio_content h2{font-size:18px;line-height:26px}article.et_pb_has_overlay .et_pb_blog_image_container{position:relative}.et_pb_post>.et_main_video_container{position:relative;margin-bottom:30px}.et_pb_post .et_pb_video_overlay .et_pb_video_play{color:#fff}.et_pb_post .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}.et_audio_content,.et_link_content,.et_quote_content{text-align:center;word-wrap:break-word;position:relative;padding:50px 60px}.et_audio_content h2,.et_link_content a.et_link_main_url,.et_link_content h2,.et_quote_content blockquote cite,.et_quote_content blockquote p{color:#fff!important}.et_quote_main_link{position:absolute;text-indent:-9999px;width:100%;height:100%;display:block;top:0;left:0}.et_quote_content blockquote{padding:0;margin:0;border:none}.et_audio_content h2,.et_link_content h2,.et_quote_content blockquote p{margin-top:0}.et_audio_content h2{margin-bottom:20px}.et_audio_content h2,.et_link_content h2,.et_quote_content blockquote p{line-height:44px}.et_link_content a.et_link_main_url,.et_quote_content blockquote cite{font-size:18px;font-weight:200}.et_quote_content blockquote cite{font-style:normal}.et_pb_column_2_3 .et_quote_content{padding:50px 42px 45px}.et_pb_column_2_3 .et_audio_content,.et_pb_column_2_3 .et_link_content{padding:40px 40px 45px}.et_pb_column_1_2 .et_audio_content,.et_pb_column_1_2 .et_link_content,.et_pb_column_1_2 .et_quote_content,.et_pb_column_3_5 .et_audio_content,.et_pb_column_3_5 .et_link_content,.et_pb_column_3_5 .et_quote_content{padding:35px 40px}.et_pb_column_1_2 .et_quote_content blockquote p,.et_pb_column_3_5 .et_quote_content blockquote p{font-size:26px;line-height:32px}.et_pb_column_1_2 .et_audio_content h2,.et_pb_column_1_2 .et_link_content h2,.et_pb_column_3_5 .et_audio_content h2,.et_pb_column_3_5 .et_link_content h2{line-height:32px}.et_pb_column_1_2 .et_link_content a.et_link_main_url,.et_pb_column_1_2 .et_quote_content blockquote cite,.et_pb_column_3_5 .et_link_content a.et_link_main_url,.et_pb_column_3_5 .et_quote_content blockquote cite{font-size:14px}.et_pb_column_1_3 .et_quote_content,.et_pb_column_1_4 .et_quote_content,.et_pb_column_1_5 .et_quote_content,.et_pb_column_1_6 .et_quote_content,.et_pb_column_2_5 .et_quote_content,.et_pb_column_3_8 .et_quote_content{padding:35px 30px 32px}.et_pb_column_1_3 .et_audio_content,.et_pb_column_1_3 .et_link_content,.et_pb_column_1_4 .et_audio_content,.et_pb_column_1_4 .et_link_content,.et_pb_column_1_5 .et_audio_content,.et_pb_column_1_5 .et_link_content,.et_pb_column_1_6 .et_audio_content,.et_pb_column_1_6 .et_link_content,.et_pb_column_2_5 .et_audio_content,.et_pb_column_2_5 .et_link_content,.et_pb_column_3_8 .et_audio_content,.et_pb_column_3_8 .et_link_content{padding:35px 20px}.et_pb_column_1_3 .et_audio_content h2,.et_pb_column_1_3 .et_link_content h2,.et_pb_column_1_3 .et_quote_content blockquote p,.et_pb_column_1_4 .et_audio_content h2,.et_pb_column_1_4 .et_link_content h2,.et_pb_column_1_4 .et_quote_content blockquote p,.et_pb_column_1_5 .et_audio_content h2,.et_pb_column_1_5 .et_link_content h2,.et_pb_column_1_5 .et_quote_content blockquote p,.et_pb_column_1_6 .et_audio_content h2,.et_pb_column_1_6 .et_link_content h2,.et_pb_column_1_6 .et_quote_content blockquote p,.et_pb_column_2_5 .et_audio_content h2,.et_pb_column_2_5 .et_link_content h2,.et_pb_column_2_5 .et_quote_content blockquote p,.et_pb_column_3_8 .et_audio_content h2,.et_pb_column_3_8 .et_link_content h2,.et_pb_column_3_8 .et_quote_content blockquote p{font-size:18px;line-height:26px}.et_pb_column_1_3 .et_link_content a.et_link_main_url,.et_pb_column_1_3 .et_quote_content blockquote cite,.et_pb_column_1_4 .et_link_content a.et_link_main_url,.et_pb_column_1_4 .et_quote_content blockquote cite,.et_pb_column_1_5 .et_link_content a.et_link_main_url,.et_pb_column_1_5 .et_quote_content blockquote cite,.et_pb_column_1_6 .et_link_content a.et_link_main_url,.et_pb_column_1_6 .et_quote_content blockquote cite,.et_pb_column_2_5 .et_link_content a.et_link_main_url,.et_pb_column_2_5 .et_quote_content blockquote cite,.et_pb_column_3_8 .et_link_content a.et_link_main_url,.et_pb_column_3_8 .et_quote_content blockquote cite{font-size:14px}.et_pb_post .et_pb_gallery_post_type .et_pb_slide{min-height:500px;background-size:cover!important;background-position:top}.format-gallery .et_pb_slider.gallery-not-found .et_pb_slide{box-shadow:inset 0 0 10px rgba(0,0,0,.1)}.format-gallery .et_pb_slider:hover .et-pb-arrow-prev{left:0}.format-gallery .et_pb_slider:hover .et-pb-arrow-next{right:0}.et_pb_post>.et_pb_slider{margin-bottom:30px}.et_pb_column_3_4 .et_pb_post .et_pb_slide{min-height:442px}.et_pb_column_2_3 .et_pb_post .et_pb_slide{min-height:390px}.et_pb_column_1_2 .et_pb_post .et_pb_slide,.et_pb_column_3_5 .et_pb_post .et_pb_slide{min-height:284px}.et_pb_column_1_3 .et_pb_post .et_pb_slide,.et_pb_column_2_5 .et_pb_post .et_pb_slide,.et_pb_column_3_8 .et_pb_post .et_pb_slide{min-height:180px}.et_pb_column_1_4 .et_pb_post .et_pb_slide,.et_pb_column_1_5 .et_pb_post .et_pb_slide,.et_pb_column_1_6 .et_pb_post .et_pb_slide{min-height:125px}.et_pb_portfolio.et_pb_section_parallax .pagination,.et_pb_portfolio.et_pb_section_video .pagination,.et_pb_portfolio_grid.et_pb_section_parallax .pagination,.et_pb_portfolio_grid.et_pb_section_video .pagination{position:relative}.et_pb_bg_layout_light .et_pb_post .post-meta,.et_pb_bg_layout_light .et_pb_post .post-meta a,.et_pb_bg_layout_light .et_pb_post p{color:#666}.et_pb_bg_layout_dark .et_pb_post .post-meta,.et_pb_bg_layout_dark .et_pb_post .post-meta a,.et_pb_bg_layout_dark .et_pb_post p{color:inherit}.et_pb_text_color_dark .et_audio_content h2,.et_pb_text_color_dark .et_link_content a.et_link_main_url,.et_pb_text_color_dark .et_link_content h2,.et_pb_text_color_dark .et_quote_content blockquote cite,.et_pb_text_color_dark .et_quote_content blockquote p{color:#666!important}.et_pb_text_color_dark.et_audio_content h2,.et_pb_text_color_dark.et_link_content a.et_link_main_url,.et_pb_text_color_dark.et_link_content h2,.et_pb_text_color_dark.et_quote_content blockquote cite,.et_pb_text_color_dark.et_quote_content blockquote p{color:#bbb!important}.et_pb_text_color_dark.et_audio_content,.et_pb_text_color_dark.et_link_content,.et_pb_text_color_dark.et_quote_content{background-color:#e8e8e8}@media (min-width:981px) and (max-width:1100px){.et_quote_content{padding:50px 70px 45px}.et_pb_column_2_3 .et_quote_content{padding:50px 50px 45px}.et_pb_column_1_2 .et_quote_content,.et_pb_column_3_5 .et_quote_content{padding:35px 47px 30px}.et_pb_column_1_3 .et_quote_content,.et_pb_column_1_4 .et_quote_content,.et_pb_column_1_5 .et_quote_content,.et_pb_column_1_6 .et_quote_content,.et_pb_column_2_5 .et_quote_content,.et_pb_column_3_8 .et_quote_content{padding:35px 25px 32px}.et_pb_column_4_4 .et_pb_post .et_pb_slide{min-height:534px}.et_pb_column_3_4 .et_pb_post .et_pb_slide{min-height:392px}.et_pb_column_2_3 .et_pb_post .et_pb_slide{min-height:345px}.et_pb_column_1_2 .et_pb_post .et_pb_slide,.et_pb_column_3_5 .et_pb_post .et_pb_slide{min-height:250px}.et_pb_column_1_3 .et_pb_post .et_pb_slide,.et_pb_column_2_5 .et_pb_post .et_pb_slide,.et_pb_column_3_8 .et_pb_post .et_pb_slide{min-height:155px}.et_pb_column_1_4 .et_pb_post .et_pb_slide,.et_pb_column_1_5 .et_pb_post .et_pb_slide,.et_pb_column_1_6 .et_pb_post .et_pb_slide{min-height:108px}}@media (max-width:980px){.et_pb_bg_layout_dark_tablet .et_audio_content h2{color:#fff!important}.et_pb_text_color_dark_tablet.et_audio_content h2{color:#bbb!important}.et_pb_text_color_dark_tablet.et_audio_content{background-color:#e8e8e8}.et_pb_bg_layout_dark_tablet .et_audio_content h2,.et_pb_bg_layout_dark_tablet .et_link_content a.et_link_main_url,.et_pb_bg_layout_dark_tablet .et_link_content h2,.et_pb_bg_layout_dark_tablet .et_quote_content blockquote cite,.et_pb_bg_layout_dark_tablet .et_quote_content blockquote p{color:#fff!important}.et_pb_text_color_dark_tablet .et_audio_content h2,.et_pb_text_color_dark_tablet .et_link_content a.et_link_main_url,.et_pb_text_color_dark_tablet .et_link_content h2,.et_pb_text_color_dark_tablet .et_quote_content blockquote cite,.et_pb_text_color_dark_tablet .et_quote_content blockquote p{color:#666!important}.et_pb_text_color_dark_tablet.et_audio_content h2,.et_pb_text_color_dark_tablet.et_link_content a.et_link_main_url,.et_pb_text_color_dark_tablet.et_link_content h2,.et_pb_text_color_dark_tablet.et_quote_content blockquote cite,.et_pb_text_color_dark_tablet.et_quote_content blockquote p{color:#bbb!important}.et_pb_text_color_dark_tablet.et_audio_content,.et_pb_text_color_dark_tablet.et_link_content,.et_pb_text_color_dark_tablet.et_quote_content{background-color:#e8e8e8}}@media (min-width:768px) and (max-width:980px){.et_audio_content h2{font-size:26px!important;line-height:44px!important;margin-bottom:24px!important}.et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:384px!important}.et_quote_content{padding:50px 43px 45px!important}.et_quote_content blockquote p{font-size:26px!important;line-height:44px!important}.et_quote_content blockquote cite{font-size:18px!important}.et_link_content{padding:40px 40px 45px}.et_link_content h2{font-size:26px!important;line-height:44px!important}.et_link_content a.et_link_main_url{font-size:18px!important}}@media (max-width:767px){.et_audio_content h2,.et_link_content h2,.et_quote_content,.et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et_audio_content,.et_link_content{padding:35px 20px!important}.et_audio_content h2{margin-bottom:9px!important}.et_pb_bg_layout_dark_phone .et_audio_content h2{color:#fff!important}.et_pb_text_color_dark_phone.et_audio_content{background-color:#e8e8e8}.et_link_content a.et_link_main_url,.et_quote_content blockquote cite{font-size:14px!important}.format-gallery .et-pb-controllers{height:auto}.et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:222px!important}.et_pb_bg_layout_dark_phone .et_audio_content h2,.et_pb_bg_layout_dark_phone .et_link_content a.et_link_main_url,.et_pb_bg_layout_dark_phone .et_link_content h2,.et_pb_bg_layout_dark_phone .et_quote_content blockquote cite,.et_pb_bg_layout_dark_phone .et_quote_content blockquote p{color:#fff!important}.et_pb_text_color_dark_phone .et_audio_content h2,.et_pb_text_color_dark_phone .et_link_content a.et_link_main_url,.et_pb_text_color_dark_phone .et_link_content h2,.et_pb_text_color_dark_phone .et_quote_content blockquote cite,.et_pb_text_color_dark_phone .et_quote_content blockquote p{color:#666!important}.et_pb_text_color_dark_phone.et_audio_content h2,.et_pb_text_color_dark_phone.et_link_content a.et_link_main_url,.et_pb_text_color_dark_phone.et_link_content h2,.et_pb_text_color_dark_phone.et_quote_content blockquote cite,.et_pb_text_color_dark_phone.et_quote_content blockquote p{color:#bbb!important}.et_pb_text_color_dark_phone.et_audio_content,.et_pb_text_color_dark_phone.et_link_content,.et_pb_text_color_dark_phone.et_quote_content{background-color:#e8e8e8}}@media (max-width:479px){.et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_3 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_2_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_8 .et_pb_carousel_item .et_pb_video_play{font-size:1.5rem;line-height:1.5rem;margin-left:-.75rem;margin-top:-.75rem}.et_audio_content,.et_quote_content{padding:35px 20px!important}.et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:156px!important}}.et_full_width_page .et_gallery_item{float:left;width:20.875%;margin:0 5.5% 5.5% 0}.et_full_width_page .et_gallery_item:nth-child(3n){margin-right:5.5%}.et_full_width_page .et_gallery_item:nth-child(3n+1){clear:none}.et_full_width_page .et_gallery_item:nth-child(4n){margin-right:0}.et_full_width_page .et_gallery_item:nth-child(4n+1){clear:both}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_formats_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/post_formats_cpt.css
new file mode 100644
index 0000000..a8180f4
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_formats_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_audio_content,.et-db #et-boc .et-l .et_link_content,.et-db #et-boc .et-l .et_quote_content{background-color:#2ea3f2}.et-db #et-boc .et-l .et_pb_post .et-pb-controllers a{margin-bottom:10px}.et-db #et-boc .et-l .format-gallery .et-pb-controllers{bottom:0}.et-db #et-boc .et-l .et_pb_blog_grid .et_audio_content{margin-bottom:19px}.et-db #et-boc .et-l .et_pb_row .et_pb_blog_grid .et_pb_post .et_pb_slide{min-height:180px}.et-db #et-boc .et-l .et_audio_content .wp-block-audio{margin:0;padding:0}.et-db #et-boc .et-l .et_audio_content h2{line-height:44px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_content h2{margin-bottom:9px;margin-top:0}.et-db #et-boc .et-l .et_pb_column_1_2 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_audio_content{padding:35px 40px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_5 .et_audio_content h2{line-height:32px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_content{padding:35px 20px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_content h2{font-size:18px;line-height:26px}.et-db #et-boc .et-l article.et_pb_has_overlay .et_pb_blog_image_container{position:relative}.et-db #et-boc .et-l .et_pb_post>.et_main_video_container{position:relative;margin-bottom:30px}.et-db #et-boc .et-l .et_pb_post .et_pb_video_overlay .et_pb_video_play{color:#fff}.et-db #et-boc .et-l .et_pb_post .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_audio_content,.et-db #et-boc .et-l .et_link_content,.et-db #et-boc .et-l .et_quote_content{text-align:center;word-wrap:break-word;position:relative;padding:50px 60px}.et-db #et-boc .et-l .et_audio_content h2,.et-db #et-boc .et-l .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_link_content h2,.et-db #et-boc .et-l .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_quote_content blockquote p{color:#fff!important}.et-db #et-boc .et-l .et_quote_main_link{position:absolute;text-indent:-9999px;width:100%;height:100%;display:block;top:0;left:0}.et-db #et-boc .et-l .et_quote_content blockquote{padding:0;margin:0;border:none}.et-db #et-boc .et-l .et_audio_content h2,.et-db #et-boc .et-l .et_link_content h2,.et-db #et-boc .et-l .et_quote_content blockquote p{margin-top:0}.et-db #et-boc .et-l .et_audio_content h2{margin-bottom:20px}.et-db #et-boc .et-l .et_audio_content h2,.et-db #et-boc .et-l .et_link_content h2,.et-db #et-boc .et-l .et_quote_content blockquote p{line-height:44px}.et-db #et-boc .et-l .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_quote_content blockquote cite{font-size:18px;font-weight:200}.et-db #et-boc .et-l .et_quote_content blockquote cite{font-style:normal}.et-db #et-boc .et-l .et_pb_column_2_3 .et_quote_content{padding:50px 42px 45px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_2_3 .et_link_content{padding:40px 40px 45px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_2 .et_link_content,.et-db #et-boc .et-l .et_pb_column_1_2 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_link_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_quote_content{padding:35px 40px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_3_5 .et_quote_content blockquote p{font-size:26px;line-height:32px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_2 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_3_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_5 .et_link_content h2{line-height:32px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_1_2 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_3_5 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_3_5 .et_quote_content blockquote cite{font-size:14px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_quote_content{padding:35px 30px 32px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_3 .et_link_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_link_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_link_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_link_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_link_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_link_content{padding:35px 20px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_3 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_1_3 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_1_4 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_4 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_1_4 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_1_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_5 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_1_5 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_1_6 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_1_6 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_1_6 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_2_5 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_2_5 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_2_5 .et_quote_content blockquote p,.et-db #et-boc .et-l .et_pb_column_3_8 .et_audio_content h2,.et-db #et-boc .et-l .et_pb_column_3_8 .et_link_content h2,.et-db #et-boc .et-l .et_pb_column_3_8 .et_quote_content blockquote p{font-size:18px;line-height:26px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_1_3 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_1_4 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_1_4 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_1_5 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_1_5 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_1_6 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_1_6 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_2_5 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_2_5 .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_column_3_8 .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_column_3_8 .et_quote_content blockquote cite{font-size:14px}.et-db #et-boc .et-l .et_pb_post .et_pb_gallery_post_type .et_pb_slide{min-height:500px;background-size:cover!important;background-position:top}.et-db #et-boc .et-l .format-gallery .et_pb_slider.gallery-not-found .et_pb_slide{box-shadow:inset 0 0 10px rgba(0,0,0,.1)}.et-db #et-boc .et-l .format-gallery .et_pb_slider:hover .et-pb-arrow-prev{left:0}.et-db #et-boc .et-l .format-gallery .et_pb_slider:hover .et-pb-arrow-next{right:0}.et-db #et-boc .et-l .et_pb_post>.et_pb_slider{margin-bottom:30px}.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_post .et_pb_slide{min-height:442px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_post .et_pb_slide{min-height:390px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_post .et_pb_slide{min-height:284px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_post .et_pb_slide{min-height:180px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_post .et_pb_slide{min-height:125px}.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_parallax .pagination,.et-db #et-boc .et-l .et_pb_portfolio.et_pb_section_video .pagination,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_parallax .pagination,.et-db #et-boc .et-l .et_pb_portfolio_grid.et_pb_section_video .pagination{position:relative}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_post p{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_post p{color:inherit}.et-db #et-boc .et-l .et_pb_text_color_dark .et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark .et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark .et_quote_content blockquote p{color:#666!important}.et-db #et-boc .et-l .et_pb_text_color_dark.et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark.et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark.et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark.et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark.et_quote_content blockquote p{color:#bbb!important}.et-db #et-boc .et-l .et_pb_text_color_dark.et_audio_content,.et-db #et-boc .et-l .et_pb_text_color_dark.et_link_content,.et-db #et-boc .et-l .et_pb_text_color_dark.et_quote_content{background-color:#e8e8e8}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_quote_content{padding:50px 70px 45px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_quote_content{padding:50px 50px 45px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_quote_content{padding:35px 47px 30px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_quote_content,.et-db #et-boc .et-l .et_pb_column_3_8 .et_quote_content{padding:35px 25px 32px}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_post .et_pb_slide{min-height:534px}.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_post .et_pb_slide{min-height:392px}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_post .et_pb_slide{min-height:345px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_post .et_pb_slide{min-height:250px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_post .et_pb_slide{min-height:155px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_post .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_post .et_pb_slide{min-height:108px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_content h2{color:#fff!important}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_audio_content h2{color:#bbb!important}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_audio_content{background-color:#e8e8e8}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_audio_content h2,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_link_content h2,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_quote_content blockquote p{color:#fff!important}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet .et_quote_content blockquote p{color:#666!important}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_quote_content blockquote p{color:#bbb!important}.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_audio_content,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_link_content,.et-db #et-boc .et-l .et_pb_text_color_dark_tablet.et_quote_content{background-color:#e8e8e8}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_audio_content h2{font-size:26px!important;line-height:44px!important;margin-bottom:24px!important}.et-db #et-boc .et-l .et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:384px!important}.et-db #et-boc .et-l .et_quote_content{padding:50px 43px 45px!important}.et-db #et-boc .et-l .et_quote_content blockquote p{font-size:26px!important;line-height:44px!important}.et-db #et-boc .et-l .et_quote_content blockquote cite{font-size:18px!important}.et-db #et-boc .et-l .et_link_content{padding:40px 40px 45px}.et-db #et-boc .et-l .et_link_content h2{font-size:26px!important;line-height:44px!important}.et-db #et-boc .et-l .et_link_content a.et_link_main_url{font-size:18px!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_audio_content h2,.et-db #et-boc .et-l .et_link_content h2,.et-db #et-boc .et-l .et_quote_content,.et-db #et-boc .et-l .et_quote_content blockquote p{font-size:20px!important;line-height:26px!important}.et-db #et-boc .et-l .et_audio_content,.et-db #et-boc .et-l .et_link_content{padding:35px 20px!important}.et-db #et-boc .et-l .et_audio_content h2{margin-bottom:9px!important}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_content h2{color:#fff!important}.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_audio_content{background-color:#e8e8e8}.et-db #et-boc .et-l .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_quote_content blockquote cite{font-size:14px!important}.et-db #et-boc .et-l .format-gallery .et-pb-controllers{height:auto}.et-db #et-boc .et-l .et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:222px!important}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_audio_content h2,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_link_content h2,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_quote_content blockquote p{color:#fff!important}.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark_phone .et_quote_content blockquote p{color:#666!important}.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_audio_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_link_content a.et_link_main_url,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_link_content h2,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_quote_content blockquote cite,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_quote_content blockquote p{color:#bbb!important}.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_audio_content,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_link_content,.et-db #et-boc .et-l .et_pb_text_color_dark_phone.et_quote_content{background-color:#e8e8e8}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_carousel_item .et_pb_video_play{font-size:1.5rem;line-height:1.5rem;margin-left:-.75rem;margin-top:-.75rem}.et-db #et-boc .et-l .et_audio_content,.et-db #et-boc .et-l .et_quote_content{padding:35px 20px!important}.et-db #et-boc .et-l .et_pb_post>.et_pb_gallery_post_type>.et_pb_slides>.et_pb_slide{min-height:156px!important}}.et_full_width_page .et_gallery_item{float:left;width:20.875%;margin:0 5.5% 5.5% 0}.et_full_width_page .et_gallery_item:nth-child(3n){margin-right:5.5%}.et_full_width_page .et_gallery_item:nth-child(3n+1){clear:none}.et_full_width_page .et_gallery_item:nth-child(4n){margin-right:0}.et_full_width_page .et_gallery_item:nth-child(4n+1){clear:both}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_nav.css b/includes/builder/feature/dynamic-assets/assets/css/post_nav.css
new file mode 100644
index 0000000..af4fa9e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_nav.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_posts_nav span.nav-next a,.et_pb_with_border.et_pb_posts_nav span.nav-previous a{border:0 solid #333}.et_pb_posts_nav.nav-single:after{clear:both;display:block;content:""}.et_pb_posts_nav a{display:inline-block}.et_pb_posts_nav .meta-nav,.et_pb_posts_nav .nav-label,.et_pb_posts_nav .nav-next,.et_pb_posts_nav .nav-previous{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_nav_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/post_nav_cpt.css
new file mode 100644
index 0000000..8138622
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_nav_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_posts_nav span.nav-next a,.et-db #et-boc .et-l .et_pb_with_border.et_pb_posts_nav span.nav-previous a{border:0 solid #333}.et-db #et-boc .et-l .et_pb_posts_nav.nav-single:after{clear:both;display:block;content:""}.et-db #et-boc .et-l .et_pb_posts_nav a{display:inline-block}.et-db #et-boc .et-l .et_pb_posts_nav .meta-nav,.et-db #et-boc .et-l .et_pb_posts_nav .nav-label,.et-db #et-boc .et-l .et_pb_posts_nav .nav-next,.et-db #et-boc .et-l .et_pb_posts_nav .nav-previous{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_slider.css b/includes/builder/feature/dynamic-assets/assets/css/post_slider.css
new file mode 100644
index 0000000..5073236
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_slider.css
@@ -0,0 +1 @@
+.et_pb_post_slider .et_pb_no_results .entry{height:285.75px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.et_pb_section:not(.et_pb_fullwidth_section) .et_pb_post_slider .et_pb_no_results .entry{height:auto;padding:16% 8%}.et_pb_slider.et_pb_post_slider{background-position:50%;background-size:cover}.et_pb_post_slider .et_pb_slide{background-repeat:no-repeat}.et_pb_post_slider_image_bottom .et_pb_slide_image{position:relative;margin:0 auto 10px!important}.et_pb_post_slider_image_bottom .et_pb_slide_description{padding-bottom:8%}.et_pb_post_slider_image_top .et_pb_slide_image{position:relative;margin:8% auto 0!important}.et_pb_post_slider_image_top .et_pb_slide_description{padding-top:8%;padding-bottom:8%}.et_pb_post_slider_image_right .et_pb_slide_description{float:left!important}.et_pb_post_slider_image_right .et_pb_slide_image{right:0;margin-right:0}.et_pb_post_slider.et_pb_bg_layout_dark .post-meta,.et_pb_post_slider.et_pb_bg_layout_dark .post-meta a{color:#fff!important}.et_pb_post_slider.et_pb_bg_layout_light .post-meta,.et_pb_post_slider.et_pb_bg_layout_light .post-meta a{color:#333!important}.et_pb_post_slider .et_pb_slide.et-pb-active-slide .et_pb_slide_description,.et_pb_post_slider .et_pb_slide.et-pb-active-slide .et_pb_slide_image{opacity:0}.et_pb_column_1_2 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_3_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide{padding-bottom:6%}.et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:10%!important}.et_pb_column_3_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_3_4 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et_pb_column_4_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_4_4 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:5%!important}.et_pb_column_2_3 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_2_3 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:7%!important}.et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:15%!important}.et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:25%!important}.et_pb_post_slider.et_pb_module .et_pb_row{width:100%}.et_pb_post_slider.et_pb_module .et_pb_with_background .et_pb_row{width:80%}.et_pb_post_slider.et_pb_module .et_pb_section{background-color:transparent}.et_pb_slide_content .post-meta,.et_pb_slide_content .post-meta a{font-size:13px!important;font-weight:400!important}.et_pb_slide_content .post-meta{padding-bottom:0!important;padding-top:5px}@media (max-width:980px){.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:5%!important}.et_pb_bg_layout_light_tablet.et_pb_post_slider .post-meta,.et_pb_bg_layout_light_tablet.et_pb_post_slider .post-meta a{color:#333!important}.et_pb_bg_layout_dark_tablet.et_pb_post_slider .post-meta,.et_pb_bg_layout_dark_tablet.et_pb_post_slider .post-meta a{color:#fff!important}}@media (max-width:767px){.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:10%!important}.et_pb_bg_layout_light_phone.et_pb_post_slider .post-meta,.et_pb_bg_layout_light_phone.et_pb_post_slider .post-meta a{color:#333!important}.et_pb_bg_layout_dark_phone.et_pb_post_slider .post-meta,.et_pb_bg_layout_dark_phone.et_pb_post_slider .post-meta a{color:#fff!important}}@media (max-width:479px){.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:16%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_slider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/post_slider_cpt.css
new file mode 100644
index 0000000..27cff49
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_slider_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_post_slider .et_pb_no_results .entry{height:285.75px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.et-db #et-boc .et-l .et_pb_section:not(.et_pb_fullwidth_section) .et_pb_post_slider .et_pb_no_results .entry{height:auto;padding:16% 8%}.et-db #et-boc .et-l .et_pb_slider.et_pb_post_slider{background-position:50%;background-size:cover}.et-db #et-boc .et-l .et_pb_post_slider .et_pb_slide{background-repeat:no-repeat}.et-db #et-boc .et-l .et_pb_post_slider_image_bottom .et_pb_slide_image{position:relative;margin:0 auto 10px!important}.et-db #et-boc .et-l .et_pb_post_slider_image_bottom .et_pb_slide_description{padding-bottom:8%}.et-db #et-boc .et-l .et_pb_post_slider_image_top .et_pb_slide_image{position:relative;margin:8% auto 0!important}.et-db #et-boc .et-l .et_pb_post_slider_image_top .et_pb_slide_description{padding-top:8%;padding-bottom:8%}.et-db #et-boc .et-l .et_pb_post_slider_image_right .et_pb_slide_description{float:left!important}.et-db #et-boc .et-l .et_pb_post_slider_image_right .et_pb_slide_image{right:0;margin-right:0}.et-db #et-boc .et-l .et_pb_post_slider.et_pb_bg_layout_dark .post-meta,.et-db #et-boc .et-l .et_pb_post_slider.et_pb_bg_layout_dark .post-meta a{color:#fff!important}.et-db #et-boc .et-l .et_pb_post_slider.et_pb_bg_layout_light .post-meta,.et-db #et-boc .et-l .et_pb_post_slider.et_pb_bg_layout_light .post-meta a{color:#333!important}.et-db #et-boc .et-l .et_pb_post_slider .et_pb_slide.et-pb-active-slide .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_post_slider .et_pb_slide.et-pb-active-slide .et_pb_slide_image{opacity:0}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_post_slider_image_bottom .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide{padding-bottom:6%}.et-db #et-boc .et-l .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:10%!important}.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:5%!important}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:7%!important}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:15%!important}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_post_slider_image_bottom .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:25%!important}.et-db #et-boc .et-l .et_pb_post_slider.et_pb_module .et_pb_row{width:100%}.et-db #et-boc .et-l .et_pb_post_slider.et_pb_module .et_pb_with_background .et_pb_row{width:80%}.et-db #et-boc .et-l .et_pb_post_slider.et_pb_module .et_pb_section{background-color:transparent}.et-db #et-boc .et-l .et_pb_slide_content .post-meta,.et-db #et-boc .et-l .et_pb_slide_content .post-meta a{font-size:13px!important;font-weight:400!important}.et-db #et-boc .et-l .et_pb_slide_content .post-meta{padding-bottom:0!important;padding-top:5px}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:5%!important}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_post_slider .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_post_slider .post-meta a{color:#333!important}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_post_slider .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_post_slider .post-meta a{color:#fff!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:10%!important}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_post_slider .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_post_slider .post-meta a{color:#333!important}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_post_slider .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_post_slider .post-meta a{color:#fff!important}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_section .et_pb_column .et_pb_post_slider_image_bottom .et_pb_slide_video{margin-bottom:16%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_title.css b/includes/builder/feature/dynamic-assets/assets/css/post_title.css
new file mode 100644
index 0000000..83e535f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_title.css
@@ -0,0 +1 @@
+.et_pb_post_title.et_pb_featured_bg{padding:16% 8%;background-size:cover;background-position:50%;position:relative;overflow:hidden}.et_pb_post_title .et_pb_parallax_css{background-repeat:no-repeat;background-position:top;background-size:cover;background-attachment:fixed;position:absolute;width:100%;height:100%;overflow:hidden}.et_pb_post_title.et_pb_featured_bg .et_pb_title_container{padding:1em 1.5em}.et_pb_post_title.et_pb_featured_bg .et_pb_title_meta_container{padding-bottom:0}.et_pb_title_container h1{font-size:26px}.et_pb_column_1_3 .et_pb_title_container h1,.et_pb_column_1_4 .et_pb_title_container h1,.et_pb_column_1_5 .et_pb_title_container h1,.et_pb_column_1_6 .et_pb_title_container h1,.et_pb_column_2_5 .et_pb_title_container h1{font-size:18px}.et_pb_title_featured_container{margin-left:auto;margin-right:auto}.et_pb_title_featured_container .et_pb_image_wrap{display:inline-block;position:relative;max-width:100%;width:100%}.et_pb_title_featured_container img{width:100%}.et_pb_title_container{display:block;max-width:100%;word-wrap:break-word;z-index:98;position:relative}.et_pb_title_featured_container{line-height:0;position:relative}p.et_pb_title_meta_container{padding-bottom:1em}p.et_pb_title_meta_container .et_pb_title_meta_item--visible+.et_pb_title_meta_item--visible:before{content:" | "}.et_pb_bg_layout_light p.et_pb_title_meta_container,.et_pb_bg_layout_light p.et_pb_title_meta_container a{color:#666}.et_pb_bg_layout_dark p.et_pb_title_meta_container,.et_pb_bg_layout_dark p.et_pb_title_meta_container a{color:inherit}@media (max-width:980px){.et_pb_bg_layout_light_tablet p.et_pb_title_meta_container,.et_pb_bg_layout_light_tablet p.et_pb_title_meta_container a{color:#666}.et_pb_bg_layout_dark_tablet p.et_pb_title_meta_container,.et_pb_bg_layout_dark_tablet p.et_pb_title_meta_container a{color:inherit}}@media (max-width:767px){.et_pb_title_container h1{font-size:18px}.et_pb_bg_layout_light_phone p.et_pb_title_meta_container,.et_pb_bg_layout_light_phone p.et_pb_title_meta_container a{color:#666}.et_pb_bg_layout_dark_phone p.et_pb_title_meta_container,.et_pb_bg_layout_dark_phone p.et_pb_title_meta_container a{color:inherit}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/post_title_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/post_title_cpt.css
new file mode 100644
index 0000000..8bb38b2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/post_title_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_post_title.et_pb_featured_bg{padding:16% 8%;background-size:cover;background-position:50%;position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_post_title .et_pb_parallax_css{background-repeat:no-repeat;background-position:top;background-size:cover;background-attachment:fixed;position:absolute;width:100%;height:100%;overflow:hidden}.et-db #et-boc .et-l .et_pb_post_title.et_pb_featured_bg .et_pb_title_container{padding:1em 1.5em}.et-db #et-boc .et-l .et_pb_post_title.et_pb_featured_bg .et_pb_title_meta_container{padding-bottom:0}.et-db #et-boc .et-l .et_pb_title_container h1{font-size:26px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_title_container h1,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_title_container h1,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_title_container h1,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_title_container h1,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_title_container h1{font-size:18px}.et-db #et-boc .et-l .et_pb_title_featured_container{margin-left:auto;margin-right:auto}.et-db #et-boc .et-l .et_pb_title_featured_container .et_pb_image_wrap{display:inline-block;position:relative;max-width:100%;width:100%}.et-db #et-boc .et-l .et_pb_title_featured_container img{width:100%}.et-db #et-boc .et-l .et_pb_title_container{display:block;max-width:100%;word-wrap:break-word;z-index:98;position:relative}.et-db #et-boc .et-l .et_pb_title_featured_container{line-height:0;position:relative}.et-db #et-boc .et-l p.et_pb_title_meta_container{padding-bottom:1em}.et-db #et-boc .et-l p.et_pb_title_meta_container .et_pb_title_meta_item--visible+.et_pb_title_meta_item--visible:before{content:" | "}.et-db #et-boc .et-l .et_pb_bg_layout_light p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_light p.et_pb_title_meta_container a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark p.et_pb_title_meta_container a{color:inherit}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet p.et_pb_title_meta_container a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet p.et_pb_title_meta_container a{color:inherit}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_title_container h1{font-size:18px}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone p.et_pb_title_meta_container a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone p.et_pb_title_meta_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone p.et_pb_title_meta_container a{color:inherit}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/posts.css b/includes/builder/feature/dynamic-assets/assets/css/posts.css
new file mode 100644
index 0000000..c6632ac
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/posts.css
@@ -0,0 +1 @@
+.et_pb_post{margin-bottom:60px;word-wrap:break-word}.et_pb_fullwidth_post_content.et_pb_with_border img,.et_pb_post_content.et_pb_with_border img,.et_pb_with_border .et_pb_post .et_pb_slides,.et_pb_with_border .et_pb_post img:not(.woocommerce-placeholder),.et_pb_with_border.et_pb_posts .et_pb_post,.et_pb_with_border.et_pb_posts_nav span.nav-next a,.et_pb_with_border.et_pb_posts_nav span.nav-previous a{border:0 solid #333}.et_pb_post .entry-content{padding-top:30px}.et_pb_post .entry-featured-image-url{display:block;position:relative;margin-bottom:30px}.et_pb_post .entry-title a,.et_pb_post h2 a{text-decoration:none}.et_pb_post .post-meta{font-size:14px;margin-bottom:6px}.et_pb_post .more,.et_pb_post .post-meta a{text-decoration:none}.et_pb_post .more{color:#82c0c7}.et_pb_posts a.more-link{clear:both;display:block}.et_pb_posts .et_pb_post{position:relative}.et_pb_has_overlay.et_pb_post .et_pb_image_container a{display:block;position:relative;overflow:hidden}.et_pb_image_container img,.et_pb_post a img{vertical-align:bottom;max-width:100%}@media (min-width:981px) and (max-width:1100px){.et_pb_post{margin-bottom:42px}}@media (max-width:980px){.et_pb_post{margin-bottom:42px}.et_pb_bg_layout_light_tablet .et_pb_post .post-meta,.et_pb_bg_layout_light_tablet .et_pb_post .post-meta a,.et_pb_bg_layout_light_tablet .et_pb_post p{color:#666}.et_pb_bg_layout_dark_tablet .et_pb_post .post-meta,.et_pb_bg_layout_dark_tablet .et_pb_post .post-meta a,.et_pb_bg_layout_dark_tablet .et_pb_post p{color:inherit}.et_pb_bg_layout_dark_tablet .comment_postinfo a,.et_pb_bg_layout_dark_tablet .comment_postinfo span{color:#fff}}@media (max-width:767px){.et_pb_post{margin-bottom:42px}.et_pb_post>h2{font-size:18px}.et_pb_bg_layout_light_phone .et_pb_post .post-meta,.et_pb_bg_layout_light_phone .et_pb_post .post-meta a,.et_pb_bg_layout_light_phone .et_pb_post p{color:#666}.et_pb_bg_layout_dark_phone .et_pb_post .post-meta,.et_pb_bg_layout_dark_phone .et_pb_post .post-meta a,.et_pb_bg_layout_dark_phone .et_pb_post p{color:inherit}.et_pb_bg_layout_dark_phone .comment_postinfo a,.et_pb_bg_layout_dark_phone .comment_postinfo span{color:#fff}}@media (max-width:479px){.et_pb_post{margin-bottom:42px}.et_pb_post h2{font-size:16px;padding-bottom:0}.et_pb_post .post-meta{color:#666;font-size:14px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/posts_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/posts_cpt.css
new file mode 100644
index 0000000..520c502
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/posts_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_post{margin-bottom:60px;word-wrap:break-word}.et-db #et-boc .et-l .et_pb_fullwidth_post_content.et_pb_with_border img,.et-db #et-boc .et-l .et_pb_post_content.et_pb_with_border img,.et-db #et-boc .et-l .et_pb_with_border .et_pb_post .et_pb_slides,.et-db #et-boc .et-l .et_pb_with_border .et_pb_post img:not(.woocommerce-placeholder),.et-db #et-boc .et-l .et_pb_with_border.et_pb_posts .et_pb_post,.et-db #et-boc .et-l .et_pb_with_border.et_pb_posts_nav span.nav-next a,.et-db #et-boc .et-l .et_pb_with_border.et_pb_posts_nav span.nav-previous a{border:0 solid #333}.et-db #et-boc .et-l .et_pb_post .entry-content{padding-top:30px}.et-db #et-boc .et-l .et_pb_post .entry-featured-image-url{display:block;position:relative;margin-bottom:30px}.et-db #et-boc .et-l .et_pb_post .entry-title a,.et-db #et-boc .et-l .et_pb_post h2 a{text-decoration:none}.et-db #et-boc .et-l .et_pb_post .post-meta{font-size:14px;margin-bottom:6px}.et-db #et-boc .et-l .et_pb_post .post-meta a{text-decoration:none}.et-db #et-boc .et-l .et_pb_post .more{color:#82c0c7;text-decoration:none}.et-db #et-boc .et-l .et_pb_posts a.more-link{clear:both;display:block}.et-db #et-boc .et-l .et_pb_posts .et_pb_post{position:relative}.et-db #et-boc .et-l .et_pb_has_overlay.et_pb_post .et_pb_image_container a{display:block;position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_image_container img,.et-db #et-boc .et-l .et_pb_post a img{vertical-align:bottom;max-width:100%}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_post{margin-bottom:42px}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_post{margin-bottom:42px}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_post p{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_post p{color:inherit}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .comment_postinfo a,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .comment_postinfo span{color:#fff}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_post{margin-bottom:42px}.et-db #et-boc .et-l .et_pb_post>h2{font-size:18px}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_post p{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_post .post-meta,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_post .post-meta a,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_post p{color:inherit}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .comment_postinfo a,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .comment_postinfo span{color:#fff}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_post{margin-bottom:42px}.et-db #et-boc .et-l .et_pb_post h2{font-size:16px;padding-bottom:0}.et-db #et-boc .et-l .et_pb_post .post-meta{color:#666;font-size:14px}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/pricing_tables.css b/includes/builder/feature/dynamic-assets/assets/css/pricing_tables.css
new file mode 100644
index 0000000..fbc0d21
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/pricing_tables.css
@@ -0,0 +1 @@
+.et_pb_pricing_content,.et_pb_pricing_heading{word-wrap:break-word}.et_pb_featured_table .et_pb_pricing_heading{background-color:#2ea3f2}.et_pb_sum{color:#2ea3f2}.et_pb_pricing{list-style:none!important;padding:0!important;line-height:inherit!important}.et_pb_pricing_table_button,.et_pb_pricing li a{color:#2ea3f2}.et_pb_pricing_table_button:hover{background-color:rgba(0,0,0,.05)}.et_pb_pricing_table_button:hover:after{opacity:1;margin-left:0}.et_pb_pricing li span:before{border-color:#2ea3f2}.et_pb_pricing_table{background-size:cover;background-position:50%;background-repeat:no-repeat}.et_pb_pricing_table_wrap{display:block;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:start;align-items:flex-start}.et_pb_pricing_table{float:left;width:33.33%;max-width:34%;-ms-flex:1 1 auto;flex:1 1 auto;border:1px solid #bebebe;background-color:#fcfcfc;padding-bottom:30px;text-align:center;margin:30px -1px 0 0;position:relative}.et_pb_pricing>.box-shadow-overlay{z-index:11}.et_pb_featured_table{background-color:#fff;margin-top:0;position:relative;z-index:10;box-shadow:0 0 12px rgba(0,0,0,.1)}.et_pb_column_4_4 .et_pb_pricing_table{width:25%;max-width:25.5%}.et_pb_column_4_4 .et_pb_pricing_3 .et_pb_pricing_table{width:33.33%;max-width:34%}.et_pb_column_1_2 .et_pb_pricing_table,.et_pb_column_2_3 .et_pb_pricing_table,.et_pb_column_3_5 .et_pb_pricing_table,.et_pb_pricing_2 .et_pb_pricing_table{width:50%;max-width:50.5%}.et_pb_column_1_3 .et_pb_pricing_table,.et_pb_column_1_4 .et_pb_pricing_table,.et_pb_column_1_5 .et_pb_pricing_table,.et_pb_column_1_6 .et_pb_pricing_table,.et_pb_column_2_5 .et_pb_pricing_table,.et_pb_column_3_8 .et_pb_pricing_table,.et_pb_pricing_1 .et_pb_pricing_table{width:100%;max-width:none;margin:0 0 30px}.et_pb_column_1_3 .et_pb_pricing_table.et-last-child,.et_pb_column_1_3 .et_pb_pricing_table:last-child,.et_pb_column_1_4 .et_pb_pricing_table.et-last-child,.et_pb_column_1_4 .et_pb_pricing_table:last-child,.et_pb_column_1_5 .et_pb_pricing_table.et-last-child,.et_pb_column_1_5 .et_pb_pricing_table:last-child,.et_pb_column_1_6 .et_pb_pricing_table.et-last-child,.et_pb_column_1_6 .et_pb_pricing_table:last-child,.et_pb_column_2_5 .et_pb_pricing_table.et-last-child,.et_pb_column_2_5 .et_pb_pricing_table:last-child,.et_pb_column_3_8 .et_pb_pricing_table.et-last-child,.et_pb_column_3_8 .et_pb_pricing_table:last-child,.et_pb_pricing_1 .et_pb_pricing_table.et-last-child,.et_pb_pricing_1 .et_pb_pricing_table:last-child{margin-bottom:0}.et_pb_column_1_2>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et_pb_column_2_3>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et_pb_column_3_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(3n+1),.et_pb_column_3_5>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et_pb_column_4_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(4n+1){clear:both}.et_pb_column_1_2>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et_pb_column_2_3>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et_pb_column_3_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+4),.et_pb_column_3_5>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et_pb_column_4_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+5){margin-top:50px}.et_pb_column_1_2 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et_pb_column_2_3 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et_pb_column_3_4 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+4),.et_pb_column_3_5 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et_pb_column_4_4 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+5){margin-top:20px}.et_pb_pricing_heading{background-color:#bebebe;padding:10px 0;position:relative}.et_pb_pricing_heading .et_pb_pricing_title,.et_pb_pricing_heading h2{color:#fff;padding-bottom:5px}.et_pb_best_value{color:#fff;font-size:16px;line-height:20px;display:block;font-weight:500}.et_pb_pricing_content_top{border-bottom:1px solid #bebebe;padding-top:17px;padding-bottom:30px;position:relative;border-style:solid}.et_pb_pricing_table .et_pb_button_wrapper{padding-left:30px;padding-right:30px}.et_pb_et_price{color:#999;font-size:16px}.et_pb_dollar_sign{font-size:18px;font-weight:400;position:absolute;margin-left:-.5em}.et_pb_sum{font-size:80px;line-height:1.03em;font-weight:300}.et_pb_pricing_content{padding:30px;text-align:left;position:relative}.et_pb_featured_table .et_pb_pricing_content{padding-bottom:50px}.et_pb_pricing li{line-height:1.6em;padding:0 0 1.6em 14px;position:relative}.et_pb_pricing li:last-child{padding-bottom:0}.et_pb_pricing li span:before{border-style:solid;border-width:3px;content:"";left:-14px;position:absolute;top:9px;border-radius:3px}.et_pb_pricing.et_pb_pricing_no_bullet li span:before{display:none!important}.et_pb_pricing li.et_pb_not_available{color:#ccc}.et_pb_pricing li.et_pb_not_available span:before{border-color:#ccc}.et_pb_pricing li a{font-weight:500;text-decoration:none}.et_pb_pricing li span{position:relative}.et_pb_pricing_table_button{display:inline-block;position:relative}.et_pb_column_1_2 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_1_2 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_2_3 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_2_3 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_3_5 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_3_5 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}@media (min-width:981px){.et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(3),.et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(3),.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(3),.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(4){margin-top:0!important}}@media (max-width:981px){.et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_3_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et_pb_column_3_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_4_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et_pb_column_4_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_4_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et_pb_column_4_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}}@media (min-width:767px){.et_pb_column_1_2 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_1_2 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_1_2 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et_pb_column_1_2 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_2_3 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_2_3 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_2_3 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et_pb_column_2_3 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et_pb_column_3_5 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et_pb_column_3_5 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et_pb_column_3_5 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et_pb_column_3_5 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}}@media (max-width:980px){.et_pb_column .et_pb_pricing_table{width:50%!important;max-width:50.5%!important}.et_pb_column .et_pb_pricing_1 .et_pb_pricing_table{width:100%!important;max-width:none!important}.et_pb_column .et_pb_pricing_table:nth-child(odd){clear:both}.et_pb_column .et_pb_pricing_table:nth-child(n+3){margin-top:50px}.et_pb_column .et_pb_pricing_table:nth-child(n+3).et_pb_featured_table{margin-top:20px}}@media (max-width:767px){.et_pb_column .et_pb_pricing_table{width:100%!important;max-width:100%!important;margin:0 0 30px;margin-top:0!important}.et_pb_column .et_pb_pricing_table.et-last-child,.et_pb_column .et_pb_pricing_table:last-child{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/pricing_tables_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/pricing_tables_cpt.css
new file mode 100644
index 0000000..b0c847e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/pricing_tables_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_pricing_content,.et-db #et-boc .et-l .et_pb_pricing_heading{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_featured_table .et_pb_pricing_heading{background-color:#2ea3f2}.et-db #et-boc .et-l .et_pb_sum{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_pricing{list-style:none!important;padding:0!important;line-height:inherit!important}.et-db #et-boc .et-l .et_pb_pricing_table_button,.et-db #et-boc .et-l .et_pb_pricing li a{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_pricing_table_button:hover{background-color:rgba(0,0,0,.05)}.et-db #et-boc .et-l .et_pb_pricing_table_button:hover:after{opacity:1;margin-left:0}.et-db #et-boc .et-l .et_pb_pricing li span:before{border-color:#2ea3f2}.et-db #et-boc .et-l .et_pb_pricing_table{background-size:cover;background-position:50%;background-repeat:no-repeat}.et-db #et-boc .et-l .et_pb_pricing_table_wrap{display:block;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:start;align-items:flex-start}.et-db #et-boc .et-l .et_pb_pricing_table{float:left;width:33.33%;max-width:34%;-ms-flex:1 1 auto;flex:1 1 auto;border:1px solid #bebebe;background-color:#fcfcfc;padding-bottom:30px;text-align:center;margin:30px -1px 0 0;position:relative}.et-db #et-boc .et-l .et_pb_pricing>.box-shadow-overlay{z-index:11}.et-db #et-boc .et-l .et_pb_featured_table{background-color:#fff;margin-top:0;position:relative;z-index:10;box-shadow:0 0 12px rgba(0,0,0,.1)}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing_table{width:25%;max-width:25.5%}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing_3 .et_pb_pricing_table{width:33.33%;max-width:34%}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_pricing_2 .et_pb_pricing_table{width:50%;max-width:50.5%}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_pricing_table,.et-db #et-boc .et-l .et_pb_pricing_1 .et_pb_pricing_table{width:100%;max-width:none;margin:0 0 30px}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_pricing_table:last-child,.et-db #et-boc .et-l .et_pb_pricing_1 .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_pricing_1 .et_pb_pricing_table:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_column_3_5>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(odd),.et-db #et-boc .et-l .et_pb_column_4_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(4n+1){clear:both}.et-db #et-boc .et-l .et_pb_column_1_2>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_2_3>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_3_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+4),.et-db #et-boc .et-l .et_pb_column_3_5>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_4_4>.et_pb_pricing>.et_pb_pricing_table_wrap>.et_pb_pricing_table:nth-child(n+5){margin-top:50px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+4),.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+3),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing_table_wrap .et_pb_pricing_table.et_pb_featured_table:nth-child(n+5){margin-top:20px}.et-db #et-boc .et-l .et_pb_pricing_heading{background-color:#bebebe;padding:10px 0;position:relative}.et-db #et-boc .et-l .et_pb_pricing_heading .et_pb_pricing_title,.et-db #et-boc .et-l .et_pb_pricing_heading h2{color:#fff;padding-bottom:5px}.et-db #et-boc .et-l .et_pb_best_value{color:#fff;font-size:16px;line-height:20px;display:block;font-weight:500}.et-db #et-boc .et-l .et_pb_pricing_content_top{border-bottom:1px solid #bebebe;padding-top:17px;padding-bottom:30px;position:relative;border-style:solid}.et-db #et-boc .et-l .et_pb_pricing_table .et_pb_button_wrapper{padding-left:30px;padding-right:30px}.et-db #et-boc .et-l .et_pb_et_price{color:#999;font-size:16px}.et-db #et-boc .et-l .et_pb_dollar_sign{font-size:18px;font-weight:400;position:absolute;margin-left:-.5em}.et-db #et-boc .et-l .et_pb_sum{font-size:80px;line-height:1.03em;font-weight:300}.et-db #et-boc .et-l .et_pb_pricing_content{padding:30px;text-align:left;position:relative}.et-db #et-boc .et-l .et_pb_featured_table .et_pb_pricing_content{padding-bottom:50px}.et-db #et-boc .et-l .et_pb_pricing li{line-height:1.6em;padding:0 0 1.6em 14px;position:relative}.et-db #et-boc .et-l .et_pb_pricing li:last-child{padding-bottom:0}.et-db #et-boc .et-l .et_pb_pricing li span:before{border-style:solid;border-width:3px;content:"";left:-14px;position:absolute;top:9px;border-radius:3px}.et-db #et-boc .et-l .et_pb_pricing.et_pb_pricing_no_bullet li span:before{display:none!important}.et-db #et-boc .et-l .et_pb_pricing li.et_pb_not_available{color:#ccc}.et-db #et-boc .et-l .et_pb_pricing li.et_pb_not_available span:before{border-color:#ccc}.et-db #et-boc .et-l .et_pb_pricing li a{font-weight:500;text-decoration:none}.et-db #et-boc .et-l .et_pb_pricing li span{position:relative}.et-db #et-boc .et-l .et_pb_pricing_table_button{display:inline-block;position:relative}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(3),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(3),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(3),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(4){margin-top:0!important}}@media (max-width:981px){.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_fourth_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}}@media (min-width:767px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_no_featured_in_first_row .et_pb_pricing_table:nth-child(2),.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:first-child,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_pricing.et_pb_third_featured .et_pb_pricing_table:nth-child(2){margin-top:0!important}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table{width:50%!important;max-width:50.5%!important}.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_1 .et_pb_pricing_table{width:100%!important;max-width:none!important}.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table:nth-child(n+3){margin-top:50px}.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table:nth-child(n+3).et_pb_featured_table{margin-top:20px}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table{width:100%!important;max-width:100%!important;margin:0 0 30px;margin-top:0!important}.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table.et-last-child,.et-db #et-boc .et-l .et_pb_column .et_pb_pricing_table:last-child{margin-bottom:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/row.css b/includes/builder/feature/dynamic-assets/assets/css/row.css
new file mode 100644
index 0000000..7214e20
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/row.css
@@ -0,0 +1 @@
+.et_pb_row{width:80%;max-width:1080px;margin:auto;position:relative}.section_has_divider .et_pb_row{z-index:5}.et_pb_row_inner{width:100%;position:relative}.et_pb_row.et_pb_row_empty,.et_pb_row_inner:nth-of-type(n+2).et_pb_row_empty{display:none}.et_pb_row:after,.et_pb_row_inner:after{content:"";display:block;clear:both;visibility:hidden;line-height:0;height:0;width:0}.et_pb_row_4col .et-last-child,.et_pb_row_4col .et-last-child-2,.et_pb_row_6col .et-last-child,.et_pb_row_6col .et-last-child-2,.et_pb_row_6col .et-last-child-3{margin-bottom:0}.et_pb_column{float:left;background-size:cover;background-position:50%;position:relative;z-index:2;min-height:1px}.et_pb_column--with-menu{z-index:3}.et_pb_column.et_pb_column_empty{min-height:1px}.et_pb_row .et_pb_column.et-last-child,.et_pb_row .et_pb_column:last-child,.et_pb_row_inner .et_pb_column.et-last-child,.et_pb_row_inner .et_pb_column:last-child{margin-right:0!important}.et_pb_column.et_pb_section_parallax{position:relative}.et_pb_column,.et_pb_row,.et_pb_row_inner{background-size:cover;background-position:50%;background-repeat:no-repeat}@media (min-width:981px){.et_pb_row{padding:2% 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et_pb_row,body:not(.et_pb_pagebuilder_layout) .post-password-required .et_pb_row{padding:0;width:100%}.et_pb_column_3_4 .et_pb_row_inner{padding:3.735% 0}.et_pb_column_2_3 .et_pb_row_inner{padding:4.2415% 0}.et_pb_column_1_2 .et_pb_row_inner,.et_pb_column_3_5 .et_pb_row_inner{padding:5.82% 0}.et_section_specialty>.et_pb_row{padding:0}.et_pb_row_inner{width:100%}.et_pb_column_single{padding:2.855% 0}.et_pb_column_single .et_pb_module.et-first-child,.et_pb_column_single .et_pb_module:first-child{margin-top:0}.et_pb_column_single .et_pb_module.et-last-child,.et_pb_column_single .et_pb_module:last-child{margin-bottom:0}.et_pb_row .et_pb_column.et-last-child,.et_pb_row .et_pb_column:last-child,.et_pb_row_inner .et_pb_column.et-last-child,.et_pb_row_inner .et_pb_column:last-child{margin-right:0!important}.et_pb_row.et_pb_equal_columns,.et_pb_row_inner.et_pb_equal_columns,.et_pb_section.et_pb_equal_columns>.et_pb_row{display:-ms-flexbox;display:flex;direction:ltr}.et_pb_row.et_pb_equal_columns>.et_pb_column,.et_pb_section.et_pb_equal_columns>.et_pb_row>.et_pb_column{-ms-flex-order:1;order:1}}@media (max-width:980px){.et_pb_row{max-width:1080px}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et_pb_row,body:not(.et_pb_pagebuilder_layout) .post-password-required .et_pb_row{padding:0;width:100%}.et_pb_column .et_pb_row_inner,.et_pb_row{padding:30px 0}.et_section_specialty>.et_pb_row{padding:0}.et_pb_column{width:100%;margin-bottom:30px}.et_pb_bottom_divider .et_pb_row:nth-last-child(2) .et_pb_column:last-child,.et_pb_row .et_pb_column.et-last-child,.et_pb_row .et_pb_column:last-child{margin-bottom:0}.et_section_specialty .et_pb_row>.et_pb_column{padding-bottom:0}.et_pb_column.et_pb_column_empty{display:none}.et_pb_row_1-2_1-4_1-4,.et_pb_row_1-2_1-6_1-6_1-6,.et_pb_row_1-4_1-4,.et_pb_row_1-4_1-4_1-2,.et_pb_row_1-5_1-5_3-5,.et_pb_row_1-6_1-6_1-6,.et_pb_row_1-6_1-6_1-6_1-2,.et_pb_row_1-6_1-6_1-6_1-6,.et_pb_row_3-5_1-5_1-5,.et_pb_row_4col,.et_pb_row_5col,.et_pb_row_6col{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4{width:47.25%;margin-right:5.5%}.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4:nth-child(2n),.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4:nth-child(2n),.et_pb_row_4col>.et_pb_column.et_pb_column_1_4:nth-child(2n){margin-right:0}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4{width:47.25%;margin-right:5.5%}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_2,.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4:nth-child(odd){margin-right:0}.et_pb_row_1-2_1-4_1-4 .et_pb_column:nth-last-child(-n+2),.et_pb_row_1-4_1-4 .et_pb_column:nth-last-child(-n+2),.et_pb_row_4col .et_pb_column:nth-last-child(-n+2){margin-bottom:0}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:47.25%;margin-right:5.5%}.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5:nth-child(2n),.et_pb_row_5col>.et_pb_column.et_pb_column_1_5:nth-child(2n){margin-right:0}.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5{width:47.25%;margin-right:5.5%}.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5:nth-child(odd),.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_3_5{margin-right:0}.et_pb_row_3-5_1-5_1-5 .et_pb_column:nth-last-child(-n+2),.et_pb_row_5col .et_pb_column:last-child{margin-bottom:0}.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%}.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6:nth-child(3n),.et_pb_row_6col>.et_pb_column.et_pb_column_1_6:nth-child(3n){margin-right:0}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%}.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_2,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6:last-child{margin-right:0}.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2,.et_pb_row_1-2_1-6_1-6_1-6 .et_pb_column:nth-last-child(-n+3),.et_pb_row_6col .et_pb_column:nth-last-child(-n+3){margin-bottom:0}.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%;margin-bottom:0}.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6:last-child{margin-right:0}.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:47.25%;margin-right:5.5%}.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6:nth-child(2n){margin-right:0}.et_pb_row_1-6_1-6_1-6_1-6:nth-last-child(-n+3){margin-bottom:0}}@media (max-width:479px){.et_pb_row .et_pb_column.et_pb_column_1_4,.et_pb_row .et_pb_column.et_pb_column_1_5,.et_pb_row .et_pb_column.et_pb_column_1_6{width:100%;margin:0 0 30px}.et_pb_row .et_pb_column.et_pb_column_1_4.et-last-child,.et_pb_row .et_pb_column.et_pb_column_1_4:last-child,.et_pb_row .et_pb_column.et_pb_column_1_5.et-last-child,.et_pb_row .et_pb_column.et_pb_column_1_5:last-child,.et_pb_row .et_pb_column.et_pb_column_1_6.et-last-child,.et_pb_row .et_pb_column.et_pb_column_1_6:last-child{margin-bottom:0}.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6{width:100%;margin:0 0 30px}.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6.et-last-child,.et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6:last-child{margin-bottom:0}.et_pb_column{width:100%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/row_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/row_cpt.css
new file mode 100644
index 0000000..e18d4f0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/row_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_row{width:80%;max-width:1080px;margin:auto;position:relative}.et-db #et-boc .et-l .section_has_divider .et_pb_row{z-index:5}.et-db #et-boc .et-l .et_pb_row_inner{width:100%;position:relative}.et-db #et-boc .et-l .et_pb_row.et_pb_row_empty,.et-db #et-boc .et-l .et_pb_row_inner:nth-of-type(n+2).et_pb_row_empty{display:none}.et-db #et-boc .et-l .et_pb_row:after,.et-db #et-boc .et-l .et_pb_row_inner:after{content:"";display:block;clear:both;visibility:hidden;line-height:0;height:0;width:0}.et-db #et-boc .et-l .et_pb_row_4col .et-last-child,.et-db #et-boc .et-l .et_pb_row_4col .et-last-child-2,.et-db #et-boc .et-l .et_pb_row_6col .et-last-child,.et-db #et-boc .et-l .et_pb_row_6col .et-last-child-2,.et-db #et-boc .et-l .et_pb_row_6col .et-last-child-3{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column{float:left;background-size:cover;background-position:50%;position:relative;z-index:2;min-height:1px}.et-db #et-boc .et-l .et_pb_column--with-menu{z-index:3}.et-db #et-boc .et-l .et_pb_column.et_pb_column_empty{min-height:1px}.et-db #et-boc .et-l .et_pb_row .et_pb_column.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column:last-child,.et-db #et-boc .et-l .et_pb_row_inner .et_pb_column.et-last-child,.et-db #et-boc .et-l .et_pb_row_inner .et_pb_column:last-child{margin-right:0!important}.et-db #et-boc .et-l .et_pb_column.et_pb_section_parallax{position:relative}.et-db #et-boc .et-l .et_pb_column,.et-db #et-boc .et-l .et_pb_row,.et-db #et-boc .et-l .et_pb_row_inner{background-size:cover;background-position:50%;background-repeat:no-repeat}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_row{padding:2% 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et-db #et-boc .et-l .et_pb_row,body:not(.et_pb_pagebuilder_layout) .post-password-required .et-db #et-boc .et-l .et_pb_row{padding:0;width:100%}.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_row_inner{padding:3.735% 0}.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_row_inner{padding:4.2415% 0}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_row_inner,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_row_inner{padding:5.82% 0}.et-db #et-boc .et-l .et_section_specialty>.et_pb_row{padding:0}.et-db #et-boc .et-l .et_pb_row_inner{width:100%}.et-db #et-boc .et-l .et_pb_column_single{padding:2.855% 0}.et-db #et-boc .et-l .et_pb_column_single .et_pb_module.et-first-child,.et-db #et-boc .et-l .et_pb_column_single .et_pb_module:first-child{margin-top:0}.et-db #et-boc .et-l .et_pb_column_single .et_pb_module.et-last-child,.et-db #et-boc .et-l .et_pb_column_single .et_pb_module:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_row .et_pb_column.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column:last-child,.et-db #et-boc .et-l .et_pb_row_inner .et_pb_column.et-last-child,.et-db #et-boc .et-l .et_pb_row_inner .et_pb_column:last-child{margin-right:0!important}.et-db #et-boc .et-l .et_pb_row.et_pb_equal_columns,.et-db #et-boc .et-l .et_pb_row_inner.et_pb_equal_columns,.et-db #et-boc .et-l .et_pb_section.et_pb_equal_columns>.et_pb_row{display:-ms-flexbox;display:flex;direction:ltr}.et-db #et-boc .et-l .et_pb_row.et_pb_equal_columns>.et_pb_column,.et-db #et-boc .et-l .et_pb_section.et_pb_equal_columns>.et_pb_row>.et_pb_column{-ms-flex-order:1;order:1}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_row{max-width:1080px}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et-db #et-boc .et-l .et_pb_row,body:not(.et_pb_pagebuilder_layout) .post-password-required .et-db #et-boc .et-l .et_pb_row{padding:0;width:100%}.et-db #et-boc .et-l .et_pb_column .et_pb_row_inner,.et-db #et-boc .et-l .et_pb_row{padding:30px 0}.et-db #et-boc .et-l .et_section_specialty>.et_pb_row{padding:0}.et-db #et-boc .et-l .et_pb_column{width:100%;margin-bottom:30px}.et-db #et-boc .et-l .et_pb_bottom_divider .et_pb_row:nth-last-child(2) .et_pb_column:last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_section_specialty .et_pb_row>.et_pb_column{padding-bottom:0}.et-db #et-boc .et-l .et_pb_column.et_pb_column_empty{display:none}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6,.et-db #et-boc .et-l .et_pb_row_1-4_1-4,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5,.et-db #et-boc .et-l .et_pb_row_4col,.et-db #et-boc .et-l .et_pb_row_5col,.et-db #et-boc .et-l .et_pb_row_6col{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4:nth-child(2n),.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4:nth-child(2n),.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_2,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4:nth-child(odd){margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4 .et_pb_column:nth-last-child(-n+2),.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_column:nth-last-child(-n+2),.et-db #et-boc .et-l .et_pb_row_4col .et_pb_column:nth-last-child(-n+2){margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5:nth-child(2n),.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5:nth-child(odd),.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_3_5{margin-right:0}.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5 .et_pb_column:nth-last-child(-n+2),.et-db #et-boc .et-l .et_pb_row_5col .et_pb_column:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6:nth-child(3n),.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_2,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6:last-child{margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6 .et_pb_column:nth-last-child(-n+3),.et-db #et-boc .et-l .et_pb_row_6col .et_pb_column:nth-last-child(-n+3){margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6{width:29.666%;margin-right:5.5%;margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6:last-child{margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6:nth-last-child(-n+3){margin-bottom:0}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_4,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_5,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_6{width:100%;margin:0 0 30px}.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_4.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_4:last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_5.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_5:last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_6.et-last-child,.et-db #et-boc .et-l .et_pb_row .et_pb_column.et_pb_column_1_6:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6{width:100%;margin:0 0 30px}.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6.et-last-child,.et-db #et-boc .et-l .et_pb_row_1-2_1-2 .et_pb_column.et_pb_column_1_2 .et_pb_column.et_pb_column_1_6:last-child{margin-bottom:0}.et-db #et-boc .et-l .et_pb_column{width:100%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/search.css b/includes/builder/feature/dynamic-assets/assets/css/search.css
new file mode 100644
index 0000000..55f9f37
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/search.css
@@ -0,0 +1 @@
+.et_pb_search .screen-reader-text{display:none}.et_pb_search{border:1px solid #ddd;border-radius:3px;overflow:hidden}.et_pb_search input.et_pb_s,.et_pb_search input.et_pb_searchsubmit{padding:.715em;margin:0;font-size:14px;line-height:normal!important;border:none;color:#666}.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et_pb_search input.et_pb_s::-moz-placeholder{color:#666}.et_pb_search input.et_pb_s:-ms-input-placeholder{color:#666}.et_pb_search input.et_pb_s{-webkit-appearance:none;background:transparent;display:inline-block;padding-right:80px;width:100%}.et_pb_search .et_pb_searchform{position:relative}.et_pb_search input.et_pb_searchsubmit{min-height:100%!important;background-color:#ddd;position:absolute;top:0;bottom:0;cursor:pointer}.et_pb_search.et_pb_text_align_center .et_pb_searchsubmit,.et_pb_search.et_pb_text_align_left .et_pb_searchsubmit{right:0}.et_pb_search.et_pb_text_align_right .et_pb_searchsubmit{right:auto;left:0}.et_pb_search.et_pb_text_align_right input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et_pb_search.et_pb_text_align_center input.et_pb_s{text-align:center}.et_pb_search.et_pb_hide_search_button input.et_pb_searchsubmit{display:none}.et_pb_search.et_pb_hide_search_button input.et_pb_s{padding-left:.7em;padding-right:.7em}.et_pb_search.et_pb_bg_layout_dark input.et_pb_s{color:#fff;border:2px solid #fff}.et_pb_search.et_pb_bg_layout_dark input.et_pb_s::-webkit-input-placeholder{color:#fff}.et_pb_search.et_pb_bg_layout_dark input.et_pb_s::-moz-placeholder{color:#fff}.et_pb_search.et_pb_bg_layout_dark input.et_pb_s:-ms-input-placeholder{color:#fff}.et_pb_search.et_pb_bg_layout_dark input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}@media (max-width:980px){.et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_s{border:none;color:#666}.et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_searchsubmit{border:none;color:#666;background-color:#ddd}.et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s{color:#fff;border:2px solid #fff}.et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#fff}.et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s::-moz-placeholder{color:#fff}.et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s:-ms-input-placeholder{color:#fff}.et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}.et_pb_search.et_pb_text_align_center-tablet .et_pb_searchsubmit,.et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{right:0}.et_pb_search.et_pb_text_align_right-tablet .et_pb_searchsubmit{right:auto;left:0}.et_pb_search.et_pb_text_align_right-tablet input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{text-align:center}.et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{left:auto}.et_pb_search.et_pb_text_align_left-tablet input.et_pb_s{text-align:left;padding-left:.715em}.et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{padding-left:.715em;padding-right:.715em}}@media (max-width:767px){.et_pb_bg_layout_light_phone.et_pb_search input.et_pb_s{border:none;color:#666}.et_pb_bg_layout_light_phone.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et_pb_bg_layout_light_phone.et_pb_search input.et_pb_searchsubmit{border:none;color:#666;background-color:#ddd}.et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s{color:#fff;border:2px solid #fff}.et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#fff}.et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s::-moz-placeholder{color:#fff}.et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s:-ms-input-placeholder{color:#fff}.et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}.et_pb_search.et_pb_text_align_center-phone .et_pb_searchsubmit,.et_pb_search.et_pb_text_align_left-phone .et_pb_searchsubmit{right:0}.et_pb_search.et_pb_text_align_right-phone .et_pb_searchsubmit{right:auto;left:0}.et_pb_search.et_pb_text_align_right-phone input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et_pb_search.et_pb_text_align_center-phone input.et_pb_s{text-align:center}.et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{left:auto}.et_pb_search.et_pb_text_align_left-tablet input.et_pb_s{text-align:left;padding-left:.715em}.et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{padding-left:.715em;padding-right:.715em}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/search_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/search_cpt.css
new file mode 100644
index 0000000..8efbdda
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/search_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_search .screen-reader-text{display:none}.et-db #et-boc .et-l .et_pb_search{border:1px solid #ddd;border-radius:3px;overflow:hidden}.et-db #et-boc .et-l .et_pb_search input.et_pb_s,.et-db #et-boc .et-l .et_pb_search input.et_pb_searchsubmit{padding:.715em;margin:0;font-size:14px;line-height:normal!important;border:none;color:#666}.et-db #et-boc .et-l .et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_search input.et_pb_s::-moz-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_search input.et_pb_s:-ms-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_search input.et_pb_s{-webkit-appearance:none;background:transparent;display:inline-block;padding-right:80px;width:100%}.et-db #et-boc .et-l .et_pb_search .et_pb_searchform{position:relative}.et-db #et-boc .et-l .et_pb_search input.et_pb_searchsubmit{min-height:100%!important;background-color:#ddd;position:absolute;top:0;bottom:0;cursor:pointer}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center .et_pb_searchsubmit,.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left .et_pb_searchsubmit{right:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right .et_pb_searchsubmit{right:auto;left:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center input.et_pb_s{text-align:center}.et-db #et-boc .et-l .et_pb_search.et_pb_hide_search_button input.et_pb_searchsubmit{display:none}.et-db #et-boc .et-l .et_pb_search.et_pb_hide_search_button input.et_pb_s{padding-left:.7em;padding-right:.7em}.et-db #et-boc .et-l .et_pb_search.et_pb_bg_layout_dark input.et_pb_s{color:#fff;border:2px solid #fff}.et-db #et-boc .et-l .et_pb_search.et_pb_bg_layout_dark input.et_pb_s::-webkit-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_search.et_pb_bg_layout_dark input.et_pb_s::-moz-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_search.et_pb_bg_layout_dark input.et_pb_s:-ms-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_search.et_pb_bg_layout_dark input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_s{border:none;color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_search input.et_pb_searchsubmit{border:none;color:#666;background-color:#ddd}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s{color:#fff;border:2px solid #fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s::-moz-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_s:-ms-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_search input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-tablet .et_pb_searchsubmit,.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{right:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right-tablet .et_pb_searchsubmit{right:auto;left:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right-tablet input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{text-align:center}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{left:auto}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-tablet input.et_pb_s{text-align:left;padding-left:.715em}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{padding-left:.715em;padding-right:.715em}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_search input.et_pb_s{border:none;color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_search input.et_pb_searchsubmit{border:none;color:#666;background-color:#ddd}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s{color:#fff;border:2px solid #fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s::-webkit-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s::-moz-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_s:-ms-input-placeholder{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_search input.et_pb_searchsubmit{background-color:transparent;color:#fff;font-weight:500;border:2px solid #fff}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-phone .et_pb_searchsubmit,.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-phone .et_pb_searchsubmit{right:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right-phone .et_pb_searchsubmit{right:auto;left:0}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_right-phone input.et_pb_s{text-align:right;padding-left:80px;padding-right:.7em}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-phone input.et_pb_s{text-align:center}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-tablet .et_pb_searchsubmit{left:auto}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_left-tablet input.et_pb_s{text-align:left;padding-left:.715em}.et-db #et-boc .et-l .et_pb_search.et_pb_text_align_center-tablet input.et_pb_s{padding-left:.715em;padding-right:.715em}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/section.css b/includes/builder/feature/dynamic-assets/assets/css/section.css
new file mode 100644
index 0000000..6716d3b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/section.css
@@ -0,0 +1 @@
+.et_pb_section{position:relative;background-color:#fff;background-position:50%;background-size:100%;background-size:cover}.et_pb_section--absolute,.et_pb_section--fixed{width:100%}.et_pb_section.et_section_transparent{background-color:transparent}.et_pb_fullwidth_section{padding:0}.et_pb_fullwidth_section>.et_pb_module:not(.et_pb_post_content):not(.et_pb_fullwidth_post_content) .et_pb_row{padding:0!important}.et_pb_inner_shadow{box-shadow:inset 0 0 7px rgba(0,0,0,.07)}.et_pb_bottom_inside_divider,.et_pb_top_inside_divider{display:block;background-repeat-y:no-repeat;height:100%;position:absolute;pointer-events:none;width:100%;left:0;right:0}.et_pb_bottom_inside_divider.et-no-transition,.et_pb_top_inside_divider.et-no-transition{transition:none!important}.et_pb_top_inside_divider{margin-top:-1px}.et_pb_bottom_inside_divider{margin-bottom:-1px}.et-fb .section_has_divider.et_fb_element_controls_visible--child>.et_pb_bottom_inside_divider,.et-fb .section_has_divider.et_fb_element_controls_visible--child>.et_pb_top_inside_divider{z-index:1}.et_pb_section_video:not(.et_pb_menu):not(.et_pb_fullwidth_menu){overflow:hidden;position:relative}.et_pb_column>.et_pb_section_video_bg{z-index:-1}.et_pb_section_video_bg{visibility:visible;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;display:block;pointer-events:none;transition:display .3s}.et_pb_section_video_bg.et_pb_section_video_bg_hover,.et_pb_section_video_bg.et_pb_section_video_bg_phone,.et_pb_section_video_bg.et_pb_section_video_bg_tablet,.et_pb_section_video_bg.et_pb_section_video_bg_tablet_only{display:none}.et_pb_section_video_bg .mejs-controls,.et_pb_section_video_bg .mejs-overlay-play{display:none!important}.et_pb_section_video_bg embed,.et_pb_section_video_bg iframe,.et_pb_section_video_bg object,.et_pb_section_video_bg video{max-width:none}.et_pb_section_video_bg .mejs-video{left:50%;position:absolute;max-width:none}.et_pb_section_video_bg .mejs-overlay-loading{display:none!important}.et_pb_social_network_link .et_pb_section_video{overflow:visible}.et_pb_section_video_on_hover:hover>.et_pb_section_video_bg{display:none}.et_pb_section_video_on_hover:hover>.et_pb_section_video_bg_hover,.et_pb_section_video_on_hover:hover>.et_pb_section_video_bg_hover_inherit{display:block}@media (min-width:981px){.et_pb_section{padding:4% 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et_pb_section,body:not(.et_pb_pagebuilder_layout) .post-password-required .et_pb_section{padding-top:0}.et_pb_fullwidth_section{padding:0}.et_pb_section_video_bg.et_pb_section_video_bg_desktop_only{display:block}}@media (max-width:980px){.et_pb_section{padding:50px 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et_pb_section,body:not(.et_pb_pagebuilder_layout) .post-password-required .et_pb_section{padding-top:0}.et_pb_fullwidth_section{padding:0}.et_pb_section_video_bg.et_pb_section_video_bg_tablet{display:block}.et_pb_section_video_bg.et_pb_section_video_bg_desktop_only{display:none}}@media (min-width:768px){.et_pb_section_video_bg.et_pb_section_video_bg_desktop_tablet{display:block}}@media (min-width:768px) and (max-width:980px){.et_pb_section_video_bg.et_pb_section_video_bg_tablet_only{display:block}}@media (max-width:767px){.et_pb_section_video_bg.et_pb_section_video_bg_phone{display:block}.et_pb_section_video_bg.et_pb_section_video_bg_desktop_tablet{display:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/section_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/section_cpt.css
new file mode 100644
index 0000000..1ac4895
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/section_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_section{position:relative;background-color:#fff;background-position:50%;background-size:100%;background-size:cover}.et-db #et-boc .et-l .et_pb_section--absolute,.et-db #et-boc .et-l .et_pb_section--fixed{width:100%}.et-db #et-boc .et-l .et_pb_section.et_section_transparent{background-color:transparent}.et-db #et-boc .et-l .et_pb_fullwidth_section{padding:0}.et-db #et-boc .et-l .et_pb_fullwidth_section>.et_pb_module:not(.et_pb_post_content):not(.et_pb_fullwidth_post_content) .et_pb_row{padding:0!important}.et-db #et-boc .et-l .et_pb_inner_shadow{box-shadow:inset 0 0 7px rgba(0,0,0,.07)}.et-db #et-boc .et-l .et_pb_bottom_inside_divider,.et-db #et-boc .et-l .et_pb_top_inside_divider{display:block;background-repeat-y:no-repeat;height:100%;position:absolute;pointer-events:none;width:100%;left:0;right:0}.et-db #et-boc .et-l .et_pb_bottom_inside_divider.et-no-transition,.et-db #et-boc .et-l .et_pb_top_inside_divider.et-no-transition{transition:none!important}.et-db #et-boc .et-l .et_pb_top_inside_divider{margin-top:-1px}.et-db #et-boc .et-l .et_pb_bottom_inside_divider{margin-bottom:-1px}.et-db #et-boc .et-l .et-fb .section_has_divider.et_fb_element_controls_visible--child>.et_pb_bottom_inside_divider,.et-db #et-boc .et-l .et-fb .section_has_divider.et_fb_element_controls_visible--child>.et_pb_top_inside_divider{z-index:1}.et-db #et-boc .et-l .et_pb_section_video:not(.et_pb_menu):not(.et_pb_fullwidth_menu){overflow:hidden;position:relative}.et-db #et-boc .et-l .et_pb_column>.et_pb_section_video_bg{z-index:-1}.et-db #et-boc .et-l .et_pb_section_video_bg{visibility:visible;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;display:block;pointer-events:none;transition:display .3s}.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_hover,.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_phone,.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_tablet,.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_tablet_only{display:none}.et-db #et-boc .et-l .et_pb_section_video_bg .mejs-controls,.et-db #et-boc .et-l .et_pb_section_video_bg .mejs-overlay-play{display:none!important}.et-db #et-boc .et-l .et_pb_section_video_bg embed,.et-db #et-boc .et-l .et_pb_section_video_bg iframe,.et-db #et-boc .et-l .et_pb_section_video_bg object,.et-db #et-boc .et-l .et_pb_section_video_bg video{max-width:none}.et-db #et-boc .et-l .et_pb_section_video_bg .mejs-video{left:50%;position:absolute;max-width:none}.et-db #et-boc .et-l .et_pb_section_video_bg .mejs-overlay-loading{display:none!important}.et-db #et-boc .et-l .et_pb_social_network_link .et_pb_section_video{overflow:visible}.et-db #et-boc .et-l .et_pb_section_video_on_hover:hover>.et_pb_section_video_bg{display:none}.et-db #et-boc .et-l .et_pb_section_video_on_hover:hover>.et_pb_section_video_bg_hover,.et-db #et-boc .et-l .et_pb_section_video_on_hover:hover>.et_pb_section_video_bg_hover_inherit{display:block}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_section{padding:4% 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et-db #et-boc .et-l .et_pb_section,body:not(.et_pb_pagebuilder_layout) .post-password-required .et-db #et-boc .et-l .et_pb_section{padding-top:0}.et-db #et-boc .et-l .et_pb_fullwidth_section{padding:0}.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_desktop_only{display:block}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_section{padding:50px 0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et-db #et-boc .et-l .et_pb_section,body:not(.et_pb_pagebuilder_layout) .post-password-required .et-db #et-boc .et-l .et_pb_section{padding-top:0}.et-db #et-boc .et-l .et_pb_fullwidth_section{padding:0}.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_tablet{display:block}.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_desktop_only{display:none}}@media (min-width:768px){.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_desktop_tablet{display:block}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_tablet_only{display:block}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_phone{display:block}.et-db #et-boc .et-l .et_pb_section_video_bg.et_pb_section_video_bg_desktop_tablet{display:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style-rtl.css
new file mode 100644
index 0000000..8477ebb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style-rtl.css
@@ -0,0 +1 @@
+@media (max-width:980px){.rtl .et_pb_column .et_pb_blog_grid .column.size-1of2,.rtl .et_pb_column .et_pb_widget{margin:0 0 7.5% 5.5%;float:right}.rtl .et_pb_column .et_pb_blog_grid .column.size-1of2 .last_in_row,.rtl .et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et_pb_column .et_pb_widget .last_in_row,.rtl .et_pb_column .et_pb_widget:nth-child(2n){margin-left:0}}@media (max-width:767px){.rtl .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style_cpt-rtl.css
new file mode 100644
index 0000000..8fcd73d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/shared-conditional-style_cpt-rtl.css
@@ -0,0 +1 @@
+@media (max-width:980px){.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2,.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0 0 7.5% 5.5%;float:right}.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2 .last_in_row,.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of2:nth-child(2n),.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_widget .last_in_row,.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_widget:nth-child(2n){margin-left:0}}@media (max-width:767px){.rtl .et-db #et-boc .et-l .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post{margin-left:0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/shop.css b/includes/builder/feature/dynamic-assets/assets/css/shop.css
new file mode 100644
index 0000000..beb7198
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/shop.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_shop .et_shop_image>img,.et_pb_with_border.et_pb_shop .products li{border:0 solid #333}.et_pb_shop.et_pb_text_align_center .star-rating,.et_pb_shop.et_pb_text_align_justified .star-rating,.et_pb_shop.et_pb_text_align_right .star-rating{display:inline-block}@media (max-width:980px){.et_pb_shop ul.products.columns-1 li.product,.et_pb_shop ul.products.columns-2 li.product,.et_pb_shop ul.products.columns-3 li.product,.et_pb_shop ul.products.columns-4 li.product,.et_pb_shop ul.products.columns-5 li.product,.et_pb_shop ul.products.columns-6 li.product{width:48%!important;margin-right:4%!important}.et_pb_shop ul.products.columns-1 li:nth-child(2n+2),.et_pb_shop ul.products.columns-2 li:nth-child(2n+2),.et_pb_shop ul.products.columns-3 li:nth-child(2n+2),.et_pb_shop ul.products.columns-4 li:nth-child(2n+2),.et_pb_shop ul.products.columns-5 li:nth-child(2n+2),.et_pb_shop ul.products.columns-6 li:nth-child(2n+2){margin-right:0!important}.et_pb_shop ul.products.columns-1 li:nth-child(3n+1),.et_pb_shop ul.products.columns-2 li:nth-child(3n+1),.et_pb_shop ul.products.columns-3 li:nth-child(3n+1),.et_pb_shop ul.products.columns-4 li:nth-child(3n+1),.et_pb_shop ul.products.columns-5 li:nth-child(3n+1),.et_pb_shop ul.products.columns-6 li:nth-child(3n+1){clear:none}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product{margin:0 0 11.5%;width:100%}}@media (min-width:981px){.et_pb_shop_grid .woocommerce ul.products li.product{clear:none}.et_pb_shop.et_pb_text_align_center-tablet .star-rating,.et_pb_shop.et_pb_text_align_justified-tablet .star-rating,.et_pb_shop.et_pb_text_align_right-tablet .star-rating{display:inline-block}}@media (max-width:767px){.et_pb_shop.et_pb_text_align_center-phone .star-rating,.et_pb_shop.et_pb_text_align_justified-phone .star-rating,.et_pb_shop.et_pb_text_align_right-phone .star-rating{display:inline-block}}@media (max-width:479px){.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product{margin:0 0 11.5%;width:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/shop_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/shop_cpt.css
new file mode 100644
index 0000000..b5d3376
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/shop_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_shop .et_shop_image>img,.et-db #et-boc .et-l .et_pb_with_border.et_pb_shop .products li{border:0 solid #333}.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_center .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_justified .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_right .star-rating{display:inline-block}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_shop ul.products.columns-1 li.product,.et-db #et-boc .et-l .et_pb_shop ul.products.columns-2 li.product,.et-db #et-boc .et-l .et_pb_shop ul.products.columns-3 li.product,.et-db #et-boc .et-l .et_pb_shop ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_shop ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_shop ul.products.columns-6 li.product{width:48%!important;margin-right:4%!important}.et-db #et-boc .et-l .et_pb_shop ul.products.columns-1 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-2 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-3 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-4 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-5 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-6 li:nth-child(2n+2){margin-right:0!important}.et-db #et-boc .et-l .et_pb_shop ul.products.columns-1 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-2 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-3 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-4 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-5 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_shop ul.products.columns-6 li:nth-child(3n+1){clear:none}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product{margin:0 0 11.5%;width:100%}}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_shop_grid .woocommerce ul.products li.product{clear:none}.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_center-tablet .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_justified-tablet .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_right-tablet .star-rating{display:inline-block}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_center-phone .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_justified-phone .star-rating,.et-db #et-boc .et-l .et_pb_shop.et_pb_text_align_right-phone .star-rating{display:inline-block}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_shop_grid .woocommerce ul.products li.product,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_shop_grid .woocommerce ul.products li.product{margin:0 0 11.5%;width:100%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/sidebar.css b/includes/builder/feature/dynamic-assets/assets/css/sidebar.css
new file mode 100644
index 0000000..2b7265f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/sidebar.css
@@ -0,0 +1 @@
+.et_pb_widget_area_left{border-right:1px solid rgba(0,0,0,.1);padding-right:30px}.et_pb_widget_area_right{border-left:1px solid rgba(0,0,0,.1);padding-left:30px}.et_pb_sidebar_no_border{border:none;padding:0}.et_pb_widget_area ul{list-style:none!important;padding:0!important;line-height:inherit!important}@media (max-width:980px){.et_pb_bg_layout_dark_tablet .et_pb_widget li a{color:inherit}.et_pb_widget_area_left{padding-right:0;border-right:none}.et_pb_widget_area_right{padding-left:0;border-left:none}.et_pb_column .et_pb_widget{margin:0 5.5% 7.5% 0;width:47.25%;clear:none;float:left}.et_pb_column .et_pb_widget:nth-child(2n){margin-right:0}.et_pb_column .et_pb_widget:nth-child(odd){clear:both}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0 0 11.5%;width:100%}}@media (max-width:767px){.et_pb_column .et_pb_widget{margin-right:0;width:100%}}@media (max-width:479px){.et_pb_column .et_pb_widget{margin-right:0;margin-bottom:11.5%;width:100%}.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0 0 11.5%;width:100%}}.et_pb_no_sidebar_vertical_divider .et_pb_widget_area_left{border-right:none}.et_pb_no_sidebar_vertical_divider .et_pb_widget_area_right{border-left:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/sidebar_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/sidebar_cpt.css
new file mode 100644
index 0000000..15c6650
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/sidebar_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_widget_area_left{border-right:1px solid rgba(0,0,0,.1);padding-right:30px}.et-db #et-boc .et-l .et_pb_widget_area_right{border-left:1px solid rgba(0,0,0,.1);padding-left:30px}.et-db #et-boc .et-l .et_pb_sidebar_no_border{border:none;padding:0}.et-db #et-boc .et-l .et_pb_widget_area ul{list-style:none!important;padding:0!important;line-height:inherit!important}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_widget li a{color:inherit}.et-db #et-boc .et-l .et_pb_widget_area_left{padding-right:0;border-right:none}.et-db #et-boc .et-l .et_pb_widget_area_right{padding-left:0;border-left:none}.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin:0 5.5% 7.5% 0;width:47.25%;clear:none;float:left}.et-db #et-boc .et-l .et_pb_column .et_pb_widget:nth-child(2n){margin-right:0}.et-db #et-boc .et-l .et_pb_column .et_pb_widget:nth-child(odd){clear:both}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0 0 11.5%;width:100%}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin-right:0;width:100%}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_column .et_pb_widget{margin-right:0;margin-bottom:11.5%;width:100%}.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_4col>.et_pb_column.et_pb_column_1_4 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_5col>.et_pb_column.et_pb_column_1_5 .et_pb_widget,.et-db #et-boc .et-l .et_pb_row_6col>.et_pb_column.et_pb_column_1_6 .et_pb_widget{margin:0 0 11.5%;width:100%}}.et_pb_no_sidebar_vertical_divider .et_pb_widget_area_left{border-right:none}.et_pb_no_sidebar_vertical_divider .et_pb_widget_area_right{border-left:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/signup-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/signup-rtl.css
new file mode 100644
index 0000000..ab72a52
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/signup-rtl.css
@@ -0,0 +1 @@
+.rtl .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.rtl .et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{margin-right:0;margin-left:6px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/signup.css b/includes/builder/feature/dynamic-assets/assets/css/signup.css
new file mode 100644
index 0000000..9b7b877
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/signup.css
@@ -0,0 +1 @@
+.et_pb_signup .et_pb_newsletter_description,.et_pb_signup .et_pb_newsletter_form{float:none}.et_pb_subscribe .et_pb_contact_field input,.et_pb_subscribe .et_pb_contact_field textarea{-webkit-appearance:none;background-color:#eee;width:100%;border-width:0;border-radius:0;color:#999;font-size:14px;padding:16px;background-color:#fff}.et_pb_subscribe .et_pb_contact_field input[type=checkbox],.et_pb_subscribe .et_pb_contact_field input[type=radio]{margin:0;width:auto;max-width:none;padding:0;display:none}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label,.et_pb_subscribe .et_pb_contact_field input[type=radio]+label{display:inline-block;vertical-align:middle;position:relative;cursor:pointer;line-height:1.7em;min-height:1.7em}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{content:"";width:18px;height:18px;background-color:#eee;font-style:normal;display:inline-block;vertical-align:middle;position:relative;margin-right:6px}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et_pb_subscribe .et_pb_contact_field input[type=radio]+label i,.et_pb_subscribe .et_pb_contact_field input[type=text],.et_pb_subscribe .et_pb_contact_field select,.et_pb_subscribe .et_pb_contact_field textarea{background-color:#fff}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et_pb_subscribe .et_pb_contact_field input[type=text],.et_pb_subscribe .et_pb_contact_field select,.et_pb_subscribe .et_pb_contact_field textarea{border-radius:3px}.et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{border-radius:50%}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]:checked+label i:before,.et_pb_subscribe .et_pb_contact_field input[type=radio]:checked+label i:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]:checked+label i:before{content:"N";font-family:ETmodules;color:#2ea3f2;width:17px;height:17px;font-size:13px;font-weight:600;line-height:17px;text-align:center}.et_pb_subscribe .et_pb_contact_field input[type=radio]:checked+label i:before{background:#2ea3f2;border-radius:50%;width:6px;height:6px}.et_pb_subscribe .et_pb_contact_field input[type=checkbox]~input[type=text]{display:none!important}.et_pb_subscribe .et_pb_contact_field textarea{font-family:inherit}.et_pb_newsletter.et_pb_subscribe{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column}.et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_description{-ms-flex-item-align:start;align-self:start}.et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_description,.et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_form{width:100%}.et_pb_feedburner_form .et_pb_newsletter_button{margin:0;width:100%;cursor:pointer}.et_subscribe_loader{display:none;background:url(#dynamic-product-dir/includes/builder/styles/images/subscribe-loader.gif);width:16px;height:16px;position:absolute;left:50%;top:16px;margin-left:-8px}.et_pb_button_text_loading .et_pb_newsletter_button_text{visibility:hidden}.et_pb_feedburner_form form{text-align:left}.et_pb_feedburner_form ::-webkit-input-placeholder{color:#666}.et_pb_feedburner_form ::-moz-placeholder{color:#666}.et_pb_feedburner_form :-ms-input-placeholder{color:#666}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/signup_cpt-rtl.css b/includes/builder/feature/dynamic-assets/assets/css/signup_cpt-rtl.css
new file mode 100644
index 0000000..d54c40c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/signup_cpt-rtl.css
@@ -0,0 +1 @@
+.rtl.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.rtl.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{margin-right:0;margin-left:6px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/signup_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/signup_cpt.css
new file mode 100644
index 0000000..0a37ad2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/signup_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_signup .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_signup .et_pb_newsletter_form{float:none}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field textarea{-webkit-appearance:none;background-color:#eee;width:100%;border-width:0;border-radius:0;color:#999;font-size:14px;padding:16px;background-color:#fff}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox],.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]{margin:0;width:auto;max-width:none;padding:0;display:none}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]+label{display:inline-block;vertical-align:middle;position:relative;cursor:pointer;line-height:1.7em;min-height:1.7em}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{content:"";width:18px;height:18px;background-color:#eee;font-style:normal;display:inline-block;vertical-align:middle;position:relative;margin-right:6px}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]+label i,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=text],.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field select,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field textarea{background-color:#fff}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]+label i,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=text],.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field select,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field textarea{border-radius:3px}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]+label i{border-radius:50%}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]:checked+label i:before,.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]:checked+label i:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]:checked+label i:before{content:"N";font-family:ETmodules;color:#2ea3f2;width:17px;height:17px;font-size:13px;font-weight:600;line-height:17px;text-align:center}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=radio]:checked+label i:before{background:#2ea3f2;border-radius:50%;width:6px;height:6px}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field input[type=checkbox]~input[type=text]{display:none!important}.et-db #et-boc .et-l .et_pb_subscribe .et_pb_contact_field textarea{font-family:inherit}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_description{-ms-flex-item-align:start;align-self:start}.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_description,.et-db #et-boc .et-l .et_pb_newsletter.et_pb_subscribe .et_pb_newsletter_form{width:100%}.et-db #et-boc .et-l .et_pb_feedburner_form .et_pb_newsletter_button{margin:0;width:100%;cursor:pointer}.et-db #et-boc .et-l .et_subscribe_loader{display:none;background:url(#dynamic-product-dir/includes/builder/styles/images/subscribe-loader.gif);width:16px;height:16px;position:absolute;left:50%;top:16px;margin-left:-8px}.et-db #et-boc .et-l .et_pb_button_text_loading .et_pb_newsletter_button_text{visibility:hidden}.et-db #et-boc .et-l .et_pb_feedburner_form form{text-align:left}.et-db #et-boc .et-l .et_pb_feedburner_form ::-webkit-input-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_feedburner_form ::-moz-placeholder{color:#666}.et-db #et-boc .et-l .et_pb_feedburner_form :-ms-input-placeholder{color:#666}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider.css b/includes/builder/feature/dynamic-assets/assets/css/slider.css
new file mode 100644
index 0000000..e69de29
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_base.css b/includes/builder/feature/dynamic-assets/assets/css/slider_base.css
new file mode 100644
index 0000000..9307c35
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_base.css
@@ -0,0 +1 @@
+.et_pb_slider{position:relative;overflow:hidden}.et_pb_slide{padding:0 6%;background-size:cover;background-position:50%;background-repeat:no-repeat}.et_pb_slider .et_pb_slide{display:none;float:left;margin-right:-100%;position:relative;width:100%;text-align:center;list-style:none!important;background-position:50%;background-size:100%;background-size:cover}.et_pb_slider .et_pb_slide:first-child{display:list-item}.et-pb-controllers{position:absolute;bottom:20px;left:0;width:100%;text-align:center;z-index:10}.et-pb-controllers a{display:inline-block;background-color:hsla(0,0%,100%,.5);text-indent:-9999px;border-radius:7px;width:7px;height:7px;margin-right:10px;padding:0;opacity:.5}.et-pb-controllers .et-pb-active-control{opacity:1}.et-pb-controllers a:last-child{margin-right:0}.et-pb-controllers .et-pb-active-control{background-color:#fff}.et_pb_slides .et_pb_temp_slide{display:block}.et_pb_slides:after{content:"";display:block;clear:both;visibility:hidden;line-height:0;height:0;width:0}@media (max-width:980px){.et_pb_bg_layout_light_tablet .et-pb-controllers .et-pb-active-control{background-color:#333}.et_pb_bg_layout_light_tablet .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et_pb_bg_layout_light_tablet .et_pb_slide_content{color:#333}.et_pb_bg_layout_dark_tablet .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et_pb_bg_layout_dark_tablet .et_pb_slide_content{color:#fff}.et_pb_bg_layout_dark_tablet .et-pb-controllers .et-pb-active-control{background-color:#fff}.et_pb_bg_layout_dark_tablet .et-pb-controllers a{background-color:hsla(0,0%,100%,.5)}}@media (max-width:767px){.et-pb-controllers{position:absolute;bottom:5%;left:0;width:100%;text-align:center;z-index:10;height:14px}.et_transparent_nav .et_pb_section:first-child .et-pb-controllers{bottom:18px}.et_pb_bg_layout_light_phone.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_light_phone.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et_pb_bg_layout_light_phone .et-pb-controllers .et-pb-active-control{background-color:#333}.et_pb_bg_layout_dark_phone.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_dark_phone.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper,.et_pb_bg_layout_light_phone .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et_pb_bg_layout_dark_phone .et-pb-controllers .et-pb-active-control{background-color:#fff}.et_pb_bg_layout_dark_phone .et-pb-controllers a{background-color:hsla(0,0%,100%,.5)}}.et_mobile_device .et_pb_slider_parallax .et_pb_slide,.et_mobile_device .et_pb_slides .et_parallax_bg.et_pb_parallax_css{background-attachment:scroll}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_base_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/slider_base_cpt.css
new file mode 100644
index 0000000..0fd38fb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_base_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_slider{position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_slide{padding:0 6%;background-size:cover;background-position:50%;background-repeat:no-repeat}.et-db #et-boc .et-l .et_pb_slider .et_pb_slide{display:none;float:left;margin-right:-100%;position:relative;width:100%;text-align:center;list-style:none!important;background-position:50%;background-size:100%;background-size:cover}.et-db #et-boc .et-l .et_pb_slider .et_pb_slide:first-child{display:list-item}.et-db #et-boc .et-l .et-pb-controllers{position:absolute;bottom:20px;left:0;width:100%;text-align:center;z-index:10}.et-db #et-boc .et-l .et-pb-controllers a{display:inline-block;background-color:hsla(0,0%,100%,.5);text-indent:-9999px;border-radius:7px;width:7px;height:7px;margin-right:10px;padding:0;opacity:.5}.et-db #et-boc .et-l .et-pb-controllers .et-pb-active-control{opacity:1}.et-db #et-boc .et-l .et-pb-controllers a:last-child{margin-right:0}.et-db #et-boc .et-l .et-pb-controllers .et-pb-active-control{background-color:#fff}.et-db #et-boc .et-l .et_pb_slides .et_pb_temp_slide{display:block}.et-db #et-boc .et-l .et_pb_slides:after{content:"";display:block;clear:both;visibility:hidden;line-height:0;height:0;width:0}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et-pb-controllers .et-pb-active-control{background-color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_slide_content{color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_slide_content{color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et-pb-controllers .et-pb-active-control{background-color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et-pb-controllers a{background-color:hsla(0,0%,100%,.5)}}@media (max-width:767px){.et-db #et-boc .et-l .et-pb-controllers{position:absolute;bottom:5%;left:0;width:100%;text-align:center;z-index:10;height:14px}.et-db #et-boc .et-l .et_transparent_nav .et_pb_section:first-child .et-pb-controllers{bottom:18px}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et-pb-controllers .et-pb-active-control{background-color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et-pb-controllers .et-pb-active-control{background-color:#fff}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et-pb-controllers a{background-color:hsla(0,0%,100%,.5)}}.et_mobile_device .et_pb_slider_parallax .et_pb_slide,.et_mobile_device .et_pb_slides .et_parallax_bg.et_pb_parallax_css{background-attachment:scroll}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_controls.css b/includes/builder/feature/dynamic-assets/assets/css/slider_controls.css
new file mode 100644
index 0000000..63757e3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_controls.css
@@ -0,0 +1 @@
+.et-pb-arrow-next,.et-pb-arrow-prev{position:absolute;top:50%;z-index:100;font-size:48px;color:#fff;margin-top:-24px;transition:all .2s ease-in-out;opacity:0}.et_pb_bg_layout_light .et-pb-arrow-next,.et_pb_bg_layout_light .et-pb-arrow-prev{color:#333}.et_pb_slider:hover .et-pb-arrow-prev{left:22px;opacity:1}.et_pb_slider:hover .et-pb-arrow-next{right:22px;opacity:1}.et_pb_bg_layout_light .et-pb-controllers .et-pb-active-control{background-color:#333}.et_pb_bg_layout_light .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et-pb-arrow-next:hover,.et-pb-arrow-prev:hover{text-decoration:none}.et-pb-arrow-next span,.et-pb-arrow-prev span{display:none}.et-pb-arrow-prev{left:-22px}.et-pb-arrow-next{right:-22px}.et-pb-arrow-prev:before{content:"4"}.et-pb-arrow-next:before{content:"5"}.format-gallery .et-pb-arrow-next,.format-gallery .et-pb-arrow-prev{color:#fff}.et_pb_column_1_3 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_2_5 .et_pb_slider:hover .et-pb-arrow-prev{left:0}.et_pb_column_1_3 .et_pb_slider:hover .et-pb-arrow-next,.et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-prev,.et_pb_column_2_5 .et_pb_slider:hover .et-pb-arrow-next{right:0}.et_pb_column_1_4 .et_pb_slider .et_pb_slide,.et_pb_column_1_5 .et_pb_slider .et_pb_slide,.et_pb_column_1_6 .et_pb_slider .et_pb_slide{min-height:170px}.et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-next,.et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-next,.et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-next{right:0}@media (max-width:980px){.et_pb_bg_layout_light_tablet .et-pb-arrow-next,.et_pb_bg_layout_light_tablet .et-pb-arrow-prev{color:#333}.et_pb_bg_layout_dark_tablet .et-pb-arrow-next,.et_pb_bg_layout_dark_tablet .et-pb-arrow-prev{color:#fff}}@media (max-width:767px){.et_pb_slider:hover .et-pb-arrow-prev{left:0;opacity:1}.et_pb_slider:hover .et-pb-arrow-next{right:0;opacity:1}.et_pb_bg_layout_light_phone .et-pb-arrow-next,.et_pb_bg_layout_light_phone .et-pb-arrow-prev{color:#333}.et_pb_bg_layout_dark_phone .et-pb-arrow-next,.et_pb_bg_layout_dark_phone .et-pb-arrow-prev{color:#fff}}.et_mobile_device .et-pb-arrow-prev{left:22px;opacity:1}.et_mobile_device .et-pb-arrow-next{right:22px;opacity:1}@media (max-width:767px){.et_mobile_device .et-pb-arrow-prev{left:0;opacity:1}.et_mobile_device .et-pb-arrow-next{right:0;opacity:1}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_controls_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/slider_controls_cpt.css
new file mode 100644
index 0000000..4500288
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_controls_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et-pb-arrow-next,.et-db #et-boc .et-l .et-pb-arrow-prev{position:absolute;top:50%;z-index:100;font-size:48px;color:#fff;margin-top:-24px;transition:all .2s ease-in-out;opacity:0}.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-arrow-prev{color:#333}.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-prev{left:22px;opacity:1}.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-next{right:22px;opacity:1}.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-controllers .et-pb-active-control{background-color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-controllers a{background-color:rgba(0,0,0,.3)}.et-db #et-boc .et-l .et-pb-arrow-next:hover,.et-db #et-boc .et-l .et-pb-arrow-prev:hover{text-decoration:none}.et-db #et-boc .et-l .et-pb-arrow-next span,.et-db #et-boc .et-l .et-pb-arrow-prev span{display:none}.et-db #et-boc .et-l .et-pb-arrow-prev{left:-22px}.et-db #et-boc .et-l .et-pb-arrow-next{right:-22px}.et-db #et-boc .et-l .et-pb-arrow-prev:before{content:"4"}.et-db #et-boc .et-l .et-pb-arrow-next:before{content:"5"}.et-db #et-boc .et-l .format-gallery .et-pb-arrow-next,.et-db #et-boc .et-l .format-gallery .et-pb-arrow-prev{color:#fff}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider:hover .et-pb-arrow-prev{left:0}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider:hover .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider:hover .et-pb-arrow-next{right:0}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider .et_pb_slide{min-height:170px}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider:hover .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider:hover .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider:hover .et-pb-arrow-next{right:0}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et-pb-arrow-prev{color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et-pb-arrow-prev{color:#fff}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-prev{left:0;opacity:1}.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-next{right:0;opacity:1}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et-pb-arrow-prev{color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et-pb-arrow-prev{color:#fff}}.et_mobile_device .et-pb-arrow-prev{left:22px;opacity:1}.et_mobile_device .et-pb-arrow-next{right:22px;opacity:1}@media (max-width:767px){.et_mobile_device .et-pb-arrow-prev{left:0;opacity:1}.et_mobile_device .et-pb-arrow-next{right:0;opacity:1}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/slider_cpt.css
new file mode 100644
index 0000000..e69de29
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_modules.css b/includes/builder/feature/dynamic-assets/assets/css/slider_modules.css
new file mode 100644
index 0000000..5df5c1c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_modules.css
@@ -0,0 +1 @@
+.et_pb_slider .et_pb_container{width:100%;margin:0 auto;position:relative;z-index:2}.et_pb_with_border .et_pb_slide_image img{border:0 solid #333}.et_pb_slides .et_pb_container{display:table;table-layout:fixed}.et_pb_slides .et_pb_slider_container_inner{display:table-cell;width:100%;vertical-align:middle}.et_pb_slides .et_pb_empty_slide.et_pb_container,.et_pb_slides .et_pb_empty_slide .et_pb_slider_container_inner{display:block}.et_pb_slide_content{font-size:14px;font-weight:400;color:#333}.et_pb_slide_content p:last-of-type{padding-bottom:0}.et_pb_bg_layout_dark .et_pb_slide_content{color:#fff}.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{padding:30px;border-radius:3px}.et_pb_slide_description{word-wrap:break-word}.et-pb-active-slide .et_pb_slide_description{animation-duration:.7s;animation-delay:.9s;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-name:fadeBottom}.et_pb_bg_layout_dark .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et_pb_slide_description,.et_pb_slider_fullwidth_off .et_pb_slide_description{padding:16% 8%;width:auto;margin:auto}.et_pb_slide_with_image .et_pb_slide_description{width:47.25%;padding-left:0;padding-right:0;text-align:left;float:right}.et_pb_slide_description .et_pb_slide_title{font-weight:300;margin-top:0;font-size:46px}.et_pb_slide_image{position:absolute;bottom:0}.et_pb_slide_video{position:absolute;top:50%;bottom:auto}.et_pb_slide:first-child .et_pb_slide_image img{opacity:0}.et_pb_slide:first-child .et_pb_slide_image img.active{opacity:1;animation-duration:.7s;animation-delay:.6s;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-name:fadeLeft}.et_pb_media_alignment_center .et_pb_slide_image{bottom:auto;top:50%}.et-pb-active-slide .et_pb_slide_image,.et-pb-active-slide .et_pb_slide_video{animation-duration:.7s;animation-delay:.6s;animation-timing-function:ease-in-out;animation-fill-mode:both}.et-pb-active-slide .et_pb_slide_image{animation-name:fadeLeft}.et_pb_slide_image img{width:auto;vertical-align:bottom}.et_pb_slide_image,.et_pb_slide_video{width:47.25%;margin-right:5.5%}.et_pb_slide_video .mejs-mediaelement{position:relative}.et_pb_slide_video .mejs-mediaelement .wp-video-shortcode{display:block}.et_pb_slide_video .wp-video-shortcode video,.et_pb_slide_video video.wp-video-shortcode{height:auto}.et_pb_slider_with_overlay .et_pb_slide_overlay_container{position:absolute;width:100%;height:100%;left:0;top:0;z-index:1}.et_pb_bg_layout_light.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_light.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et_pb_bg_layout_dark.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_dark.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:rgba(0,0,0,.3)}.et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_description{text-align:center}.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_video{display:none}.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description{text-align:center}.et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content,.et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content,.et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content{display:none}.et_pb_column_1_2 .et_pb_slide_content,.et_pb_column_1_3 .et_pb_slide_content,.et_pb_column_1_4 .et_pb_slide_content,.et_pb_column_1_5 .et_pb_slide_content,.et_pb_column_1_6 .et_pb_slide_content,.et_pb_column_2_5 .et_pb_slide_content,.et_pb_column_3_4 .et_pb_column_3_8 .et_pb_slide_content,.et_pb_column_3_5 .et_pb_slide_content{font-size:14px}.et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_image,.et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_video,.et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content{display:block}.et_pb_column_1_2 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_3_4 .et_pb_column_3_8 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_3_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:26px;font-weight:400}.et_pb_column_1_3 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_4 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_5 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_6 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_2_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:22px;font-weight:400}@media (min-width:981px) and (max-width:1100px){.et_pb_column_1_2 .et_pb_slide_content,.et_pb_column_1_3 .et_pb_slide_content,.et_pb_column_1_4 .et_pb_slide_content,.et_pb_column_1_5 .et_pb_slide_content,.et_pb_column_1_6 .et_pb_slide_content,.et_pb_column_2_3 .et_pb_slide_content,.et_pb_column_2_5 .et_pb_slide_content,.et_pb_column_3_5 .et_pb_slide_content{font-size:14px}.et_pb_column_1_2 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_3 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_4 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_5 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_1_6 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_2_3 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_2_5 .et_pb_slide_description h2.et_pb_slide_title,.et_pb_column_3_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:18px}}@media (min-width:981px){.et_pb_column_1_2 .et_pb_slide_image,.et_pb_column_1_2 .et_pb_slide_video,.et_pb_column_1_3 .et_pb_slide_image,.et_pb_column_1_3 .et_pb_slide_video,.et_pb_column_1_4 .et_pb_slide_image,.et_pb_column_1_4 .et_pb_slide_video,.et_pb_column_1_5 .et_pb_slide_image,.et_pb_column_1_5 .et_pb_slide_video,.et_pb_column_1_6 .et_pb_slide_image,.et_pb_column_1_6 .et_pb_slide_video,.et_pb_column_2_5 .et_pb_slide_image,.et_pb_column_2_5 .et_pb_slide_video,.et_pb_column_3_5 .et_pb_slide_image,.et_pb_column_3_5 .et_pb_slide_video,.et_pb_column_3_8 .et_pb_slide_image,.et_pb_column_3_8 .et_pb_slide_video{top:auto;bottom:auto;position:relative}.et_pb_column_1_2 .et_pb_slide_image,.et_pb_column_1_2 .et_pb_slide_video,.et_pb_column_1_2 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_3 .et_pb_slide_image,.et_pb_column_1_3 .et_pb_slide_video,.et_pb_column_1_3 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_4 .et_pb_slide_image,.et_pb_column_1_4 .et_pb_slide_video,.et_pb_column_1_4 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_5 .et_pb_slide_image,.et_pb_column_1_5 .et_pb_slide_video,.et_pb_column_1_5 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_1_6 .et_pb_slide_image,.et_pb_column_1_6 .et_pb_slide_video,.et_pb_column_1_6 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_2_5 .et_pb_slide_image,.et_pb_column_2_5 .et_pb_slide_video,.et_pb_column_2_5 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_3_5 .et_pb_slide_image,.et_pb_column_3_5 .et_pb_slide_video,.et_pb_column_3_5 .et_pb_slide_with_image .et_pb_slide_description,.et_pb_column_3_8 .et_pb_slide_image,.et_pb_column_3_8 .et_pb_slide_video,.et_pb_column_3_8 .et_pb_slide_with_image .et_pb_slide_description{width:100%!important}.et_pb_column_1_2 .et_pb_slide_image,.et_pb_column_1_2 .et_pb_slide_video,.et_pb_column_1_3 .et_pb_slide_image,.et_pb_column_1_3 .et_pb_slide_video,.et_pb_column_1_4 .et_pb_slide_image,.et_pb_column_1_4 .et_pb_slide_video,.et_pb_column_1_5 .et_pb_slide_image,.et_pb_column_1_5 .et_pb_slide_video,.et_pb_column_1_6 .et_pb_slide_image,.et_pb_column_1_6 .et_pb_slide_video,.et_pb_column_2_5 .et_pb_slide_image,.et_pb_column_2_5 .et_pb_slide_video,.et_pb_column_3_5 .et_pb_slide_image,.et_pb_column_3_5 .et_pb_slide_video,.et_pb_column_3_8 .et_pb_slide_image,.et_pb_column_3_8 .et_pb_slide_video{padding:0;margin:10% 0 0!important}.et_pb_column_1_3 .et_pb_slide_description,.et_pb_column_2_5 .et_pb_slide_description{padding-bottom:26%}.et_pb_column_1_4 .et_pb_slide .et_pb_slide_description,.et_pb_column_1_5 .et_pb_slide .et_pb_slide_description,.et_pb_column_1_6 .et_pb_slide .et_pb_slide_description{padding-bottom:34%}}@media (max-width:980px){.et_pb_column_1_4 .et_pb_slider_fullwidth_off h2,.et_pb_column_1_5 .et_pb_slider_fullwidth_off h2,.et_pb_column_1_6 .et_pb_slider_fullwidth_off h2,.et_pb_slide_description h2.et_pb_slide_title{font-size:26px;font-weight:500}.et_pb_slide_description .et_pb_slide_title{font-weight:500}.et_pb_slide_content{font-size:13px;font-weight:400}.et_pb_slide_description{text-align:center}.et_pb_slide_with_image .et_pb_slide_description{text-align:left}.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_container,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_container,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_container{min-height:auto}.et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_content{display:block}.et_pb_bg_layout_light_tablet.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_light_tablet.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et_pb_bg_layout_dark_tablet.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et_pb_bg_layout_dark_tablet.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:rgba(0,0,0,.3)}}@media (max-width:767px){.et_pb_slide_content{font-size:12px}.et_pb_slider.et_pb_module .et_pb_slides .et_pb_slide_content{font-size:14px}.et_pb_slide_description h2.et_pb_slide_title{font-size:24px}.et_pb_slider.et_pb_module .et_pb_slides .et_pb_slide_description h2.et_pb_slide_title{font-size:20px}.et_pb_slide_description,.et_pb_slide_with_image .et_pb_slide_description,.et_pb_slider_fullwidth_off .et_pb_slide_description{text-align:center}.et_pb_slide_with_image .et_pb_slide_description{float:none;text-align:center;width:100%}.et_pb_media_alignment_center .et_pb_slide_image{top:0}.et_pb_slide_image,.et_pb_slide_video,.et_pb_slide_with_image .et_pb_slide_description{width:100%}.et_pb_slider_show_image .et_pb_slide_image,.et_pb_slider_show_image .et_pb_slide_video{display:block!important}.et_pb_slide_image,.et_pb_slide_video{display:none!important;position:relative;top:auto;margin:50px auto 0;padding:0;margin-top:6%!important}.et_pb_slide_video{float:none}.et_pb_slide_image img{max-height:300px}.et_pb_section_first .et_pb_slide_image img{max-height:300px!important}.et_pb_section_first .et_pb_slide_image{margin:0!important;top:20px}.et_pb_slider_with_overlay .et_pb_slide_image,.et_pb_slider_with_overlay .et_pb_slide_video,.et_pb_slider_with_overlay .et_pb_slide_with_image .et_pb_slide_description{width:100%}.et_pb_slider_with_overlay .et_pb_slide_image{margin-top:0!important;padding-top:6%}.et_pb_bg_layout_light_phone .et_pb_slide_content{color:#333}.et_pb_bg_layout_dark_phone .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et_pb_bg_layout_dark_phone .et_pb_slide_content{color:#fff}}@media (min-width:480px){.et_pb_column_1_4 .et_pb_slide_description,.et_pb_column_1_5 .et_pb_slide_description,.et_pb_column_1_6 .et_pb_slide_description{padding-bottom:26%}}@media (max-width:479px){.et_pb_slide_description h2.et_pb_slide_title{font-size:20px}.et_pb_slide_content{font-weight:400;font-size:10px;display:block}.et_pb_slider_fullwidth_off .et_pb_more_button,.et_pb_slider_fullwidth_off .et_pb_slide_content{display:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/slider_modules_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/slider_modules_cpt.css
new file mode 100644
index 0000000..ae015cb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/slider_modules_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_slider .et_pb_container{width:100%;margin:0 auto;position:relative;z-index:2}.et-db #et-boc .et-l .et_pb_with_border .et_pb_slide_image img{border:0 solid #333}.et-db #et-boc .et-l .et_pb_slides .et_pb_container{display:table;table-layout:fixed}.et-db #et-boc .et-l .et_pb_slides .et_pb_slider_container_inner{display:table-cell;width:100%;vertical-align:middle}.et-db #et-boc .et-l .et_pb_slides .et_pb_empty_slide.et_pb_container,.et-db #et-boc .et-l .et_pb_slides .et_pb_empty_slide .et_pb_slider_container_inner{display:block}.et-db #et-boc .et-l .et_pb_slide_content{font-size:14px;font-weight:400;color:#333}.et-db #et-boc .et-l .et_pb_slide_content p:last-of-type{padding-bottom:0}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_slide_content{color:#fff}.et-db #et-boc .et-l .et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{padding:30px;border-radius:3px}.et-db #et-boc .et-l .et_pb_slide_description{word-wrap:break-word}.et-db #et-boc .et-l .et-pb-active-slide .et_pb_slide_description{animation-duration:.7s;animation-delay:.9s;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-name:fadeBottom}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_slider_fullwidth_off .et_pb_slide_description{padding:16% 8%;width:auto;margin:auto}.et-db #et-boc .et-l .et_pb_slide_with_image .et_pb_slide_description{width:47.25%;padding-left:0;padding-right:0;text-align:left;float:right}.et-db #et-boc .et-l .et_pb_slide_description .et_pb_slide_title{font-weight:300;margin-top:0;font-size:46px}.et-db #et-boc .et-l .et_pb_slide_image{position:absolute;bottom:0}.et-db #et-boc .et-l .et_pb_slide_video{position:absolute;top:50%;bottom:auto}.et-db #et-boc .et-l .et_pb_slide:first-child .et_pb_slide_image img{opacity:0}.et-db #et-boc .et-l .et_pb_slide:first-child .et_pb_slide_image img.active{opacity:1;animation-duration:.7s;animation-delay:.6s;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-name:fadeLeft}.et-db #et-boc .et-l .et_pb_media_alignment_center .et_pb_slide_image{bottom:auto;top:50%}.et-db #et-boc .et-l .et-pb-active-slide .et_pb_slide_image,.et-db #et-boc .et-l .et-pb-active-slide .et_pb_slide_video{animation-duration:.7s;animation-delay:.6s;animation-timing-function:ease-in-out;animation-fill-mode:both}.et-db #et-boc .et-l .et-pb-active-slide .et_pb_slide_image{animation-name:fadeLeft}.et-db #et-boc .et-l .et_pb_slide_image img{width:auto;vertical-align:bottom}.et-db #et-boc .et-l .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_slide_video{width:47.25%;margin-right:5.5%}.et-db #et-boc .et-l .et_pb_slide_video .mejs-mediaelement{position:relative}.et-db #et-boc .et-l .et_pb_slide_video .mejs-mediaelement .wp-video-shortcode{display:block}.et-db #et-boc .et-l .et_pb_slide_video .wp-video-shortcode video,.et-db #et-boc .et-l .et_pb_slide_video video.wp-video-shortcode{height:auto}.et-db #et-boc .et-l .et_pb_slider_with_overlay .et_pb_slide_overlay_container{position:absolute;width:100%;height:100%;left:0;top:0;z-index:1}.et-db #et-boc .et-l .et_pb_bg_layout_light.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_light.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_description{text-align:center}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_video{display:none}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_description{text-align:center}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content{display:none}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_3_8 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_content{font-size:14px}.et-db #et-boc .et-l .et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column .et_pb_slider_fullwidth_off .et_pb_slide_with_image .et_pb_slide_content{display:block}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_column_3_8 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:26px;font-weight:400}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:22px;font-weight:400}@media (min-width:981px) and (max-width:1100px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_content{font-size:14px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_description h2.et_pb_slide_title,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_description h2.et_pb_slide_title{font-size:18px}}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_video{top:auto;bottom:auto;position:relative}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_with_image .et_pb_slide_description{width:100%!important}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_slide_video{padding:0;margin:10% 0 0!important}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_slide_description{padding-bottom:26%}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide .et_pb_slide_description{padding-bottom:34%}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off h2,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off h2,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off h2,.et-db #et-boc .et-l .et_pb_slide_description h2.et_pb_slide_title{font-size:26px;font-weight:500}.et-db #et-boc .et-l .et_pb_slide_description .et_pb_slide_title{font-weight:500}.et-db #et-boc .et-l .et_pb_slide_content{font-size:13px;font-weight:400}.et-db #et-boc .et-l .et_pb_slide_description{text-align:center}.et-db #et-boc .et-l .et_pb_slide_with_image .et_pb_slide_description{text-align:left}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_container,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_container,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_container{min-height:auto}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_fullwidth_off .et_pb_slide_content,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_fullwidth_off .et_pb_slide_content{display:block}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:hsla(0,0%,100%,.9)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_slider_with_overlay .et_pb_slide_overlay_container,.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper{background-color:rgba(0,0,0,.3)}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_slide_content{font-size:12px}.et-db #et-boc .et-l .et_pb_slider.et_pb_module .et_pb_slides .et_pb_slide_content{font-size:14px}.et-db #et-boc .et-l .et_pb_slide_description h2.et_pb_slide_title{font-size:24px}.et-db #et-boc .et-l .et_pb_slider.et_pb_module .et_pb_slides .et_pb_slide_description h2.et_pb_slide_title{font-size:20px}.et-db #et-boc .et-l .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_slide_with_image .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_slider_fullwidth_off .et_pb_slide_description{text-align:center}.et-db #et-boc .et-l .et_pb_slide_with_image .et_pb_slide_description{float:none;text-align:center;width:100%}.et-db #et-boc .et-l .et_pb_media_alignment_center .et_pb_slide_image{top:0}.et-db #et-boc .et-l .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_slide_with_image .et_pb_slide_description{width:100%}.et-db #et-boc .et-l .et_pb_slider_show_image .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_slider_show_image .et_pb_slide_video{display:block!important}.et-db #et-boc .et-l .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_slide_video{display:none!important;position:relative;top:auto;margin:50px auto 0;padding:0;margin-top:6%!important}.et-db #et-boc .et-l .et_pb_slide_video{float:none}.et-db #et-boc .et-l .et_pb_slide_image img{max-height:300px}.et-db #et-boc .et-l .et_pb_section_first .et_pb_slide_image img{max-height:300px!important}.et-db #et-boc .et-l .et_pb_section_first .et_pb_slide_image{margin:0!important;top:20px}.et-db #et-boc .et-l .et_pb_slider_with_overlay .et_pb_slide_image,.et-db #et-boc .et-l .et_pb_slider_with_overlay .et_pb_slide_video,.et-db #et-boc .et-l .et_pb_slider_with_overlay .et_pb_slide_with_image .et_pb_slide_description{width:100%}.et-db #et-boc .et-l .et_pb_slider_with_overlay .et_pb_slide_image{margin-top:0!important;padding-top:6%}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_slide_content{color:#333}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_slide_description{text-shadow:0 1px 3px rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_slide_content{color:#fff}}@media (min-width:480px){.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slide_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slide_description{padding-bottom:26%}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_slide_description h2.et_pb_slide_title{font-size:20px}.et-db #et-boc .et-l .et_pb_slide_content{font-weight:400;font-size:10px;display:block}.et-db #et-boc .et-l .et_pb_slider_fullwidth_off .et_pb_more_button,.et-db #et-boc .et-l .et_pb_slider_fullwidth_off .et_pb_slide_content{display:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/social_media_follow.css b/includes/builder/feature/dynamic-assets/assets/css/social_media_follow.css
new file mode 100644
index 0000000..b9d03e0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/social_media_follow.css
@@ -0,0 +1 @@
+ul.et_pb_social_media_follow{list-style-type:none!important;margin:0 0 22px;padding:0}.et_pb_social_media_follow li{display:inline-block;margin-bottom:8px;position:relative}.et_pb_social_media_follow li a{margin-right:8px;display:inline-block;text-decoration:none;text-align:center;position:relative}.et_pb_social_media_follow li a.follow_button{padding:0 12px;margin-top:5px;margin-right:25px;font-size:14px;line-height:1.6em;background:rgba(0,0,0,.1);color:rgba(0,0,0,.5);border-radius:3px;border-width:0;border-style:solid;transition:all .3s}.et_pb_social_media_follow li.last-child a,.et_pb_social_media_follow li:last-child a{margin-right:0}.et_pb_social_media_follow.has_follow_button li.last-child a.icon,.et_pb_social_media_follow.has_follow_button li:last-child a.icon{margin-right:8px}.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et_pb_social_media_follow.et_pb_bg_layout_dark li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et_pb_social_media_follow.et_pb_bg_layout_dark li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}.et_pb_social_media_follow li a.icon{height:32px;width:32px;padding:0;box-sizing:content-box}.et_pb_social_media_follow li a.icon:before{height:32px;width:32px;font-size:16px;line-height:32px;display:block;color:#fff;transition:color .3s;position:relative;z-index:10}.et_pb_social_media_follow li a.icon:hover:before{color:hsla(0,0%,100%,.7)}.et_pb_social_media_follow li a.icon{border-radius:3px}.et_pb_social_media_follow_network_name{display:none}.et_pb_social_icon a.icon{vertical-align:middle}.et_pb_social_icon a.icon:before{font-family:ETmodules;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 0;direction:ltr}.et-pb-social-fa-icon a.icon:before{font-family:FontAwesome}.et-social-telegram a.icon:before{content:"\F3FE"}.et-social-amazon a.icon:before{content:"\F270"}.et-social-bandcamp a.icon:before{content:"\F2D5"}.et-social-bitbucket a.icon:before{content:"\F171"}.et-social-behance a.icon:before{content:"\F1B4"}.et-social-buffer a.icon:before{content:"\F837"}.et-social-codepen a.icon:before{content:"\F1CB"}.et-social-deviantart a.icon:before{content:"\F1BD"}.et-social-flipboard a.icon:before{content:"\F44D"}.et-social-foursquare a.icon:before{content:"\F180"}.et-social-github a.icon:before{content:"\F09B"}.et-social-goodreads a.icon:before{content:"\F3A9"}.et-social-google a.icon:before{content:"\F1A0"}.et-social-houzz a.icon:before{content:"\F27C"}.et-social-itunes a.icon:before{content:"\F3B5"}.et-social-last_fm a.icon:before{content:"\F202"}.et-social-line a.icon:before{content:"\F3C0"}.et-social-medium a.icon:before,.et-social-meetup a.icon:before{content:"\F3C7"}.et-social-odnoklassniki a.icon:before{content:"\F263"}.et-social-patreon a.icon:before{content:"\F3D9"}.et-social-periscope a.icon:before{content:"\F3DA"}.et-social-quora a.icon:before{content:"\F2C4"}.et-social-researchgate a.icon:before{content:"\F4F8"}.et-social-reddit a.icon:before{content:"\F281"}.et-social-snapchat a.icon:before{content:"\F2AC"}.et-social-soundcloud a.icon:before{content:"\F1BE"}.et-social-spotify a.icon:before{content:"\F1BC"}.et-social-steam a.icon:before{content:"\F3F6"}.et-social-tripadvisor a.icon:before{content:"\F262"}.et-social-tiktok a.icon:before{content:"\E07B"}.et-social-twitch a.icon:before{content:"\F1E8"}.et-social-vk a.icon:before{content:"\F189"}.et-social-weibo a.icon:before{content:"\F18A"}.et-social-whatsapp a.icon:before{content:"\F232"}.et-social-xing a.icon:before{content:"\F168"}.et-social-yelp a.icon:before{content:"\F1E9"}.et-social-pinterest a.icon:before{content:"\E095"}.et-social-linkedin a.icon:before{content:"\E09D"}.et-social-tumblr a.icon:before{content:"\E097"}.et-social-skype a.icon:before{content:"\E0A2"}.et-social-flikr a.icon:before{content:"\E0A6"}.et-social-myspace a.icon:before{content:"\E0A1"}.et-social-dribbble a.icon:before{content:"\E09B"}.et-social-youtube a.icon:before{content:"\E0A3"}.et-social-vimeo a.icon:before{content:"\E09C"}@media (max-width:980px){.et_pb_bg_layout_light_tablet.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.et_pb_bg_layout_light_tablet.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et_pb_bg_layout_dark_tablet.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et_pb_bg_layout_dark_tablet.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}}@media (max-width:767px){.et_pb_bg_layout_light_phone.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.et_pb_bg_layout_light_phone.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et_pb_bg_layout_dark_phone.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et_pb_bg_layout_dark_phone.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/social_media_follow_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/social_media_follow_cpt.css
new file mode 100644
index 0000000..81891b6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/social_media_follow_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l ul.et_pb_social_media_follow{list-style-type:none!important;margin:0 0 22px;padding:0}.et-db #et-boc .et-l .et_pb_social_media_follow li{display:inline-block;margin-bottom:8px;position:relative}.et-db #et-boc .et-l .et_pb_social_media_follow li a{margin-right:8px;display:inline-block;text-decoration:none;text-align:center;position:relative}.et-db #et-boc .et-l .et_pb_social_media_follow li a.follow_button{padding:0 12px;margin-top:5px;margin-right:25px;font-size:14px;line-height:1.6em;background:rgba(0,0,0,.1);color:rgba(0,0,0,.5);border-radius:3px;border-width:0;border-style:solid;transition:all .3s}.et-db #et-boc .et-l .et_pb_social_media_follow li.last-child a,.et-db #et-boc .et-l .et_pb_social_media_follow li:last-child a{margin-right:0}.et-db #et-boc .et-l .et_pb_social_media_follow.has_follow_button li.last-child a.icon,.et-db #et-boc .et-l .et_pb_social_media_follow.has_follow_button li:last-child a.icon{margin-right:8px}.et-db #et-boc .et-l .et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_social_media_follow.et_pb_bg_layout_dark li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et-db #et-boc .et-l .et_pb_social_media_follow.et_pb_bg_layout_dark li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}.et-db #et-boc .et-l .et_pb_social_media_follow li a.icon{height:32px;width:32px;padding:0;box-sizing:content-box}.et-db #et-boc .et-l .et_pb_social_media_follow li a.icon:before{height:32px;width:32px;font-size:16px;line-height:32px;display:block;color:#fff;transition:color .3s;position:relative;z-index:10}.et-db #et-boc .et-l .et_pb_social_media_follow li a.icon:hover:before{color:hsla(0,0%,100%,.7)}.et-db #et-boc .et-l .et_pb_social_media_follow li a.icon{border-radius:3px}.et-db #et-boc .et-l .et_pb_social_media_follow_network_name{display:none}.et-db #et-boc .et-l .et_pb_social_icon a.icon{vertical-align:middle}.et-db #et-boc .et-l .et_pb_social_icon a.icon:before{font-family:ETmodules;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 0;direction:ltr}.et-db #et-boc .et-l .et-pb-social-fa-icon a.icon:before{font-family:FontAwesome}.et-db #et-boc .et-l .et-social-telegram a.icon:before{content:"\F3FE"}.et-db #et-boc .et-l .et-social-amazon a.icon:before{content:"\F270"}.et-db #et-boc .et-l .et-social-bandcamp a.icon:before{content:"\F2D5"}.et-db #et-boc .et-l .et-social-bitbucket a.icon:before{content:"\F171"}.et-db #et-boc .et-l .et-social-behance a.icon:before{content:"\F1B4"}.et-db #et-boc .et-l .et-social-buffer a.icon:before{content:"\F837"}.et-db #et-boc .et-l .et-social-codepen a.icon:before{content:"\F1CB"}.et-db #et-boc .et-l .et-social-deviantart a.icon:before{content:"\F1BD"}.et-db #et-boc .et-l .et-social-flipboard a.icon:before{content:"\F44D"}.et-db #et-boc .et-l .et-social-foursquare a.icon:before{content:"\F180"}.et-db #et-boc .et-l .et-social-github a.icon:before{content:"\F09B"}.et-db #et-boc .et-l .et-social-goodreads a.icon:before{content:"\F3A9"}.et-db #et-boc .et-l .et-social-google a.icon:before{content:"\F1A0"}.et-db #et-boc .et-l .et-social-houzz a.icon:before{content:"\F27C"}.et-db #et-boc .et-l .et-social-itunes a.icon:before{content:"\F3B5"}.et-db #et-boc .et-l .et-social-last_fm a.icon:before{content:"\F202"}.et-db #et-boc .et-l .et-social-line a.icon:before{content:"\F3C0"}.et-db #et-boc .et-l .et-social-medium a.icon:before,.et-db #et-boc .et-l .et-social-meetup a.icon:before{content:"\F3C7"}.et-db #et-boc .et-l .et-social-odnoklassniki a.icon:before{content:"\F263"}.et-db #et-boc .et-l .et-social-patreon a.icon:before{content:"\F3D9"}.et-db #et-boc .et-l .et-social-periscope a.icon:before{content:"\F3DA"}.et-db #et-boc .et-l .et-social-quora a.icon:before{content:"\F2C4"}.et-db #et-boc .et-l .et-social-researchgate a.icon:before{content:"\F4F8"}.et-db #et-boc .et-l .et-social-reddit a.icon:before{content:"\F281"}.et-db #et-boc .et-l .et-social-snapchat a.icon:before{content:"\F2AC"}.et-db #et-boc .et-l .et-social-soundcloud a.icon:before{content:"\F1BE"}.et-db #et-boc .et-l .et-social-spotify a.icon:before{content:"\F1BC"}.et-db #et-boc .et-l .et-social-steam a.icon:before{content:"\F3F6"}.et-db #et-boc .et-l .et-social-tripadvisor a.icon:before{content:"\F262"}.et-db #et-boc .et-l .et-social-tiktok a.icon:before{content:"\E07B"}.et-db #et-boc .et-l .et-social-twitch a.icon:before{content:"\F1E8"}.et-db #et-boc .et-l .et-social-vk a.icon:before{content:"\F189"}.et-db #et-boc .et-l .et-social-weibo a.icon:before{content:"\F18A"}.et-db #et-boc .et-l .et-social-whatsapp a.icon:before{content:"\F232"}.et-db #et-boc .et-l .et-social-xing a.icon:before{content:"\F168"}.et-db #et-boc .et-l .et-social-yelp a.icon:before{content:"\F1E9"}.et-db #et-boc .et-l .et-social-pinterest a.icon:before{content:"\E095"}.et-db #et-boc .et-l .et-social-linkedin a.icon:before{content:"\E09D"}.et-db #et-boc .et-l .et-social-tumblr a.icon:before{content:"\E097"}.et-db #et-boc .et-l .et-social-skype a.icon:before{content:"\E0A2"}.et-db #et-boc .et-l .et-social-flikr a.icon:before{content:"\E0A6"}.et-db #et-boc .et-l .et-social-myspace a.icon:before{content:"\E0A1"}.et-db #et-boc .et-l .et-social-dribbble a.icon:before{content:"\E09B"}.et-db #et-boc .et-l .et-social-youtube a.icon:before{content:"\E0A3"}.et-db #et-boc .et-l .et-social-vimeo a.icon:before{content:"\E09C"}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.et-db #et-boc .et-l .et_pb_bg_layout_light_phone.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.2);color:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_social_media_follow li a.follow_button{background:rgba(0,0,0,.6);color:hsla(0,0%,100%,.8)}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone.et_pb_social_media_follow li a.follow_button:hover{background:rgba(0,0,0,.7);color:#fff}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/sticky_elements.css b/includes/builder/feature/dynamic-assets/assets/css/sticky_elements.css
new file mode 100644
index 0000000..4356de7
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/sticky_elements.css
@@ -0,0 +1 @@
+.et_parallax_bg.et_parallax_bg__sticky,.et_pb_sticky.et_pb_section_parallax_sticky .et_parallax_bg:not(.et_parallax_bg__sticky),.et_pb_sticky .et_pb_section_parallax_sticky .et_parallax_bg:not(.et_parallax_bg__sticky){display:none}.et_pb_sticky.et_pb_section_parallax_sticky .et_parallax_bg.et_parallax_bg__sticky,.et_pb_sticky .et_pb_section_parallax_sticky .et_parallax_bg.et_parallax_bg__sticky{display:block}.et_builder_inner_content.has_et_pb_sticky{z-index:inherit}.et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et_pb_column.has_et_pb_sticky{z-index:20}.et-l--header .et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et-l--header .et_pb_column.has_et_pb_sticky{z-index:30}.et-l--footer .et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et-l--footer .et_pb_column.has_et_pb_sticky{z-index:10}.et_pb_sticky_placeholder{opacity:0!important}.et_pb_sticky .et_overlay.et_pb_inline_icon_sticky:before,.et_pb_sticky .et_pb_inline_icon_sticky:before{content:attr(data-icon-sticky)!important}body .et-script-temporary-measurement{opacity:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/sticky_elements_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/sticky_elements_cpt.css
new file mode 100644
index 0000000..41c1878
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/sticky_elements_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_parallax_bg.et_parallax_bg__sticky,.et-db #et-boc .et-l .et_pb_sticky.et_pb_section_parallax_sticky .et_parallax_bg:not(.et_parallax_bg__sticky),.et-db #et-boc .et-l .et_pb_sticky .et_pb_section_parallax_sticky .et_parallax_bg:not(.et_parallax_bg__sticky){display:none}.et-db #et-boc .et-l .et_pb_sticky.et_pb_section_parallax_sticky .et_parallax_bg.et_parallax_bg__sticky,.et-db #et-boc .et-l .et_pb_sticky .et_pb_section_parallax_sticky .et_parallax_bg.et_parallax_bg__sticky{display:block}.et-db #et-boc .et-l .et_builder_inner_content.has_et_pb_sticky{z-index:inherit}.et-db #et-boc .et-l .et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et-db #et-boc .et-l .et_pb_column.has_et_pb_sticky{z-index:20}.et-l--header .et-db #et-boc .et-l .et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et-l--header .et-db #et-boc .et-l .et_pb_column.has_et_pb_sticky{z-index:30}.et-l--footer .et-db #et-boc .et-l .et-db #et-boc .et-l #et-fb-app .et_pb_column.has_et_pb_sticky,.et-l--footer .et-db #et-boc .et-l .et_pb_column.has_et_pb_sticky{z-index:10}.et-db #et-boc .et-l .et_pb_sticky_placeholder{opacity:0!important}.et-db #et-boc .et-l .et_pb_sticky .et_overlay.et_pb_inline_icon_sticky:before,.et-db #et-boc .et-l .et_pb_sticky .et_pb_inline_icon_sticky:before{content:attr(data-icon-sticky)!important}.et-db #et-boc .et-l body .et-script-temporary-measurement{opacity:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/tabs.css b/includes/builder/feature/dynamic-assets/assets/css/tabs.css
new file mode 100644
index 0000000..30490b5
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/tabs.css
@@ -0,0 +1 @@
+.et_pb_tab,.et_pb_tabs_controls{word-wrap:break-word}.et_pb_tabs{border:1px solid #d9d9d9}ul.et_pb_tabs_controls{background-color:#f4f4f4}ul.et_pb_tabs_controls:after{border-top:1px solid #d9d9d9;content:"";display:block;visibility:visible;position:relative;top:-1px;z-index:9}.et_pb_tabs_controls li{float:left;border-right:1px solid #d9d9d9;font-weight:600;position:relative;cursor:pointer;max-width:100%;display:table;z-index:11;line-height:1.7em}.et_pb_tabs_controls li:not(.et_pb_tab_active):last-child{border-right:none}.et_pb_tabs_controls li a{text-decoration:none;color:#666;padding:4px 30px;vertical-align:middle;display:table-cell;line-height:inherit}.et_pb_tabs_controls li.et_pb_tab_active{background-color:#fff}.et_pb_tab_active a{color:#333!important}.et_pb_tab p:last-of-type{padding-bottom:0}.et_pb_all_tabs{background-color:#fff}.et_pb_all_tabs>div{display:none}.et_pb_all_tabs .et_pb_active_content{display:block}.et_pb_tab{padding:24px 30px}.et_pb_tab_content{position:relative}.et_pb_column_1_3 .et_pb_tabs_controls,.et_pb_column_1_4 .et_pb_tabs_controls,.et_pb_column_1_5 .et_pb_tabs_controls,.et_pb_column_1_6 .et_pb_tabs_controls,.et_pb_column_2_5 .et_pb_tabs_controls,.et_pb_column_3_8 .et_pb_tabs_controls{border-bottom:none}.et_pb_column_1_3 .et_pb_tabs_controls li,.et_pb_column_1_4 .et_pb_tabs_controls li,.et_pb_column_1_5 .et_pb_tabs_controls li,.et_pb_column_1_6 .et_pb_tabs_controls li,.et_pb_column_2_5 .et_pb_tabs_controls li,.et_pb_column_3_8 .et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9}.et_pb_column_1_3 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et_pb_column_1_4 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et_pb_column_1_5 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et_pb_column_1_6 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et_pb_column_2_5 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et_pb_column_3_8 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li{width:100%}.et_pb_tabs_controls{list-style:none!important;padding:0!important;line-height:inherit!important}@media (max-width:767px){.et_pb_tabs_controls{border-bottom:none;height:auto!important}.et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9;display:block}}@media (max-width:479px){.et_pb_tabs_controls{border-bottom:none}.et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/tabs_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/tabs_cpt.css
new file mode 100644
index 0000000..413ab06
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/tabs_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_tab,.et-db #et-boc .et-l .et_pb_tabs_controls{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_tabs{border:1px solid #d9d9d9}.et-db #et-boc .et-l ul.et_pb_tabs_controls{background-color:#f4f4f4}.et-db #et-boc .et-l ul.et_pb_tabs_controls:after{border-top:1px solid #d9d9d9;content:"";display:block;visibility:visible;position:relative;top:-1px;z-index:9}.et-db #et-boc .et-l .et_pb_tabs_controls li{float:left;border-right:1px solid #d9d9d9;font-weight:600;position:relative;cursor:pointer;max-width:100%;display:table;z-index:11;line-height:1.7em}.et-db #et-boc .et-l .et_pb_tabs_controls li:not(.et_pb_tab_active):last-child{border-right:none}.et-db #et-boc .et-l .et_pb_tabs_controls li a{text-decoration:none;color:#666;padding:4px 30px;vertical-align:middle;display:table-cell;line-height:inherit}.et-db #et-boc .et-l .et_pb_tabs_controls li.et_pb_tab_active{background-color:#fff}.et-db #et-boc .et-l .et_pb_tab_active a{color:#333!important}.et-db #et-boc .et-l .et_pb_tab p:last-of-type{padding-bottom:0}.et-db #et-boc .et-l .et_pb_all_tabs{background-color:#fff}.et-db #et-boc .et-l .et_pb_all_tabs>div{display:none}.et-db #et-boc .et-l .et_pb_all_tabs .et_pb_active_content{display:block}.et-db #et-boc .et-l .et_pb_tab{padding:24px 30px}.et-db #et-boc .et-l .et_pb_tab_content{position:relative}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_tabs_controls,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_tabs_controls,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_tabs_controls,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_tabs_controls,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_tabs_controls,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_tabs_controls{border-bottom:none}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_tabs_vertically_stacked .et_pb_tabs_controls li{width:100%}.et-db #et-boc .et-l .et_pb_tabs_controls{list-style:none!important;padding:0!important;line-height:inherit!important}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_tabs_controls{border-bottom:none;height:auto!important}.et-db #et-boc .et-l .et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9;display:block}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_tabs_controls{border-bottom:none}.et-db #et-boc .et-l .et_pb_tabs_controls li{float:none;border-right:none;border-bottom:1px solid #d9d9d9}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/team_member.css b/includes/builder/feature/dynamic-assets/assets/css/team_member.css
new file mode 100644
index 0000000..51634f0
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/team_member.css
@@ -0,0 +1 @@
+.et_pb_member_social_links a:hover{color:#2ea3f2}.et_pb_team_member{word-wrap:break-word}.et_pb_with_border .et_pb_team_member_image{border:0 solid #333}.et_pb_team_member_image{float:left;max-width:320px;margin-right:30px;display:table-cell;line-height:0!important;position:relative}.et_pb_column .et_pb_team_member_image.et-svg{width:320px;max-width:100%}.et_pb_team_member_description{display:table-cell;vertical-align:top;position:relative}.et_pb_team_member_no_image .et_pb_team_member_description{display:block!important}.et_pb_member_position{color:#aaa;padding-bottom:7px}.et_pb_column_1_2 .et_pb_team_member_image,.et_pb_column_1_3 .et_pb_team_member_image,.et_pb_column_1_4 .et_pb_team_member_image,.et_pb_column_1_5 .et_pb_team_member_image,.et_pb_column_1_6 .et_pb_team_member_image,.et_pb_column_2_5 .et_pb_team_member_image,.et_pb_column_3_5 .et_pb_team_member_image,.et_pb_column_3_8 .et_pb_team_member_image{float:none;display:block;width:auto;margin:0 0 12px;text-align:center}.et_pb_column_1_2 .et_pb_team_member_description,.et_pb_column_1_3 .et_pb_team_member_description,.et_pb_column_1_4 .et_pb_team_member_description,.et_pb_column_1_5 .et_pb_team_member_description,.et_pb_column_1_6 .et_pb_team_member_description,.et_pb_column_2_5 .et_pb_team_member_description,.et_pb_column_3_4 .et_pb_team_member_description,.et_pb_column_3_5 .et_pb_team_member_description,.et_pb_column_3_8 .et_pb_team_member_description{display:block}.entry-content .et_pb_member_social_links{list-style-type:none!important;margin-top:20px;padding:0}.et_pb_member_social_links li{display:inline-block;margin-right:15px}.et_pb_member_social_links a{display:inline-block;font-size:16px;position:relative;text-align:center;transition:color .3s ease 0s;color:#b2b2b2;text-decoration:none}.et_pb_facebook_icon:before{content:"\E093"}.et_pb_twitter_icon:before{content:"\E094"}.et_pb_google_icon:before{content:"\E096"}.et_pb_linkedin_icon:before{content:"\E09D"}.et_pb_member_social_links span{display:none}@media (min-width:768px) and (max-width:980px){.et_pb_column .et_pb_team_member_image{float:left;width:auto;margin:0 30px 12px 0;text-align:left}.et_pb_row_4col .et_pb_column.et_pb_column_1_4 .et_pb_team_member_image{float:none;width:auto;max-width:none;margin:0 0 12px;text-align:center}.et_pb_column .et_pb_team_member_description{display:table-cell}}@media (min-width:768px) and (max-width:980px){.et_pb_row_4col .et_pb_column.et_pb_column_1_4 .et_pb_team_member_image{float:none;width:auto;max-width:none;margin:0 0 12px;text-align:center}.et_pb_column .et_pb_team_member_description{display:table-cell}}@media (max-width:767px){.et_pb_team_member_image{float:none;width:auto;margin:0 0 12px;display:block;text-align:center}.et_pb_team_member_description{display:block}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/team_member_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/team_member_cpt.css
new file mode 100644
index 0000000..253b170
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/team_member_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_member_social_links a:hover{color:#2ea3f2}.et-db #et-boc .et-l .et_pb_team_member{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_with_border .et_pb_team_member_image{border:0 solid #333}.et-db #et-boc .et-l .et_pb_team_member_image{float:left;max-width:320px;margin-right:30px;display:table-cell;line-height:0!important;position:relative}.et-db #et-boc .et-l .et_pb_column .et_pb_team_member_image.et-svg{width:320px;max-width:100%}.et-db #et-boc .et-l .et_pb_team_member_description{display:table-cell;vertical-align:top;position:relative}.et-db #et-boc .et-l .et_pb_team_member_no_image .et_pb_team_member_description{display:block!important}.et-db #et-boc .et-l .et_pb_member_position{color:#aaa;padding-bottom:7px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_team_member_image,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_team_member_image{float:none;display:block;width:auto;margin:0 0 12px;text-align:center}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_team_member_description,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_team_member_description{display:block}.et-db #et-boc .et-l .entry-content .et_pb_member_social_links{list-style-type:none!important;margin-top:20px;padding:0}.et-db #et-boc .et-l .et_pb_member_social_links li{display:inline-block;margin-right:15px}.et-db #et-boc .et-l .et_pb_member_social_links a{display:inline-block;font-size:16px;position:relative;text-align:center;transition:color .3s ease 0s;color:#b2b2b2;text-decoration:none}.et-db #et-boc .et-l .et_pb_facebook_icon:before{content:"\E093"}.et-db #et-boc .et-l .et_pb_twitter_icon:before{content:"\E094"}.et-db #et-boc .et-l .et_pb_google_icon:before{content:"\E096"}.et-db #et-boc .et-l .et_pb_linkedin_icon:before{content:"\E09D"}.et-db #et-boc .et-l .et_pb_member_social_links span{display:none}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_column .et_pb_team_member_image{float:left;width:auto;margin:0 30px 12px 0;text-align:left}.et-db #et-boc .et-l .et_pb_row_4col .et_pb_column.et_pb_column_1_4 .et_pb_team_member_image{float:none;width:auto;max-width:none;margin:0 0 12px;text-align:center}.et-db #et-boc .et-l .et_pb_column .et_pb_team_member_description{display:table-cell}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_row_4col .et_pb_column.et_pb_column_1_4 .et_pb_team_member_image{float:none;width:auto;max-width:none;margin:0 0 12px;text-align:center}.et-db #et-boc .et-l .et_pb_column .et_pb_team_member_description{display:table-cell}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_team_member_image{float:none;width:auto;margin:0 0 12px;display:block;text-align:center}.et-db #et-boc .et-l .et_pb_team_member_description{display:block}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/testimonial.css b/includes/builder/feature/dynamic-assets/assets/css/testimonial.css
new file mode 100644
index 0000000..6b40f4a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/testimonial.css
@@ -0,0 +1 @@
+.et_pb_testimonial_description_inner{word-wrap:break-word}.et_pb_with_border .et_pb_testimonial_portrait{border:0 solid #333}.et_pb_testimonial{position:relative;padding:30px;line-height:1.5}.et_pb_testimonial.et_pb_testimonial_no_bg{padding:30px 0 0}.et_pb_testimonial .et_pb_testimonial_content p{padding-bottom:1em}.et_pb_testimonial .et_pb_testimonial_meta{padding-bottom:0}.et_pb_testimonial_portrait,.et_pb_testimonial_portrait:before{border-radius:90px}.et_pb_testimonial_portrait{float:left;position:relative;display:block;width:90px;height:90px;margin-right:30px;background-repeat:no-repeat;background-position:50%;background-size:cover;box-sizing:content-box}.et_pb_testimonial_portrait:before{content:"";height:100%;left:0;position:absolute;top:0;width:100%;box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.et_pb_column_1_3 .et_pb_testimonial_portrait,.et_pb_column_1_4 .et_pb_testimonial_portrait,.et_pb_column_1_5 .et_pb_testimonial_portrait,.et_pb_column_1_6 .et_pb_testimonial_portrait,.et_pb_column_2_5 .et_pb_testimonial_portrait,.et_pb_column_3_8 .et_pb_testimonial_portrait{float:none;display:block;margin:0 auto 20px}.et_pb_testimonial_description,.et_pb_testimonial_description_inner{display:block;position:relative}.et_pb_bg_layout_dark .et_pb_testimonial_description a{color:#fff}.et_pb_testimonial_description_inner+.et_pb_testimonial_meta>span{display:inline-block;margin-top:32px}.et_pb_testimonial_description_inner:empty{display:none}.et_pb_testimonial_description_inner:empty+.et_pb_testimonial_author,.et_pb_testimonial_description_inner:empty+.et_pb_testimonial_meta>span{margin-top:12px}.et_pb_testimonial_author{margin-top:32px;font-weight:700;display:block}.et_pb_testimonial_author:empty{display:none}.et_pb_testimonial_author a{color:inherit}.et_pb_testimonial_company:empty,.et_pb_testimonial_meta:empty,.et_pb_testimonial_position:empty{display:none!important}.et_pb_testimonial:before{content:"|";font-size:32px;left:50%;position:absolute;top:-16px;background:#f5f5f5;margin-left:-16px;border-radius:31px;z-index:2}.et_pb_testimonial.et_pb_testimonial_no_bg:before{background:inherit}.et_pb_testimonial.et_pb_icon_off:before{display:none}.et_pb_testimonial_old_layout,.et_pb_testimonial_old_layout .et_pb_testimonial_description a{color:#666!important}@media (min-width:981px){.et_pb_column_1_5 .et_pb_testimonial_portrait,.et_pb_column_1_6 .et_pb_testimonial_portrait,.et_pb_column_2_5 .et_pb_testimonial_portrait{width:100%;padding-bottom:100%;height:0}}@media (max-width:980px){.et_pb_bg_layout_dark_tablet .et_pb_testimonial_description a{color:#fff}}@media (min-width:768px) and (max-width:980px){.et_pb_column .et_pb_testimonial_portrait{float:left;display:block;margin-right:30px}.et_pb_column .et_pb_testimonial_description{display:block}.et_pb_column_1_5 .et_pb_testimonial_portrait,.et_pb_column_1_6 .et_pb_testimonial_portrait,.et_pb_row_1-2_1-4_1-4 .et_pb_testimonial_portrait,.et_pb_row_1-4_1-4 .et_pb_testimonial_portrait,.et_pb_row_1-4_1-4_1-2 .et_pb_testimonial_portrait,.et_pb_row_4col .et_pb_testimonial_portrait{float:none;display:block;margin:0 auto 20px}}@media (max-width:767px){.et_pb_column .et_pb_testimonial_description{width:100%;display:block}.et_pb_column .et_pb_testimonial_portrait{display:block;float:none;margin:0 auto 20px}.et_pb_bg_layout_dark_phone .et_pb_testimonial_description a{color:#fff}}@media (max-width:479px){.et_pb_testimonial{padding-top:10%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/testimonial_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/testimonial_cpt.css
new file mode 100644
index 0000000..4a2896c
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/testimonial_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_testimonial_description_inner{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_with_border .et_pb_testimonial_portrait{border:0 solid #333}.et-db #et-boc .et-l .et_pb_testimonial{position:relative;padding:30px;line-height:1.5}.et-db #et-boc .et-l .et_pb_testimonial.et_pb_testimonial_no_bg{padding:30px 0 0}.et-db #et-boc .et-l .et_pb_testimonial .et_pb_testimonial_content p{padding-bottom:1em}.et-db #et-boc .et-l .et_pb_testimonial .et_pb_testimonial_meta{padding-bottom:0}.et-db #et-boc .et-l .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_testimonial_portrait:before{border-radius:90px}.et-db #et-boc .et-l .et_pb_testimonial_portrait{float:left;position:relative;display:block;width:90px;height:90px;margin-right:30px;background-repeat:no-repeat;background-position:50%;background-size:cover;box-sizing:content-box}.et-db #et-boc .et-l .et_pb_testimonial_portrait:before{content:"";height:100%;left:0;position:absolute;top:0;width:100%;box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_testimonial_portrait{float:none;display:block;margin:0 auto 20px}.et-db #et-boc .et-l .et_pb_testimonial_description,.et-db #et-boc .et-l .et_pb_testimonial_description_inner{display:block;position:relative}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_testimonial_description a{color:#fff}.et-db #et-boc .et-l .et_pb_testimonial_description_inner+.et_pb_testimonial_meta>span{display:inline-block;margin-top:32px}.et-db #et-boc .et-l .et_pb_testimonial_description_inner:empty{display:none}.et-db #et-boc .et-l .et_pb_testimonial_description_inner:empty+.et_pb_testimonial_author,.et-db #et-boc .et-l .et_pb_testimonial_description_inner:empty+.et_pb_testimonial_meta>span{margin-top:12px}.et-db #et-boc .et-l .et_pb_testimonial_author{margin-top:32px;font-weight:700;display:block}.et-db #et-boc .et-l .et_pb_testimonial_author:empty{display:none}.et-db #et-boc .et-l .et_pb_testimonial_author a{color:inherit}.et-db #et-boc .et-l .et_pb_testimonial_company:empty,.et-db #et-boc .et-l .et_pb_testimonial_meta:empty,.et-db #et-boc .et-l .et_pb_testimonial_position:empty{display:none!important}.et-db #et-boc .et-l .et_pb_testimonial:before{content:"|";font-size:32px;left:50%;position:absolute;top:-16px;background:#f5f5f5;margin-left:-16px;border-radius:31px;z-index:2}.et-db #et-boc .et-l .et_pb_testimonial.et_pb_testimonial_no_bg:before{background:inherit}.et-db #et-boc .et-l .et_pb_testimonial.et_pb_icon_off:before{display:none}.et-db #et-boc .et-l .et_pb_testimonial_old_layout,.et-db #et-boc .et-l .et_pb_testimonial_old_layout .et_pb_testimonial_description a{color:#666!important}@media (min-width:981px){.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_testimonial_portrait{width:100%;padding-bottom:100%;height:0}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_dark_tablet .et_pb_testimonial_description a{color:#fff}}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_column .et_pb_testimonial_portrait{float:left;display:block;margin-right:30px}.et-db #et-boc .et-l .et_pb_column .et_pb_testimonial_description{display:block}.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_row_1-2_1-4_1-4 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_row_1-4_1-4 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_row_1-4_1-4_1-2 .et_pb_testimonial_portrait,.et-db #et-boc .et-l .et_pb_row_4col .et_pb_testimonial_portrait{float:none;display:block;margin:0 auto 20px}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_column .et_pb_testimonial_description{width:100%;display:block}.et-db #et-boc .et-l .et_pb_column .et_pb_testimonial_portrait{display:block;float:none;margin:0 auto 20px}.et-db #et-boc .et-l .et_pb_bg_layout_dark_phone .et_pb_testimonial_description a{color:#fff}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_testimonial{padding-top:10%}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/text.css b/includes/builder/feature/dynamic-assets/assets/css/text.css
new file mode 100644
index 0000000..cb0ea30
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/text.css
@@ -0,0 +1 @@
+.et_pb_text{word-wrap:break-word}.et_pb_text ol,.et_pb_text ul{padding-bottom:1em}.et_pb_text>:last-child{padding-bottom:0}.et_pb_text_inner{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/text_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/text_cpt.css
new file mode 100644
index 0000000..15fa47b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/text_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_text{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_text ol,.et-db #et-boc .et-l .et_pb_text ul{padding-bottom:1em}.et-db #et-boc .et-l .et_pb_text>:last-child{padding-bottom:0}.et-db #et-boc .et-l .et_pb_text_inner{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/toggle.css b/includes/builder/feature/dynamic-assets/assets/css/toggle.css
new file mode 100644
index 0000000..ebbb2bc
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/toggle.css
@@ -0,0 +1 @@
+.et_pb_toggle_content,.et_pb_toggle_title{word-wrap:break-word}.et_pb_toggle{border:1px solid #d9d9d9}.et_pb_toggle_close{background-color:#f4f4f4;padding:20px}.et_pb_toggle_close .et_pb_toggle_content{display:none}.et_pb_toggle_open{padding:20px;background-color:#fff;z-index:1}.et_pb_toggle.et_pb_text_align_left .et_pb_toggle_title,.et_pb_toggle.et_pb_text_align_left h5.et_pb_toggle_title,.et_pb_toggle .et_pb_toggle_title,.et_pb_toggle h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}.et_pb_toggle_close .et_pb_toggle_title,.et_pb_toggle_close h5.et_pb_toggle_title{color:#666}.et_pb_toggle_open .et_pb_toggle_title,.et_pb_toggle_open h5.et_pb_toggle_title{color:#333}.et_pb_toggle_title:before{content:"\E050";position:absolute;right:0;font-size:16px;color:#ccc;top:50%;margin-top:-.5em}.et_pb_toggle .et_pb_toggle_title:before{right:0;left:auto}.et_pb_toggle_open .et_pb_toggle_title:before{content:"\E04F"}.et_pb_toggle_content{padding-top:20px;position:relative}.et_pb_toggle_content:empty{display:none!important}.et_pb_toggle_content p:last-of-type{padding-bottom:0}@media (max-width:980px){.et_pb_toggle.et_pb_text_align_left-tablet .et_pb_toggle_title,.et_pb_toggle.et_pb_text_align_left-tablet h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}@media (max-width:767px){.et_pb_toggle.et_pb_text_align_left-phone .et_pb_toggle_title,.et_pb_toggle.et_pb_text_align_left-phone h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/toggle_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/toggle_cpt.css
new file mode 100644
index 0000000..daf005f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/toggle_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_toggle_content,.et-db #et-boc .et-l .et_pb_toggle_title{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_toggle{border:1px solid #d9d9d9}.et-db #et-boc .et-l .et_pb_toggle_close{background-color:#f4f4f4;padding:20px}.et-db #et-boc .et-l .et_pb_toggle_close .et_pb_toggle_content{display:none}.et-db #et-boc .et-l .et_pb_toggle_open{padding:20px;background-color:#fff;z-index:1}.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left h5.et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}.et-db #et-boc .et-l .et_pb_toggle_close .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle_close h5.et_pb_toggle_title{color:#666}.et-db #et-boc .et-l .et_pb_toggle_open .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle_open h5.et_pb_toggle_title{color:#333}.et-db #et-boc .et-l .et_pb_toggle_title:before{content:"\E050";position:absolute;right:0;font-size:16px;color:#ccc;top:50%;margin-top:-.5em}.et-db #et-boc .et-l .et_pb_toggle .et_pb_toggle_title:before{right:0;left:auto}.et-db #et-boc .et-l .et_pb_toggle_open .et_pb_toggle_title:before{content:"\E04F"}.et-db #et-boc .et-l .et_pb_toggle_content{padding-top:20px;position:relative}.et-db #et-boc .et-l .et_pb_toggle_content:empty{display:none!important}.et-db #et-boc .et-l .et_pb_toggle_content p:last-of-type{padding-bottom:0}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left-tablet .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left-tablet h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left-phone .et_pb_toggle_title,.et-db #et-boc .et-l .et_pb_toggle.et_pb_text_align_left-phone h5.et_pb_toggle_title{cursor:pointer;position:relative;padding:0 50px 0 0}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video.css b/includes/builder/feature/dynamic-assets/assets/css/video.css
new file mode 100644
index 0000000..53524a3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video.css
@@ -0,0 +1 @@
+.et_pb_video{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/video_cpt.css
new file mode 100644
index 0000000..15fbcf2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_video{position:relative}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video_player.css b/includes/builder/feature/dynamic-assets/assets/css/video_player.css
new file mode 100644
index 0000000..82918ef
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video_player.css
@@ -0,0 +1 @@
+.et_pb_video_box{display:block;position:relative;z-index:1;line-height:0}.et_pb_video_box video{width:100%!important;height:auto!important}.et_pb_video_overlay{position:absolute;z-index:10;top:0;left:0;height:100%;width:100%;background-size:cover;background-repeat:no-repeat;background-position:50%;cursor:pointer}.et_pb_video_play:before{font-family:ETmodules;content:"I"}.et_pb_video_play{display:block;position:absolute;z-index:100;color:#fff;left:50%;top:50%}.et_pb_column_1_2 .et_pb_video_play,.et_pb_column_2_3 .et_pb_video_play,.et_pb_column_3_4 .et_pb_video_play,.et_pb_column_3_5 .et_pb_video_play,.et_pb_column_4_4 .et_pb_video_play{font-size:6rem;line-height:6rem;margin-left:-3rem;margin-top:-3rem}.et_pb_column_1_3 .et_pb_video_play,.et_pb_column_1_4 .et_pb_video_play,.et_pb_column_1_5 .et_pb_video_play,.et_pb_column_1_6 .et_pb_video_play,.et_pb_column_2_5 .et_pb_video_play,.et_pb_column_3_8 .et_pb_video_play{font-size:3rem;line-height:3rem;margin-left:-1.5rem;margin-top:-1.5rem}.et_pb_bg_layout_light .et_pb_video_play{color:#333}.et_pb_video_overlay_hover{background:transparent;width:100%;height:100%;position:absolute;z-index:100;transition:all .5s ease-in-out}.et_pb_video .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}@media (min-width:768px) and (max-width:980px){.et_pb_column_1_3 .et_pb_video_play,.et_pb_column_1_4 .et_pb_video_play,.et_pb_column_1_5 .et_pb_video_play,.et_pb_column_1_6 .et_pb_video_play,.et_pb_column_2_5 .et_pb_video_play,.et_pb_column_3_8 .et_pb_video_play{font-size:6rem;line-height:6rem;margin-left:-3rem;margin-top:-3rem}}@media (max-width:980px){.et_pb_bg_layout_light_tablet .et_pb_video_play{color:#333}}@media (max-width:768px){.et_pb_column_1_2 .et_pb_video_play,.et_pb_column_2_3 .et_pb_video_play,.et_pb_column_3_4 .et_pb_video_play,.et_pb_column_3_5 .et_pb_video_play,.et_pb_column_4_4 .et_pb_video_play{font-size:3rem;line-height:3rem;margin-left:-1.5rem;margin-top:-1.5rem}}@media (max-width:767px){.et_pb_bg_layout_light_phone .et_pb_video_play{color:#333}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video_player_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/video_player_cpt.css
new file mode 100644
index 0000000..371909f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video_player_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_video_box{display:block;position:relative;z-index:1;line-height:0}.et-db #et-boc .et-l .et_pb_video_box video{width:100%!important;height:auto!important}.et-db #et-boc .et-l .et_pb_video_overlay{position:absolute;z-index:10;top:0;left:0;height:100%;width:100%;background-size:cover;background-repeat:no-repeat;background-position:50%;cursor:pointer}.et-db #et-boc .et-l .et_pb_video_play:before{font-family:ETmodules;content:"I"}.et-db #et-boc .et-l .et_pb_video_play{display:block;position:absolute;z-index:100;color:#fff;left:50%;top:50%}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_video_play{font-size:6rem;line-height:6rem;margin-left:-3rem;margin-top:-3rem}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_video_play{font-size:3rem;line-height:3rem;margin-left:-1.5rem;margin-top:-1.5rem}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_video_play{color:#333}.et-db #et-boc .et-l .et_pb_video_overlay_hover{background:transparent;width:100%;height:100%;position:absolute;z-index:100;transition:all .5s ease-in-out}.et-db #et-boc .et-l .et_pb_video .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}@media (min-width:768px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_video_play{font-size:6rem;line-height:6rem;margin-left:-3rem;margin-top:-3rem}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_bg_layout_light_tablet .et_pb_video_play{color:#333}}@media (max-width:768px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_video_play{font-size:3rem;line-height:3rem;margin-left:-1.5rem;margin-top:-1.5rem}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_bg_layout_light_phone .et_pb_video_play{color:#333}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video_slider.css b/includes/builder/feature/dynamic-assets/assets/css/video_slider.css
new file mode 100644
index 0000000..70fb781
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video_slider.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_video_slider .et_pb_carousel_item,.et_pb_with_border.et_pb_video_slider .et_pb_slider{border:0 solid #333}.et_pb_video_slider{position:relative}.et_pb_video_slider .et_pb_slider:hover .et_pb_video_overlay_hover{background:rgba(0,0,0,.6)}.et_pb_video_slider .et_pb_slider_dots.et_pb_controls_light~.et-pb-controllers .et-pb-active-control{background-color:#fff}.et_pb_video_slider .et_pb_slider_dots.et_pb_controls_dark~.et-pb-controllers a{background-color:#333}.et_pb_video_slider .et_pb_controls_dark .et-pb-slider-arrows{color:#333}.et_pb_video_slider .et-pb-controllers-has-video-tag.et-pb-controllers{bottom:35px}.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel,.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel .et_pb_carousel_items{overflow:visible}.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .item-fade-out{box-shadow:none!important;background:transparent!important;animation-name:et_pb_video_slider_item_fade_out;animation-duration:.2s;opacity:0}.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .item-fade-out .et_pb_video_overlay{animation-name:et_pb_video_slider_item_overlay_fade_out;animation-duration:.2s}.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group.next .et_pb_carousel_item,.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group.prev .et_pb_carousel_item{opacity:0}.et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .et_pb_carousel_item.item-fade-in{animation-name:et_pb_video_slider_item_fade_in;animation-duration:.4s;opacity:1;display:block}.et-pb-is-sliding-carousel{overflow-x:hidden}.et_pb_carousel{margin-top:2%;position:relative;overflow:hidden}.et_pb_carousel:hover .et-pb-arrow-prev{left:10px;opacity:1}.et_pb_carousel:hover .et-pb-arrow-next{right:10px;opacity:1}.et_pb_slider_carousel{margin-bottom:0!important}.et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et-pb-arrow-next,.et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et-pb-arrow-prev,.et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et_pb_video_play{color:#fff}.et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et-pb-arrow-next,.et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et-pb-arrow-prev,.et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et_pb_video_play,.et_pb_slider_carousel.et_pb_controls_dark .et-pb-arrow-next,.et_pb_slider_carousel.et_pb_controls_dark .et-pb-arrow-prev{color:#333}.et_pb_carousel_items{width:100%;height:auto;position:relative;overflow:hidden}.et_pb_carousel_items .et-carousel-group{display:none;float:left;width:100%;position:relative}.et_pb_carousel_items .et-carousel-group.active{display:block}.et_pb_carousel_items .et-carousel-group.active .et_pb_carousel_item:last-child{margin-right:0}.et_pb_carousel_item{display:none;position:relative;background:rgba(0,0,0,.25);float:left;margin:0 2% 0 0;padding:0}.et_pb_carousel_items.columns-6 .et_pb_carousel_item{width:15%}.et_pb_carousel_items.columns-5 .et_pb_carousel_item{width:18.4%}.et_pb_carousel_items.columns-4 .et_pb_carousel_item{width:23.5%}.et_pb_carousel_items.columns-3 .et_pb_carousel_item{width:32%}.et_pb_carousel_items.columns-2 .et_pb_carousel_item{width:49%}.et_pb_carousel_items.columns-1 .et_pb_carousel_item{width:100%}.et_pb_carousel_item:after{padding-top:75%;display:block;content:""}.et_pb_carousel_item .et_pb_video_overlay{position:absolute;top:0;bottom:0;right:0;left:0}.et_pb_carousel_item.et-pb-active-control .et_pb_video_overlay_hover{background:rgba(0,0,0,.6)}.et_pb_carousel_item .et_pb_video_play{opacity:0;transition:all .5s ease-in-out}.et_pb_carousel_item .et_pb_video_overlay:hover .et_pb_video_play{opacity:1}.et_pb_carousel_item .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}@keyframes et_pb_video_slider_item_fade_out{0%{opacity:1}to{opacity:0}}@keyframes et_pb_video_slider_item_overlay_fade_out{0%{transform:scale(1)}to{transform:scale(.8)}}@keyframes et_pb_video_slider_item_fade_in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.et_pb_column_1_4 .et_pb_slider_carousel .et_pb_slide,.et_pb_column_1_5 .et_pb_slider_carousel .et_pb_slide,.et_pb_column_1_6 .et_pb_slider_carousel .et_pb_slide{min-height:0!important}.et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_4 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_4_4 .et_pb_carousel_item .et_pb_video_play{font-size:2.78rem;line-height:2.78rem;margin-left:-1.39rem;margin-top:-1.39rem}.et_pb_column_1_3 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_2_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_8 .et_pb_carousel_item .et_pb_video_play{font-size:2rem;line-height:2rem;margin-left:-1rem;margin-top:-1rem}.et_pb_column_1_4 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_6 .et_pb_carousel_item .et_pb_video_play{font-size:1.5rem;line-height:1.5rem;margin-left:-.75rem;margin-top:-.75rem}.et_pb_video_slider .et_pb_slide{padding:0}@media (max-width:767px){.et_pb_slider_carousel:hover .et-pb-arrow-next,.et_pb_slider_carousel:hover .et-pb-arrow-prev{opacity:0!important}.et_pb_carousel .et-pb-arrow-prev,.et_pb_carousel:hover .et-pb-arrow-prev{left:-8px;opacity:1}.et_pb_carousel .et-pb-arrow-next,.et_pb_carousel:hover .et-pb-arrow-next{right:-8px;opacity:1}.et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_4 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_1_6 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_4 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et_pb_column_4_4 .et_pb_carousel_item .et_pb_video_play{font-size:2rem;line-height:2rem;margin-left:-1rem;margin-top:-1rem}}.et_mobile_device .et_pb_slider_carousel .et-pb-arrow-next,.et_mobile_device .et_pb_slider_carousel .et-pb-arrow-prev{opacity:0!important}.et_mobile_device .et_pb_carousel .et-pb-arrow-prev{left:-10px;opacity:1}.et_mobile_device .et_pb_carousel .et-pb-arrow-next{right:-10px;opacity:1}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/video_slider_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/video_slider_cpt.css
new file mode 100644
index 0000000..f0715fd
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/video_slider_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_video_slider .et_pb_carousel_item,.et-db #et-boc .et-l .et_pb_with_border.et_pb_video_slider .et_pb_slider{border:0 solid #333}.et-db #et-boc .et-l .et_pb_video_slider{position:relative}.et-db #et-boc .et-l .et_pb_video_slider .et_pb_slider:hover .et_pb_video_overlay_hover{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_video_slider .et_pb_slider_dots.et_pb_controls_light~.et-pb-controllers .et-pb-active-control{background-color:#fff}.et-db #et-boc .et-l .et_pb_video_slider .et_pb_slider_dots.et_pb_controls_dark~.et-pb-controllers a{background-color:#333}.et-db #et-boc .et-l .et_pb_video_slider .et_pb_controls_dark .et-pb-slider-arrows{color:#333}.et-db #et-boc .et-l .et_pb_video_slider .et-pb-controllers-has-video-tag.et-pb-controllers{bottom:35px}.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel,.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel .et_pb_carousel_items{overflow:visible}.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .item-fade-out{box-shadow:none!important;background:transparent!important;animation-name:et_pb_video_slider_item_fade_out;animation-duration:.2s;opacity:0}.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .item-fade-out .et_pb_video_overlay{animation-name:et_pb_video_slider_item_overlay_fade_out;animation-duration:.2s}.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group.next .et_pb_carousel_item,.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group.prev .et_pb_carousel_item{opacity:0}.et-db #et-boc .et-l .et_pb_video_slider.et_pb_has_box_shadow .et_pb_carousel_items .et-carousel-group .et_pb_carousel_item.item-fade-in{animation-name:et_pb_video_slider_item_fade_in;animation-duration:.4s;opacity:1;display:block}.et-db #et-boc .et-l .et-pb-is-sliding-carousel{overflow-x:hidden}.et-db #et-boc .et-l .et_pb_carousel{margin-top:2%;position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_carousel:hover .et-pb-arrow-prev{left:10px;opacity:1}.et-db #et-boc .et-l .et_pb_carousel:hover .et-pb-arrow-next{right:10px;opacity:1}.et-db #et-boc .et-l .et_pb_slider_carousel{margin-bottom:0!important}.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_light+.et_pb_carousel .et_pb_video_play{color:#fff}.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_dark+.et_pb_carousel .et_pb_video_play,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_dark .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_slider_carousel.et_pb_controls_dark .et-pb-arrow-prev{color:#333}.et-db #et-boc .et-l .et_pb_carousel_items{width:100%;height:auto;position:relative;overflow:hidden}.et-db #et-boc .et-l .et_pb_carousel_items .et-carousel-group{display:none;float:left;width:100%;position:relative}.et-db #et-boc .et-l .et_pb_carousel_items .et-carousel-group.active{display:block}.et-db #et-boc .et-l .et_pb_carousel_items .et-carousel-group.active .et_pb_carousel_item:last-child{margin-right:0}.et-db #et-boc .et-l .et_pb_carousel_item{display:none;position:relative;background:rgba(0,0,0,.25);float:left;margin:0 2% 0 0;padding:0}.et-db #et-boc .et-l .et_pb_carousel_items.columns-6 .et_pb_carousel_item{width:15%}.et-db #et-boc .et-l .et_pb_carousel_items.columns-5 .et_pb_carousel_item{width:18.4%}.et-db #et-boc .et-l .et_pb_carousel_items.columns-4 .et_pb_carousel_item{width:23.5%}.et-db #et-boc .et-l .et_pb_carousel_items.columns-3 .et_pb_carousel_item{width:32%}.et-db #et-boc .et-l .et_pb_carousel_items.columns-2 .et_pb_carousel_item{width:49%}.et-db #et-boc .et-l .et_pb_carousel_items.columns-1 .et_pb_carousel_item{width:100%}.et-db #et-boc .et-l .et_pb_carousel_item:after{padding-top:75%;display:block;content:""}.et-db #et-boc .et-l .et_pb_carousel_item .et_pb_video_overlay{position:absolute;top:0;bottom:0;right:0;left:0}.et-db #et-boc .et-l .et_pb_carousel_item.et-pb-active-control .et_pb_video_overlay_hover{background:rgba(0,0,0,.6)}.et-db #et-boc .et-l .et_pb_carousel_item .et_pb_video_play{opacity:0;transition:all .5s ease-in-out}.et-db #et-boc .et-l .et_pb_carousel_item .et_pb_video_overlay:hover .et_pb_video_play{opacity:1}.et-db #et-boc .et-l .et_pb_carousel_item .et_pb_video_overlay_hover:hover{background:rgba(0,0,0,.6)}@keyframes et_pb_video_slider_item_fade_out{0%{opacity:1}to{opacity:0}}@keyframes et_pb_video_slider_item_overlay_fade_out{0%{transform:scale(1)}to{transform:scale(.8)}}@keyframes et_pb_video_slider_item_fade_in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_slider_carousel .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_slider_carousel .et_pb_slide,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_slider_carousel .et_pb_slide{min-height:0!important}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_carousel_item .et_pb_video_play{font-size:2.78rem;line-height:2.78rem;margin-left:-1.39rem;margin-top:-1.39rem}.et-db #et-boc .et-l .et_pb_column_1_3 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_8 .et_pb_carousel_item .et_pb_video_play{font-size:2rem;line-height:2rem;margin-left:-1rem;margin-top:-1rem}.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_carousel_item .et_pb_video_play{font-size:1.5rem;line-height:1.5rem;margin-left:-.75rem;margin-top:-.75rem}.et-db #et-boc .et-l .et_pb_video_slider .et_pb_slide{padding:0}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_slider_carousel:hover .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_slider_carousel:hover .et-pb-arrow-prev{opacity:0!important}.et-db #et-boc .et-l .et_pb_carousel .et-pb-arrow-prev,.et-db #et-boc .et-l .et_pb_carousel:hover .et-pb-arrow-prev{left:-8px;opacity:1}.et-db #et-boc .et-l .et_pb_carousel .et-pb-arrow-next,.et-db #et-boc .et-l .et_pb_carousel:hover .et-pb-arrow-next{right:-8px;opacity:1}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_4 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_1_6 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_2_3 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_4 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_3_5 .et_pb_carousel_item .et_pb_video_play,.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_carousel_item .et_pb_video_play{font-size:2rem;line-height:2rem;margin-left:-1rem;margin-top:-1rem}}.et_mobile_device .et_pb_slider_carousel .et-pb-arrow-next,.et_mobile_device .et_pb_slider_carousel .et-pb-arrow-prev{opacity:0!important}.et_mobile_device .et_pb_carousel .et-pb-arrow-prev{left:-10px;opacity:1}.et_mobile_device .et_pb_carousel .et-pb-arrow-next{right:-10px;opacity:1}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/widgets_shared.css b/includes/builder/feature/dynamic-assets/assets/css/widgets_shared.css
new file mode 100644
index 0000000..e4e2b91
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/widgets_shared.css
@@ -0,0 +1 @@
+.et_pb_widget{float:left;max-width:100%;word-wrap:break-word}.et_pb_widget a{text-decoration:none;color:#666}.et_pb_widget li a:hover{color:#82c0c7}.et_pb_widget ol li,.et_pb_widget ul li{margin-bottom:.5em}.et_pb_widget ol li ol li,.et_pb_widget ul li ul li{margin-left:15px}.et_pb_widget select{width:100%;height:28px;padding:0 5px}.et_pb_widget_area .et_pb_widget a{color:inherit}.et_pb_bg_layout_light .et_pb_widget li a{color:#666}.et_pb_bg_layout_dark .et_pb_widget li a{color:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/widgets_shared_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/widgets_shared_cpt.css
new file mode 100644
index 0000000..ec46698
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/widgets_shared_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_widget{float:left;max-width:100%;word-wrap:break-word}.et-db #et-boc .et-l .et_pb_widget a{text-decoration:none;color:#666}.et-db #et-boc .et-l .et_pb_widget li a:hover{color:#82c0c7}.et-db #et-boc .et-l .et_pb_widget ol li,.et-db #et-boc .et-l .et_pb_widget ul li{margin-bottom:.5em}.et-db #et-boc .et-l .et_pb_widget ol li ol li,.et-db #et-boc .et-l .et_pb_widget ul li ul li{margin-left:15px}.et-db #et-boc .et-l .et_pb_widget select{width:100%;height:28px;padding:0 5px}.et-db #et-boc .et-l .et_pb_widget_area .et_pb_widget a{color:inherit}.et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_widget li a{color:#666}.et-db #et-boc .et-l .et_pb_bg_layout_dark .et_pb_widget li a{color:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart.css b/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart.css
new file mode 100644
index 0000000..231ee8a
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart.css
@@ -0,0 +1 @@
+.et_pb_wc_add_to_cart form.cart .button,.et_pb_wc_add_to_cart form.cart div.quantity{float:none!important;display:inline-block;vertical-align:middle}.et_pb_wc_add_to_cart form.cart{margin-top:0!important;margin-bottom:0!important}.et_pb_wc_add_to_cart form.cart .variations td .label{font-weight:700}.et_pb_wc_add_to_cart form.cart .variations td select{border-style:solid!important;border-width:0;-moz-appearance:none;-webkit-appearance:none;width:100%}.et_pb_wc_add_to_cart form.cart .variations td.value{position:relative}.et_pb_wc_add_to_cart form.cart .variations td.value span:after{border:6px solid;border-color:#666 transparent transparent;content:"";display:block;height:0;margin-top:3px;pointer-events:none;position:absolute;right:10px;transform:translateY(-145%);width:0}.et_pb_wc_add_to_cart form.cart .variations td.value .reset_variations{float:right;margin-top:1em}.et_pb_wc_add_to_cart.et_pb_hide_input_quantity .quantity,.et_pb_wc_add_to_cart.et_pb_hide_input_quantity .woocommerce-grouped-product-list-item__quantity{display:none!important}.et_pb_wc_add_to_cart.et_pb_hide_stock .stock{display:none}.et_pb_wc_add_to_cart .quantity input.qty{border:0 solid #333!important;width:auto;max-width:3.631em}.et_pb_wc_add_to_cart{word-wrap:break-word}.et-dynamic-content-woo--product_additional_information.woocommerce h2{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart_cpt.css
new file mode 100644
index 0000000..fdce711
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_add_to_cart_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .button,.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart div.quantity{float:none!important;display:inline-block;vertical-align:middle}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart{margin-top:0!important;margin-bottom:0!important}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .variations td .label{font-weight:700}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .variations td select{border-style:solid!important;border-width:0;-moz-appearance:none;-webkit-appearance:none;width:100%}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .variations td.value{position:relative}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .variations td.value span:after{border:6px solid;border-color:#666 transparent transparent;content:"";display:block;height:0;margin-top:3px;pointer-events:none;position:absolute;right:10px;transform:translateY(-145%);width:0}.et-db #et-boc .et-l .et_pb_wc_add_to_cart form.cart .variations td.value .reset_variations{float:right;margin-top:1em}.et-db #et-boc .et-l .et_pb_wc_add_to_cart.et_pb_hide_input_quantity .quantity,.et-db #et-boc .et-l .et_pb_wc_add_to_cart.et_pb_hide_input_quantity .woocommerce-grouped-product-list-item__quantity{display:none!important}.et-db #et-boc .et-l .et_pb_wc_add_to_cart.et_pb_hide_stock .stock{display:none}.et-db #et-boc .et-l .et_pb_wc_add_to_cart .quantity input.qty{border:0 solid #333!important;width:auto;max-width:3.631em}.et-db #et-boc .et-l .et_pb_wc_add_to_cart{word-wrap:break-word}.et-db #et-boc .et-l .et-dynamic-content-woo--product_additional_information.woocommerce h2{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info.css b/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info.css
new file mode 100644
index 0000000..5f71b22
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info.css
@@ -0,0 +1 @@
+.et_pb_wc_additional_info.et_pb_hide_title h2{display:none}.et_pb_wc_additional_info{word-wrap:break-word}.et-dynamic-content-woo--product_additional_information.woocommerce h2{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info_cpt.css
new file mode 100644
index 0000000..bca1a32
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_additional_info_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_additional_info.et_pb_hide_title h2{display:none}.et-db #et-boc .et-l .et_pb_wc_additional_info{word-wrap:break-word}.et-db #et-boc .et-l .et-dynamic-content-woo--product_additional_information.woocommerce h2{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb.css b/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb.css
new file mode 100644
index 0000000..79cce7d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb.css
@@ -0,0 +1 @@
+.et_pb_wc_breadcrumb{word-wrap:break-word}.et_pb_with_border .woocommerce-breadcrumb{border:0 solid #333}.et-dynamic-content-woo--product_breadcrumb.woocommerce .woocommerce-breadcrumb{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb_cpt.css
new file mode 100644
index 0000000..db80f17
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_breadcrumb_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_breadcrumb{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_with_border .woocommerce-breadcrumb{border:0 solid #333}.et-db #et-boc .et-l .et-dynamic-content-woo--product_breadcrumb.woocommerce .woocommerce-breadcrumb{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice.css
new file mode 100644
index 0000000..5c66243
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice.css
@@ -0,0 +1 @@
+.et_pb_wc_cart_notice .woocommerce-error{background-color:transparent;margin:0}.et_pb_wc_cart_notice .wc-forward{border-width:0;border-style:solid}.et_pb_wc_cart_notice .woocommerce-message{margin:0;border:0 solid #333!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice_cpt.css
new file mode 100644
index 0000000..fcb5b2e
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_notice_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_cart_notice .woocommerce-error{background-color:transparent;margin:0}.et-db #et-boc .et-l .et_pb_wc_cart_notice .wc-forward{border-width:0;border-style:solid}.et-db #et-boc .et-l .et_pb_wc_cart_notice .woocommerce-message{margin:0;border:0 solid #333!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products.css
new file mode 100644
index 0000000..51ba357
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products.css
@@ -0,0 +1 @@
+.et_pb_wc_cart_products table.cart img,.et_pb_wc_cart_products table.cart tr{border-style:solid}.et_pb_wc_cart_products.et_pb_text_align_center table.shop_table tr td:not(.actions){text-align:center}.et_pb_wc_cart_products.et_pb_text_align_center td.product-name dl.variation dt{float:none}.et_pb_wc_cart_products.et_pb_text_align_right table.shop_table tr td:not(.actions){text-align:right}.et_pb_wc_cart_products.et_pb_text_align_right td.product-name dl.variation dt{float:none}.et_pb_wc_cart_products.et_pb_text_align_justified table.shop_table tr td:not(.actions){text-align:justify}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tr{border-style:inherit}#main-content .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tr{padding-left:0;padding-right:0}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive thead{display:none}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tbody tr:first-child td:first-child{border-top:0}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tbody th{display:none}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr{display:block}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td{display:block;text-align:right!important}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.order-actions{text-align:left!important}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td:before{content:attr(data-title) ": ";font-weight:700;float:left}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.actions:before,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.product-remove:before{display:none}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr:nth-child(2n):not(:last-child) td{background-color:rgba(0,0,0,.025)}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart .product-thumbnail{display:none}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions{text-align:left}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon{float:none;*zoom:1;padding-bottom:.5em}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:after,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:before{content:" ";display:table}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:after{clear:both}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon input{width:calc(50% - 5px);box-sizing:border-box}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button.alt,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text+.button{float:right}@media (max-width:479px){.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button,.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text{width:100%}}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .button{display:block;width:100%}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart .quantity{width:auto;padding:2px}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tbody tr:first-child{padding-bottom:0!important}.et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tbody tr:last-child{padding-top:0!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive thead{display:table-header-group}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tbody tr:first-child td:first-child{border-top:1px solid rgba(0,0,0,.1)!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr{display:table-row}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr td{display:table-cell}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr td:before{content:none!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart td.actions{text-align:right}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon{float:left!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:after,.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:before{content:none!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:after{clear:none}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .input-text{width:150px!important;margin-right:10px!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .button.alt,.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .input-text+.button{width:auto;float:none!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .button{width:auto!important;display:inline-block!important}.et_pb_wc_cart_products.et_pb_row_layout_horizontal td.product-name dl.variation dt{float:none}.et_pb_wc_cart_products table.shop_table td,.et_pb_wc_cart_products table.shop_table th{border-right-width:0;border-bottom-width:0;border-left-width:0;border-color:rgba(0,0,0,.1);border-style:solid}.et_pb_wc_cart_products table.shop_table th{border-top-width:0}.et_pb_wc_cart_products.et_pb_wc_no_coupon_code td.actions .coupon,.et_pb_wc_cart_products.et_pb_wc_no_product_image table.cart .product-thumbnail{display:none}.et_pb_wc_cart_products.et_pb_wc_no_update_cart_button.et_pb_row_layout_horizontal table.cart td.actions button[name=update_cart],.et_pb_wc_cart_products.et_pb_wc_no_update_cart_button.et_pb_row_layout_vertical table.cart td.actions button[name=update_cart],.et_pb_wc_cart_products.et_pb_wc_no_update_cart_button button[name=update_cart]{display:none!important}.et_pb_wc_cart_products.et_pb_wc_no_coupon_code.et_pb_wc_no_update_cart_button table.cart td.actions,.et_pb_wc_cart_products.et_pb_wc_no_remove_item_icon table.cart .product-remove,.et_pb_wc_cart_products.et_pb_wc_no_update_cart_button .qty{display:none}.et_pb_wc_cart_products.et_pb_wc_no_remove_item_icon.et_pb_row_layout_vertical .product-name{border-top:0}.et_pb_wc_cart_products table.cart td.actions .coupon #coupon_code{height:50px}@media (min-width:769px) and (max-width:980px){.et_pb_wc_cart_products table.cart td.actions .coupon{margin-bottom:0!important}}@media (max-width:479px){.et_pb_wc_cart_products table.cart td.actions .coupon .button{width:100%}}.et_pb_wc_cart_products.et_pb_wc_cart_empty{display:none}.et_pb_wc_cart_products table.shop_table{table-layout:auto}.et_pb_column_1_2 .et_pb_wc_cart_products .coupon{margin:4px 0}.et_pb_column_1_2 .et_pb_wc_cart_products .coupon:after{clear:both;content:"";display:table}@media (max-width:479px){.et_pb_column_1_2 .et_pb_wc_cart_products .coupon .input-text{width:100%!important}}.et_pb_column_1_2 .et_pb_wc_cart_products .button[name=update_cart]{margin:4px 0}.woocommerce-page .et_pb_wc_cart_products.et_pb_row_layout_default .quantity input.qty,.woocommerce-page .et_pb_wc_cart_products.et_pb_row_layout_horizontal .quantity input.qty,.woocommerce .et_pb_wc_cart_products.et_pb_row_layout_default .quantity input.qty,.woocommerce .et_pb_wc_cart_products.et_pb_row_layout_horizontal .quantity input.qty{height:50px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products_cpt.css
new file mode 100644
index 0000000..078b74d
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_products_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart img,.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart tr{border-style:solid}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_text_align_center table.shop_table tr td:not(.actions){text-align:center}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_text_align_center td.product-name dl.variation dt{float:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_text_align_right table.shop_table tr td:not(.actions){text-align:right}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_text_align_right td.product-name dl.variation dt{float:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_text_align_justified table.shop_table tr td:not(.actions){text-align:justify}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tr{border-style:inherit}#main-content .et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tr{padding-left:0;padding-right:0}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive thead{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tbody tr:first-child td:first-child{border-top:0}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tbody th{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr{display:block}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td{display:block;text-align:right!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.order-actions{text-align:left!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td:before{content:attr(data-title) ": ";font-weight:700;float:left}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.actions:before,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr td.product-remove:before{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.shop_table_responsive tr:nth-child(2n):not(:last-child) td{background-color:rgba(0,0,0,.025)}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart .product-thumbnail{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions{text-align:left}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon{float:none;*zoom:1;padding-bottom:.5em}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:after,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:before{content:" ";display:table}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon:after{clear:both}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon input{width:calc(50% - 5px);box-sizing:border-box}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button.alt,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text+.button{float:right}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .button,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .coupon .input-text{width:100%}}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart td.actions .button{display:block;width:100%}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart .quantity{width:auto;padding:2px}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tbody tr:first-child{padding-bottom:0!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_vertical table.cart tbody tr:last-child{padding-top:0!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive thead{display:table-header-group}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tbody tr:first-child td:first-child{border-top:1px solid rgba(0,0,0,.1)!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr{display:table-row}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr td{display:table-cell}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.shop_table_responsive tr td:before{content:none!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart td.actions{text-align:right}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon{float:left!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:after,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:before{content:none!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon:after{clear:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .input-text{width:150px!important;margin-right:10px!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .button.alt,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .coupon .input-text+.button{width:auto;float:none!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal table.cart .button{width:auto!important;display:inline-block!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_row_layout_horizontal td.product-name dl.variation dt{float:none}.et-db #et-boc .et-l .et_pb_wc_cart_products table.shop_table td,.et-db #et-boc .et-l .et_pb_wc_cart_products table.shop_table th{border-right-width:0;border-bottom-width:0;border-left-width:0;border-color:rgba(0,0,0,.1);border-style:solid}.et-db #et-boc .et-l .et_pb_wc_cart_products table.shop_table th{border-top-width:0}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_coupon_code td.actions .coupon,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_product_image table.cart .product-thumbnail{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_update_cart_button.et_pb_row_layout_horizontal table.cart td.actions button[name=update_cart],.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_update_cart_button.et_pb_row_layout_vertical table.cart td.actions button[name=update_cart],.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_update_cart_button button[name=update_cart]{display:none!important}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_coupon_code.et_pb_wc_no_update_cart_button table.cart td.actions,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_remove_item_icon table.cart .product-remove,.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_update_cart_button .qty{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_no_remove_item_icon.et_pb_row_layout_vertical .product-name{border-top:0}.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon #coupon_code{height:50px}@media (min-width:769px) and (max-width:980px){.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon{margin-bottom:0!important}}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon .button{width:100%}}.et-db #et-boc .et-l .et_pb_wc_cart_products.et_pb_wc_cart_empty{display:none}.et-db #et-boc .et-l .et_pb_wc_cart_products table.shop_table{table-layout:auto}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_cart_products .coupon{margin:4px 0}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_cart_products .coupon:after{clear:both;content:"";display:table}@media (max-width:479px){.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_cart_products .coupon .input-text{width:100%!important}}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_cart_products .button[name=update_cart]{margin:4px 0}.et-db #et-boc .et-l .woocommerce-page .et_pb_wc_cart_products.et_pb_row_layout_default .quantity input.qty,.et-db #et-boc .et-l .woocommerce-page .et_pb_wc_cart_products.et_pb_row_layout_horizontal .quantity input.qty,.et-db #et-boc .et-l .woocommerce .et_pb_wc_cart_products.et_pb_row_layout_default .quantity input.qty,.et-db #et-boc .et-l .woocommerce .et_pb_wc_cart_products.et_pb_row_layout_horizontal .quantity input.qty{height:50px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals.css
new file mode 100644
index 0000000..fd886bb
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals.css
@@ -0,0 +1 @@
+.et_pb_wc_cart_totals .select2-container--default .select2-selection--single,.et_pb_wc_cart_totals form .form-row input.input-text,.et_pb_wc_cart_totals form .form-row textarea{height:auto}.et_pb_wc_cart_totals.et_pb_wc_cart_empty{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals_cpt.css
new file mode 100644
index 0000000..6a8d8e9
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_cart_totals_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_cart_totals .select2-container--default .select2-selection--single,.et-db #et-boc .et-l .et_pb_wc_cart_totals form .form-row input.input-text,.et-db #et-boc .et-l .et_pb_wc_cart_totals form .form-row textarea{height:auto}.et-db #et-boc .et-l .et_pb_wc_cart_totals.et_pb_wc_cart_empty{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing.css
new file mode 100644
index 0000000..34db3ce
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing.css
@@ -0,0 +1 @@
+.et_pb_wc_checkout_billing #order_review_heading,.et_pb_wc_checkout_billing .col2-set .col-2{display:none}.et_pb_wc_checkout_billing .col2-set .col-1{width:100%}.et_pb_wc_checkout_billing.et_pb_fields_layout_fullwidth form .form-row-first,.et_pb_wc_checkout_billing.et_pb_fields_layout_fullwidth form .form-row-last{float:none;width:inherit}.et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(odd){float:left;width:47%;overflow:visible;clear:left}.et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(2n){float:right;width:47%;overflow:visible;clear:right}.et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row-wide{clear:none}.et_pb_wc_checkout_billing .woocommerce-error{border:0 solid #333!important}.et_pb_wc_checkout_billing.et_pb_text_align_right input.input-text{text-align:right}.et_pb_wc_checkout_billing.et_pb_text_align_center input.input-text{text-align:center}.et_pb_wc_checkout_billing .woocommerce-form-login-toggle,.et_pb_wc_checkout_billing .woocommerce-notices-wrapper{display:none}.et_pb_wc_checkout_billing .select2-container--default .select2-selection--single,.et_pb_wc_checkout_billing form .form-row input.input-text,.et_pb_wc_checkout_billing form .form-row textarea{height:auto}.et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_city_field{margin-bottom:1px}.et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible),.et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:20px}.et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_country_field{margin-bottom:9px}.et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_address_2_field{margin-top:26px;margin-bottom:8px}.et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible),.et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:20px}.et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_address_2_field{margin-top:27px;margin-bottom:8px}.et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_country_field{margin-bottom:10px}.et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_state_field{margin-bottom:9px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing_cpt.css
new file mode 100644
index 0000000..ac7dd52
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_billing_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_checkout_billing #order_review_heading,.et-db #et-boc .et-l .et_pb_wc_checkout_billing .col2-set .col-2{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_billing .col2-set .col-1{width:100%}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_fullwidth form .form-row-first,.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_fullwidth form .form-row-last{float:none;width:inherit}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(odd){float:left;width:47%;overflow:visible;clear:left}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row:nth-child(2n){float:right;width:47%;overflow:visible;clear:right}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .form-row-wide{clear:none}.et-db #et-boc .et-l .et_pb_wc_checkout_billing .woocommerce-error{border:0 solid #333!important}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_text_align_right input.input-text{text-align:right}.et-db #et-boc .et-l .et_pb_wc_checkout_billing.et_pb_text_align_center input.input-text{text-align:center}.et-db #et-boc .et-l .et_pb_wc_checkout_billing .woocommerce-form-login-toggle,.et-db #et-boc .et-l .et_pb_wc_checkout_billing .woocommerce-notices-wrapper{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_billing .select2-container--default .select2-selection--single,.et-db #et-boc .et-l .et_pb_wc_checkout_billing form .form-row input.input-text,.et-db #et-boc .et-l .et_pb_wc_checkout_billing form .form-row textarea{height:auto}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_city_field{margin-bottom:1px}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible),.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:20px}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_country_field{margin-bottom:9px}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_address_2_field{margin-top:26px;margin-bottom:8px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible),.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:20px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_address_2_field{margin-top:27px;margin-bottom:8px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_country_field{margin-bottom:10px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_billing.et_pb_fields_layout_2_column #billing_state_field{margin-bottom:9px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details.css
new file mode 100644
index 0000000..bf61120
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details.css
@@ -0,0 +1 @@
+.woocommerce-checkout #main-content .et_pb_wc_checkout_order_details table.shop_table tr.cart-subtotal td{border-top:1px solid rgba(0,0,0,.1)}.et_pb_wc_checkout_order_details .woocommerce-form-login-toggle,.et_pb_wc_checkout_order_details .woocommerce-notices-wrapper{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details_cpt.css
new file mode 100644
index 0000000..3647eb6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_details_cpt.css
@@ -0,0 +1 @@
+.woocommerce-checkout #main-content .et-db #et-boc .et-l .et_pb_wc_checkout_order_details table.shop_table tr.cart-subtotal td{border-top:1px solid rgba(0,0,0,.1)}.et-db #et-boc .et-l .et_pb_wc_checkout_order_details .woocommerce-form-login-toggle,.et-db #et-boc .et-l .et_pb_wc_checkout_order_details .woocommerce-notices-wrapper{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info.css
new file mode 100644
index 0000000..4fd2801
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info.css
@@ -0,0 +1 @@
+.et_pb_wc_checkout_additional_info #order_review_heading,.et_pb_wc_checkout_additional_info .col2-set .col-1{display:none}.et_pb_wc_checkout_additional_info .col2-set .col-2{width:100%}.et_pb_wc_checkout_additional_info.et_pb_wc_no_title h3,.et_pb_wc_checkout_additional_info .woocommerce-additional-fields h3:not(:first-of-type),.et_pb_wc_checkout_additional_info .woocommerce-shipping-fields{display:none}.et_pb_wc_checkout_additional_info form .form-row textarea.input-text{height:auto}.et_pb_wc_checkout_additional_info .woocommerce-form-login-toggle,.et_pb_wc_checkout_additional_info .woocommerce-notices-wrapper{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info_cpt.css
new file mode 100644
index 0000000..7b15e05
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_info_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info #order_review_heading,.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .col2-set .col-1{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .col2-set .col-2{width:100%}.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info.et_pb_wc_no_title h3,.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .woocommerce-additional-fields h3:not(:first-of-type),.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .woocommerce-shipping-fields{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info form .form-row textarea.input-text{height:auto}.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .woocommerce-form-login-toggle,.et-db #et-boc .et-l .et_pb_wc_checkout_additional_info .woocommerce-notices-wrapper{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment.css
new file mode 100644
index 0000000..2ee961b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment.css
@@ -0,0 +1 @@
+.et_pb_wc_checkout_payment_info #payment ul.payment_methods{border:none}.et_pb_wc_checkout_payment_info #order_review_heading{display:none}.et_pb_wc_checkout_payment_info .wc_payment_method a{font-size:14px!important;line-height:1.7em!important}.et_pb_wc_checkout_payment_info .woocommerce-checkout #payment div.form-row{padding:0}.et_pb_wc_checkout_payment_info form .form-row{margin:2em 0 0}.et_pb_wc_checkout_payment_info .woocommerce-checkout #payment ul.payment_methods{padding:0}.et_pb_wc_checkout_payment_info #payment div.payment_box{border-style:solid}.et_pb_wc_checkout_payment_info #payment div.payment_box:before{content:none}.et_pb_wc_checkout_payment_info #payment ul.payment_methods li.woocommerce-info{border-style:solid!important;border-width:0!important}.et_pb_wc_checkout_payment_info #payment ul.payment_methods li.et_fb_woocommerce-notice{margin-top:1em;border-top-color:inherit}.et_pb_wc_checkout_payment_info #payment .wc_payment_method{border-style:solid}.et_pb_wc_checkout_payment_info .woocommerce-order{border-radius:5px;border-style:solid}.et_pb_wc_checkout_payment_info.et_pb_text_align_center #payment ul.payment_methods li.woocommerce-info,.et_pb_wc_checkout_payment_info.et_pb_text_align_center #payment ul.payment_methods li p{text-align:center}.et_pb_wc_checkout_payment_info.et_pb_text_align_right #payment ul.payment_methods li.woocommerce-info,.et_pb_wc_checkout_payment_info.et_pb_text_align_right #payment ul.payment_methods li p{text-align:right}.et_pb_wc_checkout_payment_info.et_pb_text_align_justified #payment ul.payment_methods li.woocommerce-info,.et_pb_wc_checkout_payment_info.et_pb_text_align_justified #payment ul.payment_methods li p{text-align:justify}.et_pb_wc_checkout_payment_info .woocommerce-form-login-toggle,.et_pb_wc_checkout_payment_info .woocommerce-notices-wrapper{display:none}.woocommerce-order-received .et_pb_no_top_bottom_padding{padding-top:0;padding-bottom:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment_cpt.css
new file mode 100644
index 0000000..1c061f8
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_payment_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment ul.payment_methods{border:none}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #order_review_heading{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .wc_payment_method a{font-size:14px!important;line-height:1.7em!important}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .woocommerce-checkout #payment div.form-row{padding:0}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info form .form-row{margin:2em 0 0}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .woocommerce-checkout #payment ul.payment_methods{padding:0}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment div.payment_box{border-style:solid}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment div.payment_box:before{content:none}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment ul.payment_methods li.woocommerce-info{border-style:solid!important;border-width:0!important}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment ul.payment_methods li.et_fb_woocommerce-notice{margin-top:1em;border-top-color:inherit}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info #payment .wc_payment_method{border-style:solid}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .woocommerce-order{border-radius:5px;border-style:solid}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_center #payment ul.payment_methods li.woocommerce-info,.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_center #payment ul.payment_methods li p{text-align:center}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_right #payment ul.payment_methods li.woocommerce-info,.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_right #payment ul.payment_methods li p{text-align:right}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_justified #payment ul.payment_methods li.woocommerce-info,.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info.et_pb_text_align_justified #payment ul.payment_methods li p{text-align:justify}.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .woocommerce-form-login-toggle,.et-db #et-boc .et-l .et_pb_wc_checkout_payment_info .woocommerce-notices-wrapper{display:none}.et-db #et-boc .et-l .woocommerce-order-received .et_pb_no_top_bottom_padding{padding-top:0;padding-bottom:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping.css
new file mode 100644
index 0000000..1d7fbfe
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping.css
@@ -0,0 +1 @@
+.et_pb_wc_checkout_shipping #order_review_heading,.et_pb_wc_checkout_shipping .col2-set .col-1{display:none}.et_pb_wc_checkout_shipping .col2-set .col-2{width:100%}.et_pb_wc_checkout_shipping .checkout .col-2 h3#ship-to-different-address{float:none}.et_pb_wc_checkout_shipping.et_pb_fields_layout_fullwidth form .form-row-first,.et_pb_wc_checkout_shipping.et_pb_fields_layout_fullwidth form .form-row-last{float:none;width:inherit}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible){margin-bottom:20px}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:17px}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_country_field{margin-bottom:9px}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_address_2_field{margin-top:26px;margin-bottom:9px}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row:nth-child(odd){float:left;width:47%;overflow:visible;clear:left}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row:nth-child(2n){float:right;width:47%;overflow:visible;clear:right}.et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row-wide{clear:none}.et_pb_wc_checkout_shipping.et_pb_wc_ship_to_billing_address_only,.et_pb_wc_checkout_shipping .woocommerce-additional-fields{display:none}.et_pb_wc_checkout_shipping.et_pb_text_align_right input.input-text{text-align:right}.et_pb_wc_checkout_shipping.et_pb_text_align_center input.input-text{text-align:center}.et_pb_wc_checkout_shipping .woocommerce-form-login-toggle,.et_pb_wc_checkout_shipping .woocommerce-notices-wrapper{display:none}.et_pb_wc_checkout_shipping .select2-container--default .select2-selection--single,.et_pb_wc_checkout_shipping form .form-row input.input-text,.et_pb_wc_checkout_shipping form .form-row textarea{height:auto}.et_pb_column_4_4 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:18px}.et_pb_column_4_4 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_city_field{margin-bottom:1px}.et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:22px}.et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_address_2_field{margin-top:30px;margin-bottom:8px}.et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_state_field{margin-bottom:9px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping_cpt.css
new file mode 100644
index 0000000..c974d10
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_checkout_shipping_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_checkout_shipping #order_review_heading,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .col2-set .col-1{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .col2-set .col-2{width:100%}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .checkout .col-2 h3#ship-to-different-address{float:none}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_fullwidth form .form-row-first,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_fullwidth form .form-row-last{float:none;width:inherit}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .country_select:not(.select2-hidden-accessible){margin-bottom:20px}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:17px}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_country_field{margin-bottom:9px}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_address_2_field{margin-top:26px;margin-bottom:9px}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row:nth-child(odd){float:left;width:47%;overflow:visible;clear:left}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row:nth-child(2n){float:right;width:47%;overflow:visible;clear:right}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .form-row-wide{clear:none}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_wc_ship_to_billing_address_only,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .woocommerce-additional-fields{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_text_align_right input.input-text{text-align:right}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping.et_pb_text_align_center input.input-text{text-align:center}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .woocommerce-form-login-toggle,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .woocommerce-notices-wrapper{display:none}.et-db #et-boc .et-l .et_pb_wc_checkout_shipping .select2-container--default .select2-selection--single,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping form .form-row input.input-text,.et-db #et-boc .et-l .et_pb_wc_checkout_shipping form .form-row textarea{height:auto}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:18px}.et-db #et-boc .et-l .et_pb_column_4_4 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_city_field{margin-bottom:1px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column .state_select:not(.select2-hidden-accessible){margin-bottom:22px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_address_2_field{margin-top:30px;margin-bottom:8px}.et-db #et-boc .et-l .et_pb_column_1_2 .et_pb_wc_checkout_shipping.et_pb_fields_layout_2_column #shipping_state_field{margin-bottom:9px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_description.css b/includes/builder/feature/dynamic-assets/assets/css/woo_description.css
new file mode 100644
index 0000000..564bf68
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_description.css
@@ -0,0 +1 @@
+.et_pb_wc_description{word-wrap:break-word}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_description_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_description_cpt.css
new file mode 100644
index 0000000..3059aed
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_description_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_description{word-wrap:break-word}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_images.css b/includes/builder/feature/dynamic-assets/assets/css/woo_images.css
new file mode 100644
index 0000000..7531824
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_images.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_wc_images .woocommerce-product-gallery__image{border:0 solid #333}.et_pb_wc_images .et_pb_module_inner:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.woocommerce-page .et_builder_inner_content.product .et_pb_wc_images div.images,.woocommerce .et_builder_inner_content.product .et_pb_wc_images div.images,body.woocommerce-page #content .et_builder_inner_content.product .et_pb_wc_images div.images{width:100%}.et_pb_wc_images div.images ol.flex-control-thumbs.flex-control-nav{overflow:visible}.et_pb_wc_images div.images ol.flex-control-thumbs.flex-control-nav li{border-style:solid}.et_pb_wc_images .woocommerce-product-gallery--without-images .woocommerce-product-gallery__wrapper{border-width:0;border-style:solid}.et_pb_wc_images .woocommerce-product-gallery.images{width:100%}.et_pb_wc_images .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{border-width:0;border-style:solid}.et_pb_wc_images .flex-control-nav img,.et_pb_wc_images .flex-viewport{border-style:solid}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_images_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_images_cpt.css
new file mode 100644
index 0000000..5f6a556
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_images_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_images .woocommerce-product-gallery__image{border:0 solid #333}.et-db #et-boc .et-l .et_pb_wc_images .et_pb_module_inner:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.woocommerce-page .et_builder_inner_content.product .et-db #et-boc .et-l .et_pb_wc_images div.images,.woocommerce .et_builder_inner_content.product .et-db #et-boc .et-l .et_pb_wc_images div.images,body.woocommerce-page #content .et_builder_inner_content.product .et-db #et-boc .et-l .et_pb_wc_images div.images{width:100%}.et-db #et-boc .et-l .et_pb_wc_images div.images ol.flex-control-thumbs.flex-control-nav{overflow:visible}.et-db #et-boc .et-l .et_pb_wc_images div.images ol.flex-control-thumbs.flex-control-nav li{border-style:solid}.et-db #et-boc .et-l .et_pb_wc_images .woocommerce-product-gallery--without-images .woocommerce-product-gallery__wrapper{border-width:0;border-style:solid}.et-db #et-boc .et-l .et_pb_wc_images .woocommerce-product-gallery.images{width:100%}.et-db #et-boc .et-l .et_pb_wc_images .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{border-width:0;border-style:solid}.et-db #et-boc .et-l .et_pb_wc_images .flex-control-nav img,.et-db #et-boc .et-l .et_pb_wc_images .flex-viewport{border-style:solid}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_meta.css b/includes/builder/feature/dynamic-assets/assets/css/woo_meta.css
new file mode 100644
index 0000000..39d97ad
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_meta.css
@@ -0,0 +1 @@
+.et_pb_wc_meta{word-wrap:break-word}.et_pb_wc_meta.et_pb_wc_meta_layout_stacked .posted_in,.et_pb_wc_meta.et_pb_wc_meta_layout_stacked .sku_wrapper,.et_pb_wc_meta.et_pb_wc_meta_layout_stacked .tagged_as{display:block}.et_pb_wc_meta_empty{display:none}.et_pb_wc_meta .product_meta>span:last-child:after{content:""!important}.et_pb_wc_meta.et_pb_wc_no_categories .posted_in,.et_pb_wc_meta.et_pb_wc_no_sku .sku_wrapper,.et_pb_wc_meta.et_pb_wc_no_tags .tagged_as{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_meta_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_meta_cpt.css
new file mode 100644
index 0000000..32e1a7b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_meta_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_meta{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_meta_layout_stacked .posted_in,.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_meta_layout_stacked .sku_wrapper,.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_meta_layout_stacked .tagged_as{display:block}.et-db #et-boc .et-l .et_pb_wc_meta_empty{display:none}.et-db #et-boc .et-l .et_pb_wc_meta .product_meta>span:last-child:after{content:""!important}.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_no_categories .posted_in,.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_no_sku .sku_wrapper,.et-db #et-boc .et-l .et_pb_wc_meta.et_pb_wc_no_tags .tagged_as{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_price.css b/includes/builder/feature/dynamic-assets/assets/css/woo_price.css
new file mode 100644
index 0000000..9b1f346
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_price.css
@@ -0,0 +1 @@
+.et_pb_wc_price{word-wrap:break-word}.et_pb_wc_price .amount{word-break:break-all}.et_pb_wc_price .price{font-size:26px!important}.et_pb_wc_price .price del{color:#999}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_price_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_price_cpt.css
new file mode 100644
index 0000000..a6593e5
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_price_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_price{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_wc_price .amount{word-break:break-all}.et-db #et-boc .et-l .et_pb_wc_price .price{font-size:26px!important}.et-db #et-boc .et-l .et_pb_wc_price .price del{color:#999}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_rating.css b/includes/builder/feature/dynamic-assets/assets/css/woo_rating.css
new file mode 100644
index 0000000..5bc0774
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_rating.css
@@ -0,0 +1 @@
+.et_pb_wc_rating{word-wrap:break-word}.et_pb_wc_rating .star-rating span.rating{display:none}.et_pb_wc_rating .et-pb-icon{font-size:16px}.et_pb_wc_rating .woocommerce-review-link{vertical-align:text-bottom;line-height:1.7em}.et_pb_wc_rating .woocommerce-product-rating{margin-bottom:0}.et_pb_wc_rating .woocommerce-product-rating .star-rating{float:none;display:inline-block;margin:0}.et_pb_wc_rating.et_pb_wc_rating_layout_stacked .woocommerce-review-link{float:none;display:block}.et_pb_wc_rating.et_pb_wc_rating_no_rating .star-rating,.et_pb_wc_rating.et_pb_wc_rating_no_reviews .woocommerce-review-link{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_rating_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_rating_cpt.css
new file mode 100644
index 0000000..e7faa75
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_rating_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_rating{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_wc_rating .star-rating span.rating{display:none}.et-db #et-boc .et-l .et_pb_wc_rating .et-pb-icon{font-size:16px}.et-db #et-boc .et-l .et_pb_wc_rating .woocommerce-review-link{vertical-align:text-bottom;line-height:1.7em}.et-db #et-boc .et-l .et_pb_wc_rating .woocommerce-product-rating{margin-bottom:0}.et-db #et-boc .et-l .et_pb_wc_rating .woocommerce-product-rating .star-rating{float:none;display:inline-block;margin:0}.et-db #et-boc .et-l .et_pb_wc_rating.et_pb_wc_rating_layout_stacked .woocommerce-review-link{float:none;display:block}.et-db #et-boc .et-l .et_pb_wc_rating.et_pb_wc_rating_no_rating .star-rating,.et-db #et-boc .et-l .et_pb_wc_rating.et_pb_wc_rating_no_reviews .woocommerce-review-link{display:none}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells.css b/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells.css
new file mode 100644
index 0000000..a338422
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_wc_related_products .et_shop_image,.et_pb_with_border .et_pb_wc_related_products .et_shop_image>img:not(.woocommerce-placeholder),.et_pb_with_border.et_pb_wc_related_products .product,.et_pb_with_border.et_pb_wc_upsells .et_shop_image,.et_pb_with_border.et_pb_wc_upsells .product{border:0 solid #333}.et_pb_wc_related_products ul.products li.product,.et_pb_wc_upsells ul.products li.product{margin:0 3.8% 2.992em 0}.et_pb_wc_related_products ul.products li.product a img,.et_pb_wc_upsells ul.products li.product a img{margin-bottom:0!important}.et_pb_wc_related_products ul.products li.product.last,.et_pb_wc_upsells ul.products li.product.last{margin-right:0}.et_pb_wc_related_products ul.products.columns-1 li.product,.et_pb_wc_upsells ul.products.columns-1 li.product{width:100%;margin-right:0}.et_pb_wc_related_products ul.products.columns-2 li.product,.et_pb_wc_upsells ul.products.columns-2 li.product{width:48%}.et_pb_wc_related_products ul.products.columns-3 li.product,.et_pb_wc_upsells ul.products.columns-3 li.product{width:30.75%}.et_pb_wc_related_products ul.products.columns-4 li.product,.et_pb_wc_upsells ul.products.columns-4 li.product{width:22.15%}.et_pb_wc_related_products ul.products.columns-5 li.product,.et_pb_wc_upsells ul.products.columns-5 li.product{width:16.95%}.et_pb_wc_related_products ul.products.columns-6 li.product,.et_pb_wc_upsells ul.products.columns-6 li.product{width:13.5%}.et_pb_wc_related_products.et_pb_text_align_center .products .star-rating,.et_pb_wc_related_products.et_pb_text_align_justified .products .star-rating,.et_pb_wc_related_products.et_pb_text_align_right .products .star-rating,.et_pb_wc_upsells.et_pb_text_align_center .products .star-rating,.et_pb_wc_upsells.et_pb_text_align_justified .products .star-rating,.et_pb_wc_upsells.et_pb_text_align_right .products .star-rating{display:inline-block}.et_pb_wc_related_products .et_shop_image>img,.et_pb_wc_upsells .et_shop_image>img{border-style:solid}@media (min-width:981px){.woocommerce-page .et_pb_wc_related_products ul.products li.first,.woocommerce-page .et_pb_wc_upsells ul.products li.first{clear:both}.et_pb_wc_related_products ul.products:not(.columns-4) li.product:nth-child(4n+1),.et_pb_wc_upsells ul.products:not(.columns-4) li.product:nth-child(4n+1){clear:none}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product{width:22.15%;margin-right:3.8%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.last,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.last{margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product{width:16.95%;margin-right:3.8%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.last,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.last{margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product{width:13.5%;margin-right:3.8%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.last,.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.last,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.last{margin-right:0}.et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-3 li.product:nth-child(4n),.et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(4n),.et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(4n),.et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-3 li.product:nth-child(4n),.et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-5 li.product:nth-child(4n),.et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-6 li.product:nth-child(4n){margin-right:3.8%}}@media (max-width:980px){.et_pb_wc_related_products ul.products.columns-1 li.product,.et_pb_wc_related_products ul.products.columns-2 li.product,.et_pb_wc_related_products ul.products.columns-3 li.product,.et_pb_wc_related_products ul.products.columns-4 li.product,.et_pb_wc_related_products ul.products.columns-5 li.product,.et_pb_wc_related_products ul.products.columns-6 li.product,.et_pb_wc_upsells ul.products.columns-1 li.product,.et_pb_wc_upsells ul.products.columns-2 li.product,.et_pb_wc_upsells ul.products.columns-3 li.product,.et_pb_wc_upsells ul.products.columns-4 li.product,.et_pb_wc_upsells ul.products.columns-5 li.product,.et_pb_wc_upsells ul.products.columns-6 li.product{width:48%!important;margin-right:4%!important}.et_pb_wc_related_products ul.products.columns-1 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-2 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-3 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-4 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-5 li:nth-child(2n+2),.et_pb_wc_related_products ul.products.columns-6 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-1 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-2 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-3 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-4 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-5 li:nth-child(2n+2),.et_pb_wc_upsells ul.products.columns-6 li:nth-child(2n+2){margin-right:0!important}.et_pb_wc_related_products ul.products.columns-1 li:nth-child(3n+1),.et_pb_wc_related_products ul.products.columns-2 li:nth-child(3n+1),.et_pb_wc_related_products ul.products.columns-3 li:nth-child(3n+1),.et_pb_wc_related_products ul.products.columns-4 li:nth-child(3n+1),.et_pb_wc_related_products ul.products.columns-5 li:nth-child(3n+1),.et_pb_wc_related_products ul.products.columns-6 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-1 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-2 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-3 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-4 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-5 li:nth-child(3n+1),.et_pb_wc_upsells ul.products.columns-6 li:nth-child(3n+1){clear:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells_cpt.css
new file mode 100644
index 0000000..e5a80e2
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_related_products_upsells_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_related_products .et_shop_image,.et-db #et-boc .et-l .et_pb_with_border .et_pb_wc_related_products .et_shop_image>img:not(.woocommerce-placeholder),.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_related_products .product,.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_upsells .et_shop_image,.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_upsells .product{border:0 solid #333}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products li.product{margin:0 3.8% 2.992em 0}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products li.product a img,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products li.product a img{margin-bottom:0!important}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products li.product.last,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products li.product.last{margin-right:0}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-1 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-1 li.product{width:100%;margin-right:0}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-2 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-2 li.product{width:48%}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-3 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-3 li.product{width:30.75%}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-4 li.product{width:22.15%}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-5 li.product{width:16.95%}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-6 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-6 li.product{width:13.5%}.et-db #et-boc .et-l .et_pb_wc_related_products.et_pb_text_align_center .products .star-rating,.et-db #et-boc .et-l .et_pb_wc_related_products.et_pb_text_align_justified .products .star-rating,.et-db #et-boc .et-l .et_pb_wc_related_products.et_pb_text_align_right .products .star-rating,.et-db #et-boc .et-l .et_pb_wc_upsells.et_pb_text_align_center .products .star-rating,.et-db #et-boc .et-l .et_pb_wc_upsells.et_pb_text_align_justified .products .star-rating,.et-db #et-boc .et-l .et_pb_wc_upsells.et_pb_text_align_right .products .star-rating{display:inline-block}.et-db #et-boc .et-l .et_pb_wc_related_products .et_shop_image>img,.et-db #et-boc .et-l .et_pb_wc_upsells .et_shop_image>img{border-style:solid}@media (min-width:981px){.woocommerce-page .et-db #et-boc .et-l .et_pb_wc_related_products ul.products li.first,.woocommerce-page .et-db #et-boc .et-l .et_pb_wc_upsells ul.products li.first{clear:both}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products:not(.columns-4) li.product:nth-child(4n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products:not(.columns-4) li.product:nth-child(4n+1){clear:none}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.product{width:22.15%;margin-right:3.8%}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-4 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-4 li.last{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.product{width:16.95%;margin-right:3.8%}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-5 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-5 li.last{margin-right:0}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.product,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.product{width:13.5%;margin-right:3.8%}.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_related_products ul.products.columns-6 li.last,.et-db #et-boc .et-l .et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content .et_pb_wc_upsells ul.products.columns-6 li.last{margin-right:0}.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-3 li.product:nth-child(4n),.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-5 li.product:nth-child(4n),.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_related_products ul.products.columns-6 li.product:nth-child(4n),.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-3 li.product:nth-child(4n),.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-5 li.product:nth-child(4n),.et-db #et-boc .et-l .et_full_width_page.woocommerce-page .et_pb_wc_upsells ul.products.columns-6 li.product:nth-child(4n){margin-right:3.8%}}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-1 li.product,.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-2 li.product,.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-3 li.product,.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-6 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-1 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-2 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-3 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-4 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-5 li.product,.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-6 li.product{width:48%!important;margin-right:4%!important}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-1 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-2 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-3 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-4 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-5 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-6 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-1 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-2 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-3 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-4 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-5 li:nth-child(2n+2),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-6 li:nth-child(2n+2){margin-right:0!important}.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-1 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-2 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-3 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-4 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-5 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_related_products ul.products.columns-6 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-1 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-2 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-3 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-4 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-5 li:nth-child(3n+1),.et-db #et-boc .et-l .et_pb_wc_upsells ul.products.columns-6 li:nth-child(3n+1){clear:none}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_reviews.css b/includes/builder/feature/dynamic-assets/assets/css/woo_reviews.css
new file mode 100644
index 0000000..52106a1
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_reviews.css
@@ -0,0 +1 @@
+.et_pb_with_border.et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{border:0 solid #333}.et_pb_wc_reviews.et_pb_no_comments_count .woocommerce-Reviews-title{display:none}.et_pb_wc_reviews.et_pb_comments_module.et_pb_no_comments_count #comments{display:block}.et_pb_wc_reviews.et_pb_module .star-rating{margin-bottom:12px!important}.et_pb_wc_reviews.et_pb_module .star-rating span:before{transition:color .3s}.et_pb_wc_reviews.et_pb_no_avatar .avatar{display:none}.et_pb_wc_reviews.et_pb_no_avatar #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}.et_pb_wc_reviews .comment-reply-title{display:block}@media (min-width:480px){.et_pb_row>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{float:none;position:relative;margin-bottom:10px}.et_pb_row>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}}@media (min-width:980px){.et_pb_row>.et_pb_column_1_5 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar,.et_pb_row_inner>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar,.et_pb_row_inner>.et_pb_column_2_9 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{float:none;position:relative;margin-bottom:10px}.et_pb_row>.et_pb_column_1_5 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text,.et_pb_row_inner>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text,.et_pb_row_inner>.et_pb_column_2_9 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}}.et-dynamic-content-woo--product_reviews.woocommerce .comment-reply-title,.et-dynamic-content-woo--product_reviews.woocommerce .rating,.et-dynamic-content-woo--product_reviews.woocommerce ol.commentlist li .description,.et-dynamic-content-woo--product_reviews.woocommerce ol.commentlist li .meta{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}.et-dynamic-content-woo--product_reviews.woocommerce .woocommerce-Reviews-title{color:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_reviews_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_reviews_cpt.css
new file mode 100644
index 0000000..0f6ce8b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_reviews_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_with_border.et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{border:0 solid #333}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_no_comments_count .woocommerce-Reviews-title{display:none}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_comments_module.et_pb_no_comments_count #comments{display:block}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_module .star-rating{margin-bottom:12px!important}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_module .star-rating span:before{transition:color .3s}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_no_avatar .avatar{display:none}.et-db #et-boc .et-l .et_pb_wc_reviews.et_pb_no_avatar #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}.et-db #et-boc .et-l .et_pb_wc_reviews .comment-reply-title{display:block}@media (min-width:480px){.et-db #et-boc .et-l .et_pb_row>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{float:none;position:relative;margin-bottom:10px}.et-db #et-boc .et-l .et_pb_row>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}}@media (min-width:980px){.et-db #et-boc .et-l .et_pb_row>.et_pb_column_1_5 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar,.et-db #et-boc .et-l .et_pb_row_inner>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar,.et-db #et-boc .et-l .et_pb_row_inner>.et_pb_column_2_9 .et_pb_wc_reviews #reviews #comments ol.commentlist li img.avatar{float:none;position:relative;margin-bottom:10px}.et-db #et-boc .et-l .et_pb_row>.et_pb_column_1_5 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text,.et-db #et-boc .et-l .et_pb_row_inner>.et_pb_column_1_6 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text,.et-db #et-boc .et-l .et_pb_row_inner>.et_pb_column_2_9 .et_pb_wc_reviews #reviews #comments ol.commentlist li .comment-text{margin-left:0!important}}.et-db #et-boc .et-l .et-dynamic-content-woo--product_reviews.woocommerce .comment-reply-title,.et-db #et-boc .et-l .et-dynamic-content-woo--product_reviews.woocommerce .rating,.et-db #et-boc .et-l .et-dynamic-content-woo--product_reviews.woocommerce ol.commentlist li .description,.et-db #et-boc .et-l .et-dynamic-content-woo--product_reviews.woocommerce ol.commentlist li .meta{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}.et-db #et-boc .et-l .et-dynamic-content-woo--product_reviews.woocommerce .woocommerce-Reviews-title{color:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_stock.css b/includes/builder/feature/dynamic-assets/assets/css/woo_stock.css
new file mode 100644
index 0000000..09d274b
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_stock.css
@@ -0,0 +1 @@
+.et_pb_wc_stock{word-wrap:break-word}.et_pb_wc_stock .out-of-stock{color:red}.et_pb_wc_stock .in-stock{color:#77a464}.et_pb_wc_stock .stock{font-size:13px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_stock_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_stock_cpt.css
new file mode 100644
index 0000000..675f8e1
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_stock_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_stock{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_wc_stock .out-of-stock{color:red}.et-db #et-boc .et-l .et_pb_wc_stock .in-stock{color:#77a464}.et-db #et-boc .et-l .et_pb_wc_stock .stock{font-size:13px}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_tabs.css b/includes/builder/feature/dynamic-assets/assets/css/woo_tabs.css
new file mode 100644
index 0000000..82a5c86
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_tabs.css
@@ -0,0 +1 @@
+.et_pb_wc_tabs{border:1px solid #d9d9d9}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_tabs_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_tabs_cpt.css
new file mode 100644
index 0000000..da68ac3
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_tabs_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_tabs{border:1px solid #d9d9d9}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_title.css b/includes/builder/feature/dynamic-assets/assets/css/woo_title.css
new file mode 100644
index 0000000..74ddef6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_title.css
@@ -0,0 +1 @@
+.et_pb_wc_title{word-wrap:break-word}.et_pb_wc_title h1{padding-bottom:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woo_title_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woo_title_cpt.css
new file mode 100644
index 0000000..6736121
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woo_title_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_pb_wc_title{word-wrap:break-word}.et-db #et-boc .et-l .et_pb_wc_title h1{padding-bottom:0}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woocommerce.css b/includes/builder/feature/dynamic-assets/assets/css/woocommerce.css
new file mode 100644
index 0000000..3a94a9f
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woocommerce.css
@@ -0,0 +1 @@
+.product{word-wrap:break-word}@media (max-width:980px){.et_pb_woo_custom_button_icon .et_pb_custom_button_icon.et_pb_button:after{content:attr(data-icon-tablet)!important}}@media (max-width:767px){.et_pb_woo_custom_button_icon .et_pb_custom_button_icon.et_pb_button:after{content:attr(data-icon-phone)!important}}.et-dynamic-content-woo a{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}.woocommerce-page #content input.button:hover .et_pb_widget li a:hover{color:#2ea3f2}.woocommerce.et_pb_pagebuilder_layout div.product div.summary{margin-bottom:0}.et_pb_pagebuilder_layout .rfq_form_wrap:after{content:" ";display:block;visibility:hidden;clear:both;height:0;font-size:0}@media (min-width:981px){.woocommerce-page:not(.et-tb-has-template) .et_pb_shop ul.products li.product{clear:none}}@media (min-width:768px) and (max-width:980px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 7.5% 7.5% 0!important;width:28.333%!important;clear:none;float:left!important}.woocommerce-page ul.products li.product:nth-child(3n){margin-right:0!important}.woocommerce-page ul.products li.product:nth-child(3n+1){clear:both}}@media (max-width:767px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 9.5% 9.5% 0!important;width:45.25%!important;clear:none}.woocommerce-page ul.products li.product:nth-child(2n){margin-right:0!important}.woocommerce-page ul.products li.product:nth-child(odd){clear:both}}@media (max-width:479px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 0 11.5%!important;width:100%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woocommerce_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_cpt.css
new file mode 100644
index 0000000..23afcba
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .product{word-wrap:break-word}@media (max-width:980px){.et-db #et-boc .et-l .et_pb_woo_custom_button_icon .et_pb_custom_button_icon.et_pb_button:after{content:attr(data-icon-tablet)!important}}@media (max-width:767px){.et-db #et-boc .et-l .et_pb_woo_custom_button_icon .et_pb_custom_button_icon.et_pb_button:after{content:attr(data-icon-phone)!important}}.et-db #et-boc .et-l .et-dynamic-content-woo a{color:inherit!important;font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-shadow:inherit}.woocommerce-page #content input.button:hover .et_pb_widget li a:hover{color:#2ea3f2}.woocommerce.et_pb_pagebuilder_layout div.product div.summary{margin-bottom:0}.et_pb_pagebuilder_layout .rfq_form_wrap:after{content:" ";display:block;visibility:hidden;clear:both;height:0;font-size:0}@media (min-width:981px){.woocommerce-page:not(.et-tb-has-template) .et_pb_shop ul.products li.product{clear:none}}@media (min-width:768px) and (max-width:980px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 7.5% 7.5% 0!important;width:28.333%!important;clear:none;float:left!important}.woocommerce-page ul.products li.product:nth-child(3n){margin-right:0!important}.woocommerce-page ul.products li.product:nth-child(3n+1){clear:both}}@media (max-width:767px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 9.5% 9.5% 0!important;width:45.25%!important;clear:none}.woocommerce-page ul.products li.product:nth-child(2n){margin-right:0!important}.woocommerce-page ul.products li.product:nth-child(odd){clear:both}}@media (max-width:479px){.woocommerce-page ul.products li.product:nth-child(n){margin:0 0 11.5%!important;width:100%!important}}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared.css b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared.css
new file mode 100644
index 0000000..022f6d6
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared.css
@@ -0,0 +1 @@
+.woocommerce #content input.button.alt:after,.woocommerce #content input.button:after,.woocommerce #respond input#submit.alt:after,.woocommerce #respond input#submit:after,.woocommerce-page #content input.button.alt:after,.woocommerce-page #content input.button:after,.woocommerce-page #respond input#submit.alt:after,.woocommerce-page #respond input#submit:after,.woocommerce-page a.button.alt:after,.woocommerce-page a.button:after,.woocommerce-page button.button.alt:after,.woocommerce-page button.button:after,.woocommerce-page input.button.alt:after,.woocommerce-page input.button:after,.woocommerce a.button.alt:after,.woocommerce button.button.alt:after,.woocommerce button.button:after,.woocommerce button.single_add_to_cart_button.button:after,.woocommerce input.button.alt:after,.woocommerce input.button:after{font-family:ETmodules!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 0;direction:ltr}.et_pb_woo_custom_button_icon .et_pb_button[data-icon]:not([data-icon=""]):after{content:attr(data-icon)!important}.woocommerce-page .media-frame .media-frame-toolbar button.button,.woocommerce-page .media-frame .media-frame-toolbar button.post-nav .nav-links .button,.woocommerce-page .media-frame .media-frame-toolbar button.read-more-buttons,.woocommerce .media-frame .media-frame-toolbar button.button,.woocommerce .media-frame .media-frame-toolbar button.post-nav .nav-links .button,.woocommerce .media-frame .media-frame-toolbar button.read-more-buttons{float:left!important}.woocommerce-page .media-frame button.button,.woocommerce-page .media-frame button.post-nav .nav-links .button,.woocommerce-page .media-frame button.read-more-buttons,.woocommerce .media-frame button.button,.woocommerce .media-frame button.post-nav .nav-links .button,.woocommerce .media-frame button.read-more-buttons{margin-left:10px;margin-top:15px;padding:0 12px 2px!important;font-weight:400!important;font-size:13px!important;border-width:1px!important;border-color:#ccc!important;text-decoration:none!important;color:#555!important;background:#f7f7f7!important;box-shadow:0 1px 0 #ccc!important;vertical-align:top!important}.woocommerce-page .media-frame button.button:after,.woocommerce-page .media-frame button.post-nav .nav-links .button:after,.woocommerce-page .media-frame button.read-more-buttons:after,.woocommerce .media-frame button.button:after,.woocommerce .media-frame button.post-nav .nav-links .button:after,.woocommerce .media-frame button.read-more-buttons:after{content:""!important}.woocommerce-page .media-frame button.button-primary,.woocommerce .media-frame button.button-primary{background:#0085ba!important;border-color:#0073aa #006799 #006799!important;box-shadow:0 1px 0 #006799!important;color:#fff!important;text-shadow:0 -1px 1px #006799,1px 0 1px #006799,0 1px 1px #006799,-1px 0 1px #006799!important}.woocommerce-page .media-frame button.button-primary:hover,.woocommerce .media-frame button.button-primary:hover{background:#008ec2!important;color:#fff!important;border-color:#0073aa #006799 #006799!important}.woocommerce-page .media-frame button.button-primary:active,.woocommerce .media-frame button.button-primary:active{background:#0073aa!important;box-shadow:inset 0 2px 0 #006799!important;color:#fff!important;border-color:#0073aa #006799 #006799!important}.woocommerce-page .media-frame button.button-hero,.woocommerce .media-frame button.button-hero{font-size:14px!important;height:46px!important;line-height:44px;padding:0 36px!important}.woocommerce-page .media-frame button.button-hero:hover,.woocommerce .media-frame button.button-hero:hover{background:#fafafa!important;border-color:#999!important;color:#23282d!important}.woocommerce-page .media-frame button.button-hero:active,.woocommerce .media-frame button.button-hero:active{background:#eee!important;border-color:#999!important;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)!important;transform:translateY(1px)!important;outline:2px solid transparent!important;outline-offset:0!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared_cpt.css
new file mode 100644
index 0000000..e8e5907
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/woocommerce_shared_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .woocommerce #content input.button.alt:after,.et-db #et-boc .et-l .woocommerce #content input.button:after,.et-db #et-boc .et-l .woocommerce #respond input#submit.alt:after,.et-db #et-boc .et-l .woocommerce #respond input#submit:after,.et-db #et-boc .et-l .woocommerce-page #content input.button.alt:after,.et-db #et-boc .et-l .woocommerce-page #content input.button:after,.et-db #et-boc .et-l .woocommerce-page #respond input#submit.alt:after,.et-db #et-boc .et-l .woocommerce-page #respond input#submit:after,.et-db #et-boc .et-l .woocommerce-page a.button.alt:after,.et-db #et-boc .et-l .woocommerce-page a.button:after,.et-db #et-boc .et-l .woocommerce-page button.button.alt:after,.et-db #et-boc .et-l .woocommerce-page button.button:after,.et-db #et-boc .et-l .woocommerce-page input.button.alt:after,.et-db #et-boc .et-l .woocommerce-page input.button:after,.et-db #et-boc .et-l .woocommerce a.button.alt:after,.et-db #et-boc .et-l .woocommerce button.button.alt:after,.et-db #et-boc .et-l .woocommerce button.button:after,.et-db #et-boc .et-l .woocommerce button.single_add_to_cart_button.button:after,.et-db #et-boc .et-l .woocommerce input.button.alt:after,.et-db #et-boc .et-l .woocommerce input.button:after{font-family:ETmodules!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 0;direction:ltr}.et-db #et-boc .et-l .et_pb_woo_custom_button_icon .et_pb_button[data-icon]:not([data-icon=""]):after{content:attr(data-icon)!important}.et-db #et-boc .et-l .woocommerce-page .media-frame .media-frame-toolbar button.button,.et-db #et-boc .et-l .woocommerce-page .media-frame .media-frame-toolbar button.post-nav .nav-links .button,.et-db #et-boc .et-l .woocommerce-page .media-frame .media-frame-toolbar button.read-more-buttons,.et-db #et-boc .et-l .woocommerce .media-frame .media-frame-toolbar button.button,.et-db #et-boc .et-l .woocommerce .media-frame .media-frame-toolbar button.post-nav .nav-links .button,.et-db #et-boc .et-l .woocommerce .media-frame .media-frame-toolbar button.read-more-buttons{float:left!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button,.et-db #et-boc .et-l .woocommerce-page .media-frame button.post-nav .nav-links .button,.et-db #et-boc .et-l .woocommerce-page .media-frame button.read-more-buttons,.et-db #et-boc .et-l .woocommerce .media-frame button.button,.et-db #et-boc .et-l .woocommerce .media-frame button.post-nav .nav-links .button,.et-db #et-boc .et-l .woocommerce .media-frame button.read-more-buttons{margin-left:10px;margin-top:15px;padding:0 12px 2px!important;font-weight:400!important;font-size:13px!important;border-width:1px!important;border-color:#ccc!important;text-decoration:none!important;color:#555!important;background:#f7f7f7!important;box-shadow:0 1px 0 #ccc!important;vertical-align:top!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button:after,.et-db #et-boc .et-l .woocommerce-page .media-frame button.post-nav .nav-links .button:after,.et-db #et-boc .et-l .woocommerce-page .media-frame button.read-more-buttons:after,.et-db #et-boc .et-l .woocommerce .media-frame button.button:after,.et-db #et-boc .et-l .woocommerce .media-frame button.post-nav .nav-links .button:after,.et-db #et-boc .et-l .woocommerce .media-frame button.read-more-buttons:after{content:""!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-primary,.et-db #et-boc .et-l .woocommerce .media-frame button.button-primary{background:#0085ba!important;border-color:#0073aa #006799 #006799!important;box-shadow:0 1px 0 #006799!important;color:#fff!important;text-shadow:0 -1px 1px #006799,1px 0 1px #006799,0 1px 1px #006799,-1px 0 1px #006799!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-primary:hover,.et-db #et-boc .et-l .woocommerce .media-frame button.button-primary:hover{background:#008ec2!important;color:#fff!important;border-color:#0073aa #006799 #006799!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-primary:active,.et-db #et-boc .et-l .woocommerce .media-frame button.button-primary:active{background:#0073aa!important;box-shadow:inset 0 2px 0 #006799!important;color:#fff!important;border-color:#0073aa #006799 #006799!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-hero,.et-db #et-boc .et-l .woocommerce .media-frame button.button-hero{font-size:14px!important;height:46px!important;line-height:44px;padding:0 36px!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-hero:hover,.et-db #et-boc .et-l .woocommerce .media-frame button.button-hero:hover{background:#fafafa!important;border-color:#999!important;color:#23282d!important}.et-db #et-boc .et-l .woocommerce-page .media-frame button.button-hero:active,.et-db #et-boc .et-l .woocommerce .media-frame button.button-hero:active{background:#eee!important;border-color:#999!important;box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)!important;transform:translateY(1px)!important;outline:2px solid transparent!important;outline-offset:0!important}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/wp_gallery.css b/includes/builder/feature/dynamic-assets/assets/css/wp_gallery.css
new file mode 100644
index 0000000..b71cb83
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/wp_gallery.css
@@ -0,0 +1 @@
+.et_post_gallery{padding:0!important;line-height:1.7!important;list-style:none!important}.et_gallery_item{float:left;width:28.353%;margin:0 7.47% 7.47% 0}.blocks-gallery-item,.et_gallery_item{padding-left:0!important}.blocks-gallery-item:before,.et_gallery_item:before{display:none}.et_gallery_item:nth-child(3n){margin-right:0}.et_gallery_item:nth-child(3n+1){clear:both}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/css/wp_gallery_cpt.css b/includes/builder/feature/dynamic-assets/assets/css/wp_gallery_cpt.css
new file mode 100644
index 0000000..18cf518
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/css/wp_gallery_cpt.css
@@ -0,0 +1 @@
+.et-db #et-boc .et-l .et_post_gallery{padding:0!important;line-height:1.7!important;list-style:none!important}.et-db #et-boc .et-l .et_gallery_item{float:left;width:28.353%;margin:0 7.47% 7.47% 0}.et-db #et-boc .et-l .blocks-gallery-item,.et-db #et-boc .et-l .et_gallery_item{padding-left:0!important}.et-db #et-boc .et-l .blocks-gallery-item:before,.et-db #et-boc .et-l .et_gallery_item:before{display:none}.et-db #et-boc .et-l .et_gallery_item:nth-child(3n){margin-right:0}.et-db #et-boc .et-l .et_gallery_item:nth-child(3n+1){clear:both}
\ No newline at end of file
diff --git a/includes/builder/feature/dynamic-assets/assets/js/easypiechart.js b/includes/builder/feature/dynamic-assets/assets/js/easypiechart.js
new file mode 100644
index 0000000..4083360
--- /dev/null
+++ b/includes/builder/feature/dynamic-assets/assets/js/easypiechart.js
@@ -0,0 +1,365 @@
+/*!
+* easyPieChart
+* Lightweight plugin to render simple, animated and retina optimized pie charts
+*
+* @author Robert Fleischmann >>0)?(t=c(t))&&("string"==typeof e||null!=e&&!a(e))&&!(e=n(e))&&i(t)?o(f(t),0,r):t.split(e,r):[]}},function(t,e,r){var n=r(285),o=r(25),i=r(45),u=i&&i.isRegExp,a=u?o(u):n;t.exports=a},function(t,e,r){var n=r(6),o=r(3);t.exports=function(t){return o(t)&&"[object RegExp]"==n(t)}},function(t,e){t.exports=function(t){return t.split("")}},function(t,e){var r="[\\ud800-\\udfff]",n="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",o="\\ud83c[\\udffb-\\udfff]",i="[^\\ud800-\\udfff]",u="(?:\\ud83c[\\udde6-\\uddff]){2}",a="[\\ud800-\\udbff][\\udc00-\\udfff]",f="(?:"+n+"|"+o+")"+"?",c="[\\ufe0e\\ufe0f]?",l=c+f+("(?:\\u200d(?:"+[i,u,a].join("|")+")"+c+f+")*"),s="(?:"+[i+n+"?",n,u,a,r].join("|")+")",p=RegExp(o+"(?="+o+")|"+s+l,"g");t.exports=function(t){return t.match(p)||[]}},function(t,e,r){var n=r(17)("tail",r(289),r(56));n.placeholder=r(13),t.exports=n},function(t,e,r){var n=r(26);t.exports=function(t){var e=null==t?0:t.length;return e?n(t,1,e):[]}},function(t,e,r){var n=r(17)("head",r(41),r(56));n.placeholder=r(13),t.exports=n},function(t,e,r){var n=r(17)("size",r(119),r(56));n.placeholder=r(13),t.exports=n},function(t,e,r){var n=r(293),o=r(12);t.exports=function(t){return t&&t.length?n(t,o):0}},function(t,e){t.exports=function(t,e){for(var r,n=-1,o=t.length;++n1?t[e-1]:void 0;return r="function"==typeof r?(t.pop(),r):void 0,o(t,r)}));t.exports=i},function(t,e,r){"use strict";function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.get=e.add=void 0;var o=s(r(92)),i=s(r(357)),u=s(r(358)),a=s(r(359)),f=s(r(360)),c=s(r(361));function l(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,r=new WeakMap;return(l=function(t){return t?r:e})(t)}function s(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==n(t)&&"function"!=typeof t)return{default:t};var r=l(e);if(r&&r.has(t))return r.get(t);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in t)if("default"!==u&&Object.prototype.hasOwnProperty.call(t,u)){var a=i?Object.getOwnPropertyDescriptor(t,u):null;a&&(a.get||a.set)?Object.defineProperty(o,u,a):o[u]=t[u]}return o.default=t,r&&r.set(t,o),o}function p(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function d(t){for(var e=1;e","".concat(t,">"))),"h3"!==e){var o=new RegExp('
(.*?)
',"g");n=(0,r.default)(n,o,(function(t){return t=(t=t.replace("","".concat(e,">"))}))}return n},decodeHtmlEntities:function(t){return(t=(0,S.default)(t)?t:"").replace(/(\d+);/g,(function(t,e){return String.fromCharCode(e)}))},isLimitedMode:function(){return dt.condition("is_limited_mode")},isBFB:function(){return dt.condition("is_bfb")},isTB:function(){return dt.condition("is_tb")},isLB:function(){return dt.condition("is_layout_block")},isFB:function(){return!dt.isBFB()&&!dt.isTB()&&!dt.isLB()},getWindowScrollLocation:function(t){return!dt.condition("is_bfb")&&(0,h.default)(["wireframe","desktop"],t)?"app":"top"},hasBodyMargin:function(){return t("#et_pb_root").hasClass("et-fb-has-body-margin")},fixSliderHeight:function(t){setTimeout((function(){return et_fix_slider_height(t)}),600)},fixBuilderContent:function(e){setTimeout((function(){e.find(".et-waypoint, .et_pb_circle_counter, .et_pb_number_counter").each((function(){var e=t(this);e.hasClass("et_pb_circle_counter")&&(dt.appWindow().et_pb_reinit_circle_counters(e),(0,O.default)(e.data("easyPieChart"))||e.data("easyPieChart").update(e.data("number-value"))),e.hasClass("et_pb_number_counter")&&(dt.appWindow().et_pb_reinit_number_counters(e),(0,O.default)(e.data("easyPieChart"))||e.data("easyPieChart").update(e.data("number-value"))),e.find(".et_pb_counter_amount").length>0&&e.find(".et_pb_counter_amount").each((function(){dt.appWindow().et_bar_counters_init(t(this))})),e.css({opacity:"1"})})),e.find(".et_parallax_bg").length&&e.find(".et_parallax_bg").each((function(){window.et_pb_parallax_init(t(this))})),dt.appWindow().et_reinit_waypoint_modules(),(0,O.default)(window.et_shortcodes_init)||dt.appWindow().et_shortcodes_init(e),dt.$appWindow().trigger("resize")}),0)},triggerResizeForUIUpdate:function(){var e=this;clearTimeout(window.ETBuilderFauxResize),window.ETBuilderFauxResize=setTimeout((function(){var n=e;t(window).trigger("resize"),dt.callWindow("et_fix_page_container_position"),n.condition("is_bfb")&&setTimeout((function(){t(document.activeElement).is("iframe")&&t(document.activeElement).trigger("blur")}),200)}),200)},getHeadingLevel:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"h2",n=t.parentAttrs,r=t.attrs;return dt.hasValue(r.header_level)?r.header_level:dt.hasValue(n)&&dt.hasValue(n.header_level)?n.header_level:e},generateRowStructureClass:function(t){if((0,O.default)(t.content)||""===t.content||(0,y.default)(t.content))return"";var e="";switch((0,c.default)(t.content,(function(t){var n=(0,d.default)(t,"attrs.type");n&&(0,S.default)(n)&&(e+="_".concat(n.replace("_","-").trim()))})),e){case"_4-4":case"_1-2_1-2":case"_1-3_1-3_1-3":case"_2-5_3-5":case"_3-5_2-5":case"_1-3_2-3":case"_2-3_1-3":case"_1-5_3-5_1-5":case"_3-8_3-8":case"_1-3_1-3":e="";break;case"_1-4_1-4_1-4_1-4":e="et_pb_row_4col";break;case"_1-5_1-5_1-5_1-5_1-5":e="et_pb_row_5col";break;case"_1-6_1-6_1-6_1-6_1-6_1-6":e="et_pb_row_6col";break;default:e="et_pb_row".concat(e)}return e},shouldComponentUpdate:function(t,e,n){var r=e,o=t.props;return t.props.wireframeMode&&(r=dt._cleanPropsForWireframeComparison(e),o=dt._cleanPropsForWireframeComparison(t.props)),!(0,b.default)(r,o)||!(0,b.default)(n,t.state)},shouldComponentUpdateDelayed:function(t,e){var n=((0,P.default)(t)?t:{}).props,r=(0,P.default)(n)?n:{},o=(0,P.default)(e)?e:{},i=r.isInViewport,a=r.previewMode,u=r._v,s=o.isInViewport,c=o.previewMode,l=o._v;return!1===i&&!1===s&&(a!==c||u!==l)},shouldComponentUpdateOnScroll:function(t,e){var n=t.props,r=n.isInViewport,o=n.eventMode,i=e.isInViewport,a=e.eventMode;return!1===r&&!1===i&&o!==a&&("grid"===o||"grid"===a)},shouldComponentUpdateInViewport:function(t,e,n){var r=(0,P.default)(t)?t:{},o=r.props,i=r.state,a=(0,P.default)(o)?o:{},u=(0,P.default)(e)?e:{},c=(0,P.default)(i)?i:{},l=(0,P.default)(n)?n:{};if(c.isInViewportUpdater!==l.isInViewportUpdater)return!0;var f=a.isInViewport,d=a.shortcode_index,p=u.isInViewport,g=u.shortcode_index;if(!1!==f||!1!==p)return!0;if(d!==g)return!0;if((0,m.default)(a.content)&&(0,m.default)(u.content)){var h=dt.getPropsFlat(a),v=dt.getPropsFlat(u);return(0,W.default)(h,(function(t){var e=t._key,n=t.shortcode_index,r=(0,s.default)(v,(function(t){return t._key===e}));return!r||r.shortcode_index!==n}))}return!1},whyComponentDidUpdate:function(t,e,n,r){if(t){var o=t.props,i=t.state,a=K({},o),u=K({},i),s={},l={};(0,c.default)(a,(function(t,n){if((0,P.default)(t))(0,c.default)(t,(function(t,o){var i=(0,d.default)(e,"".concat(n,".").concat(o));(0,b.default)(t,i)||(s["".concat(n,":").concat(o)]={currentProps:t,previousProps:i,componentId:r})}));else{var o=(0,d.default)(e,n);(0,b.default)(t,o)||(s[n]={currentProps:t,previousProps:o,componentId:r})}})),(0,y.default)(s)||console.table(s),(0,c.default)(u,(function(t,e){if((0,P.default)(t))(0,c.default)(t,(function(t,o){var i=(0,d.default)(n,"".concat(e,".").concat(o));(0,b.default)(t,i)||(l["".concat(e,".").concat(o)]={currentState:t,previousState:i,componentId:r})}));else{var o=(0,d.default)(n,e);(0,b.default)(t,o)||(l[e]={currentState:t,previousState:o,componentId:r})}})),(0,y.default)(l)||console.table(l)}},findObjectByKeyDeep:function(t,e){var n;return(0,c.default)(t,(function(t,r){return r===e?(n=t,!0):(0,P.default)(t)?(n=dt.findObjectByKeyDeep(t,e),!(0,w.default)(n)):void 0})),n},getPropsFlat:function(t,e){return(0,w.default)(e)&&(e=[]),(0,m.default)(t.content)&&(0,c.default)(t.content,(function(t){dt.getPropsFlat(t,e)})),t&&t._key&&e.push(t),e},_cleanPropsForWireframeComparison:function(t){if((0,O.default)(t))return t;var e=(0,L.default)(t,["attrs","children","content"]);return t.attrs&&(e.attrs=(0,A.default)(t.attrs,["locked","global_module","admin_label","collapsed","ab_subject_id","ab_goal","disabled","disabled_on","column_structure","type","_deleted"])),t.content&&(0,m.default)(t.content)&&!(0,y.default)(t.content)?(e.content=[],(0,c.default)(t.content,(function(t){e.content.push(dt._cleanPropsForWireframeComparison(t))}))):(0,m.default)(t.content)||(e.content=""),e},getAdminBarHeight:function(){if(dt.isTB())return 32;var t=dt.$topWindow("#wpadminbar");return t.length>0?parseInt(t.innerHeight()):0},getScrollbarWidth:$.getScrollbarWidth,maybeGetScrollbarWidth:function(t){if(dt.isBFB())return 0;var e=dt.$topWindow("html"),n=dt.$appWindow("html"),r=dt.isTB()?dt.getAdminBarHeight():0,o=dt.$topDocument("#et-fb-app-frame").outerHeight(!0),i=e.outerHeight();return(0,h.default)(["desktop","wireframe"],t)&&(o=n.innerHeight()+r,i=dt.$topWindow().innerHeight()),(0,h.default)(["zoom"],t)&&(o=Math.ceil(n.innerHeight()/2)+r,i=dt.$topWindow().innerHeight()),o>i?dt.getScrollbarWidth():0},getScrollTargets:function(){var t=(0,d.default)(dt.appWindow(),"ET_Builder.API.State.View_Mode",{}),e=dt.$appWindow("html");return dt.isTB()?e=dt.$TBScrollTarget():dt.isBlockEditor()||!dt.isBFB()&&(t.isDesktop()||t.isWireframe())||(e=dt.$topWindow("html")),e},getScrollEventTarget:function(){var t=dt.appWindow().ET_Builder.API.State.View_Mode,e=dt.appWindow();return dt.isTB()?e=dt.$TBScrollTarget().get(0):(dt.isBFB()||!t.isDesktop()&&!t.isWireframe())&&(e=dt.topWindow()),e},enableScrollLock:function(){var t=dt.$topWindow(".et-fb-page-settings-bar"),e=dt.$topWindow("#wpadminbar"),n=dt.$topWindow(".et_fixed_nav:not(.et_vertical_nav) #top-header"),r=dt.$topWindow(".et_fixed_nav:not(.et_vertical_nav) #main-header"),o=((0,d.default)(dt.appWindow(),"ET_Builder.API.State.View_Mode",{}),t.hasClass("et-fb-page-settings-bar--corner")),i=(t.hasClass("et-fb-page-settings-bar--right-corner"),t.hasClass("et-fb-page-settings-bar--left-corner")),a=(t.hasClass("et-fb-page-settings-bar--right"),t.hasClass("et-fb-page-settings-bar--vertical"));dt.getScrollTargets().css({overflowY:"hidden",paddingRight:"".concat(dt.getScrollbarWidth(),"px")}),dt.isBFB()||(o||a||t.css("width","calc(100% - ".concat(et,"px)")),i&&t.find(".et-fb-page-settings-bar__column--right").css("right","".concat(et,"px"))),e.css("width","calc(100% - ".concat(et,"px)")),n.css("width","calc(100% - ".concat(et,"px)")),r.css("width","calc(100% - ".concat(et,"px)"))},disableScrollLock:function(){var t=dt.$topWindow(".et-fb-page-settings-bar"),e=dt.$topWindow("#wpadminbar"),n=dt.$topWindow(".et_fixed_nav:not(.et_vertical_nav) #top-header"),r=dt.$topWindow(".et_fixed_nav:not(.et_vertical_nav) #main-header"),o=((0,d.default)(dt.appWindow(),"ET_Builder.API.State.View_Mode",{}),t.hasClass("et-fb-page-settings-bar--corner")),i=(t.hasClass("et-fb-page-settings-bar--right-corner"),t.hasClass("et-fb-page-settings-bar--left-corner")),a=(t.hasClass("et-fb-page-settings-bar--right"),t.hasClass("et-fb-page-settings-bar--vertical"));dt.getScrollTargets().css({overflowY:"auto",paddingRight:"0px"}),dt.isBFB()||dt.isTB()||(o||a||t.css("width",""),i&&t.find(".et-fb-page-settings-bar__column--right").css("right","0px")),dt.condition("is_bfb")&&e.css("width","100%"),n.css("width",""),r.css("width","")},cookies:ut,getEventsTarget:function(t){return dt.isBFB()||t?dt.topWindow():dt.appWindow()},linkRel:function(t){var e=[];if(t){var n=["bookmark","external","nofollow","noreferrer","noopener"];t.split("|").forEach((function(t,r){t&&"off"!==t&&e.push(n[r])}))}return e.length?e.join(" "):null},setElementFont:function(t,e,n){var r="";if(""===t||(0,O.default)(t))return"";function o(t,e,n,r,o,i){var a="",u=i?" !important":"";return n&&!e?a="".concat(t,":").concat(o).concat(u,";"):!n&&e&&(a="".concat(t,":").concat(r).concat(u,";")),a}var i=t?t.split("|"):[],a=(void 0===n?"||||||||":n).split("|");if(!(0,y.default)(i)){var u=i[0],s=""!==i[1]?i[1]:"",c="on"===i[2],l="on"===i[3],f="on"===i[4],g="on"===i[5],h="on"===i[6],v=(0,O.default)(i[7])?"":i[7],m=(0,O.default)(i[8])?"":i[8],b=""!==a[1]?a[1]:"",_="on"===a[2],w="on"===a[3],x="on"===a[4],P="on"===a[5],S="on"===a[6];s="on"===s?"700":s,b="on"===b?"700":b,""!==u&&"Default"!==u&&(dt.maybeLoadFont(u),r+=function(t,e){var n,r,o,i,a=(0,p.default)(ETBuilderBackend.customFonts,t,!1)?ETBuilderBackend.customFonts:ETBuilderBackend.et_builder_fonts_data,u=e?" !important":"",s=ETBuilderBackend.removedFonts;return i=(0,O.default)(a[t])||(0,O.default)(a[t].add_ms_version)?"":"'".concat(t," MS', "),(0,d.default)(s,t,!1)&&(r=s[t].styles,t=s[t].parent_font),""!==r&&(o=" font-weight:".concat(r,";")),n=(0,O.default)(a[t])?"serif":function(t){var e=t||"sans-serif",n=e;switch(e){case"sans-serif":n="Helvetica, Arial, Lucida, sans-serif";break;case"serif":n='Georgia, "Times New Roman", serif';break;case"cursive":n="cursive"}return n}(a[t].type),"".concat("font-family:'").concat(t,"',").concat(i).concat(n).concat(u,";").concat(o)}(u,e)),r+=o("font-weight",""!==b,""!==s,"normal",s,e),r+=o("font-style",_,c,"normal","italic",e),r+=o("text-transform",w,l,"none","uppercase",e),r+=o("text-decoration",x,f,"none","underline",e),r+=o("font-variant",P,g,"none","small-caps",e),r+=o("text-decoration",S,h,"none","line-through",e),r+=o("text-decoration-style",!1,""!==m,"solid",m,e),r+=o("-webkit-text-decoration-color",!1,""!==v,"",v,e),r=(r+=o("text-decoration-color",!1,""!==v,"",v,e)).trim()}return r},setResetFontStyle:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!(0,S.default)(t)||!(0,S.default)(e))return"";var r=t.split("|"),o=e.split("|");if((0,y.default)(r)||(0,y.default)(o))return"";var i=!(0,O.default)(r[2])&&"on"===r[2],a=!(0,O.default)(r[3])&&"on"===r[3],u=!(0,O.default)(r[4])&&"on"===r[4],s=!(0,O.default)(r[5])&&"on"===r[5],c=!(0,O.default)(r[6])&&"on"===r[6],l=!(0,O.default)(o[2])&&"on"===o[2],f=!(0,O.default)(o[3])&&"on"===o[3],d=!(0,O.default)(o[4])&&"on"===o[4],p=!(0,O.default)(o[5])&&"on"===o[5],g=!(0,O.default)(o[6])&&"on"===o[6],h="",v=n?" !important":"";if(!i&&l&&(h+="font-style: normal".concat(v,";")),!a&&f&&(h+="text-transform: none".concat(v,";")),!s&&p&&(h+="font-variant: none".concat(v,";")),!u&&d){var m=c||g?"line-through":"none";h+="text-decoration: ".concat(m).concat(v,";")}if(!c&&g){var b=u||d?"underline":"none";h+="text-decoration: ".concat(b).concat(v,";")}return h},decodeOptionListValue:function(t){var e=["[","]"],n=["[","]"];return t?JSON.parse((0,r.default)((0,r.default)(t,e[0],n[0]),e[1],n[1])):t},moduleHasBackground:function(t,e){var n,r,o=(0,O.default)(e)?["color","gradient","image","video"]:e,i=!1;return(0,c.default)(o,(function(e){switch(e){case"color":i=dt.hasValue(t.background_color);break;case"gradient":i=dt.isOn(t.use_background_color_gradient);break;case"image":i=dt.hasValue(t.background_image);break;case"video":n=dt.hasValue(t.background_video_mp4),r=dt.hasValue(t.background_video_webm),i=n||r}return!i})),i},fitVids:function(t){t.length&&t.fitVids({customSelector:"iframe[src^='http://www.hulu.com'], iframe[src^='http://www.dailymotion.com'], iframe[src^='http://www.funnyordie.com'], iframe[src^='https://embed-ssl.ted.com'], iframe[src^='http://embed.revision3.com'], iframe[src^='https://flickr.com'], iframe[src^='http://blip.tv'], iframe[src^='http://www.collegehumor.com']"})},toTextOrientation:it,getTextOrientation:(0,u.default)(it,(function(t){return dt.condition("is_rtl")&&"left"===t?"right":t})),isBuilderFocused:function(){return dt.$appDocument(ETBuilderBackend.css.containerPrefix).is(":hover")||dt.$topDocument(ETBuilderBackend.css.containerPrefix).is(":hover")},getFixedHeaderHeight:function(){var t=dt.$appWindow("body");return t.hasClass("et_divi_theme")&&dt.$topWindow().width()>=980&&!t.hasClass("et_vertical_nav")&&(parseInt(dt.$appWindow("#top-header.et-fixed-header").height()),parseInt(dt.$appWindow("#main-header.et-fixed-header").height())),t.hasClass("et_extra")&&parseInt(dt.$appWindow(".et-fixed-header #main-header").height()),0},parseInlineCssIntoObject:function(t){return(0,f.default)((0,E.default)(t.split("; "),(function(t){return t.split(": ")})))},getProcessedTabSlug:function(t){return"advanced"===t?"design":t},getModuleAddressSequence:function(t){var e=[];if((0,m.default)(t)?e=t:(0,S.default)(t)&&(e=t.split(".")),e.length<1)return[];if((0,W.default)(e,(function(t){return isNaN(parseFloat(t))})))return[];var n=(0,k.default)(e),r=[];return(0,c.default)(n,(function(t){var n=parseInt(t,10)+1,o=(0,D.default)(e,n).join(".");r.push(o)})),r},getFontFieldIndexes:function(t){return(0,d.default)({font:[0],weight:[1],style:[2,3,4,5,6],line_style:[7],line_color:[8]},t,[])},flattenFields:function(t){return(0,F.default)(t,(function(t,e,n){if("composite"===e.type){var r=(0,d.default)(e,"composite_structure",{}),i=(0,E.default)(r,"controls").reduce((function(t,n){var r=(0,B.default)(n,(function(t,n){var r=(0,d.default)(t,"name",n),i=(0,d.default)(t,"tab_slug",(0,d.default)(e,"tab_slug","")),a=(0,d.default)(t,"toggle_slug",(0,d.default)(e,"toggle_slug",""));return(0,o.default)({},t,{name:r,tab_slug:dt.getProcessedTabSlug(i),toggle_slug:a})}));return K(K({},t),r)}),{});return K(K({},t),i)}return K(K({},t),{},tt({},n,e))}),{})},hasLocalStorage:function(){if(!(0,x.default)(ft))return ft;try{ft=!!ET_Builder.Frames.top.localStorage}catch(t){}return ft},showCoreModal:function(t){if(ETBuilderBackend[t]){var e=ETBuilderBackend[t].header,n=ETBuilderBackend[t].text,r=ETBuilderBackend[t].buttons,o=ETBuilderBackend.coreModalTemplate,i=ETBuilderBackend.coreModalButtonsTemplate,a=ETBuilderBackend[t].classes,u=r?(0,F.default)(r,(function(t,e){return t+e}),""):"";u=dt.sprintf(i,u);var s=(0,k.default)(r).length>1?"et-core-modal-two-buttons":"",c=dt.sprintf(o,e,n,u);dt.$topWindow(".et-core-modal-overlay").remove(),dt.$topWindow(c).appendTo(dt.$topWindow("body")).addClass(s).addClass(a),dt.$appWindow().trigger("et-core-modal-active")}},hideCoreModal:function(t){dt.$topWindow(".".concat(t)).addClass("et-core-closing").delay(600).queue((function(){dt.$topWindow(this).removeClass("et-core-active et-core-closing").dequeue().remove()}))},stripHTMLTags:function(t){return t.replace(/(<([^>]+)>)/gi,"")},getIntegerValue:function(t){switch(G(t)){case"string":return Math.trunc(t.replace(/[^\-\.\d]/g,"").replace(/(?!^)-/g,"").replace(/\..*/g,""));case"number":return Math.trunc(t);default:return 0}},getFormattedPx:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=dt.getIntegerValue(t);return 0!==n?"".concat(n,"px"):e?"":"0px"},scrollToAddress:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"desktop",r=dt.$appWindow('[data-address="'.concat(t,'"]'));if(r&&r.length){var o=dt.isTB()||dt.isBFB()||(0,h.default)(["zoom","tablet","phone"],n),i=o?dt.$topWindow("html"):dt.$appWindow("html");dt.isTB()&&(i=dt.$TBScrollTarget());var a=r.offset().top;"zoom"===n&&(a=Math.ceil(.5*a));var u=dt.viewportScrollTop(),s=dt.isBFB()?dt.$topWindow("#et-bfb-app-frame").offset().top-dt.getAdminBarHeight():0,c=dt.isTB()||dt.isBFB()?0:dt.$appWindow("#et-boc").offset().top,l=a+s-c,f=Math.abs(l-u),d=400,p=800,g=6e3,v=Math.ceil(f/1e3)*d;v
+ %1$s
+
+
+ %2$s
+
+
+ %4$s
+
(?:
|\u00a0|\uFEFF| )*<\/p>/g,"
");"content"!==this.props.saveAs&&this.props.saveAs?S.default.moduleSettingsChange(this,this.props.saveAs,o):S.default.moduleContentChange(this,o,!0,!1,!1,"inline-editor"),this.setState({lastEditorContent:!1})}else if(!(0,c.default)(this.state.shortcodeHTML)){var r=this.doShortcode(t.getContent({format:"html"}));t.setContent(r,{format:"raw"})}},activateEditor:function(){if("pointer"===k.default.getQuickActionsContext())return this.state.showPopover&&this.disablePopup(this.editor,!0),void this.setState({editorActivated:!1});this.state.editorActivated||((0,s.default)(window.originalTinymce)||(O.default.appWindow().previousTinymce=O.default.appWindow().tinymce,O.default.appWindow().tinymce=O.default.appWindow().originalTinymce),this.setState({editorActivated:!0}))},render:function(){var e=this.getContent(),t=!(!(0,s.default)(this.props.attrs.global_parent)&&""!==this.props.attrs.global_parent||!(0,s.default)(this.props.attrs.global_module)&&""!==this.props.attrs.global_module)||k.default.isAllowedAction("edit_global_library"),n="".concat(this.props.address,"-").concat((0,m.default)()),o=[];(0,s.default)(this.props.quickAccessId)||(o["data-quickaccess-id"]=this.props.quickAccessId),(0,s.default)(this.props.quickAccessOrder)||(o["data-quickaccess-order"]=this.props.quickAccessOrder),o["data-quickaccess-editable"]="yes",!this.state.showPopover&&this.props.contentProcessor&&(e=this.props.contentProcessor(e));var a=e.replace(/((\s)|(
<\/p>)|(
))/gi,"");if((0,c.default)(a)&&"et_pb_text"!==(0,v.default)(this.props,"type"))return!1;if("pointer"===k.default.getQuickActionsContext()||!this.state.editorActivated||!t||this.props.lockedParent||"on"===this.props.attrs.locked||!k.default.isAllowedAction("edit_module")||!k.default.isAllowedAction("edit_content")||!k.default.isAllowedAction("general_settings")||!k.default.isAllowedAction(this.props.type)||k.default.isProductTourActive())return r.default.createElement("div",A({onMouseOver:this.activateEditor,dangerouslySetInnerHTML:{__html:this.doShortcode(e)},"data-shortcode-id":n},o));this.state.showPopover||(e=this.doShortcode(e));var l="image lists textcolor paste";return I||(l+=" autolink link print preview table"),r.default.createElement("div",A({className:"et-fb-popover-tinymce",ref:this.dom,"data-shortcode-id":n},o),r.default.createElement(i.default,{raw:!0,content:e,config:{_v:this.props._v+this.local_version,entity_encoding:"raw",inline:!0,theme:!1,skin_url:ETBuilderBackend.tinymceSkinUrl,plugins:l,toolbar:!1,menubar:!1,valid_elements:"*[*]",font_formats:D(ETBuilderBackend.googleFontsList),convert_urls:!1,browser_spellcheck:!0},onClick:function(e){return e.stopPropagation()},onDblclick:this._onDoubleClick,onContextmenu:this._onContextMenu,onMousedown:this._onMouseDown,onMouseup:this._onInsideMouseUp,onNodeChange:this._onNodeChange,onBlur:this._onBlur,onFocus:this._onFocus,onFocusout:this._onFocusout,onLoadContent:this._loadtinyMCEContent,onExecCommand:this._updateTempContent,onKeydown:this._onKeyDownEvent,onKeyup:this._onKeyUpEvent,onChange:this._onContentChange}))},_onContentChange:function(t,n){e(n.bodyElement).is(":focus")&&this._updateTempContent(t,n)},_onKeyUpEvent:function(e,t){this.debouncedUpdate&&this.debouncedUpdate(e,t)},_updateTempContent:function(e,t){if(("change"!==e.type||!this.props.contentProcessor)&&(this.setState({lastEditorContent:t.getContent({format:"html"})}),this.state.isSelected&&(0,c.default)(t.selection.getContent()))){var n={active:!0,hasChanges:this.state.hasChanges,editor:t,module:this,posX:this.state.posX,posY:this.state.posY,viewportX:this.state.viewportX,viewportY:this.state.viewportY,isSelected:!1,selection:t.selection.getNode()};S.default.updateInlineEditorProps(n,!1,!0)}},_onDoubleClick:function(e){e.stopPropagation()},_onKeyDownEvent:function(t,n){if(27===t.keyCode)return this.disablePopup(n,!0),e(n.bodyElement).trigger("blur"),!1},_loadtinyMCEContent:function(e,t){var n=this.getContent(),o=n.match(x),r=this,a='
(?:
|\u00a0|\uFEFF| )*<\/p>/g,"
)?(<\/p>)?/g,"\x3c!-- $2divi:$3 $4--\x3e"),this.hasGutenbergEmbeds()&&(e=e.replace(L,(function(e,t){var n="https://www.youtube.com/embed/".concat(t.split("v=")[1]);return'
')}))),e):""},_handleModification:function(){this.setState({hasChanges:!0})},_onNodeChange:function(e,t){if(!1!==this.state.showPopover){var n=!(0,c.default)(t.selection.getContent());this.setState({editor:t,isSelected:n});var o={active:!0,hasChanges:this.state.hasChanges,editor:t,module:this,posX:this.state.posX,posY:this.state.posY,viewportX:this.state.viewportX,viewportY:this.state.viewportY,isSelected:n,selection:t.selection.getNode()};S.default.updateInlineEditorProps(o)}},_onMouseDown:function(e,t){if(2!==e.button){var n={active:!0,hasChanges:this.state.hasChanges,posX:e.pageX,posY:e.pageY,viewportX:e.screenX,viewportY:e.screenY,editor:t,module:this,selecting:!0};S.default.updateInlineEditorProps(n,!1,!0),this._listenOutsideMouseUp(),this._maybeOnMouseUp=!0}},_onOutsideMouseUp:function(e){2!==e.button&&(e.preventDefault(),this._removeListenerMouseUp(),this._onMouseUp(k.default.getInlineEditorProps()))},_onInsideMouseUp:function(e,t){if(this._maybeOnMouseUp&&2!==e.button){var n=P(P({},k.default.getInlineEditorProps()),{},{posX:e.pageX,posY:e.pageY,viewportX:e.screenX,viewportY:e.screenY,editor:t});this._removeListenerMouseUp(),this._onMouseUp(n)}},_listenOutsideMouseUp:function(){O.default.$appDocument().on("mouseup",this._onOutsideMouseUp),O.default.$topDocument().on("mouseup",this._onOutsideMouseUp)},_removeListenerMouseUp:function(){this._maybeOnMouseUp=!1,O.default.$appDocument().off("mouseup",this._onOutsideMouseUp),O.default.$topDocument().off("mouseup",this._onOutsideMouseUp)},_onMouseUp:function(t){var n=this,o=t.editor;if(o&&!1===this.state.showPopover&&(e(o.bodyElement).prop("contentEditable",!0),e(o.bodyElement).trigger("focus"),setTimeout((function(){return S.default.setEditedModule(n,!0)}),0),!(0,c.default)(this.state.shortcodeHTML)&&!this.state.shortcodesDecoded)){var r=this.getContent();o.setContent(r,{format:"raw"})}var a=o&&!(0,c.default)(o.selection.getContent()),i=o&&o.selection.getNode(),l={active:!0,hasChanges:this.state.hasChanges,posX:t.posX,posY:t.posY,viewportX:t.viewportX,viewportY:t.viewportY,editor:o,module:this,selecting:!1,isSelected:a,selection:i};S.default.updateInlineEditorProps(l,!1,!1),this.setState({showPopover:!0,shortcodesDecoded:!0,editor:o,isSelected:a,posX:t.posX,posY:t.posY,viewportX:t.viewportX,viewportY:t.viewportY})},_onFocusout:function(e,t){if(k.default.getInlineEditorLastClick())return this.buttonClicked=!0,void e.preventDefault();this.buttonClicked=!1,this.disablePopup(t)},_onFocus:function(e,t){this.editor=t,this.props.rawContentProcessor&&this.local_version++},_onBlur:function(e,t){if(this.buttonClicked)return e.preventDefault(),void((0,b.default)((0,v.default)(t,"focus"))&&t.focus());this.disablePopup(t)},_onContextMenu:function(){this.setState({rightClick:!0})}}),W=F;t.default=W}).call(this,n(9))},function(e,t,n){var o=n(42),r=n(12);e.exports=function(e,t,n){var a=!0,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return r(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),o(e,t,{leading:a,maxWait:t,trailing:i})}},function(e,t,n){e.exports=n(411)},function(e,t,n){"use strict";function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==o(e)&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var l=a?Object.getOwnPropertyDescriptor(e,i):null;l&&(l.get||l.set)?Object.defineProperty(r,i,l):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(0)),a=l(n(7)),i=l(n(13));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function d(e,t){for(var n=0;nparseInt(l))return 1;if(parseInt(i) e.length)&&(t=e.length);for(var n=0,o=new Array(t);n
+ 'comment','callback'=>'et_custom_comments_display') ); ?> +
+ + + 1 && get_option( 'page_comments' ) ) : // Are there comments to navigate through? ?> ++ +
+