From 8a55744bf84d20ffaed529b53bed924fedc3e17a Mon Sep 17 00:00:00 2001 From: Bitpoke Bot Date: Thu, 9 Nov 2023 08:35:50 +0000 Subject: [PATCH] Update `Astra` theme from 4.4.0 to 4.4.1 --- .../woocommerce/woocommerce-grid.min-rtl.css | 2 +- .../woocommerce/woocommerce-grid.min.css | 2 +- .../woocommerce/woocommerce.min-rtl.css | 2 +- .../woocommerce/woocommerce.min.css | 2 +- .../assets/css/minified/style.min-rtl.css | 4 +- .../astra/assets/css/minified/style.min.css | 4 +- .../astra/assets/js/minified/frontend.min.js | 2 +- .../assets/js/minified/live-search.min.js | 38 +- .../assets/js/minified/navigation.min.js | 2 +- .../astra/assets/js/minified/style.min.js | 2 +- .../astra/assets/js/unminified/frontend.js | 2 +- .../astra/assets/js/unminified/live-search.js | 94 +- .../astra/assets/js/unminified/navigation.js | 2 +- .../astra/assets/js/unminified/style.js | 2 +- wp-content/themes/astra/changelog.txt | 14 + wp-content/themes/astra/functions.php | 2 +- .../class-astra-breadcrumbs-loader.php | 410 +- .../breadcrumbs/class-astra-breadcrumbs.php | 218 +- .../class-astra-heading-colors-loader.php | 546 +- .../class-astra-heading-colors-configs.php | 496 +- .../class-astra-ext-transparent-header.php | 128 +- ...ss-astra-ext-transparent-header-loader.php | 430 +- .../classes/dynamic-css/dynamic.css.php | 1090 +- ...-customizer-transparent-header-configs.php | 2348 +-- .../inc/assets/js/block-editor-script.js | 169 +- .../astra/inc/assets/js/customizer-preview.js | 694 +- .../themes/astra/inc/blog/blog-config.php | 1178 +- wp-content/themes/astra/inc/blog/blog.php | 1068 +- .../js/minified/customizer-preview.min.js | 2 +- .../js/unminified/customizer-preview.js | 4 +- .../header/search/dynamic-css/dynamic.css.php | 20 +- .../inc/class-astra-after-setup-theme.php | 558 +- .../astra/inc/class-astra-dynamic-css.php | 10468 ++++++------- .../compatibility/class-astra-elementor.php | 1088 +- .../class-astra-starter-content.php | 16 +- .../astra-settings-export.json | 2 +- .../woocommerce/class-astra-woocommerce.php | 7560 +++++----- .../woocommerce-common-functions.php | 776 +- .../builder/class-astra-builder-options.php | 11 +- .../inc/core/class-astra-admin-settings.php | 1180 +- .../inc/core/class-astra-enqueue-scripts.php | 51 +- .../inc/core/class-astra-theme-options.php | 1500 +- .../astra/inc/core/class-theme-strings.php | 218 +- .../astra/inc/core/common-functions.php | 3680 ++--- .../inc/customizer/class-astra-customizer.php | 3260 ++--- .../class-astra-customizer-button-configs.php | 1766 +-- .../class-astra-blog-layout-configs.php | 490 +- ...class-astra-blog-single-layout-configs.php | 290 +- .../class-astra-sidebar-layout-configs.php | 380 +- .../class-astra-site-identity-configs.php | 948 +- .../class-astra-archive-typo-configs.php | 260 +- .../class-astra-single-typo-configs.php | 186 +- .../css/minified/custom-controls.min-rtl.css | 2 +- .../css/minified/custom-controls.min.css | 2 +- .../assets/css/unminified/color-rtl.css | 1194 +- .../assets/css/unminified/color.css | 1194 +- .../css/unminified/custom-controls-rtl.css | 8 +- .../assets/css/unminified/custom-controls.css | 8 +- .../assets/css/unminified/number-rtl.css | 7 +- .../assets/css/unminified/number.css | 7 +- .../css/unminified/responsive-slider-rtl.css | 343 +- .../css/unminified/responsive-slider.css | 343 +- .../js/unminified/custom-controls-plain.js | 12214 ++++++++-------- .../class-astra-customizer-control-base.php | 368 +- .../custom-controls/typography/selectWoo.css | 980 +- .../class-astra-wp-customize-section.php | 136 +- .../inc/dynamic-css/container-layouts.php | 7 + wp-content/themes/astra/inc/extras.php | 2488 ++-- wp-content/themes/astra/inc/google-fonts.php | 34 +- wp-content/themes/astra/inc/markup-extras.php | 4234 +++--- .../inc/metabox/class-astra-meta-boxes.php | 3640 ++--- .../theme-update/astra-update-functions.php | 2956 ++-- .../class-astra-theme-background-updater.php | 866 +- wp-content/themes/astra/languages/astra.pot | 27 +- wp-content/themes/astra/readme.txt | 4 +- wp-content/themes/astra/style.css | 4 +- .../template-parts/single/single-layout.php | 148 +- 77 files changed, 37504 insertions(+), 37375 deletions(-) diff --git a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min-rtl.css b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min-rtl.css index da918b6df..0d984ca50 100644 --- a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min-rtl.css +++ b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min-rtl.css @@ -1 +1 @@ -@charset "UTF-8";@keyframes spin{100%{transform:rotate(-360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;right:0;left:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-right:0;padding-right:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{left:0;right:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:right;width:auto;position:relative;right:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:right}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;right:-999em;display:block;line-height:1.618;transition:all .3s ease;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;right:auto;left:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-right:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-right:-12px;left:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 5em .5em 2em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-left:0;width:100%;margin-right:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:right;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:left}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-right:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{left:auto;right:0;transition:right 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:15px;left:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:11px;left:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;right:50%;transform:translateX(50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-right-radius:10em;border-top-left-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:left}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:right}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-left:15px;align-items:center;font-weight:500;text-decoration:inherit}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;left:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;right:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;right:22px;transform:rotate(45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:right;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-left:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:left;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 2px 0 0}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-right:16px;width:0}.woocommerce-js div.product div.social iframe{float:right;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;right:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 0 0 1em;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;right:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;right:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-right-width:1px;border-style:solid;padding-right:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-right:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:right}.woocommerce-js div.product #reviews .comment-form-email{float:left}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:right;margin:0 0 1em 1em}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-right:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-left:0;padding-right:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-right:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:right;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-left:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:right;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-right:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;right:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;right:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;left:0;right:auto;margin:-.5em 0 0 -.5em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination ul{flex-wrap:wrap;justify-content:center;white-space:normal;padding:0;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 0 2px 2px;border:1px solid var(--ast-border-color);padding:0;display:inline-block;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;text-align:center;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;right:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;left:-.5em;right:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-right:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:left;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments ol.commentlist{margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:100%;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:right;position:absolute;top:0;right:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 50px 0 0;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-right:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 50px 0 0}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 50px 0 0}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-left:.5em}.woocommerce-js .star-rating{float:left;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:right;top:0;right:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:right;top:0;right:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;right:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 0 0 4px;float:right}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{right:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;right:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 0 24px -1px;text-align:right;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:left}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em .25em .125em 0}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:right;clear:both;margin-left:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:left;margin-right:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-right:1em;border-right:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:right;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 0 0 4px;clear:right}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-left:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 0 0 8px;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:right;margin-left:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-left:1px dashed var(--ast-border-color);padding-left:2em;margin-right:0;padding-right:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-left-width:2px;text-align:right;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-right:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:right;padding:0 0 1px 1px;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:left}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:left;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:right}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:right;margin-right:.5em;margin-left:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{right:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{left:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;right:0;height:100%;left:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-right:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:right}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce-js .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce-js ul.products li.product,.woocommerce-page ul.products li.product{text-align:right;margin-bottom:2.5em}.woocommerce-js ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce-js ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce-js ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce-js ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.woocommerce-js ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce-js ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce-js ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce-js ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;right:1em;left:1em;padding:.5em 0 .7em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce-js ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce-js ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce-js ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce-js ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce-js .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-left:0}.woocommerce-js table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce-js table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce-js table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce-js table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce-js table.shop_table td,.woocommerce-js table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce-js table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce-js table.shop_table td.download-file,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce-js table.shop_table td.download-file a,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-left:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce-js table.shop_table td.download-file a:last-child,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-left:0}.woocommerce-js table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-js #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce-js #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce-js #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce-js #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce-js form .form-row textarea,.woocommerce-js input[type=email],.woocommerce-js input[type=number],.woocommerce-js input[type=password],.woocommerce-js input[type=reset],.woocommerce-js input[type=search],.woocommerce-js input[type=tel],.woocommerce-js input[type=text],.woocommerce-js input[type=url],.woocommerce-js textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce-js form .form-row textarea:focus,.woocommerce-js input[type=email]:focus,.woocommerce-js input[type=number]:focus,.woocommerce-js input[type=password]:focus,.woocommerce-js input[type=reset]:focus,.woocommerce-js input[type=search]:focus,.woocommerce-js input[type=tel]:focus,.woocommerce-js input[type=text]:focus,.woocommerce-js input[type=url]:focus,.woocommerce-js textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce-js .select2-container .select2-dropdown,.woocommerce-js .select2-container .select2-search__field,.woocommerce-page .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-search__field{border:1px solid var(--ast-border-color);z-index:98}.woocommerce-js .select2-container .select2-selection--single,.woocommerce-js select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-left:2em;appearance:none;background-position:2% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce-js .select2-container .select2-selection--single:focus,.woocommerce-js select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce-js .select2-container .select2-selection--single b,.woocommerce-js select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce-js .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:100% -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 3.5em 1em 2em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;right:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:left}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-right:0!important;margin-right:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:right}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:left;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:left}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:right;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 0 0 4px;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-right:0;border-left:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:right;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:right}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:right}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:right;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:right;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:right;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 0 0 1em}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px .5em 0 0;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-right:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 0 0 1em;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:left .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;position:absolute;top:-1em;right:0;margin:-1em 2em 0 0}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:left;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart .cart_totals .shop_table{table-layout:fixed}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-left:0}.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-right:0;border-left:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 0 10px 10px;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-left:0;padding-right:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:left}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-left-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-right:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce ul.cart_list,.woocommerce-js #secondary .woocommerce ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 5em .6em 0;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-right:5px;margin-left:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-left:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;right:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-left:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 5em 1.2em 0}.woocommerce .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;right:auto;left:0;top:1.1em;color:var(--ast-global-color-3)}.woocommerce .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-left-radius:0;border-bottom-left-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-right-radius:0;border-bottom-right-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-left:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-left:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:left}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(-180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:right;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;left:10px;right:auto;margin:-.5em 0 0 -.5em}.widget_product_categories .children{padding-right:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.wc-block-product-categories-list li{padding-right:15px}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 0 0 .5rem;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-right:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-right:-1em} \ No newline at end of file +@charset "UTF-8";@keyframes spin{100%{transform:rotate(-360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;right:0;left:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-right:0;padding-right:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{left:0;right:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:right;width:auto;position:relative;right:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:right}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;right:-999em;display:block;line-height:1.618;transition:all .3s ease;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;right:auto;left:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-right:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-right:-12px;left:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 5em .5em 2em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-left:0;width:100%;margin-right:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:right;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:left}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-right:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{left:auto;right:0;transition:right 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:15px;left:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:11px;left:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;right:50%;transform:translateX(50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-right-radius:10em;border-top-left-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:left}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:right}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-left:15px;align-items:center;font-weight:500;text-decoration:inherit}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;left:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;right:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;right:22px;transform:rotate(45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:right;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-left:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:left;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 2px 0 0}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-right:16px;width:0}.woocommerce-js div.product div.social iframe{float:right;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;right:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 0 0 1em;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;right:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;right:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-right-width:1px;border-style:solid;padding-right:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-right:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:right}.woocommerce-js div.product #reviews .comment-form-email{float:left}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:right;margin:0 0 1em 1em}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-right:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-left:0;padding-right:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-right:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:right;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-left:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:right;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-right:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;right:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;right:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;left:0;right:auto;margin:-.5em 0 0 -.5em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination ul{flex-wrap:wrap;justify-content:center;white-space:normal;padding:0;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 0 2px 2px;border:1px solid var(--ast-border-color);padding:0;display:inline-block;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;text-align:center;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;right:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;left:-.5em;right:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-right:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:left;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments ol.commentlist{margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:100%;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:right;position:absolute;top:0;right:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 50px 0 0;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-right:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 50px 0 0}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 50px 0 0}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-left:.5em}.woocommerce-js .star-rating{float:left;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:right;top:0;right:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:right;top:0;right:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;right:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 0 0 4px;float:right}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{right:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;right:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 0 24px -1px;text-align:right;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:left}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em .25em .125em 0}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:right;clear:both;margin-left:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:left;margin-right:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-right:1em;border-right:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:right;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 0 0 4px;clear:right}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-left:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 0 0 8px;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:right;margin-left:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-left:1px dashed var(--ast-border-color);padding-left:2em;margin-right:0;padding-right:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-left-width:2px;text-align:right;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-right:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:right;padding:0 0 1px 1px;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:left}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:left;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:right}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:right;margin-right:.5em;margin-left:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{right:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{left:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;right:0;height:100%;left:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-right:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:right}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce-js .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce-js ul.products li.product,.woocommerce-page ul.products li.product{text-align:right;margin-bottom:2.5em}.woocommerce-js ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce-js ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce-js ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce-js ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.woocommerce-js ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce-js ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce-js ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce-js ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;right:1em;left:1em;padding:.5em 0 .7em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce-js ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce-js ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce-js ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce-js ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce-js .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-left:0}.woocommerce-js table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce-js table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce-js table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce-js table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce-js table.shop_table td,.woocommerce-js table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce-js table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce-js table.shop_table td.download-file,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce-js table.shop_table td.download-file a,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-left:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce-js table.shop_table td.download-file a:last-child,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-left:0}.woocommerce-js table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-js #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce-js #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce-js #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce-js #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce-js form .form-row textarea,.woocommerce-js input[type=email],.woocommerce-js input[type=number],.woocommerce-js input[type=password],.woocommerce-js input[type=reset],.woocommerce-js input[type=search],.woocommerce-js input[type=tel],.woocommerce-js input[type=text],.woocommerce-js input[type=url],.woocommerce-js textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce-js form .form-row textarea:focus,.woocommerce-js input[type=email]:focus,.woocommerce-js input[type=number]:focus,.woocommerce-js input[type=password]:focus,.woocommerce-js input[type=reset]:focus,.woocommerce-js input[type=search]:focus,.woocommerce-js input[type=tel]:focus,.woocommerce-js input[type=text]:focus,.woocommerce-js input[type=url]:focus,.woocommerce-js textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce-js .select2-container .select2-dropdown,.woocommerce-js .select2-container .select2-search__field,.woocommerce-page .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-search__field{border:1px solid var(--ast-border-color);z-index:98}.woocommerce-js .select2-container .select2-selection--single,.woocommerce-js select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-left:2em;appearance:none;background-position:2% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce-js .select2-container .select2-selection--single:focus,.woocommerce-js select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce-js .select2-container .select2-selection--single b,.woocommerce-js select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce-js .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:100% -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 3.5em 1em 2em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;right:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:left}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-right:0!important;margin-right:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:right}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:left;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:left}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:right;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 0 0 4px;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-right:0;border-left:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:right;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:right}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:right}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:right;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:right;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:right;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 0 0 1em}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px .5em 0 0;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-right:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 0 0 1em;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:left .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;position:absolute;top:-1em;right:0;margin:-1em 2em 0 0}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:left;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart .cart_totals .shop_table{table-layout:fixed}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-left:0}.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-right:0;border-left:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 0 10px 10px;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-left:0;padding-right:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:left}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-left-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-right:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce ul.cart_list,.woocommerce-js #secondary .woocommerce ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 5em .6em 0;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-right:5px;margin-left:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-left:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;right:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-left:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 5em 1.2em 0}.woocommerce .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;right:auto;left:0;top:1.1em;color:var(--ast-global-color-3)}.woocommerce .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-left-radius:0;border-bottom-left-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-right-radius:0;border-bottom-right-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-left:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-left:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:left}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(-180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:right;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;left:10px;right:auto;margin:-.5em 0 0 -.5em}.widget_product_categories .children{padding-right:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.wc-block-product-categories-list li{padding-right:15px}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 0 0 .5rem;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-right:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-right:-1em}.sidebar-main .ast-mini-cart-empty .woocommerce-mini-cart__empty-message{display:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min.css b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min.css index 9066d13ef..fdff133ac 100644 --- a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min.css +++ b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce-grid.min.css @@ -1 +1 @@ -@charset "UTF-8";@keyframes spin{100%{transform:rotate(360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;left:0;right:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-left:0;padding-left:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{right:0;left:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:left;width:auto;position:relative;left:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:left}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;left:-999em;display:block;line-height:1.618;transition:all .3s ease;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;left:auto;right:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-left:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-left:-12px;right:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 2em .5em 5em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-right:0;width:100%;margin-left:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:left;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:right}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-left:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{right:auto;left:0;transition:left 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:15px;right:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:11px;right:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;left:50%;transform:translateX(-50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-left-radius:10em;border-top-right-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:right}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:left}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-right:15px;align-items:center;font-weight:500;text-decoration:inherit}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;right:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;left:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;left:22px;transform:rotate(-45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:left;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-right:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:right;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 0 0 2px}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-left:16px;width:0}.woocommerce-js div.product div.social iframe{float:left;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 1em 0 0;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;left:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;left:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-left-width:1px;border-style:solid;padding-left:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-left:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:left}.woocommerce-js div.product #reviews .comment-form-email{float:right}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:left;margin:0 1em 1em 0}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-left:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-right:0;padding-left:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-left:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:left;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-right:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:left;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-left:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;left:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;left:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;right:0;left:auto;margin:-.5em -.5em 0 0}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination ul{flex-wrap:wrap;justify-content:center;white-space:normal;padding:0;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 2px 2px 0;border:1px solid var(--ast-border-color);padding:0;display:inline-block;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;text-align:center;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;left:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;right:-.5em;left:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-left:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:right;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments ol.commentlist{margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:0;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:left;position:absolute;top:0;left:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 0 0 50px;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-left:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 0 0 50px}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 0 0 50px}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-right:.5em}.woocommerce-js .star-rating{float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:left;top:0;left:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;left:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 4px 0 0;float:left}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{left:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;left:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 -1px 24px 0;text-align:left;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:right}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em 0 .125em .25em}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:left;clear:both;margin-right:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:right;margin-left:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-left:1em;border-left:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:left;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 4px 0 0;clear:left}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-right:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 8px 0 0;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:left;margin-right:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-right:1px dashed var(--ast-border-color);padding-right:2em;margin-left:0;padding-left:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-right-width:2px;text-align:left;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-left:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:left;padding:0 1px 1px 0;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:right}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:right;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:left}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:left;margin-left:.5em;margin-right:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{left:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{right:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;left:0;height:100%;right:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-left:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:left}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce-js .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce-js ul.products li.product,.woocommerce-page ul.products li.product{text-align:left;margin-bottom:2.5em}.woocommerce-js ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce-js ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce-js ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce-js ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.woocommerce-js ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce-js ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce-js ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce-js ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;left:1em;right:1em;padding:.5em 0 .7em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce-js ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce-js ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce-js ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce-js ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce-js .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-right:0}.woocommerce-js table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce-js table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce-js table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce-js table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce-js table.shop_table td,.woocommerce-js table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce-js table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce-js table.shop_table td.download-file,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce-js table.shop_table td.download-file a,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-right:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce-js table.shop_table td.download-file a:last-child,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-right:0}.woocommerce-js table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-js #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce-js #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce-js #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce-js #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce-js form .form-row textarea,.woocommerce-js input[type=email],.woocommerce-js input[type=number],.woocommerce-js input[type=password],.woocommerce-js input[type=reset],.woocommerce-js input[type=search],.woocommerce-js input[type=tel],.woocommerce-js input[type=text],.woocommerce-js input[type=url],.woocommerce-js textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce-js form .form-row textarea:focus,.woocommerce-js input[type=email]:focus,.woocommerce-js input[type=number]:focus,.woocommerce-js input[type=password]:focus,.woocommerce-js input[type=reset]:focus,.woocommerce-js input[type=search]:focus,.woocommerce-js input[type=tel]:focus,.woocommerce-js input[type=text]:focus,.woocommerce-js input[type=url]:focus,.woocommerce-js textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce-js .select2-container .select2-dropdown,.woocommerce-js .select2-container .select2-search__field,.woocommerce-page .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-search__field{border:1px solid var(--ast-border-color);z-index:98}.woocommerce-js .select2-container .select2-selection--single,.woocommerce-js select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-right:2em;appearance:none;background-position:98% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce-js .select2-container .select2-selection--single:focus,.woocommerce-js select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce-js .select2-container .select2-selection--single b,.woocommerce-js select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce-js .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:0 -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 2em 1em 3.5em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;left:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:right}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:left}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:right;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:right}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:left;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 4px 0 0;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-left:0;border-right:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:left;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:left}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:left}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:left;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:left;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:left;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 1em 0 0}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px 0 0 .5em;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-left:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 1em 0 0;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:right .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-1em;left:0;margin:-1em 0 0 2em}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:right;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart .cart_totals .shop_table{table-layout:fixed}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-right:0}.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-left:0;border-right:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 10px 10px 0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-right:0;padding-left:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:right}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-right-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-left:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce ul.cart_list,.woocommerce-js #secondary .woocommerce ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 0 .6em 5em;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-left:5px;margin-right:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-right:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;left:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-right:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 0 1.2em 5em}.woocommerce .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;left:auto;right:0;top:1.1em;color:var(--ast-global-color-3)}.woocommerce .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-right-radius:0;border-bottom-right-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-left-radius:0;border-bottom-left-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-right:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-right:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:right}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(-180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:left;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;right:10px;left:auto;margin:-.5em -.5em 0 0}.widget_product_categories .children{padding-left:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.wc-block-product-categories-list li{padding-left:15px}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 .5rem 0 0;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-left:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-left:-1em} \ No newline at end of file +@charset "UTF-8";@keyframes spin{100%{transform:rotate(360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;left:0;right:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-left:0;padding-left:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{right:0;left:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:left;width:auto;position:relative;left:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:left}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;left:-999em;display:block;line-height:1.618;transition:all .3s ease;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;left:auto;right:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-left:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-left:-12px;right:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 2em .5em 5em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-right:0;width:100%;margin-left:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:left;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:right}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-left:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{right:auto;left:0;transition:left 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:15px;right:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:11px;right:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;left:50%;transform:translateX(-50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-left-radius:10em;border-top-right-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:right}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:left}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-right:15px;align-items:center;font-weight:500;text-decoration:inherit}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;right:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;left:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;left:22px;transform:rotate(-45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:left;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-right:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:right;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 0 0 2px}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-left:16px;width:0}.woocommerce-js div.product div.social iframe{float:left;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 1em 0 0;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;left:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;left:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-left-width:1px;border-style:solid;padding-left:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-left:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:left}.woocommerce-js div.product #reviews .comment-form-email{float:right}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:left;margin:0 1em 1em 0}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-left:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-right:0;padding-left:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-left:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:left;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-right:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:left;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-left:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;left:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;left:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;right:0;left:auto;margin:-.5em -.5em 0 0}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination ul{flex-wrap:wrap;justify-content:center;white-space:normal;padding:0;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 2px 2px 0;border:1px solid var(--ast-border-color);padding:0;display:inline-block;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;text-align:center;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;left:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;right:-.5em;left:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-left:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:right;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments ol.commentlist{margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:0;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:left;position:absolute;top:0;left:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 0 0 50px;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-left:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 0 0 50px}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 0 0 50px}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-right:.5em}.woocommerce-js .star-rating{float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:left;top:0;left:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;left:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 4px 0 0;float:left}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{left:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;left:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 -1px 24px 0;text-align:left;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:right}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em 0 .125em .25em}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:left;clear:both;margin-right:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:right;margin-left:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-left:1em;border-left:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:left;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 4px 0 0;clear:left}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-right:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 8px 0 0;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:left;margin-right:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-right:1px dashed var(--ast-border-color);padding-right:2em;margin-left:0;padding-left:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-right-width:2px;text-align:left;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-left:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:left;padding:0 1px 1px 0;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:right}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:right;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:left}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:left;margin-left:.5em;margin-right:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{left:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{right:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;left:0;height:100%;right:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-left:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:left}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce-js .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce-js ul.products li.product,.woocommerce-page ul.products li.product{text-align:left;margin-bottom:2.5em}.woocommerce-js ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce-js ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce-js ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce-js ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.woocommerce-js ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce-js ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce-js ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce-js ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;left:1em;right:1em;padding:.5em 0 .7em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce-js ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce-js ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce-js ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce-js ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce-js ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce-js .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-right:0}.woocommerce-js table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce-js table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce-js table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce-js table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce-js table.shop_table td,.woocommerce-js table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce-js table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce-js table.shop_table td.download-file,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce-js table.shop_table td.download-file a,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-right:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce-js table.shop_table td.download-file a:last-child,.woocommerce-js table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-right:0}.woocommerce-js table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-js #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce-js #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce-js #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce-js #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce-js form .form-row textarea,.woocommerce-js input[type=email],.woocommerce-js input[type=number],.woocommerce-js input[type=password],.woocommerce-js input[type=reset],.woocommerce-js input[type=search],.woocommerce-js input[type=tel],.woocommerce-js input[type=text],.woocommerce-js input[type=url],.woocommerce-js textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce-js form .form-row textarea:focus,.woocommerce-js input[type=email]:focus,.woocommerce-js input[type=number]:focus,.woocommerce-js input[type=password]:focus,.woocommerce-js input[type=reset]:focus,.woocommerce-js input[type=search]:focus,.woocommerce-js input[type=tel]:focus,.woocommerce-js input[type=text]:focus,.woocommerce-js input[type=url]:focus,.woocommerce-js textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce-js .select2-container .select2-dropdown,.woocommerce-js .select2-container .select2-search__field,.woocommerce-page .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-search__field{border:1px solid var(--ast-border-color);z-index:98}.woocommerce-js .select2-container .select2-selection--single,.woocommerce-js select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-right:2em;appearance:none;background-position:98% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce-js .select2-container .select2-selection--single:focus,.woocommerce-js select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce-js .select2-container .select2-selection--single b,.woocommerce-js select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce-js .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:0 -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 2em 1em 3.5em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;left:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:right}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:left}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:right;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:right}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:left;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 4px 0 0;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-left:0;border-right:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:left;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:left}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:left}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:left;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:left;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:left;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 1em 0 0}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px 0 0 .5em;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-left:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 1em 0 0;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:right .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-1em;left:0;margin:-1em 0 0 2em}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:right;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart .cart_totals .shop_table{table-layout:fixed}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-right:0}.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-left:0;border-right:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 10px 10px 0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-right:0;padding-left:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:right}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-right-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-left:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce ul.cart_list,.woocommerce-js #secondary .woocommerce ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 0 .6em 5em;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-left:5px;margin-right:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-right:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;left:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-right:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 0 1.2em 5em}.woocommerce .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;left:auto;right:0;top:1.1em;color:var(--ast-global-color-3)}.woocommerce .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-right-radius:0;border-bottom-right-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-left-radius:0;border-bottom-left-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-right:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-right:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:right}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(-180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:left;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;right:10px;left:auto;margin:-.5em -.5em 0 0}.widget_product_categories .children{padding-left:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.wc-block-product-categories-list li{padding-left:15px}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 .5rem 0 0;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-left:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-left:-1em}.sidebar-main .ast-mini-cart-empty .woocommerce-mini-cart__empty-message{display:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min-rtl.css b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min-rtl.css index c21e59d52..30fcab43d 100644 --- a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min-rtl.css +++ b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min-rtl.css @@ -1 +1 @@ -@charset "UTF-8";@keyframes spin{100%{transform:rotate(-360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;right:0;left:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-right:0;padding-right:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{left:0;right:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:right;width:auto;position:relative;right:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:right}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;right:-999em;display:block;line-height:1.618;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;right:auto;left:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-right:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-right:-12px;left:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 5em .5em 2em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-left:0;width:100%;margin-right:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:right;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:left}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-right:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{left:auto;right:0;transition:right 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:15px;left:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:11px;left:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;right:50%;transform:translateX(50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-right-radius:10em;border-top-left-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:left}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:right}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.ast-header-break-point.ast-hfb-header.ast-woocommerce-cart-menu .ast-site-header-cart{padding:0}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em;text-decoration:inherit}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-left:15px;align-items:center;font-weight:500}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;left:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;right:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;right:22px;transform:rotate(45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:right;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-left:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:left;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 2px 0 0}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-right:16px;width:0}.woocommerce-js div.product div.social iframe{float:right;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;right:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 0 0 1em;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit;outline:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;right:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;right:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-right-width:1px;border-style:solid;padding-right:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-right:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:right}.woocommerce-js div.product #reviews .comment-form-email{float:left}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:right;margin:0 0 1em 1em}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-right:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-left:0;padding-right:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-right:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:right;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-left:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:right;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-right:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js div.product .related.products ul.products{margin:0}.woocommerce-js div.product .related.products ul.products li.product{width:22.5%;width:calc(25% - 15px)}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;right:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;right:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both;zoom:1}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{content:' ';display:table}.woocommerce-js .products ul::after,.woocommerce-js ul.products::after{clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;left:0;right:auto;margin:-.5em 0 0 -.5em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination{text-align:right}.woocommerce-js nav.woocommerce-pagination ul{display:inline-block;text-align:center;white-space:normal;padding:0;clear:both;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 0 5px 5px;border:1px solid var(--ast-border-color);padding:0;float:right;display:inline;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;right:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;left:-.5em;right:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-right:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:left;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments .add_review{zoom:1}.woocommerce-js #reviews #comments .add_review::after,.woocommerce-js #reviews #comments .add_review::before{content:' ';display:table}.woocommerce-js #reviews #comments .add_review::after{clear:both}.woocommerce-js #reviews #comments h2{clear:none}.woocommerce-js #reviews #comments ol.commentlist{zoom:1;margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist::after,.woocommerce-js #reviews #comments ol.commentlist::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:100%;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:right;position:absolute;top:0;right:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 50px 0 0;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-right:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 50px 0 0}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 50px 0 0}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-left:.5em}.woocommerce-js .star-rating{float:left;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:right;top:0;right:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:right;top:0;right:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;right:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 0 0 4px;float:right}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{right:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;right:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 0 24px -1px;text-align:right;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:left}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em .25em .125em 0}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:right;clear:both;margin-left:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:left;margin-right:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-right:1em;border-right:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:right;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 0 0 4px;clear:right}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-left:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 0 0 8px;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:right;margin-left:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-left:1px dashed var(--ast-border-color);padding-left:2em;margin-right:0;padding-right:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-left-width:2px;text-align:right;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-right:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:right;padding:0 0 1px 1px;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:left}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:left;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:right}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:right;margin-right:.5em;margin-left:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{right:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{left:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;right:0;height:100%;left:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-right:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:right}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{text-align:right;margin-bottom:2.5em}.woocommerce ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.woocommerce ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;right:1em;left:1em;padding:.5em 0 .7em}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-left:0}.woocommerce table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce table.shop_table td,.woocommerce table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce table.shop_table td.download-file,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce table.shop_table td.download-file a,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-left:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce table.shop_table td.download-file a:last-child,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-left:0}.woocommerce table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce form .form-row textarea,.woocommerce input[type=email],.woocommerce input[type=number],.woocommerce input[type=password],.woocommerce input[type=reset],.woocommerce input[type=search],.woocommerce input[type=tel],.woocommerce input[type=text],.woocommerce input[type=url],.woocommerce textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce form .form-row textarea:focus,.woocommerce input[type=email]:focus,.woocommerce input[type=number]:focus,.woocommerce input[type=password]:focus,.woocommerce input[type=reset]:focus,.woocommerce input[type=search]:focus,.woocommerce input[type=tel]:focus,.woocommerce input[type=text]:focus,.woocommerce input[type=url]:focus,.woocommerce textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-dropdown{border:1px solid var(--ast-border-color);z-index:98}.woocommerce .select2-container .select2-selection--single,.woocommerce select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-left:2em;appearance:none;background-position:2% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce .select2-container .select2-selection--single:focus,.woocommerce select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce .select2-container .select2-selection--single b,.woocommerce select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:100% -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 3.5em 1em 2em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;right:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:left}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-right:0!important;margin-right:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:right}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:left;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:left}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:right;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 0 0 4px;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-right:0;border-left:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:right;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:right}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:right}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:right;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:right;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:right;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 0 0 1em}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px .5em 0 0;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-right:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 0 0 1em;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:left .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;position:absolute;top:-1em;right:0;margin:-1em 2em 0 0}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:left;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-left:0}.woocommerce-cart table.shop_table .woocommerce-Price-amount,.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-right:0;border-left:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions .button{padding:.5em 1em;line-height:1.5}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 0 10px 10px;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-left:0;padding-right:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:left}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-left-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-right:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce-js ul.cart_list,.woocommerce-js #secondary .woocommerce-js ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 5em .6em 0;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-right:5px;margin-left:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-left:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;right:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-left:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 5em 1.2em 1.8em}.woocommerce-js .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;right:auto;left:0;top:.5em;color:var(--ast-global-color-3)}.woocommerce-js .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-left-radius:0;border-bottom-left-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-right-radius:0;border-bottom-right-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-left:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-left:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:left}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(-180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:right;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;left:10px;right:auto;margin:-.5em 0 0 -.5em}.widget_product_categories .children{padding-right:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 0 0 .5rem;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-right:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-right:-1em} \ No newline at end of file +@charset "UTF-8";@keyframes spin{100%{transform:rotate(-360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;right:0;left:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-right:0;padding-right:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{left:0;right:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:right;width:auto;position:relative;right:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:right}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;right:-999em;display:block;line-height:1.618;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;right:auto;left:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-right:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-right:-12px;left:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 5em .5em 2em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-left:0;width:100%;margin-right:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:right;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:left}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-right:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{left:auto;right:0;transition:right 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:15px;left:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{right:11px;left:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;right:50%;transform:translateX(50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-right-radius:10em;border-top-left-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:left}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:right}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.ast-header-break-point.ast-hfb-header.ast-woocommerce-cart-menu .ast-site-header-cart{padding:0}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;right:50%;margin-right:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em;text-decoration:inherit}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-left:15px;align-items:center;font-weight:500}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;left:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;right:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;right:22px;transform:rotate(45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:right;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-left:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-left:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:right}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-left:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:left;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 2px 0 0}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-right:16px;width:0}.woocommerce-js div.product div.social iframe{float:right;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;right:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 0 0 1em;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit;outline:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;right:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;right:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-right-width:1px;border-style:solid;padding-right:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-right:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:right}.woocommerce-js div.product #reviews .comment-form-email{float:left}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:right;margin:0 0 1em 1em}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-right:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-left:0;padding-right:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-right:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:right;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-left:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:right;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-right:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js div.product .related.products ul.products{margin:0}.woocommerce-js div.product .related.products ul.products li.product{width:22.5%;width:calc(25% - 15px)}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;right:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;right:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both;zoom:1}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{content:' ';display:table}.woocommerce-js .products ul::after,.woocommerce-js ul.products::after{clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;left:0;right:auto;margin:-.5em 0 0 -.5em}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination{text-align:right}.woocommerce-js nav.woocommerce-pagination ul{display:inline-block;text-align:center;white-space:normal;padding:0;clear:both;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 0 5px 5px;border:1px solid var(--ast-border-color);padding:0;float:right;display:inline;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;right:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;left:-.5em;right:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-right:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:left;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments .add_review{zoom:1}.woocommerce-js #reviews #comments .add_review::after,.woocommerce-js #reviews #comments .add_review::before{content:' ';display:table}.woocommerce-js #reviews #comments .add_review::after{clear:both}.woocommerce-js #reviews #comments h2{clear:none}.woocommerce-js #reviews #comments ol.commentlist{zoom:1;margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist::after,.woocommerce-js #reviews #comments ol.commentlist::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:100%;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:right;position:absolute;top:0;right:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 50px 0 0;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-right:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 50px 0 0}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 50px 0 0}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-left:.5em}.woocommerce-js .star-rating{float:left;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:right;top:0;right:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:right;top:0;right:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;right:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 0 0 4px;float:right}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{right:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;right:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:right}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 0 24px -1px;text-align:right;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:left}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em .25em .125em 0}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:right}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:right;clear:both;margin-left:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:left;margin-right:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-right:1em;border-right:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:right;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 0 0 4px;clear:right}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-left:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 0 0 8px;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:right;margin-left:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-left:1px dashed var(--ast-border-color);padding-left:2em;margin-right:0;padding-right:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-left-width:2px;text-align:right;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-right:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;margin-right:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:right;padding:0 0 1px 1px;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:left}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:left;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:right}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:right;margin-right:.5em;margin-left:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{right:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{left:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;right:0;height:100%;left:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-right:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:right}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{text-align:right;margin-bottom:2.5em}.woocommerce ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.woocommerce ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;right:1em;left:1em;padding:.5em 0 .7em}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-left:0}.woocommerce table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce table.shop_table td,.woocommerce table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce table.shop_table td.download-file,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce table.shop_table td.download-file a,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-left:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce table.shop_table td.download-file a:last-child,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-left:0}.woocommerce table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce form .form-row textarea,.woocommerce input[type=email],.woocommerce input[type=number],.woocommerce input[type=password],.woocommerce input[type=reset],.woocommerce input[type=search],.woocommerce input[type=tel],.woocommerce input[type=text],.woocommerce input[type=url],.woocommerce textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce form .form-row textarea:focus,.woocommerce input[type=email]:focus,.woocommerce input[type=number]:focus,.woocommerce input[type=password]:focus,.woocommerce input[type=reset]:focus,.woocommerce input[type=search]:focus,.woocommerce input[type=tel]:focus,.woocommerce input[type=text]:focus,.woocommerce input[type=url]:focus,.woocommerce textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-dropdown{border:1px solid var(--ast-border-color);z-index:98}.woocommerce .select2-container .select2-selection--single,.woocommerce select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-left:2em;appearance:none;background-position:2% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce .select2-container .select2-selection--single:focus,.woocommerce select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce .select2-container .select2-selection--single b,.woocommerce select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:100% -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 3.5em 1em 2em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;right:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:left}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-right:0!important;margin-right:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:right}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:left;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-right:0;padding-right:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:left}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:right;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 0 0 4px;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-right:0;border-left:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:right;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:right}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:right}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:right;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:right;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:right;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 0 0 1em}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px .5em 0 0;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-right:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 0 0 1em;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:left .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;position:absolute;top:-1em;right:0;margin:-1em 2em 0 0}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:left;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-left:0}.woocommerce-cart table.shop_table .woocommerce-Price-amount,.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-right:0;border-left:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions .button{padding:.5em 1em;line-height:1.5}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 0 10px 10px;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-left:0;padding-right:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:left}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-left-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-left-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-right:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce-js ul.cart_list,.woocommerce-js #secondary .woocommerce-js ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 5em .6em 0;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-right:5px;margin-left:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-left:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;right:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-left:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 5em 1.2em 1.8em}.woocommerce-js .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;right:auto;left:0;top:.5em;color:var(--ast-global-color-3)}.woocommerce-js .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-left-radius:0;border-bottom-left-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-right-radius:0;border-bottom-right-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-left:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-left:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:left}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(-180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:right;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 0 .5em auto;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;left:10px;right:auto;margin:-.5em 0 0 -.5em}.widget_product_categories .children{padding-right:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 0 0 .5rem;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-right:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-right:-1em}.sidebar-main .ast-mini-cart-empty .woocommerce-mini-cart__empty-message{display:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min.css b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min.css index 9874e7d62..72af36649 100644 --- a/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min.css +++ b/wp-content/themes/astra/assets/css/minified/compatibility/woocommerce/woocommerce.min.css @@ -1 +1 @@ -@charset "UTF-8";@keyframes spin{100%{transform:rotate(360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;left:0;right:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-left:0;padding-left:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{right:0;left:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:left;width:auto;position:relative;left:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:left}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;left:-999em;display:block;line-height:1.618;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;left:auto;right:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-left:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-left:-12px;right:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 2em .5em 5em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-right:0;width:100%;margin-left:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:left;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:right}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-left:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{right:auto;left:0;transition:left 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:15px;right:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:11px;right:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;left:50%;transform:translateX(-50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-left-radius:10em;border-top-right-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:right}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:left}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.ast-header-break-point.ast-hfb-header.ast-woocommerce-cart-menu .ast-site-header-cart{padding:0}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em;text-decoration:inherit}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-right:15px;align-items:center;font-weight:500}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;right:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;left:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;left:22px;transform:rotate(-45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:left;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-right:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:right;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 0 0 2px}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-left:16px;width:0}.woocommerce-js div.product div.social iframe{float:left;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 1em 0 0;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit;outline:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;left:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;left:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-left-width:1px;border-style:solid;padding-left:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-left:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:left}.woocommerce-js div.product #reviews .comment-form-email{float:right}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:left;margin:0 1em 1em 0}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-left:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-right:0;padding-left:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-left:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:left;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-right:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:left;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-left:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js div.product .related.products ul.products{margin:0}.woocommerce-js div.product .related.products ul.products li.product{width:22.5%;width:calc(25% - 15px)}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;left:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;left:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both;zoom:1}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{content:' ';display:table}.woocommerce-js .products ul::after,.woocommerce-js ul.products::after{clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;right:0;left:auto;margin:-.5em -.5em 0 0}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination{text-align:left}.woocommerce-js nav.woocommerce-pagination ul{display:inline-block;text-align:center;white-space:normal;padding:0;clear:both;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 5px 5px 0;border:1px solid var(--ast-border-color);padding:0;float:left;display:inline;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;left:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;right:-.5em;left:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-left:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:right;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments .add_review{zoom:1}.woocommerce-js #reviews #comments .add_review::after,.woocommerce-js #reviews #comments .add_review::before{content:' ';display:table}.woocommerce-js #reviews #comments .add_review::after{clear:both}.woocommerce-js #reviews #comments h2{clear:none}.woocommerce-js #reviews #comments ol.commentlist{zoom:1;margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist::after,.woocommerce-js #reviews #comments ol.commentlist::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:0;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:left;position:absolute;top:0;left:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 0 0 50px;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-left:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 0 0 50px}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 0 0 50px}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-right:.5em}.woocommerce-js .star-rating{float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:left;top:0;left:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;left:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 4px 0 0;float:left}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{left:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;left:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 -1px 24px 0;text-align:left;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:right}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em 0 .125em .25em}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:left;clear:both;margin-right:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:right;margin-left:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-left:1em;border-left:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:left;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 4px 0 0;clear:left}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-right:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 8px 0 0;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:left;margin-right:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-right:1px dashed var(--ast-border-color);padding-right:2em;margin-left:0;padding-left:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-right-width:2px;text-align:left;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-left:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:left;padding:0 1px 1px 0;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:right}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:right;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:left}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:left;margin-left:.5em;margin-right:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{left:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{right:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;left:0;height:100%;right:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-left:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:left}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{text-align:left;margin-bottom:2.5em}.woocommerce ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.woocommerce ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;left:1em;right:1em;padding:.5em 0 .7em}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-right:0}.woocommerce table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce table.shop_table td,.woocommerce table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce table.shop_table td.download-file,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce table.shop_table td.download-file a,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-right:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce table.shop_table td.download-file a:last-child,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-right:0}.woocommerce table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce form .form-row textarea,.woocommerce input[type=email],.woocommerce input[type=number],.woocommerce input[type=password],.woocommerce input[type=reset],.woocommerce input[type=search],.woocommerce input[type=tel],.woocommerce input[type=text],.woocommerce input[type=url],.woocommerce textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce form .form-row textarea:focus,.woocommerce input[type=email]:focus,.woocommerce input[type=number]:focus,.woocommerce input[type=password]:focus,.woocommerce input[type=reset]:focus,.woocommerce input[type=search]:focus,.woocommerce input[type=tel]:focus,.woocommerce input[type=text]:focus,.woocommerce input[type=url]:focus,.woocommerce textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-dropdown{border:1px solid var(--ast-border-color);z-index:98}.woocommerce .select2-container .select2-selection--single,.woocommerce select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-right:2em;appearance:none;background-position:98% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce .select2-container .select2-selection--single:focus,.woocommerce select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce .select2-container .select2-selection--single b,.woocommerce select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:0 -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 2em 1em 3.5em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;left:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:right}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:left}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:right;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:right}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:left;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 4px 0 0;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-left:0;border-right:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:left;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:left}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:left}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:left;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:left;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:left;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 1em 0 0}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px 0 0 .5em;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-left:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 1em 0 0;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:right .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-1em;left:0;margin:-1em 0 0 2em}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:right;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-right:0}.woocommerce-cart table.shop_table .woocommerce-Price-amount,.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-left:0;border-right:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions .button{padding:.5em 1em;line-height:1.5}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 10px 10px 0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-right:0;padding-left:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:right}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-right-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-left:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce-js ul.cart_list,.woocommerce-js #secondary .woocommerce-js ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 0 .6em 5em;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-left:5px;margin-right:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-right:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;left:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-right:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 1.8em 1.2em 5em}.woocommerce-js .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;left:auto;right:0;top:.5em;color:var(--ast-global-color-3)}.woocommerce-js .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-right-radius:0;border-bottom-right-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-left-radius:0;border-bottom-left-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-right:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-right:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:right}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(-180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:left;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;right:10px;left:auto;margin:-.5em -.5em 0 0}.widget_product_categories .children{padding-left:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 .5rem 0 0;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-left:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-left:-1em} \ No newline at end of file +@charset "UTF-8";@keyframes spin{100%{transform:rotate(360deg)}}@keyframes dotPulse{0%{transform:scale(.1);opacity:0}50%{opacity:1}to{transform:scale(1.2);opacity:0}}@font-face{font-family:star;src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/star.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/star.svg#star") format("svg");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot");src:url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix") format("embedded-opentype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype"),url("../../../../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce") format("svg");font-weight:400;font-style:normal}.woocommerce-store-notice,p.demo_store{position:fixed;top:0;left:0;right:0;margin:0;width:100%;font-size:1em;padding:1em 0;text-align:center;background-color:#a46497;color:#fff;z-index:99998;box-shadow:0 1px 1em rgba(0,0,0,.2);display:none}.woocommerce-store-notice a,p.demo_store a{color:#fff;text-decoration:underline}.woocommerce-store-notice[data-position=bottom],p.demo_store[data-position=bottom]{bottom:0;top:initial}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.clear{clear:both}.ast-site-header-cart,.woocommerce .ast-site-header-cart{position:relative;list-style-type:none;margin-left:0;padding-left:0;margin-bottom:0;order:1;cursor:pointer}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart,.woocommerce .ast-site-header-cart:focus .widget_shopping_cart,.woocommerce .ast-site-header-cart:hover .widget_shopping_cart{right:0;left:auto}.ast-site-header-cart .ast-shopping-cart-icon,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon{display:initial;vertical-align:middle}.ast-site-header-cart .ast-shopping-cart-icon:before,.woocommerce .ast-site-header-cart .ast-shopping-cart-icon:before{content:"\e854";font-family:Astra;font-size:18px;font-size:1.2857rem}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons{margin:1.41575em}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{width:100%}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button{text-align:center}.ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .ast-mini-cart-message .woocommerce-mini-cart__empty-message{text-align:center;margin-bottom:0}.ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .widget_shopping_cart_content>ul{text-align:left;width:auto;position:relative;left:auto;top:auto;border-top:0}.ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .ast-site-header-cart-data .woocommerce-mini-cart__empty-message{text-align:left}.ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-site-header-cart .widget_shopping_cart{position:absolute;top:100%;width:280px;z-index:999999;font-size:.875em;left:-999em;display:block;line-height:1.618;opacity:0;visibility:hidden;transition:all .3s ease}.ast-site-header-cart .widget_shopping_cart:after,.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{bottom:99.9%;left:auto;right:8px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-site-header-cart .widget_shopping_cart:after{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:6px;margin-left:-6px;margin-bottom:-.3px}.ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-site-header-cart .widget_shopping_cart:before{border-color:rgba(230,230,230,0);border-bottom-color:var(--ast-border-color);border-width:7px;margin-left:-12px;right:7px}.ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .widget_shopping_cart_content>.woocommerce-mini-cart__empty-message{display:none}.ast-site-header-cart .widget_shopping_cart .product_list_widget,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget{padding:1em 1.5em;max-height:500px;max-height:50vh;overflow-y:auto}.ast-site-header-cart .widget_shopping_cart .product_list_widget li,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li{padding:.5em 2em .5em 5em;border-bottom:1px solid var(--ast-border-color)}.ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li .remove{top:.4em}.ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li:last-child{border-bottom:0}.ast-site-header-cart .widget_shopping_cart .product_list_widget li img,.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li img{max-width:4em;margin:0 0 .5em 0}.ast-site-header-cart .widget_shopping_cart p.buttons,.ast-site-header-cart .widget_shopping_cart p.total,.woocommerce .ast-site-header-cart .widget_shopping_cart p.buttons,.woocommerce .ast-site-header-cart .widget_shopping_cart p.total{padding:1em 1.5em;margin:0;text-align:center}.ast-site-header-cart .widget_shopping_cart .buttons .button,.ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button,.woocommerce .ast-site-header-cart .widget_shopping_cart .buttons .button.wc-forward{display:block;margin-right:0;width:100%;margin-left:0}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__empty-message{margin:1.41575em}.ast-site-header-cart .widget_shopping_cart .cart_list a,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a{padding:0}.ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.woocommerce .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{border-width:1px}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total{display:flex;justify-content:space-between}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total strong{width:40%;text-align:left;font-weight:500}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{width:60%;text-align:right}.ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount,.woocommerce .ast-site-header-cart .widget_shopping_cart .woocommerce-mini-cart__total .amount{padding-left:.5em}.ast-site-header-cart:focus .widget_shopping_cart,.ast-site-header-cart:hover .widget_shopping_cart{opacity:1;visibility:visible}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list .variation,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .quantity,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list .variation{margin-bottom:.4em}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove{color:var(--ast-global-color-3)}.ast-above-header-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.ast-below-header .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover,.main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart .cart_list a.remove:hover{color:var(--ast-global-color-3)}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.site-header-section-left .ast-site-header-cart .widget_shopping_cart,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart{right:auto;left:0;transition:left 0s}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:after,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:15px;right:auto}.ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.site-header-section-left .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .ast-above-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .below-header-section-1 .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .header-main-layout-3 .main-header-bar-wrap .ast-site-header-cart .widget_shopping_cart:before,.woocommerce .site-header-section-left .ast-site-header-cart .widget_shopping_cart:before{left:11px;right:auto}.ast-cart-menu-wrap{display:inline-block;line-height:1}.ast-cart-menu-wrap .count{font-weight:700;position:relative;display:inline-block;vertical-align:middle;text-align:center;min-width:2.1em;min-height:2.1em;font-size:.86em;line-height:1.8;border-radius:0 0 .3em .3em;border-width:2px;border-style:solid;padding:0 .4em}.ast-cart-menu-wrap .count:after{bottom:100%;margin-bottom:0;height:.8em;width:.8em;left:50%;transform:translateX(-50%);top:-.6em;content:' ';position:absolute;pointer-events:none;border-width:2px;border-style:solid;border-top-left-radius:10em;border-top-right-radius:10em;border-bottom:0}.ast-woocommerce-cart-menu .main-header-menu .woocommerce-custom-menu-item li:hover>a.remove{color:#ccc}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-1.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:right}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart{flex:1}.ast-woocommerce-cart-menu .header-main-layout-3.ast-no-menu-items .ast-site-header-cart .ast-site-header-cart-li{text-align:left}.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:flex;justify-content:center}.ast-woocommerce-cart-menu .header-main-layout-2 .site-branding{flex:0 0 100%}.ast-header-break-point .woocommerce-custom-menu-item .ast-cart-menu-wrap{width:2em;height:2em;font-size:1.4em;line-height:2;vertical-align:middle;text-align:right}.ast-header-break-point .ast-button-wrap .main-header-menu-toggle{font-size:1.4em}.ast-header-break-point .main-header-menu .woocommerce-custom-menu-item .ast-cart-menu-wrap{height:3em;line-height:3;text-align:left}.ast-header-break-point #ast-site-header-cart .widget_shopping_cart{display:none}.ast-header-break-point.ast-woocommerce-cart-menu .ast-site-header-cart{order:initial;line-height:3;padding:0 1em 1em 0}.ast-header-break-point.ast-woocommerce-cart-menu .header-main-layout-3 .ast-site-header-cart{padding:0 0 1em 1em}.ast-header-break-point.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item{margin-bottom:0;margin-top:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart{padding:0}.ast-header-break-point .ast-masthead-custom-menu-items.woocommerce-custom-menu-item .ast-site-header-cart a{border:none;display:inline-block}.ast-header-break-point.ast-hfb-header.ast-woocommerce-cart-menu .ast-site-header-cart{padding:0}.woocommerce-js .blockUI.blockOverlay{position:relative}.woocommerce-js .blockUI.blockOverlay::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js .loader::before{height:1em;width:1em;display:block;position:absolute;top:50%;left:50%;margin-left:-.5em;margin-top:-.5em;content:'';animation:spin 1s ease-in-out infinite;background:url("../../../../../../../plugins/woocommerce/assets/images/icons/loader.svg") center center;background-size:cover;line-height:1;text-align:center;font-size:2em;color:rgba(0,0,0,.75)}.woocommerce-js h2{margin-bottom:.7em}.woocommerce-js a.remove{position:relative;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-weight:400;font-size:18px;width:20px;height:20px;text-align:center;line-height:21px;border-radius:100%;color:var(--ast-global-color-3);text-decoration:none;opacity:.5}.woocommerce-js a.remove .ahfb-svg-iconset{transform:scale(.7);transition:none}.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg{width:100%;height:100%}.woocommerce-js a.remove:before{content:'';position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%;border:1px solid var(--ast-global-color-3);border-radius:100%;transition:all .2s linear}.woocommerce-js a.remove:hover{color:var(--ast-global-color-3);opacity:1}.woocommerce-js a.remove:hover:before{border-color:var(--ast-global-color-3)}.woocommerce-js small.note{display:block;color:#777;font-size:.857em;margin-top:10px}.woocommerce-js .woocommerce-breadcrumb{zoom:1;margin:0 0 1em;padding:0;font-size:.92em;color:#777}.woocommerce-js .woocommerce-breadcrumb::after,.woocommerce-js .woocommerce-breadcrumb::before{content:' ';display:table}.woocommerce-js .woocommerce-breadcrumb::after{clear:both}.woocommerce-js .woocommerce-breadcrumb a{color:#777}.woocommerce-js .quantity input[type=email],.woocommerce-js .quantity input[type=number],.woocommerce-js .quantity input[type=text]{padding:.3em}.woocommerce-js .quantity input[type=email]:focus,.woocommerce-js .quantity input[type=number]:focus,.woocommerce-js .quantity input[type=text]:focus{outline:0;border-color:var(--ast-border-color)}.woocommerce-js .quantity .qty{width:3.631em;text-align:center;min-height:35px}.woocommerce-js div.product{margin-bottom:0;position:relative}.woocommerce-js div.product .product_title{clear:none;margin-top:0;padding:0}.woocommerce-js div.product p.price,.woocommerce-js div.product span.price{color:#77a464;font-size:1.5rem;font-weight:700;margin:0 0 .2em}.woocommerce-js div.product p.price ins,.woocommerce-js div.product span.price ins{background:inherit;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js div.product p.price del,.woocommerce-js div.product span.price del{opacity:.5;font-weight:400;display:initial}.woocommerce-js div.product p.ast-stock-detail,.woocommerce-js div.product p.stock{font-size:1em}.woocommerce-js div.product p.ast-stock-detail .ast-stock-avail,.woocommerce-js div.product p.stock .ast-stock-avail{font-weight:700}.woocommerce-js div.product .stock{color:#77a464}.woocommerce-js div.product .out-of-stock{color:red}.woocommerce-js div.product .product_title{margin:0 0 .5em 0}.woocommerce-js div.product .product_meta{border-top:1px solid var(--ast-border-color);padding-top:.5em;font-size:.9em;margin:0 0 .8em;text-decoration:inherit}.woocommerce-js div.product .product_meta>span{display:inline-block;margin-right:15px;align-items:center;font-weight:500}.woocommerce-js div.product .product_meta>span>*{font-weight:400}.woocommerce-js div.product .woocommerce-product-rating{margin:0 0 .5em}.woocommerce-js div.product div.images{margin-bottom:2em}.woocommerce-js div.product div.images img{display:block;width:100%;height:auto;box-shadow:none}.woocommerce-js div.product div.images div.thumbnails{padding-top:1em}.woocommerce-js div.product div.images.woocommerce-product-gallery{position:relative}.woocommerce-js div.product div.images.woocommerce-product-gallery .flex-viewport{transform-style:preserve-3d;margin-bottom:1em}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper{transition:all cubic-bezier(.795, -.035, 0, 1) .5s;margin:0;padding:0}.woocommerce-js div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color:#fff}.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%;display:inline-block}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger{position:absolute;top:.5em;right:.5em;font-size:2em;z-index:9;width:36px;height:36px;background:var(--ast-global-color-5);text-indent:-9999px;border-radius:100%;box-sizing:content-box;backface-visibility:hidden}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:before{content:"";display:block;width:10px;height:10px;border:2px solid var(--ast-global-color-3);border-radius:100%;position:absolute;top:9px;left:9px;box-sizing:content-box}.woocommerce-js div.product div.images .woocommerce-product-gallery__trigger:after{content:"";display:block;width:2px;height:8px;background:var(--ast-global-color-3);border-radius:6px;position:absolute;top:19px;left:22px;transform:rotate(-45deg);box-sizing:content-box}.woocommerce-js div.product div.images .flex-control-thumbs{overflow:hidden;zoom:1;margin:0;padding:0}.woocommerce-js div.product div.images .flex-control-thumbs li{width:25%;float:left;margin:0;list-style:none}.woocommerce-js div.product div.images .flex-control-thumbs li img{cursor:pointer;opacity:.5;margin:0}.woocommerce-js div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce-js div.product div.images .flex-control-thumbs li img:hover{opacity:1}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li{width:32%;width:calc(33.33% - .7em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li{width:24%;width:calc(25% - .75em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n){margin-right:0}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li{width:18.5%;width:calc(20% - .8em);margin-right:1em;margin-bottom:1em}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1){clear:left}.woocommerce-js div.product div.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n){margin-right:0}.woocommerce-js div.product div.summary{margin-bottom:2em}.woocommerce-js div.product div.summary .single-product-category{display:block;line-height:1;margin-bottom:1em}.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child{margin-bottom:1em}.woocommerce-js div.product div.social{text-align:right;margin:0 0 1em}.woocommerce-js div.product div.social span{margin:0 0 0 2px}.woocommerce-js div.product div.social span span{margin:0}.woocommerce-js div.product div.social span .stButton .chicklets{padding-left:16px;width:0}.woocommerce-js div.product div.social iframe{float:left;margin-top:3px}.woocommerce-js div.product .woocommerce-tabs{padding-top:2em;margin-bottom:4em;width:100%}.woocommerce-js div.product .woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 1em;overflow:hidden;position:relative}.woocommerce-js div.product .woocommerce-tabs ul.tabs:before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs ul.tabs li{border:0;background:0 0;display:inline-block;position:relative;z-index:0;border-radius:4px 4px 0 0;margin:0 1em 0 0;padding:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:.5em 0;font-weight:700;color:#515151;text-decoration:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li a:hover{text-decoration:none;color:#6b6a6b}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active{z-index:2;border-bottom-color:#fff}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active a{text-shadow:inherit;outline:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before{content:' ';position:absolute;width:100%;height:3px;box-shadow:none;top:0;left:0;border-radius:0}.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::after{border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs li::before{content:' ';position:absolute;bottom:-1px;width:5px;height:5px;border:none;box-shadow:none}.woocommerce-js div.product .woocommerce-tabs ul.tabs::before{position:absolute;content:' ';width:100%;bottom:0;left:0;border-bottom:1px solid var(--ast-border-color);z-index:1}.woocommerce-js div.product .woocommerce-tabs ul.tabs li::after,.woocommerce-js div.product .woocommerce-tabs ul.tabs.tabs::before{display:none;border:0}.woocommerce-js div.product .woocommerce-tabs .panel{margin:0 0 1.2em;padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes{border-style:solid}.woocommerce-js div.product .woocommerce-tabs .shop_attributes p{padding:0}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td,.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{padding:.67em 1.34em;border-color:var(--ast-border-color)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes th{border-left-width:1px;border-style:solid;padding-left:.9em;color:var(--ast-global-color-2)}.woocommerce-js div.product .woocommerce-tabs .shop_attributes td{font-style:normal;border-style:solid}.woocommerce-js div.product #reviews #comments{width:100%}.woocommerce-js div.product #reviews #review_form_wrapper{width:100%;padding-left:0}.woocommerce-js div.product #reviews #respond p.comment-form-author,.woocommerce-js div.product #reviews #respond p.comment-form-email{margin-bottom:1em}@media (min-width:1201px){.woocommerce-js div.product #reviews .comment-form-author,.woocommerce-js div.product #reviews .comment-form-email{width:49%;display:inline-block}.woocommerce-js div.product #reviews .comment-form-author input,.woocommerce-js div.product #reviews .comment-form-email input{width:100%}.woocommerce-js div.product #reviews .comment-form-author{float:left}.woocommerce-js div.product #reviews .comment-form-email{float:right}.woocommerce-js div.product #reviews .comment-form-cookies-consent{clear:both}}.woocommerce-js div.product p.cart{margin-bottom:2em;zoom:1}.woocommerce-js div.product p.cart::after,.woocommerce-js div.product p.cart::before{content:' ';display:table}.woocommerce-js div.product p.cart::after{clear:both}.woocommerce-js div.product form.cart{zoom:1}.woocommerce-js div.product form.cart .ast-woo-single-cart-button-wrap{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-js div.product form.cart::after,.woocommerce-js div.product form.cart::before{content:' ';display:table}.woocommerce-js div.product form.cart::after{clear:both}.woocommerce-js div.product form.cart div.quantity{float:left;margin:0 1em 1em 0}.woocommerce-js div.product form.cart table{border-width:0 0 1px;margin:0 0 1em}.woocommerce-js div.product form.cart table td{padding-left:0}.woocommerce-js div.product form.cart table div.quantity{float:none;margin:0}.woocommerce-js div.product form.cart table small.stock{display:block;float:none}.woocommerce-js div.product form.cart .variations{border-bottom:1px solid var(--ast-border-color);position:relative;margin-bottom:1em;width:100%}.woocommerce-js div.product form.cart .variations td,.woocommerce-js div.product form.cart .variations th{border:0;vertical-align:top;line-height:2em;padding-top:0;padding-bottom:0;padding-right:0;padding-left:0;display:block}.woocommerce-js div.product form.cart .variations tr{margin-bottom:.5em}.woocommerce-js div.product form.cart .variations th{margin-bottom:.5em;padding-left:0}.woocommerce-js div.product form.cart .variations label{font-weight:700}.woocommerce-js div.product form.cart .variations select{max-width:100%;min-width:75%;display:inline-block;width:100%}.woocommerce-js div.product form.cart .variations td.label{vertical-align:middle;margin-top:8px;margin-bottom:1px}.woocommerce-js div.product form.cart .woocommerce-variation-description p{margin-bottom:1em}.woocommerce-js div.product form.cart .reset_variations{visibility:hidden;font-size:.83em;position:static;display:inline-block;color:inherit;opacity:.6;font-size:11px;text-transform:uppercase}.woocommerce-js div.product form.cart .wc-no-matching-variations{display:none}.woocommerce-js div.product form.cart .button{vertical-align:middle;float:left;width:auto;margin-bottom:1em}.woocommerce-js div.product form.cart .button.single_add_to_cart_button{padding:10px 20px}.woocommerce-js div.product form.cart .group_table tr:last-child td{border-bottom:0}.woocommerce-js div.product form.cart .group_table td.label{padding:.5em;font-size:.8rem;line-height:1.3;font-weight:700}.woocommerce-js div.product form.cart .group_table td{vertical-align:middle;padding-bottom:.5em;border-right:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js div.product form.cart .group_table td:first-child{text-align:left;width:4em}.woocommerce-js div.product form.cart .group_table td.price{padding-left:.8em;font-weight:700;font-size:.9rem}.woocommerce-js div.product form.cart .group_table td.price del{opacity:.5}.woocommerce-js div.product form.cart .group_table .button{padding:.8em;font-weight:400;font-size:.9rem;white-space:nowrap}.woocommerce-js div.product form.cart .group_table .wc-grouped-product-add-to-cart-checkbox{display:inline-block;width:auto;margin:0 auto;transform:scale(1.5,1.5)}.woocommerce-js div.product form.cart p.stock{line-height:1.3;margin-bottom:.8em;font-size:.9em}.woocommerce-js div.product form.cart .single_variation_wrap{width:100%}.woocommerce-js div.product form.cart .single_variation_wrap p{margin-bottom:1em}.woocommerce-js div.product form.cart .single_variation_wrap .single_variation{margin-bottom:1.2em;border-top:1px solid var(--ast-border-color);padding-top:0;border-top:0}.woocommerce-js div.product span.onsale{min-height:3.5em;min-width:3.5em;line-height:3.5em}.woocommerce-js div.product .related.products,.woocommerce-js div.product .woocommerce-tabs{display:block}.woocommerce-js div.product .related.products ul.products{margin:0}.woocommerce-js div.product .related.products ul.products li.product{width:22.5%;width:calc(25% - 15px)}.woocommerce-js span.onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;position:absolute;text-align:center;top:.5em;left:.5em;margin:0;border-radius:100%;background-color:#77a464;color:#fff;-webkit-font-smoothing:antialiased;z-index:9}.woocommerce-js.single-product .sale>span.onsale{font-size:1em;left:-.5em}.woocommerce-js.single-product .sale:not(.ast-product-gallery-layout-vertical-slider)>span.onsale{top:-.5em}.woocommerce-js .products ul,.woocommerce-js ul.products{margin:0 0 1em;padding:0;list-style:none outside;clear:both;zoom:1}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{content:' ';display:table}.woocommerce-js .products ul::after,.woocommerce-js ul.products::after{clear:both}.woocommerce-js .products ul::after,.woocommerce-js .products ul::before,.woocommerce-js ul.products::after,.woocommerce-js ul.products::before{width:0}.woocommerce-js .products ul li,.woocommerce-js ul.products li{list-style:none outside}.woocommerce-js ul.products li.product.product-category{padding-bottom:0}.woocommerce-js ul.products li.product.product-category a{height:100%}.woocommerce-js ul.products li.product.product-category a img{height:100%;object-fit:cover}.woocommerce-js ul.products li.product .onsale{top:0;right:0;left:auto;margin:-.5em -.5em 0 0}.woocommerce-js ul.products li.product .woocommerce-loop-category__title,.woocommerce-js ul.products li.product .woocommerce-loop-product__title,.woocommerce-js ul.products li.product h3{padding:.5em 0;margin:0;font-size:1em}.woocommerce-js ul.products li.product a img{width:100%;height:auto;display:block;margin:0 0 1em;box-shadow:none}.woocommerce-js ul.products li.product a img.show-on-hover{width:0;height:0;object-fit:cover}.woocommerce-js ul.products li.product strong{display:block}.woocommerce-js ul.products li.product .star-rating{font-size:.857em}.woocommerce-js ul.products li.product .button{margin-top:1em}.woocommerce-js ul.products li.product .price{color:#77a464;display:block;font-weight:400;margin-bottom:.5em;font-size:.857em}.woocommerce-js ul.products li.product .price del{color:inherit;opacity:.5;display:inline-block}.woocommerce-js ul.products li.product .price ins{background:0 0;font-weight:700;display:inline-block;text-decoration:inherit}.woocommerce-js ul.products li.product .price .from{font-size:.67em;margin:-2px 0 0 0;text-transform:uppercase;color:rgba(132,132,132,.5)}.woocommerce-js ul.products li.product a.ast-loop-product__link{display:inline-block}.woocommerce-js ul.products li.product:hover .show-on-hover{width:100%;height:100%}.woocommerce-js .woocommerce-result-count{margin:1em 0 1em;line-height:1}.woocommerce-js .woocommerce-ordering{margin:0 0 1.5em}.woocommerce-js .woocommerce-ordering select{vertical-align:top}.woocommerce-js nav.woocommerce-pagination{text-align:left}.woocommerce-js nav.woocommerce-pagination ul{display:inline-block;text-align:center;white-space:normal;padding:0;clear:both;border:0;margin:1px}.woocommerce-js nav.woocommerce-pagination ul li{margin:0 5px 5px 0;border:1px solid var(--ast-border-color);padding:0;float:left;display:inline;overflow:hidden}.woocommerce-js nav.woocommerce-pagination ul li a,.woocommerce-js nav.woocommerce-pagination ul li span{margin:0;text-decoration:none;padding:0;line-height:1;font-size:1em;font-weight:400;padding:.75em;display:block;min-width:2.5em}.woocommerce-js nav.woocommerce-pagination ul li a:focus,.woocommerce-js nav.woocommerce-pagination ul li a:hover,.woocommerce-js nav.woocommerce-pagination ul li span.current{background:#ebe9eb;color:#8a7e88}.woocommerce-js #respond input#submit,.woocommerce-js a.button,.woocommerce-js button.button,.woocommerce-js input.button{margin:0;position:relative;overflow:visible;left:auto;display:inline-block;background-image:none;box-shadow:none;text-shadow:none}.woocommerce-js #respond input#submit.loading,.woocommerce-js a.button.loading,.woocommerce-js button.button.loading,.woocommerce-js input.button.loading{opacity:.25}.woocommerce-js #respond input#submit.loading::after,.woocommerce-js a.button.loading::after,.woocommerce-js button.button.loading::after,.woocommerce-js input.button.loading::after{display:inline-block;content:"";position:relative;top:0;right:-.5em;left:auto;width:.8em;height:.8em;background-color:var(--ast-global-color-5);background-image:none;border-radius:100%;animation:dotPulse .65s 0s infinite cubic-bezier(.21,.53,.56,.8)}.woocommerce-js #respond input#submit.added::after,.woocommerce-js a.button.added::after,.woocommerce-js button.button.added::after,.woocommerce-js input.button.added::after{font-family:WooCommerce;content:'\e017';margin-left:.53em;vertical-align:bottom}.woocommerce-js #respond input#submit.alt.disabled,.woocommerce-js #respond input#submit.alt.disabled:hover,.woocommerce-js #respond input#submit.alt:disabled,.woocommerce-js #respond input#submit.alt:disabled:hover,.woocommerce-js #respond input#submit.alt:disabled[disabled],.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,.woocommerce-js a.button.alt.disabled,.woocommerce-js a.button.alt.disabled:hover,.woocommerce-js a.button.alt:disabled,.woocommerce-js a.button.alt:disabled:hover,.woocommerce-js a.button.alt:disabled[disabled],.woocommerce-js a.button.alt:disabled[disabled]:hover,.woocommerce-js button.button.alt.disabled,.woocommerce-js button.button.alt.disabled:hover,.woocommerce-js button.button.alt:disabled,.woocommerce-js button.button.alt:disabled:hover,.woocommerce-js button.button.alt:disabled[disabled],.woocommerce-js button.button.alt:disabled[disabled]:hover,.woocommerce-js input.button.alt.disabled,.woocommerce-js input.button.alt.disabled:hover,.woocommerce-js input.button.alt:disabled,.woocommerce-js input.button.alt:disabled:hover,.woocommerce-js input.button.alt:disabled[disabled],.woocommerce-js input.button.alt:disabled[disabled]:hover{background-color:#a46497;color:#fff}.woocommerce-js #respond input#submit.disabled,.woocommerce-js #respond input#submit:disabled,.woocommerce-js #respond input#submit:disabled[disabled],.woocommerce-js a.button.disabled,.woocommerce-js a.button:disabled,.woocommerce-js a.button:disabled[disabled],.woocommerce-js button.button.disabled,.woocommerce-js button.button:disabled,.woocommerce-js button.button:disabled[disabled],.woocommerce-js input.button.disabled,.woocommerce-js input.button:disabled,.woocommerce-js input.button:disabled[disabled]{cursor:not-allowed;opacity:.5;padding:.618em 1em}.woocommerce-js #respond input#submit.disabled:hover,.woocommerce-js #respond input#submit:disabled:hover,.woocommerce-js #respond input#submit:disabled[disabled]:hover,.woocommerce-js a.button.disabled:hover,.woocommerce-js a.button:disabled:hover,.woocommerce-js a.button:disabled[disabled]:hover,.woocommerce-js button.button.disabled:hover,.woocommerce-js button.button:disabled:hover,.woocommerce-js button.button:disabled[disabled]:hover,.woocommerce-js input.button.disabled:hover,.woocommerce-js input.button:disabled:hover,.woocommerce-js input.button:disabled[disabled]:hover{color:inherit;background-color:#ebe9eb}.woocommerce-js .cart .button,.woocommerce-js .cart input.button{float:none}.woocommerce-js #reviews .woocommerce-Reviews-title{display:none}.woocommerce-js #reviews h2{font-weight:400}.woocommerce-js #reviews h2 small{float:right;color:#777;font-size:15px;margin:10px 0 0}.woocommerce-js #reviews h2 small a{text-decoration:none;color:#777}.woocommerce-js #reviews h3{margin:0}.woocommerce-js #reviews #respond{margin:0;border:0;padding:0}.woocommerce-js #reviews #comment{height:75px}.woocommerce-js #reviews #comments .add_review{zoom:1}.woocommerce-js #reviews #comments .add_review::after,.woocommerce-js #reviews #comments .add_review::before{content:' ';display:table}.woocommerce-js #reviews #comments .add_review::after{clear:both}.woocommerce-js #reviews #comments h2{clear:none}.woocommerce-js #reviews #comments ol.commentlist{zoom:1;margin:0;width:100%;background:0 0;list-style:none}.woocommerce-js #reviews #comments ol.commentlist::after,.woocommerce-js #reviews #comments ol.commentlist::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li{padding:0;margin:0 0 2em;border:0;position:relative;background:0;border:0;border-bottom:1px solid var(--ast-border-color)}.woocommerce-js #reviews #comments ol.commentlist li:last-child{border-bottom:0}.woocommerce-js #reviews #comments ol.commentlist li .meta{color:#777;font-size:.75em}.woocommerce-js #reviews #comments ol.commentlist li img.avatar{float:left;position:absolute;top:0;left:0;padding:3px;height:3.6em;width:3.6em;border:none;background:0 0;margin:0;border-radius:100%;box-shadow:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text{margin:0 0 0 50px;border:none;border-radius:4px;padding:0 1.5em;zoom:1;display:flex;flex-wrap:wrap}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after,.woocommerce-js #reviews #comments ol.commentlist li .comment-text::before{content:' ';display:table}.woocommerce-js #reviews #comments ol.commentlist li .comment-text::after{clear:both}.woocommerce-js #reviews #comments ol.commentlist li .comment-text p{margin:0 0 1.7em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta{order:1;width:100%;font-size:1.2em;margin-bottom:.4em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__author,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__author{font-weight:500}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__dash,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__dash{display:none}.woocommerce-js #reviews #comments ol.commentlist li .comment-text meta .woocommerce-review__published-date,.woocommerce-js #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-review__published-date{padding-left:.5em;font-size:.73em}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .description{font-style:normal;order:3;width:100%}.woocommerce-js #reviews #comments ol.commentlist li .comment-text .star-rating{order:2;margin-bottom:1em}.woocommerce-js #reviews #comments ol.commentlist ul.children{list-style:none outside;margin:20px 0 0 50px}.woocommerce-js #reviews #comments ol.commentlist ul.children .star-rating{display:none}.woocommerce-js #reviews #comments ol.commentlist #respond{border:1px solid #e4e1e3;border-radius:4px;padding:1em 1em 0;margin:20px 0 0 50px}.woocommerce-js #reviews #comments .commentlist>li::before{content:''}.woocommerce-js #reviews #review_form{border:1px solid var(--ast-border-color);padding:1.67em}.woocommerce-js #reviews #review_form #respond p{margin:2px 0 6px}.woocommerce-js #reviews #review_form #respond p.form-submit{margin-top:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author,.woocommerce-js #reviews #review_form #respond p.comment-form-email{margin-bottom:1em}.woocommerce-js #reviews #review_form #respond p.comment-form-author label,.woocommerce-js #reviews #review_form #respond p.comment-form-email label{display:inline-block;min-width:100px}.woocommerce-js #reviews #review_form #respond p.comment-form-author input,.woocommerce-js #reviews #review_form #respond p.comment-form-email input{width:100%}.woocommerce-js #reviews #review_form #respond #comment{height:90px}.woocommerce-js #reviews #review_form #respond .stars{margin:0}.woocommerce-js #reviews #review_form input{max-width:100%}.woocommerce-js #reviews .comment-form-rating{display:flex;vertical-align:middle;margin:15px 0}.woocommerce-js #reviews .comment-form-rating .stars{margin-bottom:0}.woocommerce-js #reviews .comment-form-rating .stars a{position:relative;top:8px;height:1.2em;width:1.2em}.woocommerce-js #reviews .comment-form-rating .stars a:before{width:1.2em;height:1.2em;font-size:1.2em}.woocommerce-js #reviews .comment-form-comment label,.woocommerce-js #reviews .comment-form-rating label{font-size:1.2em;font-weight:500;padding-right:.5em}.woocommerce-js .star-rating{float:right;overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star}.woocommerce-js .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:left;top:0;left:0;position:absolute}.woocommerce-js .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}.woocommerce-js .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;left:0}.woocommerce-js .woocommerce-product-rating{zoom:1;line-height:2;display:block}.woocommerce-js .woocommerce-product-rating::after,.woocommerce-js .woocommerce-product-rating::before{content:' ';display:table}.woocommerce-js .woocommerce-product-rating::after{clear:both}.woocommerce-js .woocommerce-product-rating .star-rating{margin:.5em 4px 0 0;float:left}.woocommerce-js .products .star-rating{display:block;margin:.5em auto 0;float:none}.woocommerce-js .hreview-aggregate .star-rating{margin:10px 0 0}.woocommerce-js #review_form #respond{zoom:1;position:static;margin:0;width:auto;background:transparent none}.woocommerce-js #review_form #respond::after,.woocommerce-js #review_form #respond::before{content:' ';display:table}.woocommerce-js #review_form #respond::after{clear:both}.woocommerce-js #review_form #respond .form-submit input{left:auto}.woocommerce-js #review_form #respond textarea{box-sizing:border-box;width:100%}.woocommerce-js p.stars a{position:relative;height:1em;width:1em;text-indent:-999em;display:inline-block;text-decoration:none}.woocommerce-js p.stars a::before{display:block;position:absolute;top:0;left:0;width:1em;height:1em;line-height:1;font-family:WooCommerce;content:'\e021';text-indent:0}.woocommerce-js p.stars a:hover~a::before{content:'\e021'}.woocommerce-js p.stars:hover a::before{content:'\e020'}.woocommerce-js p.stars.selected a.active::before{content:'\e020'}.woocommerce-js p.stars.selected a.active~a::before{content:'\e021'}.woocommerce-js p.stars.selected a:not(.active)::before{content:'\e020'}.woocommerce-js table.shop_attributes{border:0;border-top:1px solid var(--ast-border-color);margin-bottom:1.618em;width:100%}.woocommerce-js table.shop_attributes th{width:150px;font-weight:500;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td{font-style:italic;padding:0;border-top:0;border-bottom:1px dotted var(--ast-border-color);margin:0;line-height:1.5;text-align:left}.woocommerce-js table.shop_attributes td p{margin:0;padding:8px 0}.woocommerce-js table.shop_table{border:1px solid var(--ast-border-color);margin:0 -1px 24px 0;text-align:left;width:100%;border-collapse:separate;border-radius:5px}.woocommerce-js table.shop_table th{font-weight:700;padding:9px 12px}.woocommerce-js table.shop_table td{border-top:1px solid var(--ast-border-color);padding:6px 12px;vertical-align:middle}.woocommerce-js table.shop_table td small{font-weight:400}.woocommerce-js table.shop_table tbody:first-child tr:first-child td,.woocommerce-js table.shop_table tbody:first-child tr:first-child th{border-top:0}.woocommerce-js table.shop_table tbody th,.woocommerce-js table.shop_table tfoot td,.woocommerce-js table.shop_table tfoot th{font-weight:500;border-top:1px solid var(--ast-border-color)}.woocommerce-js #customer_details,.woocommerce-js .woocommerce table.shop_table{margin-bottom:2em;border-radius:0}.woocommerce-js table.my_account_orders{font-size:.85em}.woocommerce-js table.my_account_orders td,.woocommerce-js table.my_account_orders th{padding:4px 8px;vertical-align:middle}.woocommerce-js table.my_account_orders .button{white-space:nowrap}.woocommerce-js table.my_account_orders .order-actions{text-align:right}.woocommerce-js table.my_account_orders .order-actions .button{margin:.125em 0 .125em .25em}.woocommerce-js table.woocommerce-MyAccount-downloads td,.woocommerce-js table.woocommerce-MyAccount-downloads th{vertical-align:top;text-align:center}.woocommerce-js table.woocommerce-MyAccount-downloads td:first-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:first-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td:last-child,.woocommerce-js table.woocommerce-MyAccount-downloads th:last-child{text-align:left}.woocommerce-js table.woocommerce-MyAccount-downloads td .woocommerce-MyAccount-downloads-file::before,.woocommerce-js table.woocommerce-MyAccount-downloads th .woocommerce-MyAccount-downloads-file::before{content:'\2193';display:inline-block}.woocommerce-js td.product-name .wc-item-meta,.woocommerce-js td.product-name dl.variation{list-style:none outside}.woocommerce-js td.product-name .wc-item-meta .wc-item-meta-label,.woocommerce-js td.product-name .wc-item-meta dt,.woocommerce-js td.product-name dl.variation .wc-item-meta-label,.woocommerce-js td.product-name dl.variation dt{float:left;clear:both;margin-right:.25em;display:inline-block;list-style:none outside;font-weight:500}.woocommerce-js td.product-name .wc-item-meta dd,.woocommerce-js td.product-name dl.variation dd{margin:0}.woocommerce-js td.product-name .wc-item-meta dd p,.woocommerce-js td.product-name dl.variation dd p{font-weight:400}.woocommerce-js td.product-name .wc-item-meta p,.woocommerce-js td.product-name .wc-item-meta:last-child,.woocommerce-js td.product-name dl.variation p,.woocommerce-js td.product-name dl.variation:last-child{margin-bottom:0}.woocommerce-js td.product-name p.backorder_notification{font-size:.83em}.woocommerce-js td.product-quantity{min-width:80px}.woocommerce-js ul.cart_list,.woocommerce-js ul.product_list_widget{list-style:none outside;padding:0;margin:0}.woocommerce-js ul.cart_list li,.woocommerce-js ul.product_list_widget li{padding:4px 0;margin:0;zoom:1;list-style:none}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.cart_list li::before,.woocommerce-js ul.product_list_widget li::after,.woocommerce-js ul.product_list_widget li::before{content:' ';display:table}.woocommerce-js ul.cart_list li::after,.woocommerce-js ul.product_list_widget li::after{clear:both}.woocommerce-js ul.cart_list li a,.woocommerce-js ul.product_list_widget li a{display:block;font-weight:700}.woocommerce-js ul.cart_list li img,.woocommerce-js ul.product_list_widget li img{float:right;margin-left:4px;width:32px;height:auto;box-shadow:none}.woocommerce-js ul.cart_list li dl,.woocommerce-js ul.product_list_widget li dl{margin:0;padding-left:1em;border-left:2px solid var(--ast-border-color);zoom:1}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.cart_list li dl::before,.woocommerce-js ul.product_list_widget li dl::after,.woocommerce-js ul.product_list_widget li dl::before{content:' ';display:table}.woocommerce-js ul.cart_list li dl::after,.woocommerce-js ul.product_list_widget li dl::after{clear:both}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dd,.woocommerce-js ul.product_list_widget li dl dt{display:inline-block;float:left;margin-bottom:.1em}.woocommerce-js ul.cart_list li dl dt,.woocommerce-js ul.product_list_widget li dl dt{font-weight:500;padding:0 0 .25em;margin:0 4px 0 0;clear:left}.woocommerce-js ul.cart_list li dl dd,.woocommerce-js ul.product_list_widget li dl dd{padding:0 0 .25em}.woocommerce-js ul.cart_list li dl dd p:last-child,.woocommerce-js ul.product_list_widget li dl dd p:last-child{margin-bottom:0}.woocommerce-js ul.cart_list li .star-rating,.woocommerce-js ul.product_list_widget li .star-rating{float:none}.woocommerce-js .widget_shopping_cart .total strong,.woocommerce-js.widget_shopping_cart .total strong{min-width:40px;display:inline-block;color:var(--ast-global-color-2)}.woocommerce-js .widget_shopping_cart .buttons,.woocommerce-js.widget_shopping_cart .buttons{zoom:1}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js .widget_shopping_cart .buttons::before,.woocommerce-js.widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::before{content:' ';display:table}.woocommerce-js .widget_shopping_cart .buttons::after,.woocommerce-js.widget_shopping_cart .buttons::after{clear:both}.woocommerce-js .widget_shopping_cart .buttons a,.woocommerce-js.widget_shopping_cart .buttons a{margin-right:5px;margin-bottom:5px}.woocommerce-js form .form-row{padding:3px;margin:0 0 6px}.woocommerce-js form .form-row.place-order .input-checkbox{cursor:pointer}.woocommerce-js form .form-row [placeholder]:focus::-webkit-input-placeholder{transition:opacity .5s .5s ease;opacity:0}.woocommerce-js form .form-row label{line-height:2;font-weight:700;font-size:13.5px;font-size:.9rem}.woocommerce-js form .form-row label.hidden{visibility:hidden}.woocommerce-js form .form-row label.inline{display:inline}.woocommerce-js form .form-row select{cursor:pointer;margin:0}.woocommerce-js form .form-row .required{color:red;font-weight:700;border:0}.woocommerce-js form .form-row .input-checkbox{display:inline;margin:-2px 8px 0 0;text-align:center;vertical-align:middle}.woocommerce-js form .form-row input.input-text,.woocommerce-js form .form-row textarea{box-sizing:border-box;width:100%;margin:0;outline:0;line-height:1}.woocommerce-js form .form-row textarea{height:4em;line-height:1.5;display:block;box-shadow:none}.woocommerce-js form .form-row .select2-container{width:100%;line-height:2em}.woocommerce-js form .form-row.woocommerce-invalid .select2-container,.woocommerce-js form .form-row.woocommerce-invalid input.input-text,.woocommerce-js form .form-row.woocommerce-invalid select{border-color:#d65d67}.woocommerce-js form .form-row.woocommerce-validated .select2-container,.woocommerce-js form .form-row.woocommerce-validated input.input-text,.woocommerce-js form .form-row.woocommerce-validated select{border-color:#69bf29}.woocommerce-js form .form-row ::-webkit-input-placeholder{line-height:normal}.woocommerce-js form .form-row :-moz-placeholder{line-height:normal}.woocommerce-js form .form-row :-ms-input-placeholder{line-height:normal}.woocommerce-js ul#shipping_method{list-style:none outside;margin:0;padding:0}.woocommerce-js ul#shipping_method li input{margin:3px .5ex}.woocommerce-js ul#shipping_method li label{display:inline}.woocommerce-js ul#shipping_method .amount{font-weight:700}.woocommerce-js p.woocommerce-shipping-contents{margin:0}.woocommerce-js ul.order_details{zoom:1;margin:0 0 3em;list-style:none}.woocommerce-js ul.order_details::after,.woocommerce-js ul.order_details::before{content:' ';display:table}.woocommerce-js ul.order_details::after{clear:both}.woocommerce-js ul.order_details li{float:left;margin-right:2em;text-transform:uppercase;font-size:.715em;line-height:1;border-right:1px dashed var(--ast-border-color);padding-right:2em;margin-left:0;padding-left:0;list-style-type:none}.woocommerce-js ul.order_details li strong{display:block;font-size:1.4em;text-transform:none;line-height:1.5}.woocommerce-js ul.order_details li:last-of-type{border:none}.woocommerce-js .wc-bacs-bank-details-account-name{font-weight:700}.woocommerce-js .woocommerce-customer-details,.woocommerce-js .woocommerce-order-details,.woocommerce-js .woocommerce-order-downloads{margin-bottom:2em}.woocommerce-js .woocommerce-customer-details :last-child,.woocommerce-js .woocommerce-order-details :last-child,.woocommerce-js .woocommerce-order-downloads :last-child{margin-bottom:0}.woocommerce-js .woocommerce-customer-details address{font-style:normal;margin-bottom:0;border:1px solid var(--ast-border-color);border-bottom-width:2px;border-right-width:2px;text-align:left;width:100%;border-radius:5px;padding:6px 12px}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email,.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone{margin-bottom:0;padding-left:1.5em}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--phone::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-customer-details .woocommerce-customer-details--email::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;margin-left:-1.5em;line-height:1.75;position:absolute}.woocommerce-js .woocommerce-widget-layered-nav-list{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before{content:' ';display:table}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::after{clear:both}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item a,.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item span{padding:1px 0}.woocommerce-js .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .woocommerce-widget-layered-nav-dropdown__submit{margin-top:1em}.woocommerce-js .widget_layered_nav_filters ul{margin:0;padding:0;border:0;list-style:none outside;overflow:hidden;zoom:1}.woocommerce-js .widget_layered_nav_filters ul li{float:left;padding:0 1px 1px 0;list-style:none}.woocommerce-js .widget_layered_nav_filters ul li a{text-decoration:none}.woocommerce-js .widget_layered_nav_filters ul li a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .widget_product_categories .product-categories .count{float:right}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1em}.woocommerce-js .widget_price_filter .price_slider_amount{text-align:right;line-height:2.4;font-size:.8751em}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:1.15em;float:left}.woocommerce-js .widget_price_filter .ui-slider{position:relative;text-align:left;margin-left:.5em;margin-right:.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1em;height:1em;background-color:#a46497;border-radius:1em;cursor:ew-resize;outline:0;top:-.3em;margin-left:-.5em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;border-radius:1em;background-color:#a46497}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{border-radius:1em;background-color:#602053;border:0}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.5em}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range{top:0;height:100%}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-min{left:-1px}.woocommerce-js .widget_price_filter .ui-slider-horizontal .ui-slider-range-max{right:-1px}.woocommerce-js .widget_rating_filter ul{margin:0;padding:0;border:0;list-style:none outside}.woocommerce-js .widget_rating_filter ul li{zoom:1;padding:0 0 1px;list-style:none}.woocommerce-js .widget_rating_filter ul li::after,.woocommerce-js .widget_rating_filter ul li::before{content:' ';display:table}.woocommerce-js .widget_rating_filter ul li::after{clear:both}.woocommerce-js .widget_rating_filter ul li a{padding:1px 0;text-decoration:none}.woocommerce-js .widget_rating_filter ul li .star-rating{float:none;display:inline-block}.woocommerce-js .widget_rating_filter ul li.chosen a::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none;color:#d65d67}.woocommerce-js .show-on-hover{position:absolute;top:0;left:0;height:100%;right:0;bottom:0;padding:0;margin:0;opacity:0;filter:blur(0);transition:all .2s linear}.woocommerce-js li.product:hover .show-on-hover{opacity:1;transform:scale(1) translateZ(0) translateY(0);pointer-events:inherit}.woocommerce-js .ast-return-to-shop{display:inline-block;margin:5px 0;vertical-align:middle}.woocommerce-js .comment-reply-title{font-size:1.34rem;line-height:1.3;font-weight:500}.woocommerce-js .select2-container .select2-selection--single{height:auto;padding:.75em}.woocommerce-js .select2-container .select2-selection--single .select2-selection__rendered{padding-left:0}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.35}.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;width:1.7em;transform:translateY(-50%)}.woocommerce-js .select2-results__option,.woocommerce-js .select2-search--dropdown .select2-search__field{padding:6px .75em}.woocommerce-js .variations th{text-align:left}.woocommerce-js.single-product a.added_to_cart{padding:.4em .4em 0;display:inline-block}.woocommerce a.added_to_cart{display:none}.woocommerce .widget_product_search button,.woocommerce-page .widget_product_search button{flex:0 0 auto;padding:10px 20px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{text-align:left;margin-bottom:2.5em}.woocommerce ul.products li.product.product-category>a,.woocommerce-page ul.products li.product.product-category>a{display:inline-block;position:relative}.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{margin-bottom:.8em}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin-bottom:.5em;padding:0;font-size:1em}.woocommerce ul.products li.product .ast-woo-product-category,.woocommerce-page ul.products li.product .ast-woo-product-category{font-size:.85em;margin-bottom:.5em;display:block;line-height:1.3;opacity:.6}.woocommerce ul.products li.product .star-rating,.woocommerce-page ul.products li.product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.woocommerce ul.products li.product .ast-woo-shop-product-description p,.woocommerce-page ul.products li.product .ast-woo-shop-product-description p{margin-bottom:.5em}.woocommerce ul.products li.product .woocommerce-loop-product__link,.woocommerce-page ul.products li.product .woocommerce-loop-product__link{position:relative;display:block}.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.woocommerce ul.products li.product.product-category>a:hover .woocommerce-loop-category__title,.woocommerce-page ul.products li.product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{position:absolute;background-color:rgba(255,255,255,.88);transition:background .3s;text-align:center;left:1em;right:1em;padding:.5em 0 .7em}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{font-size:.7em}.woocommerce ul.products li.product .ast-shop-product-out-of-stock,.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock{bottom:1em;text-transform:uppercase;font-weight:700}.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.woocommerce ul.products li.product .price del,.woocommerce-page ul.products li.product .price del{display:initial}.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin-top:.5em;margin-bottom:.5em;white-space:normal}.woocommerce ul.products li.product .button.added,.woocommerce-page ul.products li.product .button.added{margin-bottom:0;transition:margin 0s}.woocommerce ul.products li.product .woocommerce-loop-category__title,.woocommerce-page ul.products li.product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.woocommerce ul.products li.product .woocommerce-loop-category__title .count,.woocommerce-page ul.products li.product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.woocommerce .related.products li.product:last-child,.woocommerce-page .related.products li.product:last-child{margin-right:0}.woocommerce table.shop_table,.woocommerce-page table.shop_table{border:1px solid var(--ast-border-color);border-radius:0}.woocommerce table.shop_table .product-thumbnail img,.woocommerce-page table.shop_table .product-thumbnail img{width:auto;max-width:70px}.woocommerce table.shop_table thead,.woocommerce-page table.shop_table thead{background-color:#fbfbfb}.woocommerce table.shop_table thead th,.woocommerce-page table.shop_table thead th{border-width:0}.woocommerce table.shop_table td,.woocommerce table.shop_table th,.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{border-bottom-width:0;padding:.7em 1em}.woocommerce table.shop_table td,.woocommerce-page table.shop_table td{border-top:1px solid var(--ast-border-color)}.woocommerce table.shop_table td.download-file,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions,.woocommerce-page table.shop_table td.download-file,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions{display:block}.woocommerce table.shop_table td.download-file a,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a,.woocommerce-page table.shop_table td.download-file a,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a{margin-right:.5em;margin-top:.25em;margin-bottom:.25em}.woocommerce table.shop_table td.download-file a:last-child,.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child,.woocommerce-page table.shop_table td.download-file a:last-child,.woocommerce-page table.shop_table td.woocommerce-orders-table__cell-order-actions a:last-child{margin-right:0}.woocommerce table.shop_table .woocommerce-Price-amount,.woocommerce-page table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce #content table.cart td.actions .input-text,.woocommerce-page #content table.cart td.actions .input-text{width:auto}.woocommerce #content table.cart td,.woocommerce-page #content table.cart td{min-height:3.25em}.woocommerce #content table.cart [name=coupon_code],.woocommerce-page #content table.cart [name=coupon_code]{max-height:35px}.woocommerce #content table.cart .button,.woocommerce-page #content table.cart .button{display:inline-block;width:auto}.ast-separate-container .ast-woocommerce-container{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-woocommerce-container{padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-woocommerce-container{padding:1.5em 2.14em}}@media (min-width:1201px){.ast-separate-container .ast-woocommerce-container{padding:5.34em 6.67em}}.ast-separate-container .ast-woocommerce-container .product{border-bottom:0}.ast-separate-container.single-product .ast-article-single{margin:0;padding:0;display:inline-block;width:100%}.pswp{z-index:999999}.woocommerce img.pswp__img,.woocommerce-page img.pswp__img{max-width:none}.woocommerce .pswp__caption__center,.woocommerce-page .pswp__caption__center{text-align:center}.woocommerce .pswp__bg,.woocommerce-page .pswp__bg{opacity:.7!important}.woocommerce .pswp__ui--fit .pswp__caption,.woocommerce .pswp__ui--fit .pswp__top-bar,.woocommerce-page .pswp__ui--fit .pswp__caption,.woocommerce-page .pswp__ui--fit .pswp__top-bar{background-color:transparent}.woocommerce form .form-row textarea,.woocommerce input[type=email],.woocommerce input[type=number],.woocommerce input[type=password],.woocommerce input[type=reset],.woocommerce input[type=search],.woocommerce input[type=tel],.woocommerce input[type=text],.woocommerce input[type=url],.woocommerce textarea,.woocommerce-page form .form-row textarea,.woocommerce-page input[type=email],.woocommerce-page input[type=number],.woocommerce-page input[type=password],.woocommerce-page input[type=reset],.woocommerce-page input[type=search],.woocommerce-page input[type=tel],.woocommerce-page input[type=text],.woocommerce-page input[type=url],.woocommerce-page textarea{border-color:var(--ast-border-color);background-color:#fff;box-shadow:none;border-radius:0}.woocommerce form .form-row textarea:focus,.woocommerce input[type=email]:focus,.woocommerce input[type=number]:focus,.woocommerce input[type=password]:focus,.woocommerce input[type=reset]:focus,.woocommerce input[type=search]:focus,.woocommerce input[type=tel]:focus,.woocommerce input[type=text]:focus,.woocommerce input[type=url]:focus,.woocommerce textarea:focus,.woocommerce-page form .form-row textarea:focus,.woocommerce-page input[type=email]:focus,.woocommerce-page input[type=number]:focus,.woocommerce-page input[type=password]:focus,.woocommerce-page input[type=reset]:focus,.woocommerce-page input[type=search]:focus,.woocommerce-page input[type=tel]:focus,.woocommerce-page input[type=text]:focus,.woocommerce-page input[type=url]:focus,.woocommerce-page textarea:focus{box-shadow:none;border-color:var(--ast-border-color)}.woocommerce .select2-container .select2-dropdown,.woocommerce-page .select2-container .select2-dropdown{border:1px solid var(--ast-border-color);z-index:98}.woocommerce .select2-container .select2-selection--single,.woocommerce select,.woocommerce-page .select2-container .select2-selection--single,.woocommerce-page select{padding:.8em;line-height:normal;padding-right:2em;appearance:none;background-position:98% 50%;background-color:#fff;border-color:var(--ast-border-color);border-radius:3px;box-shadow:none}.woocommerce .select2-container .select2-selection--single:focus,.woocommerce select:focus,.woocommerce-page .select2-container .select2-selection--single:focus,.woocommerce-page select:focus{outline:0}.woocommerce .select2-container .select2-selection--single b,.woocommerce select b,.woocommerce-page .select2-container .select2-selection--single b,.woocommerce-page select b{display:none}.woocommerce .woocommerce-ordering select,.woocommerce-page .woocommerce-ordering select{background-color:transparent;border:transparent;border-radius:0}button.pswp__button{box-shadow:none!important;background-image:url("../../../../../../../plugins/woocommerce/assets/css/photoswipe/default-skin/default-skin.png")!important}button.pswp__button,button.pswp__button--arrow--left::before,button.pswp__button--arrow--right::before,button.pswp__button:hover{background-color:transparent!important}button.pswp__button--arrow--left,button.pswp__button--arrow--left:hover,button.pswp__button--arrow--right,button.pswp__button--arrow--right:hover{background-image:none!important}button.pswp__button--close:hover{background-position:0 -44px}button.pswp__button--zoom:hover{background-position:-88px 0}.woocommerce-error,.woocommerce-info,.woocommerce-message{padding:1em 2em 1em 3.5em;margin:0 0 2em;position:relative;background-color:#f7f6f7;color:#515151;border-top:3px solid #a46497;list-style:none outside;zoom:1;width:auto;word-wrap:break-word}.woocommerce-error::after,.woocommerce-error::before,.woocommerce-info::after,.woocommerce-info::before,.woocommerce-message::after,.woocommerce-message::before{content:' ';display:table}.woocommerce-error::after,.woocommerce-info::after,.woocommerce-message::after{clear:both}.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{font-family:WooCommerce;content:'\e028';display:inline-block;position:absolute;top:1em;left:1.5em}.woocommerce-error .button,.woocommerce-info .button,.woocommerce-message .button{float:right}.woocommerce-error li,.woocommerce-info li,.woocommerce-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.woocommerce-message{border-top-color:#8fae1b}.woocommerce-message::before{content:'\e015';color:#8fae1b}.woocommerce-info{border-top-color:#1e85be}.woocommerce-info::before{color:#1e85be}.woocommerce-error{border-top-color:#b81c23}.woocommerce-error::before{content:'\e016';color:#b81c23}.woocommerce .woocommerce,.woocommerce-account .woocommerce{zoom:1}.woocommerce .woocommerce::after,.woocommerce .woocommerce::before,.woocommerce-account .woocommerce::after,.woocommerce-account .woocommerce::before{content:' ';display:table}.woocommerce .woocommerce::after,.woocommerce-account .woocommerce::after{clear:both}.woocommerce .addresses .title,.woocommerce-account .addresses .title{zoom:1}.woocommerce .addresses .title::after,.woocommerce .addresses .title::before,.woocommerce-account .addresses .title::after,.woocommerce-account .addresses .title::before{content:' ';display:table}.woocommerce .addresses .title::after,.woocommerce-account .addresses .title::after{clear:both}.woocommerce .addresses .title h3,.woocommerce-account .addresses .title h3{float:left}.woocommerce .addresses .title .edit,.woocommerce-account .addresses .title .edit{float:right;padding:.7em 1em}.woocommerce ol.commentlist.notes li.note p.meta,.woocommerce-account ol.commentlist.notes li.note p.meta{font-weight:700;margin-bottom:0}.woocommerce ol.commentlist.notes li.note .description p:last-child,.woocommerce-account ol.commentlist.notes li.note .description p:last-child{margin-bottom:0}.woocommerce ul.digital-downloads,.woocommerce-account ul.digital-downloads{margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li,.woocommerce-account ul.digital-downloads li{list-style:none;margin-left:0;padding-left:0}.woocommerce ul.digital-downloads li::before,.woocommerce-account ul.digital-downloads li::before{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-right:.618em;content:"";text-decoration:none}.woocommerce ul.digital-downloads li .count,.woocommerce-account ul.digital-downloads li .count{float:right}.woocommerce .woocommerce-Addresses .woocommerce-Address-title,.woocommerce .woocommerce-Addresses .woocommerce-column__title,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce .woocommerce-customer-details .woocommerce-Address-title,.woocommerce .woocommerce-customer-details .woocommerce-column__title,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title{background:#fbfbfb;padding:.5em;margin-bottom:0;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce .woocommerce-customer-details .woocommerce-column__title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3,.woocommerce-account .woocommerce-Addresses .woocommerce-column__title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title h3,.woocommerce-account .woocommerce-customer-details .woocommerce-column__title h3{margin-bottom:0}.woocommerce .woocommerce-Addresses address,.woocommerce .woocommerce-MyAccount-content address,.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Addresses address,.woocommerce-account .woocommerce-MyAccount-content address,.woocommerce-account .woocommerce-customer-details address{border:1px solid var(--ast-border-color);padding:1em;border-radius:0}.cart-collaterals h2,.woocommerce-Address h3{font-size:1.2rem;padding:.7em 1em}#add_payment_method table.cart .product-thumbnail,.woocommerce-cart table.cart .product-thumbnail,.woocommerce-checkout table.cart .product-thumbnail{min-width:32px}#add_payment_method table.cart img,.woocommerce-cart table.cart img,.woocommerce-checkout table.cart img{width:32px;box-shadow:none}#add_payment_method table.cart td,#add_payment_method table.cart th,.woocommerce-cart table.cart td,.woocommerce-cart table.cart th,.woocommerce-checkout table.cart td,.woocommerce-checkout table.cart th{vertical-align:middle}#add_payment_method table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text{float:left;box-sizing:border-box;border:1px solid var(--ast-border-color);padding:6px 6px 5px;margin:0 4px 0 0;outline:0;line-height:1}#add_payment_method table.cart input,.woocommerce-cart table.cart input,.woocommerce-checkout table.cart input{margin:0;vertical-align:middle;line-height:1}#add_payment_method .wc-proceed-to-checkout,.woocommerce-cart .wc-proceed-to-checkout,.woocommerce-checkout .wc-proceed-to-checkout{zoom:1;padding:1em 0}#add_payment_method .wc-proceed-to-checkout::after,#add_payment_method .wc-proceed-to-checkout::before,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::before,.woocommerce-checkout .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::before{content:' ';display:table}#add_payment_method .wc-proceed-to-checkout::after,.woocommerce-cart .wc-proceed-to-checkout::after,.woocommerce-checkout .wc-proceed-to-checkout::after{clear:both}#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin-bottom:1em;font-size:1.25em;padding:1em}#add_payment_method .cart-collaterals .shipping_calculator .button,.woocommerce-cart .cart-collaterals .shipping_calculator .button,.woocommerce-checkout .cart-collaterals .shipping_calculator .button{width:100%;float:none;display:block}#add_payment_method .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-cart .cart-collaterals .shipping_calculator .shipping-calculator-button::after,.woocommerce-checkout .cart-collaterals .shipping_calculator .shipping-calculator-button::after{font-family:WooCommerce;speak:none;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;margin-left:.618em;content:"";text-decoration:none}#add_payment_method .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-checkout .cart-collaterals .cart_totals p small{color:#777;font-size:.83em}#add_payment_method .cart-collaterals .cart_totals table,.woocommerce-cart .cart-collaterals .cart_totals table,.woocommerce-checkout .cart-collaterals .cart_totals table{border-collapse:separate;margin:0 0 6px;padding:0}#add_payment_method .cart-collaterals .cart_totals table tr:first-child td,#add_payment_method .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-cart .cart-collaterals .cart_totals table tr:first-child th,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child td,.woocommerce-checkout .cart-collaterals .cart_totals table tr:first-child th{border-top:0}#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table th{width:40%}#add_payment_method .cart-collaterals .cart_totals table td,#add_payment_method .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td,.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-checkout .cart-collaterals .cart_totals table td,.woocommerce-checkout .cart-collaterals .cart_totals table th{vertical-align:top;border-left:0;border-right:0;line-height:1.5em}#add_payment_method .cart-collaterals .cart_totals table small,.woocommerce-cart .cart-collaterals .cart_totals table small,.woocommerce-checkout .cart-collaterals .cart_totals table small{color:#777}#add_payment_method .cart-collaterals .cart_totals table select,.woocommerce-cart .cart-collaterals .cart_totals table select,.woocommerce-checkout .cart-collaterals .cart_totals table select{width:100%}#add_payment_method .cart-collaterals .cart_totals .discount td,.woocommerce-cart .cart-collaterals .cart_totals .discount td,.woocommerce-checkout .cart-collaterals .cart_totals .discount td{color:#77a464}#add_payment_method .cart-collaterals .cart_totals tr td,#add_payment_method .cart-collaterals .cart_totals tr th,.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th,.woocommerce-checkout .cart-collaterals .cart_totals tr td,.woocommerce-checkout .cart-collaterals .cart_totals tr th{border-top:1px solid var(--ast-border-color)}#add_payment_method .cart-collaterals .cross-sells ul.products li.product,.woocommerce-cart .cart-collaterals .cross-sells ul.products li.product,.woocommerce-checkout .cart-collaterals .cross-sells ul.products li.product{margin-top:0}#add_payment_method .checkout .col-2 h3#ship-to-different-address,.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address{float:left;clear:none}#add_payment_method .checkout .col-2 .notes,.woocommerce-cart .checkout .col-2 .notes,.woocommerce-checkout .checkout .col-2 .notes{clear:left}#add_payment_method .checkout .col-2 .form-row-first,.woocommerce-cart .checkout .col-2 .form-row-first,.woocommerce-checkout .checkout .col-2 .form-row-first{clear:left}#add_payment_method .checkout .create-account small,.woocommerce-cart .checkout .create-account small,.woocommerce-checkout .checkout .create-account small{font-size:11px;color:#777;font-weight:400}#add_payment_method .checkout div.shipping-address,.woocommerce-cart .checkout div.shipping-address,.woocommerce-checkout .checkout div.shipping-address{padding:0;clear:left;width:100%}#add_payment_method .checkout .shipping_address,.woocommerce-cart .checkout .shipping_address,.woocommerce-checkout .checkout .shipping_address{clear:both}#add_payment_method #payment,.woocommerce-cart #payment,.woocommerce-checkout #payment{border-radius:5px}#add_payment_method #payment ul.payment_methods,.woocommerce-cart #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{zoom:1;text-align:left;padding:1em;border-bottom:1px solid var(--ast-border-color);margin:0;list-style:none outside}#add_payment_method #payment ul.payment_methods::after,#add_payment_method #payment ul.payment_methods::before,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::before,.woocommerce-checkout #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods::after,.woocommerce-cart #payment ul.payment_methods::after,.woocommerce-checkout #payment ul.payment_methods::after{clear:both}#add_payment_method #payment ul.payment_methods li,.woocommerce-cart #payment ul.payment_methods li,.woocommerce-checkout #payment ul.payment_methods li{line-height:2;text-align:left;margin:0;font-weight:400}#add_payment_method #payment ul.payment_methods li input,.woocommerce-cart #payment ul.payment_methods li input,.woocommerce-checkout #payment ul.payment_methods li input{cursor:pointer;margin:0 1em 0 0}#add_payment_method #payment ul.payment_methods li img,.woocommerce-cart #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{vertical-align:middle;margin:-2px 0 0 .5em;padding:0;position:relative;box-shadow:none}#add_payment_method #payment ul.payment_methods li img+img,.woocommerce-cart #payment ul.payment_methods li img+img,.woocommerce-checkout #payment ul.payment_methods li img+img{margin-left:2px}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice),.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice){zoom:1}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::before,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::before{content:' ';display:table}#add_payment_method #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-cart #payment ul.payment_methods li:not(.woocommerce-notice)::after,.woocommerce-checkout #payment ul.payment_methods li:not(.woocommerce-notice)::after{clear:both}#add_payment_method #payment div.form-row,.woocommerce-cart #payment div.form-row,.woocommerce-checkout #payment div.form-row{padding:1em}#add_payment_method #payment div.payment_box,.woocommerce-cart #payment div.payment_box,.woocommerce-checkout #payment div.payment_box{position:relative;box-sizing:border-box;width:100%;padding:1em;margin:1em 0;font-size:.92em;border-radius:2px;line-height:1.5;background-color:#dfdcde;color:#515151}#add_payment_method #payment div.payment_box input.input-text,#add_payment_method #payment div.payment_box textarea,.woocommerce-cart #payment div.payment_box input.input-text,.woocommerce-cart #payment div.payment_box textarea,.woocommerce-checkout #payment div.payment_box input.input-text,.woocommerce-checkout #payment div.payment_box textarea{border-color:#c7c1c6;border-top-color:#bbb3b9}#add_payment_method #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-cart #payment div.payment_box ::-webkit-input-placeholder,.woocommerce-checkout #payment div.payment_box ::-webkit-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-moz-placeholder,.woocommerce-cart #payment div.payment_box :-moz-placeholder,.woocommerce-checkout #payment div.payment_box :-moz-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box :-ms-input-placeholder,.woocommerce-cart #payment div.payment_box :-ms-input-placeholder,.woocommerce-checkout #payment div.payment_box :-ms-input-placeholder{color:#bbb3b9}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods{list-style:none outside;margin:0}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token{margin:0 0 .5em}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-new label,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-token label{cursor:pointer}#add_payment_method #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-cart #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput,.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods .woocommerce-SavedPaymentMethods-tokenInput{vertical-align:middle;margin:-3px 1em 0 0;position:relative}#add_payment_method #payment div.payment_box .wc-credit-card-form,.woocommerce-cart #payment div.payment_box .wc-credit-card-form,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form{border:0;padding:0;margin:1em 0 0}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number{font-size:1.5em;padding:8px;background-repeat:no-repeat;background-position:right .618em center;background-size:32px 20px}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.visa,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.visa,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.visa{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/visa.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.mastercard,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.mastercard{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/mastercard.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.laser,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.laser,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.laser{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/laser.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.dinersclub,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.dinersclub{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/diners.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.maestro,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.maestro{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/maestro.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.jcb,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.jcb{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/jcb.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.amex,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.amex,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.amex{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/amex.svg")}#add_payment_method #payment div.payment_box .wc-credit-card-form-card-cvc.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-expiry.discover,#add_payment_method #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-cart #payment div.payment_box .wc-credit-card-form-card-number.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-cvc.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-expiry.discover,.woocommerce-checkout #payment div.payment_box .wc-credit-card-form-card-number.discover{background-image:url("../../../../../../../plugins/woocommerce/assets/images/icons/credit-cards/discover.svg")}#add_payment_method #payment div.payment_box span.help,.woocommerce-cart #payment div.payment_box span.help,.woocommerce-checkout #payment div.payment_box span.help{font-size:.857em;color:#777;font-weight:400}#add_payment_method #payment div.payment_box .form-row,.woocommerce-cart #payment div.payment_box .form-row,.woocommerce-checkout #payment div.payment_box .form-row{margin:0 0 1em}#add_payment_method #payment div.payment_box p:last-child,.woocommerce-cart #payment div.payment_box p:last-child,.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}#add_payment_method #payment div.payment_box::before,.woocommerce-cart #payment div.payment_box::before,.woocommerce-checkout #payment div.payment_box::before{content:'';display:block;border:1em solid #dfdcde;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;position:absolute;top:-1em;left:0;margin:-1em 0 0 2em}#add_payment_method #payment .payment_method_paypal .about_paypal,.woocommerce-cart #payment .payment_method_paypal .about_paypal,.woocommerce-checkout #payment .payment_method_paypal .about_paypal{float:right;line-height:52px;font-size:.83em}#add_payment_method #payment .payment_method_paypal img,.woocommerce-cart #payment .payment_method_paypal img,.woocommerce-checkout #payment .payment_method_paypal img{max-height:52px;vertical-align:middle}.woocommerce-cart-form__cart-item td.product-remove{text-align:center}.woocommerce-cart-form__cart-item td.product-remove a.remove{display:inline-block;vertical-align:middle}.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{border-right:0}.woocommerce-cart table.shop_table .woocommerce-Price-amount,.woocommerce-cart table.shop_table td.product-name{font-weight:500}.woocommerce-cart table.shop_table .woocommerce-Price-amount{font-weight:400}.woocommerce-cart table.shop_table dl dt{font-weight:500}.woocommerce-cart table.shop_table dl dd{font-weight:400}.woocommerce-cart .cart-collaterals .cross-sells li.product{padding-bottom:1em}.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-cart .cart-collaterals .cross-sells{padding:0 20px;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:0;margin-bottom:2em}.woocommerce-cart .cart-collaterals .cart_totals .shop_table,.woocommerce-cart .cart-collaterals .cross-sells .shop_table{border-top:0;border-left:0;border-right:0;border-radius:0}.woocommerce-cart .cart-collaterals .cart_totals>h2,.woocommerce-cart .cart-collaterals .cross-sells>h2{margin:0 -20px 20px;background-color:#fbfbfb;border-bottom:1px solid var(--ast-border-color);font-weight:700}.woocommerce-cart .hentry,.woocommerce-cart ul.products{margin-bottom:0}.woocommerce-cart .hentry li.product,.woocommerce-cart ul.products li.product{margin-bottom:0}.woocommerce-cart table.cart td.actions .coupon{display:flex;align-items:center;margin:5px 0}.woocommerce-cart table.cart td.actions .coupon .input-text{padding:.5em .75em}.woocommerce-cart table.cart td.actions .button{padding:.5em 1em;line-height:1.5}.woocommerce-cart table.cart td.actions input.button{display:inline-block;width:auto}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:1.1em;line-height:1.8em}.woocommerce-page.woocommerce-checkout form.checkout.woocommerce-checkout:after,.woocommerce.woocommerce-checkout form.checkout.woocommerce-checkout:after{content:"";clear:both;display:table}.woocommerce-page.woocommerce-checkout table.shop_table thead,.woocommerce.woocommerce-checkout table.shop_table thead{background:0 0}.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table th{padding:14px 12px}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table td{padding:10px 10px 10px 0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout table.shop_table tfoot td,.woocommerce.woocommerce-checkout table.shop_table tfoot td{opacity:1}.woocommerce-page.woocommerce-checkout table.shop_table td,.woocommerce-page.woocommerce-checkout table.shop_table th,.woocommerce.woocommerce-checkout table.shop_table td,.woocommerce.woocommerce-checkout table.shop_table th{border-bottom-width:1px}.woocommerce-page.woocommerce-checkout form #order_review table,.woocommerce.woocommerce-checkout form #order_review table{border-width:0}.woocommerce-page.woocommerce-checkout form #order_review td,.woocommerce-page.woocommerce-checkout form #order_review th,.woocommerce.woocommerce-checkout form #order_review td,.woocommerce.woocommerce-checkout form #order_review th{border-top:0;border-right:0;padding-left:0;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout form #order_review td.product-name,.woocommerce.woocommerce-checkout form #order_review td.product-name{font-weight:500;display:flex;align-items:center}.woocommerce-page.woocommerce-checkout form #order_review td.product-name .product-quantity,.woocommerce.woocommerce-checkout form #order_review td.product-name .product-quantity{font-weight:400}.woocommerce-page.woocommerce-checkout form #order_review td:last-child,.woocommerce-page.woocommerce-checkout form #order_review th:last-child,.woocommerce.woocommerce-checkout form #order_review td:last-child,.woocommerce.woocommerce-checkout form #order_review th:last-child{text-align:right}.woocommerce-page.woocommerce-checkout form .form-row:last-child,.woocommerce.woocommerce-checkout form .form-row:last-child{margin-bottom:0}.woocommerce-page.woocommerce-checkout #payment,.woocommerce.woocommerce-checkout #payment{border-radius:0}.woocommerce-page.woocommerce-checkout #payment ul.payment_methods,.woocommerce.woocommerce-checkout #payment ul.payment_methods{padding:0;margin-bottom:1em;border-bottom:0}.woocommerce-page.woocommerce-checkout #payment div.payment_box,.woocommerce.woocommerce-checkout #payment div.payment_box{background-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.payment_box:before,.woocommerce.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#efefef}.woocommerce-page.woocommerce-checkout #payment div.form-row,.woocommerce.woocommerce-checkout #payment div.form-row{padding:0 0 2em}.woocommerce-page.woocommerce-checkout #payment #place_order,.woocommerce.woocommerce-checkout #payment #place_order{width:100%}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th{padding:.7em 1em;border-bottom-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce-page.woocommerce-checkout .woocommerce-order table.shop_table th:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table td:last-child,.woocommerce.woocommerce-checkout .woocommerce-order table.shop_table th:last-child{border-right-width:0}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,.woocommerce.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title{background:#fbfbfb;padding:1em;margin-bottom:0;font-size:1.3rem;border-width:1px 1px 0 1px;border-style:solid;border-color:var(--ast-border-color)}.woocommerce-page.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading,.woocommerce.woocommerce-checkout .woocommerce-order h2.wc-bacs-bank-details-heading{font-size:1.5rem;border-top:3px solid var(--ast-border-color);padding-top:.5em}.woocommerce-page.woocommerce-checkout .woocommerce-order h3,.woocommerce.woocommerce-checkout .woocommerce-order h3{font-size:1.1rem}.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details,.woocommerce.woocommerce-checkout .woocommerce-order ul.order_details{margin-bottom:2em}.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address,.woocommerce.woocommerce-checkout .woocommerce-customer-details address{border-right-width:1px;border-bottom-width:1px;border-radius:0}.woocommerce form .form-row .required{text-decoration:none}.woocommerce form.checkout_coupon{margin:0;border:0;padding:0 0 2em}.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;float:none;display:inline-block}.woocommerce form.checkout_coupon [name=coupon_code]{padding-top:9px;padding-bottom:9px}.woocommerce form.checkout_coupon .button{padding:.5em 1em;vertical-align:initial;line-height:1.35}@media (max-width:420px){.woocommerce form.checkout_coupon .form-row-first,.woocommerce form.checkout_coupon .form-row-last{display:block;margin:0 auto;width:100%}.woocommerce form.checkout_coupon .form-row-first{margin-bottom:10px}.woocommerce form.checkout_coupon .button[name=apply_coupon]{width:100%;padding:10px 5px}}.checkout_coupon .input-text{padding:.5em .75em}.woocommerce-MyAccount-navigation>ul{margin:0}.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button{margin-top:1em;margin-left:3px}#secondary .widget.woocommerce>li,#secondary .widget_layered_nav_filters>li{margin-bottom:0}#secondary .widget .select2-container .select2-selection--multiple .select2-selection__rendered{display:block;min-height:42px}#secondary .widget .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{margin-top:5px;margin-bottom:5px}#secondary .widget .select2-search__field{min-height:42px;margin:0}.woocommerce-js ul.cart_list li>a,.woocommerce-js ul.product_list_widget li>a{font-weight:500;margin-bottom:.33em;color:var(--ast-global-color-2)}.woocommerce-js #secondary .woocommerce-js ul.cart_list,.woocommerce-js #secondary .woocommerce-js ul.product_list_widget{margin:0}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce-js .widget_shopping_cart li,.woocommerce-js ul.product_list_widget .cart_list li,.woocommerce-js ul.product_list_widget li{padding:.6em 0 .6em 5em;min-height:5em;position:relative;border-bottom:1px solid var(--ast-border-color);margin:0;line-height:1.5}.woocommerce-js .widget_shopping_cart .cart_list li:last-child,.woocommerce-js .widget_shopping_cart li:last-child,.woocommerce-js ul.product_list_widget .cart_list li:last-child,.woocommerce-js ul.product_list_widget li:last-child{border-bottom:none}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons{margin-bottom:0}.woocommerce-js .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout.wc-forward{margin-left:5px;margin-right:0}.woocommerce-js.widget_product_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.woocommerce-js.widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-right:4px;line-height:1.5;transition:all .2s linear}.woocommerce-js .widget_shopping_cart .total,.woocommerce-js.widget_shopping_cart .total{padding:5px 0;border-top:1px solid var(--ast-border-color);border-bottom:1px solid var(--ast-border-color);margin-bottom:1.3em}.woocommerce-js ul.product_list_widget li img{position:absolute;left:0;width:4em;height:4em;margin:0 0 .5em 0;top:50%;transform:translateY(-50%);object-fit:cover}.woocommerce-js ul.product-categories>li{padding:2px 0}.woocommerce-js ul.product-categories>li:first-child{border:none}.woocommerce-js .widget del{opacity:.5}.woocommerce-js .widget ins{background:inherit}.woocommerce-js .widget .amount,.woocommerce-js .widget ins{font-weight:400}.woocommerce-js .widget .star-rating{margin:5px 0}.woocommerce-js .widget_rating_filter ul li a{display:inline-flex;align-items:center}.woocommerce-js .price_slider_amount .price_label span{font-weight:700}.woocommerce-js .widget_price_filter .ui-slider-horizontal{height:.2em}.woocommerce-js .widget_price_filter .ui-slider .ui-slider-handle{top:-.4em;cursor:pointer}.woocommerce-js .widget_price_filter .price_slider_amount .button{font-size:.9em!important;padding:8px 18px}.woocommerce-js .widget_price_filter .price_slider{margin-bottom:1.2em}.woocommerce-js .widget_price_filter .price_slider_wrapper .ui-widget-content{background-color:#ededed}.woocommerce-js .widget_product_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;margin-right:4px;line-height:1.5;padding:.5em 1.2em;font-size:12px!important;font-size:.8rem!important}.woocommerce-js .widget_product_tag_cloud .tagcloud a a.current-item,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:focus,.woocommerce-js .widget_product_tag_cloud .tagcloud a a:hover{background-color:#fafafa}.woocommerce-js .widget_shopping_cart .cart_list li,.woocommerce.widget_shopping_cart .cart_list li{padding:1.2em 1.8em 1.2em 5em}.woocommerce-js .widget_shopping_cart .cart_list li a.remove,.woocommerce.widget_shopping_cart .cart_list li a.remove{position:absolute;left:auto;right:0;top:.5em;color:var(--ast-global-color-3)}.woocommerce-js .widget_shopping_cart .cart_list li a.remove:hover,.woocommerce.widget_shopping_cart .cart_list li a.remove:hover{color:var(--ast-global-color-3)}.woocommerce-product-search{display:flex}.woocommerce-product-search .search-field{flex:auto;width:100%;border-top-right-radius:0;border-bottom-right-radius:0}.woocommerce-product-search input[type=submit]{padding:10px 15px;border-top-left-radius:0;border-bottom-left-radius:0}#secondary .widget_layered_nav_filters ul li.chosen,.widget_layered_nav_filters ul li.chosen{padding:0 .5em;margin-right:.5em;margin-bottom:.5em;background:rgba(245,245,245,.75);border-radius:20px;font-size:1em}#secondary .widget_layered_nav_filters ul li.chosen:hover,.widget_layered_nav_filters ul li.chosen:hover{background-color:#f5f5f5}#secondary .widget_layered_nav_filters ul li.chosen a,.widget_layered_nav_filters ul li.chosen a{display:block}#secondary .widget_layered_nav_filters ul li.chosen a::before,.widget_layered_nav_filters ul li.chosen a::before{margin-right:.5em;line-height:inherit;position:relative;top:1px}.woocommerce-terms-and-conditions{border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:rgba(0,0,0,.05)}.woocommerce-password-strength{text-align:center;font-weight:600;padding:3px .5em;font-size:1em}.woocommerce-password-strength.strong{background-color:#c1e1b9;border-color:#83c373}.woocommerce-password-strength.short{background-color:#f1adad;border-color:#e35b5b}.woocommerce-password-strength.bad{background-color:#fbc5a9;border-color:#f78b53}.woocommerce-password-strength.good{background-color:#ffe399;border-color:#ffc733}.woocommerce-password-hint{margin:.5em 0 0;display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu .header-main-layout-2 .main-header-container{display:block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{text-align:center}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-main-header-bar-alignment{display:inline-block}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-custom-item-outside .ast-masthead-custom-menu-items{display:inline-block;float:right}.ast-safari-browser-less-than-11.ast-woocommerce-cart-menu.ast-header-break-point .header-main-layout-2 .main-header-container{display:flex}.rtl .woocommerce-pagination .page-numbers li:last-child .next{transform:rotateY(180deg)}.rtl .woocommerce-pagination .page-numbers li:first-child .prev{transform:rotateY(-180deg)}.ast-site-header-cart .widgettitle{display:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product{text-align:left;margin-bottom:2.5em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a{display:inline-block;position:relative}.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img{width:100%;height:auto;display:block;margin:0 0 .8em 0;box-shadow:none}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title{margin-bottom:.5em;padding:0;font-size:1em;line-height:1.2;font-weight:inherit}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .star-rating{margin:0 auto .5em 0;backface-visibility:hidden}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link{position:relative;display:block}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product.product-category>a:hover .woocommerce-loop-category__title{background-color:#fff}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{bottom:1.8em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{font-size:.7em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price{line-height:1.3;margin-bottom:0;font-weight:700;margin-bottom:.5em;font-size:.9em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .price del{display:initial}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link{margin-top:.5em;margin-bottom:.5em;white-space:normal;line-height:1.3;font-size:100%;font-weight:700}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wp-block-button__link.added{margin-bottom:0;transition:margin 0s}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title{text-transform:uppercase;font-weight:700;line-height:1.5}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .woocommerce-loop-category__title .count{display:block;background:0 0;opacity:.5;font-size:.75em}.wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale{min-width:3em;min-height:3em;line-height:3em;padding:0;font-size:.8em;font-weight:400;text-transform:capitalize;position:absolute;text-align:center;border-radius:100%;z-index:9;top:0;right:10px;left:auto;margin:-.5em -.5em 0 0}.widget_product_categories .children{padding-left:20px}@supports (-moz-appearance:none){.sidebar-main .widget_product_search .search-field{width:60%}}.woocommerce-page .widget .wc-block-price-slider{padding-top:.15em}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{--range-color:var(--ast-global-color-0);top:-1px}@-moz-document url-prefix(){.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress{top:1px}}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{box-shadow:none;background-color:#ededed}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-progress,.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__range-input-wrapper{height:3px}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__controls{border-color:var(--ast-border-color)}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text{line-height:2.4;font-size:.8751em}.woocommerce-page .widget .wc-block-price-slider .wc-block-price-filter__range-text .wc-block-components-formatted-money-amount{font-weight:700}.woocommerce-page .widget .wc-block-price-slider .wc-block-components-price-slider__controls{justify-content:end}.woocommerce-page .widget .wc-block-price-slider input[type=range]{margin:0}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-webkit-slider-runnable-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-track{height:3px;box-shadow:none;background-color:transparent}.woocommerce-page .widget .wc-block-price-slider input[type=range].wc-block-price-filter__range-input::-webkit-slider-thumb{-webkit-appearance:none;border:0;width:15px;height:15px}.woocommerce-page .widget .wc-block-price-slider input[type=range]::-moz-range-thumb{height:15px;border:0;width:15px}.woocommerce-page .widget .wc-block-checkbox-list li input[type=checkbox]{margin:0 .5rem 0 0;position:relative;top:1px}.woocommerce-page .widget .wc-block-checkbox-list li .wc-filter-element-label-list-count{opacity:1}.woocommerce-page .widget .wc-layered-nav-rating{line-height:1}.woocommerce-page .widget .wc-layered-nav-rating .star-rating{margin:0}.product.woocommerce.add_to_cart_inline{border:0!important}.product.woocommerce.add_to_cart_inline a.button{margin-left:1em}.ast-site-header-cart .widget_shopping_cart,.astra-cart-drawer{background-color:var(--ast-global-color-5);border:1px solid var(--ast-border-color)}.woocommerce-js .sold-individually .button.single_add_to_cart_button{margin-left:-1em}.sidebar-main .ast-mini-cart-empty .woocommerce-mini-cart__empty-message{display:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/css/minified/style.min-rtl.css b/wp-content/themes/astra/assets/css/minified/style.min-rtl.css index de48bc934..f25768a36 100644 --- a/wp-content/themes/astra/assets/css/minified/style.min-rtl.css +++ b/wp-content/themes/astra/assets/css/minified/style.min-rtl.css @@ -1,3 +1,3 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{border:0;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active{outline:0}a,a:focus,a:hover,a:visited{text-decoration:none}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}#comments .submit,.search .search-submit{padding:10px 15px;border-radius:2px;line-height:1.85714285714286;border:0}.archive .no-results .ast-search-submit,.search .site-main .ast-search-submit{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid var(--ast-border-color);margin:0 0;padding:.35em .625em .75em}legend{border:0;padding:0}fieldset legend{margin-bottom:1.5em;padding:0 .5em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! - * Bootstrap v4.0.0-alpha.2 (https://getbootstrap.com) +@charset "UTF-8";a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{border:0;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active{outline:0}a,a:focus,a:hover,a:visited{text-decoration:none}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}#comments .submit,.search .search-submit{padding:10px 15px;border-radius:2px;line-height:1.85714285714286;border:0}.archive .no-results .ast-search-submit,.search .site-main .ast-search-submit{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid var(--ast-border-color);margin:0 0;padding:.35em .625em .75em}legend{border:0;padding:0}fieldset legend{margin-bottom:1.5em;padding:0 .5em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! + * Bootstrap v4.0.0-alpha.2 (https://getbootstrap.com) */@media (min-width:544px){.ast-container{max-width:100%}}@media (min-width:768px){.ast-container{max-width:100%}}@media (min-width:992px){.ast-container{max-width:100%}}@media (min-width:1200px){.ast-container{max-width:100%}}.ast-container,.ast-container-fluid{margin-right:auto;margin-left:auto;padding-right:20px;padding-left:20px}.ast-container-fluid::after,.ast-container::after{content:"";display:table;clear:both}.ast-row{margin-right:-20px;margin-left:-20px}.ast-row::after{content:"";display:table;clear:both}.ast-col-lg-1,.ast-col-lg-10,.ast-col-lg-11,.ast-col-lg-12,.ast-col-lg-2,.ast-col-lg-3,.ast-col-lg-4,.ast-col-lg-5,.ast-col-lg-6,.ast-col-lg-7,.ast-col-lg-8,.ast-col-lg-9,.ast-col-md-1,.ast-col-md-10,.ast-col-md-11,.ast-col-md-12,.ast-col-md-2,.ast-col-md-3,.ast-col-md-4,.ast-col-md-5,.ast-col-md-6,.ast-col-md-7,.ast-col-md-8,.ast-col-md-9,.ast-col-sm-1,.ast-col-sm-10,.ast-col-sm-11,.ast-col-sm-12,.ast-col-sm-2,.ast-col-sm-3,.ast-col-sm-4,.ast-col-sm-5,.ast-col-sm-6,.ast-col-sm-7,.ast-col-sm-8,.ast-col-sm-9,.ast-col-xl-1,.ast-col-xl-10,.ast-col-xl-11,.ast-col-xl-12,.ast-col-xl-2,.ast-col-xl-3,.ast-col-xl-4,.ast-col-xl-5,.ast-col-xl-6,.ast-col-xl-7,.ast-col-xl-8,.ast-col-xl-9,.ast-col-xs-1,.ast-col-xs-10,.ast-col-xs-11,.ast-col-xs-12,.ast-col-xs-2,.ast-col-xs-3,.ast-col-xs-4,.ast-col-xs-5,.ast-col-xs-6,.ast-col-xs-7,.ast-col-xs-8,.ast-col-xs-9{position:relative;min-height:1px;padding-right:20px;padding-left:20px}.ast-col-xs-1,.ast-col-xs-10,.ast-col-xs-11,.ast-col-xs-12,.ast-col-xs-2,.ast-col-xs-3,.ast-col-xs-4,.ast-col-xs-5,.ast-col-xs-6,.ast-col-xs-7,.ast-col-xs-8,.ast-col-xs-9{float:right}.ast-col-xs-1{width:8.3333333333%}.ast-col-xs-2{width:16.6666666667%}.ast-col-xs-3{width:25%}.ast-col-xs-4{width:33.3333333333%}.ast-col-xs-5{width:41.6666666667%}.ast-col-xs-6{width:50%}.ast-col-xs-7{width:58.3333333333%}.ast-col-xs-8{width:66.6666666667%}.ast-col-xs-9{width:75%}.ast-col-xs-10{width:83.3333333333%}.ast-col-xs-11{width:91.6666666667%}.ast-col-xs-12{width:100%}.ast-col-xs-pull-0{left:auto}.ast-col-xs-pull-1{left:8.3333333333%}.ast-col-xs-pull-2{left:16.6666666667%}.ast-col-xs-pull-3{left:25%}.ast-col-xs-pull-4{left:33.3333333333%}.ast-col-xs-pull-5{left:41.6666666667%}.ast-col-xs-pull-6{left:50%}.ast-col-xs-pull-7{left:58.3333333333%}.ast-col-xs-pull-8{left:66.6666666667%}.ast-col-xs-pull-9{left:75%}.ast-col-xs-pull-10{left:83.3333333333%}.ast-col-xs-pull-11{left:91.6666666667%}.ast-col-xs-pull-12{left:100%}.ast-col-xs-push-0{right:auto}.ast-col-xs-push-1{right:8.3333333333%}.ast-col-xs-push-2{right:16.6666666667%}.ast-col-xs-push-3{right:25%}.ast-col-xs-push-4{right:33.3333333333%}.ast-col-xs-push-5{right:41.6666666667%}.ast-col-xs-push-6{right:50%}.ast-col-xs-push-7{right:58.3333333333%}.ast-col-xs-push-8{right:66.6666666667%}.ast-col-xs-push-9{right:75%}.ast-col-xs-push-10{right:83.3333333333%}.ast-col-xs-push-11{right:91.6666666667%}.ast-col-xs-push-12{right:100%}.ast-col-xs-offset-0{margin-right:0}.ast-col-xs-offset-1{margin-right:8.3333333333%}.ast-col-xs-offset-2{margin-right:16.6666666667%}.ast-col-xs-offset-3{margin-right:25%}.ast-col-xs-offset-4{margin-right:33.3333333333%}.ast-col-xs-offset-5{margin-right:41.6666666667%}.ast-col-xs-offset-6{margin-right:50%}.ast-col-xs-offset-7{margin-right:58.3333333333%}.ast-col-xs-offset-8{margin-right:66.6666666667%}.ast-col-xs-offset-9{margin-right:75%}.ast-col-xs-offset-10{margin-right:83.3333333333%}.ast-col-xs-offset-11{margin-right:91.6666666667%}.ast-col-xs-offset-12{margin-right:100%}@media (min-width:544px){.ast-col-sm-1,.ast-col-sm-10,.ast-col-sm-11,.ast-col-sm-12,.ast-col-sm-2,.ast-col-sm-3,.ast-col-sm-4,.ast-col-sm-5,.ast-col-sm-6,.ast-col-sm-7,.ast-col-sm-8,.ast-col-sm-9{float:right}.ast-col-sm-1{width:8.3333333333%}.ast-col-sm-2{width:16.6666666667%}.ast-col-sm-3{width:25%}.ast-col-sm-4{width:33.3333333333%}.ast-col-sm-5{width:41.6666666667%}.ast-col-sm-6{width:50%}.ast-col-sm-7{width:58.3333333333%}.ast-col-sm-8{width:66.6666666667%}.ast-col-sm-9{width:75%}.ast-col-sm-10{width:83.3333333333%}.ast-col-sm-11{width:91.6666666667%}.ast-col-sm-12{width:100%}.ast-col-sm-pull-0{left:auto}.ast-col-sm-pull-1{left:8.3333333333%}.ast-col-sm-pull-2{left:16.6666666667%}.ast-col-sm-pull-3{left:25%}.ast-col-sm-pull-4{left:33.3333333333%}.ast-col-sm-pull-5{left:41.6666666667%}.ast-col-sm-pull-6{left:50%}.ast-col-sm-pull-7{left:58.3333333333%}.ast-col-sm-pull-8{left:66.6666666667%}.ast-col-sm-pull-9{left:75%}.ast-col-sm-pull-10{left:83.3333333333%}.ast-col-sm-pull-11{left:91.6666666667%}.ast-col-sm-pull-12{left:100%}.ast-col-sm-push-0{right:auto}.ast-col-sm-push-1{right:8.3333333333%}.ast-col-sm-push-2{right:16.6666666667%}.ast-col-sm-push-3{right:25%}.ast-col-sm-push-4{right:33.3333333333%}.ast-col-sm-push-5{right:41.6666666667%}.ast-col-sm-push-6{right:50%}.ast-col-sm-push-7{right:58.3333333333%}.ast-col-sm-push-8{right:66.6666666667%}.ast-col-sm-push-9{right:75%}.ast-col-sm-push-10{right:83.3333333333%}.ast-col-sm-push-11{right:91.6666666667%}.ast-col-sm-push-12{right:100%}.ast-col-sm-offset-0{margin-right:0}.ast-col-sm-offset-1{margin-right:8.3333333333%}.ast-col-sm-offset-2{margin-right:16.6666666667%}.ast-col-sm-offset-3{margin-right:25%}.ast-col-sm-offset-4{margin-right:33.3333333333%}.ast-col-sm-offset-5{margin-right:41.6666666667%}.ast-col-sm-offset-6{margin-right:50%}.ast-col-sm-offset-7{margin-right:58.3333333333%}.ast-col-sm-offset-8{margin-right:66.6666666667%}.ast-col-sm-offset-9{margin-right:75%}.ast-col-sm-offset-10{margin-right:83.3333333333%}.ast-col-sm-offset-11{margin-right:91.6666666667%}.ast-col-sm-offset-12{margin-right:100%}}@media (min-width:768px){.ast-col-md-1,.ast-col-md-10,.ast-col-md-11,.ast-col-md-12,.ast-col-md-2,.ast-col-md-3,.ast-col-md-4,.ast-col-md-5,.ast-col-md-6,.ast-col-md-7,.ast-col-md-8,.ast-col-md-9{float:right}.ast-col-md-1{width:8.3333333333%}.ast-col-md-2{width:16.6666666667%}.ast-col-md-3{width:25%}.ast-col-md-4{width:33.3333333333%}.ast-col-md-5{width:41.6666666667%}.ast-col-md-6{width:50%}.ast-col-md-7{width:58.3333333333%}.ast-col-md-8{width:66.6666666667%}.ast-col-md-9{width:75%}.ast-col-md-10{width:83.3333333333%}.ast-col-md-11{width:91.6666666667%}.ast-col-md-12{width:100%}.ast-col-md-pull-0{left:auto}.ast-col-md-pull-1{left:8.3333333333%}.ast-col-md-pull-2{left:16.6666666667%}.ast-col-md-pull-3{left:25%}.ast-col-md-pull-4{left:33.3333333333%}.ast-col-md-pull-5{left:41.6666666667%}.ast-col-md-pull-6{left:50%}.ast-col-md-pull-7{left:58.3333333333%}.ast-col-md-pull-8{left:66.6666666667%}.ast-col-md-pull-9{left:75%}.ast-col-md-pull-10{left:83.3333333333%}.ast-col-md-pull-11{left:91.6666666667%}.ast-col-md-pull-12{left:100%}.ast-col-md-push-0{right:auto}.ast-col-md-push-1{right:8.3333333333%}.ast-col-md-push-2{right:16.6666666667%}.ast-col-md-push-3{right:25%}.ast-col-md-push-4{right:33.3333333333%}.ast-col-md-push-5{right:41.6666666667%}.ast-col-md-push-6{right:50%}.ast-col-md-push-7{right:58.3333333333%}.ast-col-md-push-8{right:66.6666666667%}.ast-col-md-push-9{right:75%}.ast-col-md-push-10{right:83.3333333333%}.ast-col-md-push-11{right:91.6666666667%}.ast-col-md-push-12{right:100%}.ast-col-md-offset-0{margin-right:0}.ast-col-md-offset-1{margin-right:8.3333333333%}.ast-col-md-offset-2{margin-right:16.6666666667%}.ast-col-md-offset-3{margin-right:25%}.ast-col-md-offset-4{margin-right:33.3333333333%}.ast-col-md-offset-5{margin-right:41.6666666667%}.ast-col-md-offset-6{margin-right:50%}.ast-col-md-offset-7{margin-right:58.3333333333%}.ast-col-md-offset-8{margin-right:66.6666666667%}.ast-col-md-offset-9{margin-right:75%}.ast-col-md-offset-10{margin-right:83.3333333333%}.ast-col-md-offset-11{margin-right:91.6666666667%}.ast-col-md-offset-12{margin-right:100%}}@media (min-width:992px){.ast-col-lg-1,.ast-col-lg-10,.ast-col-lg-11,.ast-col-lg-12,.ast-col-lg-2,.ast-col-lg-3,.ast-col-lg-4,.ast-col-lg-5,.ast-col-lg-6,.ast-col-lg-7,.ast-col-lg-8,.ast-col-lg-9{float:right}.ast-col-lg-1{width:8.3333333333%}.ast-col-lg-2{width:16.6666666667%}.ast-col-lg-3{width:25%}.ast-col-lg-4{width:33.3333333333%}.ast-col-lg-5{width:41.6666666667%}.ast-col-lg-6{width:50%}.ast-col-lg-7{width:58.3333333333%}.ast-col-lg-8{width:66.6666666667%}.ast-col-lg-9{width:75%}.ast-col-lg-10{width:83.3333333333%}.ast-col-lg-11{width:91.6666666667%}.ast-col-lg-12{width:100%}.ast-col-lg-pull-0{left:auto}.ast-col-lg-pull-1{left:8.3333333333%}.ast-col-lg-pull-2{left:16.6666666667%}.ast-col-lg-pull-3{left:25%}.ast-col-lg-pull-4{left:33.3333333333%}.ast-col-lg-pull-5{left:41.6666666667%}.ast-col-lg-pull-6{left:50%}.ast-col-lg-pull-7{left:58.3333333333%}.ast-col-lg-pull-8{left:66.6666666667%}.ast-col-lg-pull-9{left:75%}.ast-col-lg-pull-10{left:83.3333333333%}.ast-col-lg-pull-11{left:91.6666666667%}.ast-col-lg-pull-12{left:100%}.ast-col-lg-push-0{right:auto}.ast-col-lg-push-1{right:8.3333333333%}.ast-col-lg-push-2{right:16.6666666667%}.ast-col-lg-push-3{right:25%}.ast-col-lg-push-4{right:33.3333333333%}.ast-col-lg-push-5{right:41.6666666667%}.ast-col-lg-push-6{right:50%}.ast-col-lg-push-7{right:58.3333333333%}.ast-col-lg-push-8{right:66.6666666667%}.ast-col-lg-push-9{right:75%}.ast-col-lg-push-10{right:83.3333333333%}.ast-col-lg-push-11{right:91.6666666667%}.ast-col-lg-push-12{right:100%}.ast-col-lg-offset-0{margin-right:0}.ast-col-lg-offset-1{margin-right:8.3333333333%}.ast-col-lg-offset-2{margin-right:16.6666666667%}.ast-col-lg-offset-3{margin-right:25%}.ast-col-lg-offset-4{margin-right:33.3333333333%}.ast-col-lg-offset-5{margin-right:41.6666666667%}.ast-col-lg-offset-6{margin-right:50%}.ast-col-lg-offset-7{margin-right:58.3333333333%}.ast-col-lg-offset-8{margin-right:66.6666666667%}.ast-col-lg-offset-9{margin-right:75%}.ast-col-lg-offset-10{margin-right:83.3333333333%}.ast-col-lg-offset-11{margin-right:91.6666666667%}.ast-col-lg-offset-12{margin-right:100%}}@media (min-width:1200px){.ast-col-xl-1,.ast-col-xl-10,.ast-col-xl-11,.ast-col-xl-12,.ast-col-xl-2,.ast-col-xl-3,.ast-col-xl-4,.ast-col-xl-5,.ast-col-xl-6,.ast-col-xl-7,.ast-col-xl-8,.ast-col-xl-9{float:right}.ast-col-xl-1{width:8.3333333333%}.ast-col-xl-2{width:16.6666666667%}.ast-col-xl-3{width:25%}.ast-col-xl-4{width:33.3333333333%}.ast-col-xl-5{width:41.6666666667%}.ast-col-xl-6{width:50%}.ast-col-xl-7{width:58.3333333333%}.ast-col-xl-8{width:66.6666666667%}.ast-col-xl-9{width:75%}.ast-col-xl-10{width:83.3333333333%}.ast-col-xl-11{width:91.6666666667%}.ast-col-xl-12{width:100%}.ast-col-xl-pull-0{left:auto}.ast-col-xl-pull-1{left:8.3333333333%}.ast-col-xl-pull-2{left:16.6666666667%}.ast-col-xl-pull-3{left:25%}.ast-col-xl-pull-4{left:33.3333333333%}.ast-col-xl-pull-5{left:41.6666666667%}.ast-col-xl-pull-6{left:50%}.ast-col-xl-pull-7{left:58.3333333333%}.ast-col-xl-pull-8{left:66.6666666667%}.ast-col-xl-pull-9{left:75%}.ast-col-xl-pull-10{left:83.3333333333%}.ast-col-xl-pull-11{left:91.6666666667%}.ast-col-xl-pull-12{left:100%}.ast-col-xl-push-0{right:auto}.ast-col-xl-push-1{right:8.3333333333%}.ast-col-xl-push-2{right:16.6666666667%}.ast-col-xl-push-3{right:25%}.ast-col-xl-push-4{right:33.3333333333%}.ast-col-xl-push-5{right:41.6666666667%}.ast-col-xl-push-6{right:50%}.ast-col-xl-push-7{right:58.3333333333%}.ast-col-xl-push-8{right:66.6666666667%}.ast-col-xl-push-9{right:75%}.ast-col-xl-push-10{right:83.3333333333%}.ast-col-xl-push-11{right:91.6666666667%}.ast-col-xl-push-12{right:100%}.ast-col-xl-offset-0{margin-right:0}.ast-col-xl-offset-1{margin-right:8.3333333333%}.ast-col-xl-offset-2{margin-right:16.6666666667%}.ast-col-xl-offset-3{margin-right:25%}.ast-col-xl-offset-4{margin-right:33.3333333333%}.ast-col-xl-offset-5{margin-right:41.6666666667%}.ast-col-xl-offset-6{margin-right:50%}.ast-col-xl-offset-7{margin-right:58.3333333333%}.ast-col-xl-offset-8{margin-right:66.6666666667%}.ast-col-xl-offset-9{margin-right:75%}.ast-col-xl-offset-10{margin-right:83.3333333333%}.ast-col-xl-offset-11{margin-right:91.6666666667%}.ast-col-xl-offset-12{margin-right:100%}}h1,h2,h3,h4,h5,h6{clear:both}.entry-content h1,h1{color:#808285;font-size:2em;line-height:1.2}.entry-content h2,h2{color:#808285;font-size:1.7em;line-height:1.3}.entry-content h3,h3{color:#808285;font-size:1.5em;line-height:1.4}.entry-content h4,h4{color:#808285;line-height:1.5;font-size:1.3em}.entry-content h5,h5{color:#808285;line-height:1.6;font-size:1.2em}.entry-content h6,h6{color:#808285;line-height:1.7;font-size:1.1em}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{color:#808285;background:#fff;font-style:normal}ol,ul{margin:0 3em 1.5em 0}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-right:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}b,strong{font-weight:700}cite,dfn,em,i{font-style:italic}blockquote,q{quotes:"" ""}blockquote:after,blockquote:before,q:after,q:before{content:""}blockquote{border-right:5px solid var(--ast-border-color);padding:20px;font-size:1.2em;font-style:italic;margin:0 0 1.5em;position:relative}address{margin:0 0 1.5em}abbr,acronym{border-bottom:1px dotted #666;cursor:help}pre{background:var(--ast-code-block-background);font-family:"Courier 10 Pitch",Courier,monospace;margin-bottom:1.6em;overflow:auto;max-width:100%;padding:1.6em}code,kbd,tt,var{font:15px Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace}img{height:auto;max-width:100%}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}.ast-button,.button,button,input,select,textarea{color:#808285;font-weight:400;font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}big{font-size:125%}ins,mark{background:0 0;text-decoration:none}table,td,th{border:1px solid var(--ast-border-color)}table{border-collapse:separate;border-spacing:0;border-width:1px 1px 0 0;margin:0 0 1.5em;width:100%}th{font-weight:700}td,th{padding:8px;border-width:0 0 1px 1px}.ast-button,.button,button,input[type=button],input[type=reset],input[type=submit]{border:1px solid;border-color:var(--ast-border-color);border-radius:2px;background:#e6e6e6;padding:.6em 1em .4em;color:#fff}.ast-button:focus,.ast-button:hover,.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{color:#fff;border-color:var(--ast-border-color)}.ast-button:active,.ast-button:focus,.button:active,.button:focus,button:active,button:focus,input[type=button]:active,input[type=button]:focus,input[type=reset]:active,input[type=reset]:focus,input[type=submit]:active,input[type=submit]:focus{border-color:var(--ast-border-color);outline:0}input[type=email],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],textarea{color:#666;border:1px solid var(--ast-border-color);border-radius:2px;-webkit-appearance:none}input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,textarea:focus{color:#111}textarea{padding-right:3px;width:100%}a{color:#4169e1}a:focus,a:hover{color:#191970}a:focus{outline:thin dotted}a:hover{outline:0}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:2px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;color:#21759b;display:block;font-size:12.25px;font-size:.875rem;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.alignleft{display:inline;float:right;margin-left:1.5em}.alignright{display:inline;float:left;margin-right:1.5em}.aligncenter{clear:both;text-align:center;display:block;margin-right:auto;margin-left:auto}#primary:after,#primary:before,#secondary:after,#secondary:before,.ast-container:after,.ast-container:before,.ast-row:after,.ast-row:before,.clear:after,.clear:before,.sidebar-main:after,.sidebar-main:before,.site-content:after,.site-content:before,.site-footer:after,.site-footer:before,.site-header:after,.site-header:before,.site-main:after,.site-main:before{content:"";display:table}#primary:after,#secondary:after,.ast-container:after,.ast-row:after,.clear:after,.sidebar-main:after,.site-content:after,.site-footer:after,.site-header:after,.site-main:after{clear:both}.entry-content[ast-blocks-layout]>embed,.entry-content[ast-blocks-layout]>iframe,.entry-content[ast-blocks-layout]>object,embed,iframe,object{max-width:100%}.wp-caption{margin-bottom:1.5em;max-width:100%}.wp-caption img[class*=wp-image-]{display:block;margin-right:auto;margin-left:auto}.wp-caption .wp-caption-text{margin:.8075em 0}.wp-caption-text{text-align:center}::selection{color:#fff;background:#0274be}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:not(.logged-in){position:relative}#page{position:relative}a,a:focus{text-decoration:none}.secondary a *,.site-footer a *,.site-header a *,a{transition:all .2s linear}.capitalize{text-transform:uppercase}img{vertical-align:middle}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:20px}p{margin-bottom:1.75em}blockquote{margin:1.5em 3em 1.5em 1em;font-size:1.1em;line-height:inherit;position:relative}.ast-button,.button,input[type=button],input[type=submit]{border-radius:0;padding:18px 30px;border:0;box-shadow:none;text-shadow:none}.ast-button:hover,.button:hover,input[type=button]:hover,input[type=submit]:hover{box-shadow:none}.ast-button:active,.ast-button:focus,.button:active,.button:focus,input[type=button]:active,input[type=button]:focus,input[type=submit]:active,input[type=submit]:focus{box-shadow:none}.site-title{font-weight:400}.site-description,.site-title{margin-bottom:0}.site-description a,.site-description:focus a,.site-description:hover a,.site-title a,.site-title:focus a,.site-title:hover a{transition:all .2s linear}.site-title a,.site-title a:focus,.site-title a:hover,.site-title a:visited{color:#222}.site-description a,.site-description a:focus,.site-description a:hover,.site-description a:visited{color:#999}.search-form .search-field{outline:0}.ast-search-menu-icon{position:relative;z-index:3}.site .skip-link{background-color:#f1f1f1;box-shadow:0 0 1px 1px rgba(0,0,0,.2);color:#21759b;display:block;font-family:Montserrat,"Helvetica Neue",sans-serif;font-size:14px;font-weight:700;right:-9999em;outline:0;padding:15px 23px 14px;text-decoration:none;text-transform:none;top:-9999em}.site .skip-link:focus{clip:auto;height:auto;right:6px;top:7px;width:auto;z-index:100000;outline:thin dotted}.logged-in .site .skip-link{box-shadow:0 0 2px 2px rgba(0,0,0,.2);font-family:"Open Sans",sans-serif}input,select{line-height:1}.ast-button,.ast-custom-button,body,button,input[type=button],input[type=submit],textarea{line-height:1.85714285714286}.site-title a{line-height:1.2}.site-header .site-description{line-height:1.5}.ast-single-post .entry-title,.ast-single-post .entry-title a{line-height:1.2}.entry-title,.entry-title a{font-weight:400}.ast-oembed-container{position:relative;padding-top:56.25%;height:0;overflow:hidden;max-width:100%;height:auto}.ast-oembed-container embed,.ast-oembed-container iframe,.ast-oembed-container object{position:absolute;top:0;right:0;width:100%;height:100%}body .ast-oembed-container *{position:absolute;top:0;right:0;width:100%;height:100%}.ast-hidden{display:none!important}body{background-color:#fff}#page{display:block}#primary,#secondary{display:block;position:relative;float:right;width:100%}#primary{margin:4em 0}.ast-separate-container{background-color:#f5f5f5}.ast-separate-container #primary{padding:4em 0;margin:0;border:0}.ast-separate-container .site-main>.ast-row{margin-right:0;margin-left:0}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single:not(.ast-related-post){background-color:#fff}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{border-bottom:1px solid var(--ast-border-color);margin:0;padding:5.34em 6.67em}.ast-separate-container .blog-layout-1{padding:0;border-bottom:0}.ast-separate-container .ast-article-single{border-bottom:0}@media (max-width:1200px){.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{margin:0;padding:3.34em 2.4em}}.ast-page-builder-template .hentry{margin:0}.ast-page-builder-template .site-content>.ast-container{max-width:100%;padding:0}.ast-page-builder-template .site-content #primary{padding:0;margin:0}.ast-page-builder-template .no-results{text-align:center;margin:4em auto}.ast-page-builder-template .entry-header{margin-top:4em;margin-right:auto;margin-left:auto;padding-right:20px;padding-left:20px}.ast-page-builder-template .entry-header.ast-no-title.ast-no-thumbnail{margin-top:0}.ast-page-builder-template .entry-header.ast-header-without-markup{margin-top:0;margin-bottom:0}.ast-page-builder-template .entry-header.ast-no-title.ast-no-meta{margin-bottom:0}.ast-page-builder-template.single .post-navigation{padding-bottom:2em}.ast-page-builder-template .ast-archive-description{margin-top:4em;margin-right:auto;margin-left:auto;padding-right:20px;padding-left:20px}@media (min-width:993px){.ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary{margin:4em 0;padding:0}.ast-right-sidebar #primary{padding-left:60px}.ast-left-sidebar #primary{padding-right:60px}}@media (max-width:992px){.ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary{padding-right:0;padding-left:0}.ast-right-sidebar #primary{padding-left:30px}.ast-left-sidebar #primary{padding-right:30px}}.ast-search-icon .astra-search-icon{font-size:1.3em}.main-navigation{height:100%;-js-display:inline-flex;display:inline-flex}.main-navigation ul{list-style:none;margin:0;padding-right:0;position:relative}.main-header-menu .menu-link,.main-header-menu>a{text-decoration:none;padding:0 1em;display:inline-block;transition:all .2s linear}.main-header-menu .menu-item{position:relative}.main-header-menu .menu-item.focus>.sub-menu,.main-header-menu .menu-item:hover>.sub-menu,.main-header-menu .menu-item>.sub-menu.toggled-on{left:auto;right:0;visibility:visible}.main-header-menu .menu-item.focus>.sub-menu .sub-menu.toggled-on,.main-header-menu .menu-item:hover>.sub-menu .sub-menu.toggled-on,.main-header-menu .menu-item>.sub-menu.toggled-on .sub-menu.toggled-on{right:100%;left:auto;visibility:visible}.main-header-menu .ast-left-align-sub-menu.focus>.sub-menu,.main-header-menu .ast-left-align-sub-menu:hover>.sub-menu{left:0;right:auto}@media (min-width:769px){.main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{right:-100%}.main-header-menu .ast-left-align-sub-menu .sub-menu .menu-item.focus>.sub-menu,.main-header-menu .ast-left-align-sub-menu .sub-menu .menu-item:hover>.sub-menu{right:-100%}}.main-header-menu .sub-menu{width:240px;background:#fff;right:-999em;position:absolute;top:100%;z-index:99999;visibility:hidden}@media (min-width:769px){.main-header-menu .sub-menu .menu-item.focus>.sub-menu,.main-header-menu .sub-menu .menu-item:hover>.sub-menu{right:100%;left:auto}.main-header-menu .sub-menu .ast-left-align-sub-menu.focus>.sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:focus * .sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:hover * .sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:hover>.sub-menu{right:-100%}.main-header-menu .sub-menu .main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.main-header-menu .sub-menu .main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{right:-100%}}.main-header-menu .sub-menu .menu-link{padding:.9em 1em;display:block;word-wrap:break-word}.main-header-menu .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type{display:none}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow{display:none}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow{position:absolute;left:.6em;top:50%;transform:translate(0,-50%) rotate(-270deg)}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow .icon-arrow{display:block}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow .icon-arrow svg{margin:0}.main-header-menu .sub-menu .sub-menu{top:0}.submenu-with-border .sub-menu{border-width:1px;border-style:solid}.submenu-with-border .sub-menu .menu-link{border-width:0 0 1px;border-style:solid}.submenu-with-border .sub-menu .sub-menu{top:-2px}.ast-desktop .submenu-with-border .sub-menu>.menu-item:last-child>.menu-link{border-bottom-width:0}.ast-header-break-point .main-navigation{padding-right:0}.ast-header-break-point .main-navigation ul .menu-item .menu-link{padding:0 20px;display:inline-block;width:100%;border:0;border-bottom-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type{margin-left:5px}.ast-header-break-point .main-navigation ul .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type{display:inline}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-link{padding-right:30px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-link{padding-right:40px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-item .menu-link{padding-right:50px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-item .menu-item .menu-link{padding-right:60px}.ast-header-break-point .main-header-menu{background-color:#f9f9f9;border-top-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point .main-header-menu .sub-menu{background-color:#f9f9f9;position:static;opacity:1;visibility:visible;border:0;width:auto}.ast-header-break-point .main-header-menu .sub-menu .ast-left-align-sub-menu.focus>.sub-menu,.ast-header-break-point .main-header-menu .sub-menu .ast-left-align-sub-menu:hover>.sub-menu{right:0}.ast-header-break-point .main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.ast-header-break-point .main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{right:0}.ast-header-break-point .submenu-with-border .sub-menu{border:0}.ast-header-break-point .dropdown-menu-toggle{display:none}.ast-mobile-menu-buttons{display:none}.ast-button-wrap{display:inline-block}.ast-button-wrap button{box-shadow:none;border:none}.ast-button-wrap .menu-toggle{padding:0;width:2.2em;height:2.1em;font-size:1.5em;font-weight:400;border-radius:2px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;border-radius:2px;vertical-align:middle;line-height:1.85714285714286}.ast-button-wrap .menu-toggle.main-header-menu-toggle{padding:0 .5em;width:auto;text-align:center}.ast-button-wrap .menu-toggle.main-header-menu-toggle .mobile-menu{font-size:15px;font-size:1rem;font-weight:600}.ast-button-wrap .menu-toggle .menu-toggle-icon{font-style:normal;display:inline-block;vertical-align:middle;line-height:2.05}.ast-button-wrap .menu-toggle .menu-toggle-icon:before{content:"\e5d2";font-family:Astra;text-decoration:inherit}.ast-button-wrap .menu-toggle .icon-menu-bars svg:nth-child(2){display:none}.ast-button-wrap .menu-toggle.toggled .menu-toggle-icon:before{content:"\e5cd"}.ast-button-wrap .menu-toggle.toggled .icon-menu-bars svg:first-child{display:none}.ast-button-wrap .menu-toggle.toggled .icon-menu-bars svg:nth-child(2){display:block}.ast-button-wrap .menu-toggle .mobile-menu-wrap{display:inline-block}.ast-button-wrap .menu-toggle:focus{outline:thin dotted}.header-main-layout-1 .ast-main-header-bar-alignment{margin-right:auto}.site-navigation{height:100%}.site-header .menu-link *{transition:none}.ast-icon.icon-arrow svg{height:.6em;width:.6em;position:relative;margin-right:10px}.ast-icon.icon-search svg{height:1em;width:.9em;margin-top:3px;margin-left:2px}.ast-header-break-point .user-select{clear:both}.ast-header-break-point .ast-mobile-menu-buttons{display:block;align-self:center}.ast-header-break-point .main-header-bar-navigation{flex:auto}.ast-header-break-point .ast-main-header-bar-alignment{display:block;width:100%;flex:auto;order:4}.ast-header-break-point .ast-icon.icon-arrow svg{height:.85em;width:.95em;position:relative;margin-right:10px}.site-main .comment-navigation,.site-main .post-navigation,.site-main .posts-navigation{margin:0 0 1.5em;overflow:hidden}.comment-navigation .nav-next,.comment-navigation .nav-previous,.post-navigation .nav-next,.post-navigation .nav-previous,.posts-navigation .nav-next,.posts-navigation .nav-previous{width:50%;display:inline-block}.comment-navigation .nav-next,.post-navigation .nav-next,.posts-navigation .nav-next{text-align:left}.ast-icon svg{fill:currentColor}.post-navigation a{background:0 0;font-size:16px;font-size:1.06666rem;padding:0 1.5em;height:2.33333em;line-height:calc(2.33333em - 3px)}.main-header-bar{z-index:1}.header-main-layout-1.ast-primary-menu-disabled .ast-masthead-custom-menu-items{text-align:left}.header-main-layout-1 .main-header-bar-navigation{text-align:left}.header-main-layout-1 .main-header-bar-navigation .sub-menu{text-align:right}.header-main-layout-1 .main-navigation{padding-right:15px;vertical-align:top}.header-main-layout-1 .main-header-container{align-items:stretch}.header-main-layout-2 .main-header-container{display:block}.header-main-layout-2 .site-branding{text-align:center;padding-bottom:1em}.header-main-layout-2 .site-title{justify-content:center}.header-main-layout-2 .main-navigation ul{justify-content:center}.header-main-layout-2 .main-header-bar-navigation{text-align:center}.header-main-layout-2 .main-header-bar-navigation .sub-menu{text-align:right}.header-main-layout-2 .ast-header-custom-item{justify-content:center;line-height:1.85714285714286}.header-main-layout-2 .ast-masthead-custom-menu-items{position:relative}.header-main-layout-2 .widget{text-align:center}.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{-js-display:flex;display:flex;justify-content:center}.ast-header-custom-item-outside .header-main-layout-2 .site-branding{flex:0 0 100%}.header-main-layout-3 .ast-site-identity{text-align:left}.header-main-layout-3 .main-header-container{flex-direction:row-reverse;align-items:stretch}.header-main-layout-3 .main-navigation{padding-left:15px}.header-main-layout-3 .main-navigation ul{justify-content:flex-start}.header-main-layout-3 .main-header-bar-navigation{text-align:right}.header-main-layout-3 .ast-header-custom-item{justify-content:flex-start}.header-main-layout-3 .ast-masthead-custom-menu-items{position:relative}.header-main-layout-3 li .ast-search-icon{padding-right:.5em}.header-main-layout-3 .ast-search-menu-icon{right:0;left:0}.header-main-layout-3 li .ast-search-menu-icon{right:1em;left:0}.header-main-layout-3 .main-header-bar .ast-search-menu-icon .search-form{padding:0 3em 0 0}.header-main-layout-3 .main-header-bar .ast-search-menu-icon.slide-search .search-form{right:-1em;left:auto}.ast-header-break-point .header-main-layout-1 .site-branding{padding-left:1em}.ast-header-break-point .header-main-layout-1 .main-header-bar-navigation{text-align:right}.ast-header-break-point .header-main-layout-1 .main-navigation{padding-right:0}.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items{flex:1 1 100%}.ast-header-break-point .ast-mobile-header-stack .site-branding{padding-right:0;padding-left:0;padding-bottom:1em;flex:1 1 100%}.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items,.ast-header-break-point .ast-mobile-header-stack .ast-site-identity,.ast-header-break-point .ast-mobile-header-stack .site-branding,.ast-header-break-point .ast-mobile-header-stack .site-title{justify-content:center;text-align:center}.ast-header-break-point .ast-mobile-header-stack.ast-logo-title-inline .site-title{text-align:right}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{flex:1 1 100%;text-align:center;justify-content:center}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .main-header-container{flex-direction:initial}.ast-header-break-point .header-main-layout-2 .ast-mobile-menu-buttons{-js-display:flex;display:flex;justify-content:center}.ast-header-break-point .header-main-layout-2 .main-header-bar-navigation,.ast-header-break-point .header-main-layout-2 .widget{text-align:right}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-3 .main-header-bar .ast-search-icon{margin-left:auto;margin-right:1em}.ast-header-break-point .header-main-layout-3 .main-header-bar .ast-search-menu-icon.slide-search .search-form{left:auto;right:0}.ast-header-break-point .header-main-layout-3.ast-mobile-header-inline .ast-mobile-menu-buttons{justify-content:flex-start}.ast-header-break-point .header-main-layout-3 li .ast-search-menu-icon{right:0}.ast-header-break-point .header-main-layout-3 .site-branding{padding-right:1em;justify-content:flex-end}.ast-header-break-point .header-main-layout-3 .main-navigation{padding-left:0}.ast-logo-title-inline .ast-site-identity{-js-display:inline-flex;display:inline-flex;vertical-align:middle;align-items:center;transition:all .2s linear}.ast-logo-title-inline .site-logo-img{padding-left:1em}.ast-logo-title-inline.header-main-layout-2 .site-logo-img+.ast-site-title-wrap .site-title{justify-content:flex-start}@media (max-width:544px){.ast-header-custom-item-outside .ast-mobile-header-stack .site-branding{padding-left:0}.ast-header-custom-item-outside .ast-mobile-header-stack .site-title{justify-content:center;text-align:center}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons,.ast-header-break-point .ast-mobile-header-stack .site-branding{justify-content:center;text-align:center;padding-bottom:0}}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-branding{text-align:right}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-title{justify-content:left}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-2 .ast-mobile-menu-buttons{padding-bottom:1em}.ast-header-break-point .ast-mobile-header-inline .main-header-container,.ast-header-break-point .ast-mobile-header-stack .main-header-container{-js-display:flex;display:flex}.site-header{z-index:99;position:relative}.main-header-container{position:relative}.main-header-bar-wrap{position:relative}.main-header-bar{background-color:#fff;border-bottom-color:var(--ast-border-color);border-bottom-style:solid}.ast-header-break-point .main-header-bar{border:0}.ast-header-break-point .main-header-bar{border-bottom-color:var(--ast-border-color);border-bottom-style:solid}.main-header-bar{margin-right:auto;margin-left:auto}.ast-desktop .main-header-menu.ast-menu-shadow .sub-menu{box-shadow:0 4px 10px -2px rgba(0,0,0,.1)}.ast-header-custom-item-inside .button-custom-menu-item .menu-link{display:none}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item{padding-right:0;padding-left:0;margin-top:0;margin-bottom:0}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item .ast-custom-button-link{display:none}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item .menu-link{display:block}.nav-style{display:block;padding:0 15px}.site-branding{line-height:1;align-self:center}.ast-no-menu-items .main-navigation{display:none}.ast-menu-toggle{display:none;background:0 0;color:inherit;border-style:dotted;border-color:transparent}.ast-menu-toggle:focus,.ast-menu-toggle:hover{background:0 0;border-color:inherit;color:inherit}.ast-menu-toggle:focus{outline:thin dotted}.ast-main-header-nav-open .main-header-bar{padding-bottom:0}.main-header-bar{z-index:4;position:relative;line-height:4}.main-header-bar .main-header-bar-navigation{height:100%}.main-header-bar .main-header-bar-navigation:empty{padding:0}.main-header-bar .main-header-bar-navigation .sub-menu{line-height:1.45}.main-header-bar .main-header-bar-navigation .menu-item-has-children>.menu-link:after{line-height:normal}.main-header-bar .main-header-bar-navigation .ast-search-icon{display:block;z-index:4;position:relative}.main-header-bar .ast-search-menu-icon .search-form{background-color:#fff}.ast-primary-menu-disabled .main-header-bar .main-header-bar-navigation.toggle-on{padding-top:0}.ast-flyout-menu-enable .main-header-bar .ast-masthead-custom-menu-items .ast-custom-button-link{border:none}.ast-header-break-point.ast-header-custom-item-inside .main-header-bar .ast-search-menu-icon .search-form{visibility:visible;opacity:1;position:relative;left:auto;top:auto;transform:none}.ast-above-header-section .user-select .ast-dropdown-active .slide-search.astra-search-icon,.ast-masthead-custom-menu-items .ast-dropdown-active .slide-search.astra-search-icon,.below-header-user-select .ast-dropdown-active .slide-search.astra-search-icon{color:#757575}.ast-search-menu-icon.slide-search .search-form{backface-visibility:visible;visibility:hidden;opacity:0;transition:all .2s;position:absolute;z-index:3;left:-1em;top:50%;transform:translateY(-50%)}.ast-search-menu-icon.ast-dropdown-active.slide-search .search-form{visibility:visible;opacity:1}.ast-search-menu-icon .search-form{border:1px solid var(--ast-border-color);line-height:normal;padding:0 0 0 3em;border-radius:2px;display:inline-block;backface-visibility:hidden;position:relative;color:inherit;background-color:#fff}.ast-search-menu-icon .astra-search-icon{-js-display:flex;display:flex;line-height:normal}.ast-search-menu-icon .astra-search-icon:focus{outline:0}.ast-search-menu-icon .search-field{border:none;background-color:transparent;transition:width .2s;border-radius:inherit;color:inherit;font-size:inherit;width:0;color:#757575}.ast-search-menu-icon .search-submit{display:none;background:0 0;border:none;font-size:1.3em;color:#757575}.ast-search-menu-icon.ast-dropdown-active{visibility:visible;opacity:1;position:relative}.ast-search-menu-icon.ast-dropdown-active .search-field{width:235px}li.ast-masthead-custom-menu-items{padding:0 1em}li.ast-masthead-custom-menu-items a{padding-right:0;padding-left:0;vertical-align:middle}li.ast-masthead-custom-menu-items a,li.ast-masthead-custom-menu-items a:focus,li.ast-masthead-custom-menu-items a:hover{background:0 0}li.ast-masthead-custom-menu-items .ast-search-icon .astra-search-icon{line-height:1}.ast-search-icon{z-index:4;position:relative;line-height:normal}.ast-primary-menu-disabled.ast-mobile-header-inline .ast-masthead-custom-menu-items{text-align:left}.ast-primary-menu-disabled .ast-masthead-custom-menu-items{flex:1}.ast-primary-menu-disabled.header-main-layout-2 .ast-masthead-custom-menu-items{text-align:center}.ast-primary-menu-disabled.header-main-layout-3 .ast-masthead-custom-menu-items{text-align:right}.ast-masthead-custom-menu-items{padding:0 1em}.search-custom-menu-item{position:relative}.custom-mobile-logo-link{display:none}.ast-site-identity{padding:1em 0}.ast-header-break-point .ast-mobile-header-stack .site-description{text-align:center}.ast-header-break-point .ast-mobile-header-stack.ast-logo-title-inline .site-description{text-align:right}.ast-header-break-point.ast-header-custom-item-outside .ast-primary-menu-disabled .ast-mobile-menu-buttons{display:none}.ast-header-break-point .ast-hide-custom-menu-mobile .ast-masthead-custom-menu-items{display:none}.ast-header-break-point .ast-mobile-header-inline .site-branding{text-align:right;padding-bottom:0}.ast-header-break-point .ast-mobile-header-inline.header-main-layout-3 .site-branding{text-align:left}.ast-header-break-point .site-header .main-header-bar-wrap .site-branding{-js-display:flex;display:flex;flex:1;align-self:center}.ast-header-break-point ul li.ast-masthead-custom-menu-items a{padding:0;display:inline-block;width:auto;border:0}.ast-header-break-point li.ast-masthead-custom-menu-items{padding-right:20px;padding-left:20px;margin-bottom:1em;margin-top:1em}.ast-header-break-point .ast-site-identity{width:100%}.ast-header-break-point .main-header-bar-navigation .menu-item-has-children>.menu-link:after{display:none}.ast-header-break-point .main-header-bar{display:block;line-height:3}.ast-header-break-point .main-header-bar .main-header-bar-navigation{line-height:3;display:none}.ast-header-break-point .main-header-bar .main-header-bar-navigation .sub-menu{line-height:3}.ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children .sub-menu{display:none}.ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle{display:inline-block;position:absolute;font-size:inherit;top:-1px;left:20px;cursor:pointer;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0 .907em;font-weight:400;line-height:inherit;transition:all .2s}.ast-header-break-point .main-header-bar .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle .icon-arrow svg,.ast-header-break-point .main-header-bar .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before{transform:rotateX(180deg)}.ast-header-break-point .main-header-bar .main-header-bar-navigation .main-header-menu{border-top-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point.ast-header-custom-item-inside .ast-search-menu-icon{position:relative;display:block;left:auto;transform:none}.ast-header-break-point .main-navigation{display:block;width:100%}.ast-header-break-point .main-navigation ul>.menu-item:first-child{border-top:0}.ast-header-break-point .main-navigation ul ul{right:auto;left:auto}.ast-header-break-point .main-navigation li{width:100%}.ast-header-break-point .main-navigation .widget{margin-bottom:1em}.ast-header-break-point .main-navigation .widget li{width:auto}.ast-header-break-point .main-navigation .widget:last-child{margin-bottom:0}.ast-header-break-point .main-header-bar-navigation{width:calc(100% + 40px);margin:0 -20px}.ast-header-break-point .main-header-menu ul ul{top:0}.ast-header-break-point .ast-has-mobile-header-logo .custom-logo-link{display:none}.ast-header-break-point .ast-has-mobile-header-logo .custom-mobile-logo-link{display:inline-block}.ast-header-break-point.ast-mobile-inherit-site-logo .ast-has-mobile-header-logo .astra-logo-svg,.ast-header-break-point.ast-mobile-inherit-site-logo .ast-has-mobile-header-logo .custom-logo-link{display:block}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-menu-buttons{order:2}.ast-header-break-point.ast-header-custom-item-outside .main-header-bar-navigation{order:3}.ast-header-break-point.ast-header-custom-item-outside .ast-masthead-custom-menu-items{order:1}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-2 .ast-masthead-custom-menu-items{text-align:center}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .ast-mobile-menu-buttons,.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-branding{-js-display:flex;display:flex}.ast-header-break-point.ast-header-custom-item-outside.ast-header-custom-item-outside .header-main-layout-2 .ast-mobile-menu-buttons{padding-bottom:0}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .ast-site-identity{width:100%}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline.header-main-layout-3 .ast-site-identity{width:auto}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline.header-main-layout-2 .site-branding{flex:1 1 auto}@media (max-width:544px){.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{width:100%}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons,.ast-header-break-point .ast-mobile-header-stack .site-branding{justify-content:center}.ast-header-break-point .ast-mobile-header-stack .main-header-bar-wrap .site-branding{flex:1 1 auto}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{padding-top:.8em}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-2 .ast-mobile-menu-buttons{padding-top:.8em}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-1 .site-branding{padding-bottom:0}.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items{padding:.8em 1em 0 1em;text-align:center;width:100%}.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .ast-masthead-custom-menu-items,.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .ast-mobile-menu-buttons{padding-top:.8em}}.customize-partial-edit-shortcut-blogname button.customize-partial-edit-shortcut-button{display:none}.ast-site-title-wrap:hover .customize-partial-edit-shortcut-blogname button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-blogdescription button.customize-partial-edit-shortcut-button{display:none}.ast-site-title-wrap:hover .customize-partial-edit-shortcut-blogdescription button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-astra-settings-display-site-title-responsive button.customize-partial-edit-shortcut-button{display:none}.customize-partial-edit-shortcut-astra-settings-display-site-tagline-responsive button.customize-partial-edit-shortcut-button{display:none}.customize-partial-edit-shortcut-custom_logo button.customize-partial-edit-shortcut-button{display:none}.site-logo-img:hover .customize-partial-edit-shortcut-custom_logo button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-astra-settings-disable-primary-nav button.customize-partial-edit-shortcut-button{display:none}.main-navigation:hover .customize-partial-edit-shortcut-astra-settings-disable-primary-nav button.customize-partial-edit-shortcut-button{display:inline-block}.ast-primary-sticky-header-active .customize-partial-edit-shortcut-astra-settings-header-main-stick .customize-partial-edit-shortcut-button{right:100px}.ast-primary-sticky-header-active.ast-full-width-header .customize-partial-edit-shortcut-astra-settings-header-main-stick .customize-partial-edit-shortcut-button{right:5px}.customize-partial-edit-shortcut-astra-settings-disable-primary-nav .customize-partial-edit-shortcut-button{top:15px}.ast-masthead-custom-menu-items.search-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{right:-30px;top:-7px;display:none}.ast-masthead-custom-menu-items.search-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.button-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-button-text .customize-partial-edit-shortcut-button{top:-14px;display:none}.ast-masthead-custom-menu-items.button-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-button-text .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.text-html-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-html .customize-partial-edit-shortcut-button{right:-30px;top:15px;display:none}.ast-masthead-custom-menu-items.text-html-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-html .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.widget-custom-menu-item{text-align:right}.ast-masthead-custom-menu-items.widget-custom-menu-item .customize-partial-edit-shortcut .customize-partial-edit-shortcut-button{right:-25px;top:-8px;display:none}.ast-masthead-custom-menu-items.widget-custom-menu-item:hover .customize-partial-edit-shortcut .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.woocommerce-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{top:-20px;right:-25px;display:none}.ast-masthead-custom-menu-items.woocommerce-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{display:block}.ast-below-header .below-header-user-select .ast-search-menu-icon,.ast-below-header .below-header-user-select .ast-site-header-cart,.ast-below-header .below-header-user-select.below-header-widget{text-align:right}.ast-below-header .customize-partial-edit-shortcut{top:1em}.ast-above-header-section .user-select .ast-search-menu-icon{text-align:right}.ast-above-header .customize-partial-edit-shortcut{top:.3em}.ast-above-header-section-1 .ast-above-header-navigation .customize-partial-edit-shortcut-astra-settings-above-header-section-1 .customize-partial-edit-shortcut-button{right:-14px}.ast-above-header-section-1 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-above-header-section-1-search-box-type .customize-partial-edit-shortcut-button{right:-25px;top:-10px}.ast-above-header-section-1.woocommerce-above-header .customize-partial-edit-shortcut-astra-settings-above-header-section-1 .customize-partial-edit-shortcut-button{right:-25px;top:-15px}.ast-above-header-section-1 .customize-partial-edit-shortcut-astra-settings-above-header-section-1-html .customize-partial-edit-shortcut-button{right:-25px}.ast-above-header-section-2 .ast-above-header-navigation .customize-partial-edit-shortcut-astra-settings-above-header-section-2 .customize-partial-edit-shortcut-button{right:-14px}.ast-above-header-section-2 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-above-header-section-2-search-box-type .customize-partial-edit-shortcut-button{top:-10px;right:-25px}.ast-above-header-section-2.woocommerce-above-header .customize-partial-edit-shortcut-astra-settings-above-header-section-2 .customize-partial-edit-shortcut-button{right:-25px}.below-header-section-1.ast-below-header-navigation .customize-partial-edit-shortcut-astra-settings-below-header-section-1 .customize-partial-edit-shortcut-button{right:-14px}.below-header-section-1 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-below-header-section-1-search-box-type .customize-partial-edit-shortcut-button{top:-10px;right:-25px}.below-header-section-1 .ast-site-header-cart .customize-partial-edit-shortcut-astra-settings-below-header-section-1 .customize-partial-edit-shortcut-button{right:-25px}.below-header-section-1 .customize-partial-edit-shortcut-astra-settings-below-header-section-1-html .customize-partial-edit-shortcut-button{right:-25px}.below-header-section-2.ast-below-header-navigation .customize-partial-edit-shortcut-astra-settings-below-header-section-2 .customize-partial-edit-shortcut-button{right:-14px}.below-header-section-2 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-below-header-section-2-search-box-type .customize-partial-edit-shortcut-button{top:-10px;right:-25px}.below-header-section-2 .ast-site-header-cart .customize-partial-edit-shortcut-astra-settings-below-header-section-2 .customize-partial-edit-shortcut-button{right:-25px}.below-header-section-2 .customize-partial-edit-shortcut-astra-settings-below-header-section-2-html .customize-partial-edit-shortcut-button{right:-25px}.customize-partial-edit-shortcut-astra-settings-above-header-layout .customize-partial-edit-shortcut-button,.customize-partial-edit-shortcut-astra-settings-below-header-layout .customize-partial-edit-shortcut-button{right:-60px}.ast-header-break-point .ast-mobile-menu-buttons{text-align:left;-js-display:flex;display:flex;justify-content:flex-end}.ast-header-break-point .ast-mobile-menu-buttons .ast-button-wrap .ast-mobile-menu-buttons-minimal{font-size:1.7em}.sticky{display:block}.hentry{margin:0 0 1.5em}.byline{display:none}.group-blog .byline,.single .byline{display:inline}.page-links{clear:both;margin-top:1em}.page-links a{display:inline-block}.page-links a .page-link{border-color:var(--ast-border-color);background:0 0}.page-links .page-link{padding:0;margin:0 .3em .3em 0;border:2px solid var(--ast-border-color);color:#000;background:0 0;font-size:.8em;width:2.5em;height:2.5em;line-height:calc( 2.5em - 4px);display:inline-block;text-align:center;transition:all .2s linear}.page-links .page-link:focus,.page-links .page-link:hover{color:#000}@media (max-width:768px){.page-links .page-link{margin-bottom:6px}}.entry-content>:last-child,.entry-summary>:last-child,.page-content>:last-child{margin-bottom:0}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){margin:20px auto}.bypostauthor{display:block}body{overflow-x:hidden}.widget-title{font-weight:400;margin-bottom:1em;line-height:1.5}.widget{margin:0 0 2.8em 0}.widget:last-child{margin-bottom:0}.widget select{max-width:100%}.widget ul{margin:0;list-style-type:none}.no-widget-text{margin-bottom:0}.widget_nav_menu ul ul.sub-menu{margin-top:.25em}.widget_nav_menu ul ul.sub-menu li{padding-right:20px}.widget_nav_menu ul ul.sub-menu a:after{right:-20px}.widget_nav_menu ul ul.sub-menu ul a:after{right:-40px}.widget_nav_menu ul ul.sub-menu ul ul a:after{right:-60px}.widget_nav_menu li{transition:all .2s linear}#secondary .wp-block-search__input{line-height:1}#secondary .wp-block-search__button{padding:.7em 1em}.widget_search .search-form{position:relative;padding:0;background:initial;color:inherit}.widget_search .search-form>label{position:relative}.widget_search .search-form i{color:#3a3a3a}.widget_search .search-form button{position:absolute;top:0;left:15px;border:none;padding:0;cursor:pointer;background:0 0}.widget_search .search-form input[type=submit],.widget_search .search-form input[type=submit]:focus,.widget_search .search-form input[type=submit]:hover{padding:13px 20px;border-radius:2px;border:none;top:0;left:0;position:absolute;color:transparent;background:0 0;max-width:45px;z-index:2}.widget_search .search-form .search-field{background:#fafafa;border-width:1px;border-color:var(--ast-border-color);border-radius:2px}.widget_search .search-field,.widget_search .search-field:focus{width:100%;padding:16px 15px 16px 45px}.widget_archive ul.children,.widget_categories ul.children,.widget_pages ul.children{position:relative;margin-top:5px;width:100%}.widget_archive ul.children li,.widget_categories ul.children li,.widget_pages ul.children li{padding-right:20px}.widget_archive li ul.children a:after,.widget_categories li ul.children a:after,.widget_pages li ul.children a:after{right:-20px}.widget_archive li ul.children ul a:after,.widget_categories li ul.children ul a:after,.widget_pages li ul.children ul a:after{right:-40px}.widget_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.widget_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-left:4px;line-height:1.5;transition:all .2s linear}.widget_calendar table,.widget_calendar td,.widget_calendar th{padding:0;text-align:center}.widget_calendar table,.widget_calendar th{border:none}.widget_calendar td{border-left:none;border-right:none}.widget_calendar caption{line-height:2.7em}.widget_calendar thead{line-height:2.5em}.widget_calendar thead a{color:#0274be;font-size:1rem;vertical-align:middle}.widget_calendar thead td{vertical-align:middle;font-weight:700}.widget_calendar thead>tr>th{line-height:2.5em;border-bottom:2px solid var(--ast-border-color);border-top:2px solid var(--ast-border-color)}.widget_calendar tbody{line-height:2.1em;text-align:center}.widget_calendar tbody>tr>td{width:14.2857%}.widget_calendar tbody>tr:first-child>td{padding-top:3px}.widget_calendar #today{color:#0274be;font-weight:700;border-bottom:2px solid #0274be}.ast-footer-overlay{background-color:#3a3a3a;padding-top:2em;padding-bottom:2em}@media (min-width:769px){.ast-footer-overlay{padding-top:2.66666em;padding-bottom:2.66666em}}.ast-small-footer{line-height:1.85714285714286;position:relative}.ast-small-footer .nav-menu a{padding:0 .5em}.ast-small-footer .no-widget-text,.ast-small-footer .widget-title{margin-bottom:0}.ast-small-footer .widget{margin-bottom:1em}.ast-small-footer .widget ul{position:static;border:0;width:auto}.ast-small-footer .widget ul a{border:0}.ast-small-footer .widget:last-child{margin-bottom:0}@media (min-width:769px){.ast-small-footer .nav-menu li{margin:0}.ast-small-footer .nav-menu li:first-child a{padding-right:0}.ast-small-footer .nav-menu li:last-child a{padding-left:0}}.ast-footer-site-title .customize-partial-edit-shortcut-button{display:none}.footer-sml-layout-1{text-align:center}.footer-sml-layout-1 .ast-small-footer-section-2{margin-top:1em}.footer-sml-layout-2 .ast-small-footer-section-1,.footer-sml-layout-2 .ast-small-footer-section-2{text-align:center}@media (min-width:769px){.footer-sml-layout-2 .ast-small-footer-section-1{text-align:right}.footer-sml-layout-2 .ast-small-footer-section-1 .menu-item .menu-link{padding:0 0 0 1em}.footer-sml-layout-2 .ast-small-footer-section-2{text-align:left}.footer-sml-layout-2 .ast-small-footer-section-2 .menu-item .menu-link{padding:0 1em 0 0}}@media (max-width:768px){.ast-header-break-point .footer-sml-layout-2 .ast-small-footer-section-2{margin-top:1em}}@media screen and (min-color-index:0) and (-webkit-min-device-pixel-ratio:0){.ast-small-footer-wrap .ast-row:before{display:block}}.site-footer{color:#fff}.site-footer .widget-title{color:var(--ast-border-color)}.site-footer a{color:var(--ast-border-color)}.site-footer a:focus,.site-footer a:hover{color:#fff}.site-footer ul{margin:0;list-style-type:none}.site-footer .nav-menu li{display:inline-block}.footer-adv-overlay{background-color:#3a3a3a;padding-top:70px;padding-bottom:70px}.footer-adv p:last-child{margin-bottom:0}.footer-adv .widget_calendar table{margin-bottom:0}@media all and (max-width:768px){.footer-adv-widget-1 .widget:last-child{margin:0 0 2.8em}}.footer-adv .ast-no-widget-row .widget-title{text-transform:capitalize}@media all and (max-width:768px){.footer-adv-layout-4 .footer-adv-widget-2 .widget:last-child,.footer-adv-layout-4 .footer-adv-widget-3 .widget:last-child{margin:0 0 2.8em}}input[type=email],input[type=number],input[type=password],input[type=reset],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{color:#666;padding:.75em;height:auto;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:2px;background:var(--ast-comment-inputs-background);box-shadow:none;box-sizing:border-box;transition:all .2s linear}input[type=email]:focus,input[type=password]:focus,input[type=reset]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{background-color:#fff;border-color:var(--ast-border-color);box-shadow:none}input[type=button],input[type=button]:focus,input[type=button]:hover,input[type=reset],input[type=reset]:focus,input[type=reset]:hover,input[type=submit],input[type=submit]:focus,input[type=submit]:hover{box-shadow:none}textarea{width:100%}input[type=search]:focus{outline:thin dotted}input[type=range]{-webkit-appearance:none;width:100%;margin:5.7px 0;padding:0;border:none}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{width:100%;height:8.6px;cursor:pointer;box-shadow:-2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9;background:rgba(255,255,255,.2);border-radius:13.6px;border:0 solid #fff}input[type=range]::-webkit-slider-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer;-webkit-appearance:none;margin-top:-5.7px}input[type=range]:focus::-webkit-slider-runnable-track{background:rgba(255,255,255,.2)}input[type=range]::-moz-range-track{width:100%;height:8.6px;cursor:pointer;box-shadow:-2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9;background:rgba(255,255,255,.2);border-radius:13.6px;border:0 solid #fff}input[type=range]::-moz-range-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer}input[type=range]::-ms-track{width:100%;height:8.6px;cursor:pointer;background:0 0;border-color:transparent;color:transparent}input[type=range]::-ms-fill-lower{background:rgba(199,199,199,.2);border:0 solid #fff;border-radius:27.2px;box-shadow:-2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9}input[type=range]::-ms-fill-upper{background:rgba(255,255,255,.2);border:0 solid #fff;border-radius:27.2px;box-shadow:-2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9}input[type=range]::-ms-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer;height:8.6px}input[type=range]:focus::-ms-fill-lower{background:rgba(255,255,255,.2)}input[type=range]:focus::-ms-fill-upper{background:rgba(255,255,255,.2)}input[type=color]{border:none;width:100px;padding:0;height:30px;cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:0;border:none}input[type=color]::-webkit-color-swatch{border:none}.page .entry-header{margin-bottom:1.5em}.search .entry-header{margin-bottom:1em}.ast-single-post .entry-header.ast-header-without-markup,.ast-single-post .entry-header.ast-no-title.ast-no-thumbnail{margin-bottom:0}.entry-header{margin-bottom:1em;word-wrap:break-word}.entry-header+.ast-blog-featured-section{margin-top:.5em}.entry-content{word-wrap:break-word}.entry-content p{margin-bottom:1.6em}.read-more{margin-bottom:0}.read-more .ast-right-arrow{font-size:1em}.ast-no-thumb .ast-blog-featured-section{margin-bottom:0}.ast-no-thumb .entry-header+.ast-blog-featured-section{margin-top:0}.ast-blog-featured-section{margin-bottom:1.5em}.error404 .page-header{margin-bottom:1.5em}.error404 .page-header .page-title{margin-bottom:0}.archive .entry-title,.blog .entry-title,.search .entry-title{line-height:1.3}.archive .format-aside .entry-title,.archive .format-status .entry-title,.blog .format-aside .entry-title,.blog .format-status .entry-title{display:none}.page-title{margin-bottom:1em;font-weight:400}.entry-title{margin-bottom:.2em}.ast-article-post{margin-bottom:2.5em}.ast-article-post:last-child{margin-bottom:0;border-bottom:0}.search .site-content .content-area .search-form{margin-bottom:3em}.blog-layout-1 .post-thumb{padding-right:0;padding-left:0;position:relative}.blog .posted-on{z-index:1}.ast-blog-featured-section .posted-on{width:5.714285714em;height:5.714285714em;padding:.7em}.ast-blog-featured-section .posted-on .date-month,.ast-blog-featured-section .posted-on .date-year{font-size:.8571428571em;line-height:1em}.ast-blog-featured-section .posted-on .date-day{font-size:2.5em;line-height:.9em;font-weight:900;margin:.1em 0}.ast-author-box img.avatar{border-radius:50%;margin:0 20px 0 0}.ast-archive-description{margin-bottom:2.5em;padding-bottom:1.3333em;border-bottom:1px solid var(--ast-border-color)}.ast-archive-description .ast-archive-title{margin-bottom:4px;font-size:40px;font-size:2.85714rem;font-weight:300}.ast-archive-description p{margin-bottom:0;font-size:20px;font-size:1.42857rem;line-height:1.65;font-weight:300}.ast-separate-container .ast-archive-description,.ast-separate-container .ast-author-box{background-color:#eee;padding-bottom:0;border-bottom:0}@media (max-width:1200px){.ast-separate-container .ast-archive-description{margin:0;padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-archive-description{padding:2.14em}}@media (min-width:1201px){.ast-separate-container .ast-archive-description,.ast-separate-container .ast-author-box{margin:0;padding:5em 6.67em 3.33333em}}.single .entry-header{margin-bottom:2em}.single .post-navigation{margin:0;padding:2em 0 0;border-top:1px solid var(--ast-border-color)}@media (max-width:768px){.single .post-navigation{padding-top:1.5em}}.single .post-navigation a{margin:2px;display:inline-block;text-align:center;color:#000}@media (min-width:421px){.single .post-navigation .nav-links{-js-display:flex;display:flex}.single .post-navigation .nav-next,.single .post-navigation .nav-previous{flex:auto}}@media (max-width:420px){.single .post-navigation .ast-left-arrow,.single .post-navigation .ast-right-arrow{display:none}.single .post-navigation .nav-next,.single .post-navigation .nav-previous{width:100%}.single .post-navigation .nav-next a,.single .post-navigation .nav-previous a{width:100%}.single .post-navigation .nav-previous{margin-bottom:1em}}.single .entry-header .post-thumb{margin-bottom:2em}.single .entry-header .post-thumb img{margin-top:0;margin-bottom:0}.page .has-post-thumbnail .post-thumb img{margin-bottom:1.5em}.post-password-form{text-align:center}@media (max-width:420px){.post-password-form input[type=password]{display:block;margin:10px auto}}.post-password-form input[type=submit]{padding:10px 20px;border-radius:2px}.ast-separate-container .post-navigation{border-top:0;padding-right:3.33333em;padding-left:3.33333em}@media (max-width:420px){.ast-separate-container .post-navigation{padding-right:0;padding-left:0}}@media (max-width:768px){.ast-separate-container .entry-header{margin-bottom:1em}}.ast-404-layout-1{text-align:center;margin:4em auto}.ast-404-layout-1 .page-sub-title{font-size:1.5rem;font-weight:700}.ast-404-layout-1 .widget_search{padding-top:.5em}.ast-404-search{margin-top:1.5em}.ast-404-search .widget_search{max-width:370px;margin:0 auto}.ast-separate-container .error-404,.ast-separate-container .no-results{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{margin:0;padding:3.34em 2.4em}}@media (max-width:768px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{padding:1.5em 2.14em}}@media (max-width:544px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{padding:1.5em 1em}}@media (min-width:1201px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{margin:0;padding:5.34em 6.67em}}.blog-layout-1{width:100%;display:inline-block;padding-bottom:2em;vertical-align:middle;border-bottom:1px solid var(--ast-border-color)}.blog-layout-1 .posted-on{right:0}.blog-layout-1 .post-content,.blog-layout-1 .post-thumb{padding-right:0;padding-left:0}.ast-flex{-js-display:flex;display:flex;flex-wrap:wrap}.ast-flex-1{flex:1}.ast-flex-2{flex:2}.ast-flex-3{flex:3}.ast-flex-4{flex:4}.ast-flex-5{flex:5}.ast-inline-flex{-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center}.ast-flex-direction-row{flex-direction:row}.ast-flex-direction-row-reverse{flex-direction:row-reverse}.ast-flex-direction-column{flex-direction:column}.ast-flex-direction-column-reverse{flex-direction:column-reverse}.ast-flex-wrap-nowrap{flex-wrap:nowrap}.ast-flex-wrap-wrap{flex-wrap:wrap}.ast-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse}.ast-justify-content-flex-start{justify-content:flex-start}.ast-justify-content-flex-end{justify-content:flex-end}.ast-justify-content-center{justify-content:center}.ast-justify-content-space-between{justify-content:space-between}.ast-justify-content-space-around{justify-content:space-around}.ast-align-items-flex-start{align-items:flex-start}.ast-align-items-flex-end{align-items:flex-end}.ast-align-items-center{align-items:center}.ast-align-items-baseline{align-items:baseline}.ast-align-items-stretch{align-items:stretch}.ast-align-content-flex-start{align-content:flex-start}.ast-align-content-flex-end{align-content:flex-end}.ast-align-content-center{align-content:center}.ast-align-content-space-between{align-content:space-between}.ast-align-content-space-around{align-content:space-around}.ast-align-content-stretch{align-content:stretch}.ast-order-1{order:1}.ast-order-2{order:2}.ast-order-3{order:3}.ast-order-4{order:4}.ast-order-5{order:5}.ast-flex-grow-1{flex-grow:1}.ast-flex-grow-2{flex-grow:2}.ast-flex-grow-3{flex-grow:3}.ast-flex-grow-4{flex-grow:4}.ast-flex-grow-5{flex-grow:5}.ast-flex-shrink-1{flex-shrink:1}.ast-flex-shrink-2{flex-shrink:2}.ast-flex-shrink-3{flex-shrink:3}.ast-flex-shrink-4{flex-shrink:4}.ast-flex-shrink-5{flex-shrink:5}.ast-align-self-auto{align-self:auto}.ast-align-self-flex-start{align-self:flex-start}.ast-align-self-flex-end{align-self:flex-end}.ast-align-self-center{align-self:center}.ast-align-self-baseline{align-self:baseline}.ast-align-self-stretch{align-self:stretch}.ahfb-svg-iconset{-js-display:inline-flex;display:inline-flex;align-self:center}.ahfb-svg-iconset svg{width:17px;height:17px;transition:none}.ahfb-svg-iconset svg>*{transition:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/css/minified/style.min.css b/wp-content/themes/astra/assets/css/minified/style.min.css index f176c6dec..eb67ebbda 100644 --- a/wp-content/themes/astra/assets/css/minified/style.min.css +++ b/wp-content/themes/astra/assets/css/minified/style.min.css @@ -1,3 +1,3 @@ -@charset "UTF-8";a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{border:0;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active{outline:0}a,a:focus,a:hover,a:visited{text-decoration:none}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}#comments .submit,.search .search-submit{padding:10px 15px;border-radius:2px;line-height:1.85714285714286;border:0}.archive .no-results .ast-search-submit,.search .site-main .ast-search-submit{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid var(--ast-border-color);margin:0 0;padding:.35em .625em .75em}legend{border:0;padding:0}fieldset legend{margin-bottom:1.5em;padding:0 .5em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! - * Bootstrap v4.0.0-alpha.2 (https://getbootstrap.com) +@charset "UTF-8";a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{border:0;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active{outline:0}a,a:focus,a:hover,a:visited{text-decoration:none}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}#comments .submit,.search .search-submit{padding:10px 15px;border-radius:2px;line-height:1.85714285714286;border:0}.archive .no-results .ast-search-submit,.search .site-main .ast-search-submit{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid var(--ast-border-color);margin:0 0;padding:.35em .625em .75em}legend{border:0;padding:0}fieldset legend{margin-bottom:1.5em;padding:0 .5em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! + * Bootstrap v4.0.0-alpha.2 (https://getbootstrap.com) */@media (min-width:544px){.ast-container{max-width:100%}}@media (min-width:768px){.ast-container{max-width:100%}}@media (min-width:992px){.ast-container{max-width:100%}}@media (min-width:1200px){.ast-container{max-width:100%}}.ast-container,.ast-container-fluid{margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}.ast-container-fluid::after,.ast-container::after{content:"";display:table;clear:both}.ast-row{margin-left:-20px;margin-right:-20px}.ast-row::after{content:"";display:table;clear:both}.ast-col-lg-1,.ast-col-lg-10,.ast-col-lg-11,.ast-col-lg-12,.ast-col-lg-2,.ast-col-lg-3,.ast-col-lg-4,.ast-col-lg-5,.ast-col-lg-6,.ast-col-lg-7,.ast-col-lg-8,.ast-col-lg-9,.ast-col-md-1,.ast-col-md-10,.ast-col-md-11,.ast-col-md-12,.ast-col-md-2,.ast-col-md-3,.ast-col-md-4,.ast-col-md-5,.ast-col-md-6,.ast-col-md-7,.ast-col-md-8,.ast-col-md-9,.ast-col-sm-1,.ast-col-sm-10,.ast-col-sm-11,.ast-col-sm-12,.ast-col-sm-2,.ast-col-sm-3,.ast-col-sm-4,.ast-col-sm-5,.ast-col-sm-6,.ast-col-sm-7,.ast-col-sm-8,.ast-col-sm-9,.ast-col-xl-1,.ast-col-xl-10,.ast-col-xl-11,.ast-col-xl-12,.ast-col-xl-2,.ast-col-xl-3,.ast-col-xl-4,.ast-col-xl-5,.ast-col-xl-6,.ast-col-xl-7,.ast-col-xl-8,.ast-col-xl-9,.ast-col-xs-1,.ast-col-xs-10,.ast-col-xs-11,.ast-col-xs-12,.ast-col-xs-2,.ast-col-xs-3,.ast-col-xs-4,.ast-col-xs-5,.ast-col-xs-6,.ast-col-xs-7,.ast-col-xs-8,.ast-col-xs-9{position:relative;min-height:1px;padding-left:20px;padding-right:20px}.ast-col-xs-1,.ast-col-xs-10,.ast-col-xs-11,.ast-col-xs-12,.ast-col-xs-2,.ast-col-xs-3,.ast-col-xs-4,.ast-col-xs-5,.ast-col-xs-6,.ast-col-xs-7,.ast-col-xs-8,.ast-col-xs-9{float:left}.ast-col-xs-1{width:8.3333333333%}.ast-col-xs-2{width:16.6666666667%}.ast-col-xs-3{width:25%}.ast-col-xs-4{width:33.3333333333%}.ast-col-xs-5{width:41.6666666667%}.ast-col-xs-6{width:50%}.ast-col-xs-7{width:58.3333333333%}.ast-col-xs-8{width:66.6666666667%}.ast-col-xs-9{width:75%}.ast-col-xs-10{width:83.3333333333%}.ast-col-xs-11{width:91.6666666667%}.ast-col-xs-12{width:100%}.ast-col-xs-pull-0{right:auto}.ast-col-xs-pull-1{right:8.3333333333%}.ast-col-xs-pull-2{right:16.6666666667%}.ast-col-xs-pull-3{right:25%}.ast-col-xs-pull-4{right:33.3333333333%}.ast-col-xs-pull-5{right:41.6666666667%}.ast-col-xs-pull-6{right:50%}.ast-col-xs-pull-7{right:58.3333333333%}.ast-col-xs-pull-8{right:66.6666666667%}.ast-col-xs-pull-9{right:75%}.ast-col-xs-pull-10{right:83.3333333333%}.ast-col-xs-pull-11{right:91.6666666667%}.ast-col-xs-pull-12{right:100%}.ast-col-xs-push-0{left:auto}.ast-col-xs-push-1{left:8.3333333333%}.ast-col-xs-push-2{left:16.6666666667%}.ast-col-xs-push-3{left:25%}.ast-col-xs-push-4{left:33.3333333333%}.ast-col-xs-push-5{left:41.6666666667%}.ast-col-xs-push-6{left:50%}.ast-col-xs-push-7{left:58.3333333333%}.ast-col-xs-push-8{left:66.6666666667%}.ast-col-xs-push-9{left:75%}.ast-col-xs-push-10{left:83.3333333333%}.ast-col-xs-push-11{left:91.6666666667%}.ast-col-xs-push-12{left:100%}.ast-col-xs-offset-0{margin-left:0}.ast-col-xs-offset-1{margin-left:8.3333333333%}.ast-col-xs-offset-2{margin-left:16.6666666667%}.ast-col-xs-offset-3{margin-left:25%}.ast-col-xs-offset-4{margin-left:33.3333333333%}.ast-col-xs-offset-5{margin-left:41.6666666667%}.ast-col-xs-offset-6{margin-left:50%}.ast-col-xs-offset-7{margin-left:58.3333333333%}.ast-col-xs-offset-8{margin-left:66.6666666667%}.ast-col-xs-offset-9{margin-left:75%}.ast-col-xs-offset-10{margin-left:83.3333333333%}.ast-col-xs-offset-11{margin-left:91.6666666667%}.ast-col-xs-offset-12{margin-left:100%}@media (min-width:544px){.ast-col-sm-1,.ast-col-sm-10,.ast-col-sm-11,.ast-col-sm-12,.ast-col-sm-2,.ast-col-sm-3,.ast-col-sm-4,.ast-col-sm-5,.ast-col-sm-6,.ast-col-sm-7,.ast-col-sm-8,.ast-col-sm-9{float:left}.ast-col-sm-1{width:8.3333333333%}.ast-col-sm-2{width:16.6666666667%}.ast-col-sm-3{width:25%}.ast-col-sm-4{width:33.3333333333%}.ast-col-sm-5{width:41.6666666667%}.ast-col-sm-6{width:50%}.ast-col-sm-7{width:58.3333333333%}.ast-col-sm-8{width:66.6666666667%}.ast-col-sm-9{width:75%}.ast-col-sm-10{width:83.3333333333%}.ast-col-sm-11{width:91.6666666667%}.ast-col-sm-12{width:100%}.ast-col-sm-pull-0{right:auto}.ast-col-sm-pull-1{right:8.3333333333%}.ast-col-sm-pull-2{right:16.6666666667%}.ast-col-sm-pull-3{right:25%}.ast-col-sm-pull-4{right:33.3333333333%}.ast-col-sm-pull-5{right:41.6666666667%}.ast-col-sm-pull-6{right:50%}.ast-col-sm-pull-7{right:58.3333333333%}.ast-col-sm-pull-8{right:66.6666666667%}.ast-col-sm-pull-9{right:75%}.ast-col-sm-pull-10{right:83.3333333333%}.ast-col-sm-pull-11{right:91.6666666667%}.ast-col-sm-pull-12{right:100%}.ast-col-sm-push-0{left:auto}.ast-col-sm-push-1{left:8.3333333333%}.ast-col-sm-push-2{left:16.6666666667%}.ast-col-sm-push-3{left:25%}.ast-col-sm-push-4{left:33.3333333333%}.ast-col-sm-push-5{left:41.6666666667%}.ast-col-sm-push-6{left:50%}.ast-col-sm-push-7{left:58.3333333333%}.ast-col-sm-push-8{left:66.6666666667%}.ast-col-sm-push-9{left:75%}.ast-col-sm-push-10{left:83.3333333333%}.ast-col-sm-push-11{left:91.6666666667%}.ast-col-sm-push-12{left:100%}.ast-col-sm-offset-0{margin-left:0}.ast-col-sm-offset-1{margin-left:8.3333333333%}.ast-col-sm-offset-2{margin-left:16.6666666667%}.ast-col-sm-offset-3{margin-left:25%}.ast-col-sm-offset-4{margin-left:33.3333333333%}.ast-col-sm-offset-5{margin-left:41.6666666667%}.ast-col-sm-offset-6{margin-left:50%}.ast-col-sm-offset-7{margin-left:58.3333333333%}.ast-col-sm-offset-8{margin-left:66.6666666667%}.ast-col-sm-offset-9{margin-left:75%}.ast-col-sm-offset-10{margin-left:83.3333333333%}.ast-col-sm-offset-11{margin-left:91.6666666667%}.ast-col-sm-offset-12{margin-left:100%}}@media (min-width:768px){.ast-col-md-1,.ast-col-md-10,.ast-col-md-11,.ast-col-md-12,.ast-col-md-2,.ast-col-md-3,.ast-col-md-4,.ast-col-md-5,.ast-col-md-6,.ast-col-md-7,.ast-col-md-8,.ast-col-md-9{float:left}.ast-col-md-1{width:8.3333333333%}.ast-col-md-2{width:16.6666666667%}.ast-col-md-3{width:25%}.ast-col-md-4{width:33.3333333333%}.ast-col-md-5{width:41.6666666667%}.ast-col-md-6{width:50%}.ast-col-md-7{width:58.3333333333%}.ast-col-md-8{width:66.6666666667%}.ast-col-md-9{width:75%}.ast-col-md-10{width:83.3333333333%}.ast-col-md-11{width:91.6666666667%}.ast-col-md-12{width:100%}.ast-col-md-pull-0{right:auto}.ast-col-md-pull-1{right:8.3333333333%}.ast-col-md-pull-2{right:16.6666666667%}.ast-col-md-pull-3{right:25%}.ast-col-md-pull-4{right:33.3333333333%}.ast-col-md-pull-5{right:41.6666666667%}.ast-col-md-pull-6{right:50%}.ast-col-md-pull-7{right:58.3333333333%}.ast-col-md-pull-8{right:66.6666666667%}.ast-col-md-pull-9{right:75%}.ast-col-md-pull-10{right:83.3333333333%}.ast-col-md-pull-11{right:91.6666666667%}.ast-col-md-pull-12{right:100%}.ast-col-md-push-0{left:auto}.ast-col-md-push-1{left:8.3333333333%}.ast-col-md-push-2{left:16.6666666667%}.ast-col-md-push-3{left:25%}.ast-col-md-push-4{left:33.3333333333%}.ast-col-md-push-5{left:41.6666666667%}.ast-col-md-push-6{left:50%}.ast-col-md-push-7{left:58.3333333333%}.ast-col-md-push-8{left:66.6666666667%}.ast-col-md-push-9{left:75%}.ast-col-md-push-10{left:83.3333333333%}.ast-col-md-push-11{left:91.6666666667%}.ast-col-md-push-12{left:100%}.ast-col-md-offset-0{margin-left:0}.ast-col-md-offset-1{margin-left:8.3333333333%}.ast-col-md-offset-2{margin-left:16.6666666667%}.ast-col-md-offset-3{margin-left:25%}.ast-col-md-offset-4{margin-left:33.3333333333%}.ast-col-md-offset-5{margin-left:41.6666666667%}.ast-col-md-offset-6{margin-left:50%}.ast-col-md-offset-7{margin-left:58.3333333333%}.ast-col-md-offset-8{margin-left:66.6666666667%}.ast-col-md-offset-9{margin-left:75%}.ast-col-md-offset-10{margin-left:83.3333333333%}.ast-col-md-offset-11{margin-left:91.6666666667%}.ast-col-md-offset-12{margin-left:100%}}@media (min-width:992px){.ast-col-lg-1,.ast-col-lg-10,.ast-col-lg-11,.ast-col-lg-12,.ast-col-lg-2,.ast-col-lg-3,.ast-col-lg-4,.ast-col-lg-5,.ast-col-lg-6,.ast-col-lg-7,.ast-col-lg-8,.ast-col-lg-9{float:left}.ast-col-lg-1{width:8.3333333333%}.ast-col-lg-2{width:16.6666666667%}.ast-col-lg-3{width:25%}.ast-col-lg-4{width:33.3333333333%}.ast-col-lg-5{width:41.6666666667%}.ast-col-lg-6{width:50%}.ast-col-lg-7{width:58.3333333333%}.ast-col-lg-8{width:66.6666666667%}.ast-col-lg-9{width:75%}.ast-col-lg-10{width:83.3333333333%}.ast-col-lg-11{width:91.6666666667%}.ast-col-lg-12{width:100%}.ast-col-lg-pull-0{right:auto}.ast-col-lg-pull-1{right:8.3333333333%}.ast-col-lg-pull-2{right:16.6666666667%}.ast-col-lg-pull-3{right:25%}.ast-col-lg-pull-4{right:33.3333333333%}.ast-col-lg-pull-5{right:41.6666666667%}.ast-col-lg-pull-6{right:50%}.ast-col-lg-pull-7{right:58.3333333333%}.ast-col-lg-pull-8{right:66.6666666667%}.ast-col-lg-pull-9{right:75%}.ast-col-lg-pull-10{right:83.3333333333%}.ast-col-lg-pull-11{right:91.6666666667%}.ast-col-lg-pull-12{right:100%}.ast-col-lg-push-0{left:auto}.ast-col-lg-push-1{left:8.3333333333%}.ast-col-lg-push-2{left:16.6666666667%}.ast-col-lg-push-3{left:25%}.ast-col-lg-push-4{left:33.3333333333%}.ast-col-lg-push-5{left:41.6666666667%}.ast-col-lg-push-6{left:50%}.ast-col-lg-push-7{left:58.3333333333%}.ast-col-lg-push-8{left:66.6666666667%}.ast-col-lg-push-9{left:75%}.ast-col-lg-push-10{left:83.3333333333%}.ast-col-lg-push-11{left:91.6666666667%}.ast-col-lg-push-12{left:100%}.ast-col-lg-offset-0{margin-left:0}.ast-col-lg-offset-1{margin-left:8.3333333333%}.ast-col-lg-offset-2{margin-left:16.6666666667%}.ast-col-lg-offset-3{margin-left:25%}.ast-col-lg-offset-4{margin-left:33.3333333333%}.ast-col-lg-offset-5{margin-left:41.6666666667%}.ast-col-lg-offset-6{margin-left:50%}.ast-col-lg-offset-7{margin-left:58.3333333333%}.ast-col-lg-offset-8{margin-left:66.6666666667%}.ast-col-lg-offset-9{margin-left:75%}.ast-col-lg-offset-10{margin-left:83.3333333333%}.ast-col-lg-offset-11{margin-left:91.6666666667%}.ast-col-lg-offset-12{margin-left:100%}}@media (min-width:1200px){.ast-col-xl-1,.ast-col-xl-10,.ast-col-xl-11,.ast-col-xl-12,.ast-col-xl-2,.ast-col-xl-3,.ast-col-xl-4,.ast-col-xl-5,.ast-col-xl-6,.ast-col-xl-7,.ast-col-xl-8,.ast-col-xl-9{float:left}.ast-col-xl-1{width:8.3333333333%}.ast-col-xl-2{width:16.6666666667%}.ast-col-xl-3{width:25%}.ast-col-xl-4{width:33.3333333333%}.ast-col-xl-5{width:41.6666666667%}.ast-col-xl-6{width:50%}.ast-col-xl-7{width:58.3333333333%}.ast-col-xl-8{width:66.6666666667%}.ast-col-xl-9{width:75%}.ast-col-xl-10{width:83.3333333333%}.ast-col-xl-11{width:91.6666666667%}.ast-col-xl-12{width:100%}.ast-col-xl-pull-0{right:auto}.ast-col-xl-pull-1{right:8.3333333333%}.ast-col-xl-pull-2{right:16.6666666667%}.ast-col-xl-pull-3{right:25%}.ast-col-xl-pull-4{right:33.3333333333%}.ast-col-xl-pull-5{right:41.6666666667%}.ast-col-xl-pull-6{right:50%}.ast-col-xl-pull-7{right:58.3333333333%}.ast-col-xl-pull-8{right:66.6666666667%}.ast-col-xl-pull-9{right:75%}.ast-col-xl-pull-10{right:83.3333333333%}.ast-col-xl-pull-11{right:91.6666666667%}.ast-col-xl-pull-12{right:100%}.ast-col-xl-push-0{left:auto}.ast-col-xl-push-1{left:8.3333333333%}.ast-col-xl-push-2{left:16.6666666667%}.ast-col-xl-push-3{left:25%}.ast-col-xl-push-4{left:33.3333333333%}.ast-col-xl-push-5{left:41.6666666667%}.ast-col-xl-push-6{left:50%}.ast-col-xl-push-7{left:58.3333333333%}.ast-col-xl-push-8{left:66.6666666667%}.ast-col-xl-push-9{left:75%}.ast-col-xl-push-10{left:83.3333333333%}.ast-col-xl-push-11{left:91.6666666667%}.ast-col-xl-push-12{left:100%}.ast-col-xl-offset-0{margin-left:0}.ast-col-xl-offset-1{margin-left:8.3333333333%}.ast-col-xl-offset-2{margin-left:16.6666666667%}.ast-col-xl-offset-3{margin-left:25%}.ast-col-xl-offset-4{margin-left:33.3333333333%}.ast-col-xl-offset-5{margin-left:41.6666666667%}.ast-col-xl-offset-6{margin-left:50%}.ast-col-xl-offset-7{margin-left:58.3333333333%}.ast-col-xl-offset-8{margin-left:66.6666666667%}.ast-col-xl-offset-9{margin-left:75%}.ast-col-xl-offset-10{margin-left:83.3333333333%}.ast-col-xl-offset-11{margin-left:91.6666666667%}.ast-col-xl-offset-12{margin-left:100%}}h1,h2,h3,h4,h5,h6{clear:both}.entry-content h1,h1{color:#808285;font-size:2em;line-height:1.2}.entry-content h2,h2{color:#808285;font-size:1.7em;line-height:1.3}.entry-content h3,h3{color:#808285;font-size:1.5em;line-height:1.4}.entry-content h4,h4{color:#808285;line-height:1.5;font-size:1.3em}.entry-content h5,h5{color:#808285;line-height:1.6;font-size:1.2em}.entry-content h6,h6{color:#808285;line-height:1.7;font-size:1.1em}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body{color:#808285;background:#fff;font-style:normal}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}b,strong{font-weight:700}cite,dfn,em,i{font-style:italic}blockquote,q{quotes:"" ""}blockquote:after,blockquote:before,q:after,q:before{content:""}blockquote{border-left:5px solid var(--ast-border-color);padding:20px;font-size:1.2em;font-style:italic;margin:0 0 1.5em;position:relative}address{margin:0 0 1.5em}abbr,acronym{border-bottom:1px dotted #666;cursor:help}pre{background:var(--ast-code-block-background);font-family:"Courier 10 Pitch",Courier,monospace;margin-bottom:1.6em;overflow:auto;max-width:100%;padding:1.6em}code,kbd,tt,var{font:15px Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace}img{height:auto;max-width:100%}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}.ast-button,.button,button,input,select,textarea{color:#808285;font-weight:400;font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}big{font-size:125%}ins,mark{background:0 0;text-decoration:none}table,td,th{border:1px solid var(--ast-border-color)}table{border-collapse:separate;border-spacing:0;border-width:1px 0 0 1px;margin:0 0 1.5em;width:100%}th{font-weight:700}td,th{padding:8px;border-width:0 1px 1px 0}.ast-button,.button,button,input[type=button],input[type=reset],input[type=submit]{border:1px solid;border-color:var(--ast-border-color);border-radius:2px;background:#e6e6e6;padding:.6em 1em .4em;color:#fff}.ast-button:focus,.ast-button:hover,.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{color:#fff;border-color:var(--ast-border-color)}.ast-button:active,.ast-button:focus,.button:active,.button:focus,button:active,button:focus,input[type=button]:active,input[type=button]:focus,input[type=reset]:active,input[type=reset]:focus,input[type=submit]:active,input[type=submit]:focus{border-color:var(--ast-border-color);outline:0}input[type=email],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],textarea{color:#666;border:1px solid var(--ast-border-color);border-radius:2px;-webkit-appearance:none}input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,textarea:focus{color:#111}textarea{padding-left:3px;width:100%}a{color:#4169e1}a:focus,a:hover{color:#191970}a:focus{outline:thin dotted}a:hover{outline:0}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:2px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;color:#21759b;display:block;font-size:12.25px;font-size:.875rem;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.alignleft{display:inline;float:left;margin-right:1.5em}.alignright{display:inline;float:right;margin-left:1.5em}.aligncenter{clear:both;text-align:center;display:block;margin-left:auto;margin-right:auto}#primary:after,#primary:before,#secondary:after,#secondary:before,.ast-container:after,.ast-container:before,.ast-row:after,.ast-row:before,.clear:after,.clear:before,.sidebar-main:after,.sidebar-main:before,.site-content:after,.site-content:before,.site-footer:after,.site-footer:before,.site-header:after,.site-header:before,.site-main:after,.site-main:before{content:"";display:table}#primary:after,#secondary:after,.ast-container:after,.ast-row:after,.clear:after,.sidebar-main:after,.site-content:after,.site-footer:after,.site-header:after,.site-main:after{clear:both}.entry-content[ast-blocks-layout]>embed,.entry-content[ast-blocks-layout]>iframe,.entry-content[ast-blocks-layout]>object,embed,iframe,object{max-width:100%}.wp-caption{margin-bottom:1.5em;max-width:100%}.wp-caption img[class*=wp-image-]{display:block;margin-left:auto;margin-right:auto}.wp-caption .wp-caption-text{margin:.8075em 0}.wp-caption-text{text-align:center}::selection{color:#fff;background:#0274be}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:not(.logged-in){position:relative}#page{position:relative}a,a:focus{text-decoration:none}.secondary a *,.site-footer a *,.site-header a *,a{transition:all .2s linear}.capitalize{text-transform:uppercase}img{vertical-align:middle}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin-bottom:20px}p{margin-bottom:1.75em}blockquote{margin:1.5em 1em 1.5em 3em;font-size:1.1em;line-height:inherit;position:relative}.ast-button,.button,input[type=button],input[type=submit]{border-radius:0;padding:18px 30px;border:0;box-shadow:none;text-shadow:none}.ast-button:hover,.button:hover,input[type=button]:hover,input[type=submit]:hover{box-shadow:none}.ast-button:active,.ast-button:focus,.button:active,.button:focus,input[type=button]:active,input[type=button]:focus,input[type=submit]:active,input[type=submit]:focus{box-shadow:none}.site-title{font-weight:400}.site-description,.site-title{margin-bottom:0}.site-description a,.site-description:focus a,.site-description:hover a,.site-title a,.site-title:focus a,.site-title:hover a{transition:all .2s linear}.site-title a,.site-title a:focus,.site-title a:hover,.site-title a:visited{color:#222}.site-description a,.site-description a:focus,.site-description a:hover,.site-description a:visited{color:#999}.search-form .search-field{outline:0}.ast-search-menu-icon{position:relative;z-index:3}.site .skip-link{background-color:#f1f1f1;box-shadow:0 0 1px 1px rgba(0,0,0,.2);color:#21759b;display:block;font-family:Montserrat,"Helvetica Neue",sans-serif;font-size:14px;font-weight:700;left:-9999em;outline:0;padding:15px 23px 14px;text-decoration:none;text-transform:none;top:-9999em}.site .skip-link:focus{clip:auto;height:auto;left:6px;top:7px;width:auto;z-index:100000;outline:thin dotted}.logged-in .site .skip-link{box-shadow:0 0 2px 2px rgba(0,0,0,.2);font-family:"Open Sans",sans-serif}input,select{line-height:1}.ast-button,.ast-custom-button,body,button,input[type=button],input[type=submit],textarea{line-height:1.85714285714286}.site-title a{line-height:1.2}.site-header .site-description{line-height:1.5}.ast-single-post .entry-title,.ast-single-post .entry-title a{line-height:1.2}.entry-title,.entry-title a{font-weight:400}.ast-oembed-container{position:relative;padding-top:56.25%;height:0;overflow:hidden;max-width:100%;height:auto}.ast-oembed-container embed,.ast-oembed-container iframe,.ast-oembed-container object{position:absolute;top:0;left:0;width:100%;height:100%}body .ast-oembed-container *{position:absolute;top:0;left:0;width:100%;height:100%}.ast-hidden{display:none!important}body{background-color:#fff}#page{display:block}#primary,#secondary{display:block;position:relative;float:left;width:100%}#primary{margin:4em 0}.ast-separate-container{background-color:#f5f5f5}.ast-separate-container #primary{padding:4em 0;margin:0;border:0}.ast-separate-container .site-main>.ast-row{margin-left:0;margin-right:0}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single:not(.ast-related-post){background-color:#fff}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{border-bottom:1px solid var(--ast-border-color);margin:0;padding:5.34em 6.67em}.ast-separate-container .blog-layout-1{padding:0;border-bottom:0}.ast-separate-container .ast-article-single{border-bottom:0}@media (max-width:1200px){.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{margin:0;padding:3.34em 2.4em}}.ast-page-builder-template .hentry{margin:0}.ast-page-builder-template .site-content>.ast-container{max-width:100%;padding:0}.ast-page-builder-template .site-content #primary{padding:0;margin:0}.ast-page-builder-template .no-results{text-align:center;margin:4em auto}.ast-page-builder-template .entry-header{margin-top:4em;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}.ast-page-builder-template .entry-header.ast-no-title.ast-no-thumbnail{margin-top:0}.ast-page-builder-template .entry-header.ast-header-without-markup{margin-top:0;margin-bottom:0}.ast-page-builder-template .entry-header.ast-no-title.ast-no-meta{margin-bottom:0}.ast-page-builder-template.single .post-navigation{padding-bottom:2em}.ast-page-builder-template .ast-archive-description{margin-top:4em;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}@media (min-width:993px){.ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary{margin:4em 0;padding:0}.ast-right-sidebar #primary{padding-right:60px}.ast-left-sidebar #primary{padding-left:60px}}@media (max-width:992px){.ast-separate-container #primary,.ast-separate-container.ast-left-sidebar #primary,.ast-separate-container.ast-right-sidebar #primary{padding-left:0;padding-right:0}.ast-right-sidebar #primary{padding-right:30px}.ast-left-sidebar #primary{padding-left:30px}}.ast-search-icon .astra-search-icon{font-size:1.3em}.main-navigation{height:100%;-js-display:inline-flex;display:inline-flex}.main-navigation ul{list-style:none;margin:0;padding-left:0;position:relative}.main-header-menu .menu-link,.main-header-menu>a{text-decoration:none;padding:0 1em;display:inline-block;transition:all .2s linear}.main-header-menu .menu-item{position:relative}.main-header-menu .menu-item.focus>.sub-menu,.main-header-menu .menu-item:hover>.sub-menu,.main-header-menu .menu-item>.sub-menu.toggled-on{right:auto;left:0;visibility:visible}.main-header-menu .menu-item.focus>.sub-menu .sub-menu.toggled-on,.main-header-menu .menu-item:hover>.sub-menu .sub-menu.toggled-on,.main-header-menu .menu-item>.sub-menu.toggled-on .sub-menu.toggled-on{left:100%;right:auto;visibility:visible}.main-header-menu .ast-left-align-sub-menu.focus>.sub-menu,.main-header-menu .ast-left-align-sub-menu:hover>.sub-menu{right:0;left:auto}@media (min-width:769px){.main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{left:-100%}.main-header-menu .ast-left-align-sub-menu .sub-menu .menu-item.focus>.sub-menu,.main-header-menu .ast-left-align-sub-menu .sub-menu .menu-item:hover>.sub-menu{left:-100%}}.main-header-menu .sub-menu{width:240px;background:#fff;left:-999em;position:absolute;top:100%;z-index:99999;visibility:hidden}@media (min-width:769px){.main-header-menu .sub-menu .menu-item.focus>.sub-menu,.main-header-menu .sub-menu .menu-item:hover>.sub-menu{left:100%;right:auto}.main-header-menu .sub-menu .ast-left-align-sub-menu.focus>.sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:focus * .sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:hover * .sub-menu,.main-header-menu .sub-menu .ast-left-align-sub-menu:hover>.sub-menu{left:-100%}.main-header-menu .sub-menu .main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.main-header-menu .sub-menu .main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{left:-100%}}.main-header-menu .sub-menu .menu-link{padding:.9em 1em;display:block;word-wrap:break-word}.main-header-menu .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type{display:none}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow{display:none}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow{position:absolute;right:.6em;top:50%;transform:translate(0,-50%) rotate(270deg)}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow .icon-arrow{display:block}#ast-desktop-header .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .ast-header-navigation-arrow .icon-arrow svg{margin:0}.main-header-menu .sub-menu .sub-menu{top:0}.submenu-with-border .sub-menu{border-width:1px;border-style:solid}.submenu-with-border .sub-menu .menu-link{border-width:0 0 1px;border-style:solid}.submenu-with-border .sub-menu .sub-menu{top:-2px}.ast-desktop .submenu-with-border .sub-menu>.menu-item:last-child>.menu-link{border-bottom-width:0}.ast-header-break-point .main-navigation{padding-left:0}.ast-header-break-point .main-navigation ul .menu-item .menu-link{padding:0 20px;display:inline-block;width:100%;border:0;border-bottom-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type{margin-right:5px}.ast-header-break-point .main-navigation ul .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type{display:inline}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-link{padding-left:30px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-link{padding-left:40px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-item .menu-link{padding-left:50px}.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-item .menu-item .menu-item .menu-link{padding-left:60px}.ast-header-break-point .main-header-menu{background-color:#f9f9f9;border-top-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point .main-header-menu .sub-menu{background-color:#f9f9f9;position:static;opacity:1;visibility:visible;border:0;width:auto}.ast-header-break-point .main-header-menu .sub-menu .ast-left-align-sub-menu.focus>.sub-menu,.ast-header-break-point .main-header-menu .sub-menu .ast-left-align-sub-menu:hover>.sub-menu{left:0}.ast-header-break-point .main-header-menu .ast-sub-menu-goes-outside.focus>.sub-menu,.ast-header-break-point .main-header-menu .ast-sub-menu-goes-outside:hover>.sub-menu{left:0}.ast-header-break-point .submenu-with-border .sub-menu{border:0}.ast-header-break-point .dropdown-menu-toggle{display:none}.ast-mobile-menu-buttons{display:none}.ast-button-wrap{display:inline-block}.ast-button-wrap button{box-shadow:none;border:none}.ast-button-wrap .menu-toggle{padding:0;width:2.2em;height:2.1em;font-size:1.5em;font-weight:400;border-radius:2px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;border-radius:2px;vertical-align:middle;line-height:1.85714285714286}.ast-button-wrap .menu-toggle.main-header-menu-toggle{padding:0 .5em;width:auto;text-align:center}.ast-button-wrap .menu-toggle.main-header-menu-toggle .mobile-menu{font-size:15px;font-size:1rem;font-weight:600}.ast-button-wrap .menu-toggle .menu-toggle-icon{font-style:normal;display:inline-block;vertical-align:middle;line-height:2.05}.ast-button-wrap .menu-toggle .menu-toggle-icon:before{content:"\e5d2";font-family:Astra;text-decoration:inherit}.ast-button-wrap .menu-toggle .icon-menu-bars svg:nth-child(2){display:none}.ast-button-wrap .menu-toggle.toggled .menu-toggle-icon:before{content:"\e5cd"}.ast-button-wrap .menu-toggle.toggled .icon-menu-bars svg:first-child{display:none}.ast-button-wrap .menu-toggle.toggled .icon-menu-bars svg:nth-child(2){display:block}.ast-button-wrap .menu-toggle .mobile-menu-wrap{display:inline-block}.ast-button-wrap .menu-toggle:focus{outline:thin dotted}.header-main-layout-1 .ast-main-header-bar-alignment{margin-left:auto}.site-navigation{height:100%}.site-header .menu-link *{transition:none}.ast-icon.icon-arrow svg{height:.6em;width:.6em;position:relative;margin-left:10px}.ast-icon.icon-search svg{height:1em;width:.9em;margin-top:3px;margin-right:2px}.ast-header-break-point .user-select{clear:both}.ast-header-break-point .ast-mobile-menu-buttons{display:block;align-self:center}.ast-header-break-point .main-header-bar-navigation{flex:auto}.ast-header-break-point .ast-main-header-bar-alignment{display:block;width:100%;flex:auto;order:4}.ast-header-break-point .ast-icon.icon-arrow svg{height:.85em;width:.95em;position:relative;margin-left:10px}.site-main .comment-navigation,.site-main .post-navigation,.site-main .posts-navigation{margin:0 0 1.5em;overflow:hidden}.comment-navigation .nav-next,.comment-navigation .nav-previous,.post-navigation .nav-next,.post-navigation .nav-previous,.posts-navigation .nav-next,.posts-navigation .nav-previous{width:50%;display:inline-block}.comment-navigation .nav-next,.post-navigation .nav-next,.posts-navigation .nav-next{text-align:right}.ast-icon svg{fill:currentColor}.post-navigation a{background:0 0;font-size:16px;font-size:1.06666rem;padding:0 1.5em;height:2.33333em;line-height:calc(2.33333em - 3px)}.main-header-bar{z-index:1}.header-main-layout-1.ast-primary-menu-disabled .ast-masthead-custom-menu-items{text-align:right}.header-main-layout-1 .main-header-bar-navigation{text-align:right}.header-main-layout-1 .main-header-bar-navigation .sub-menu{text-align:left}.header-main-layout-1 .main-navigation{padding-left:15px;vertical-align:top}.header-main-layout-1 .main-header-container{align-items:stretch}.header-main-layout-2 .main-header-container{display:block}.header-main-layout-2 .site-branding{text-align:center;padding-bottom:1em}.header-main-layout-2 .site-title{justify-content:center}.header-main-layout-2 .main-navigation ul{justify-content:center}.header-main-layout-2 .main-header-bar-navigation{text-align:center}.header-main-layout-2 .main-header-bar-navigation .sub-menu{text-align:left}.header-main-layout-2 .ast-header-custom-item{justify-content:center;line-height:1.85714285714286}.header-main-layout-2 .ast-masthead-custom-menu-items{position:relative}.header-main-layout-2 .widget{text-align:center}.ast-header-custom-item-outside .header-main-layout-2 .main-header-container{-js-display:flex;display:flex;justify-content:center}.ast-header-custom-item-outside .header-main-layout-2 .site-branding{flex:0 0 100%}.header-main-layout-3 .ast-site-identity{text-align:right}.header-main-layout-3 .main-header-container{flex-direction:row-reverse;align-items:stretch}.header-main-layout-3 .main-navigation{padding-right:15px}.header-main-layout-3 .main-navigation ul{justify-content:flex-start}.header-main-layout-3 .main-header-bar-navigation{text-align:left}.header-main-layout-3 .ast-header-custom-item{justify-content:flex-start}.header-main-layout-3 .ast-masthead-custom-menu-items{position:relative}.header-main-layout-3 li .ast-search-icon{padding-left:.5em}.header-main-layout-3 .ast-search-menu-icon{left:0;right:0}.header-main-layout-3 li .ast-search-menu-icon{left:1em;right:0}.header-main-layout-3 .main-header-bar .ast-search-menu-icon .search-form{padding:0 0 0 3em}.header-main-layout-3 .main-header-bar .ast-search-menu-icon.slide-search .search-form{left:-1em;right:auto}.ast-header-break-point .header-main-layout-1 .site-branding{padding-right:1em}.ast-header-break-point .header-main-layout-1 .main-header-bar-navigation{text-align:left}.ast-header-break-point .header-main-layout-1 .main-navigation{padding-left:0}.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items{flex:1 1 100%}.ast-header-break-point .ast-mobile-header-stack .site-branding{padding-left:0;padding-right:0;padding-bottom:1em;flex:1 1 100%}.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items,.ast-header-break-point .ast-mobile-header-stack .ast-site-identity,.ast-header-break-point .ast-mobile-header-stack .site-branding,.ast-header-break-point .ast-mobile-header-stack .site-title{justify-content:center;text-align:center}.ast-header-break-point .ast-mobile-header-stack.ast-logo-title-inline .site-title{text-align:left}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{flex:1 1 100%;text-align:center;justify-content:center}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .main-header-container{flex-direction:initial}.ast-header-break-point .header-main-layout-2 .ast-mobile-menu-buttons{-js-display:flex;display:flex;justify-content:center}.ast-header-break-point .header-main-layout-2 .main-header-bar-navigation,.ast-header-break-point .header-main-layout-2 .widget{text-align:left}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-3 .main-header-bar .ast-search-icon{margin-right:auto;margin-left:1em}.ast-header-break-point .header-main-layout-3 .main-header-bar .ast-search-menu-icon.slide-search .search-form{right:auto;left:0}.ast-header-break-point .header-main-layout-3.ast-mobile-header-inline .ast-mobile-menu-buttons{justify-content:flex-start}.ast-header-break-point .header-main-layout-3 li .ast-search-menu-icon{left:0}.ast-header-break-point .header-main-layout-3 .site-branding{padding-left:1em;justify-content:flex-end}.ast-header-break-point .header-main-layout-3 .main-navigation{padding-right:0}.ast-logo-title-inline .ast-site-identity{-js-display:inline-flex;display:inline-flex;vertical-align:middle;align-items:center;transition:all .2s linear}.ast-logo-title-inline .site-logo-img{padding-right:1em}.ast-logo-title-inline.header-main-layout-2 .site-logo-img+.ast-site-title-wrap .site-title{justify-content:flex-start}@media (max-width:544px){.ast-header-custom-item-outside .ast-mobile-header-stack .site-branding{padding-right:0}.ast-header-custom-item-outside .ast-mobile-header-stack .site-title{justify-content:center;text-align:center}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons,.ast-header-break-point .ast-mobile-header-stack .site-branding{justify-content:center;text-align:center;padding-bottom:0}}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-branding{text-align:left}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-title{justify-content:left}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-2 .ast-mobile-menu-buttons{padding-bottom:1em}.ast-header-break-point .ast-mobile-header-inline .main-header-container,.ast-header-break-point .ast-mobile-header-stack .main-header-container{-js-display:flex;display:flex}.site-header{z-index:99;position:relative}.main-header-container{position:relative}.main-header-bar-wrap{position:relative}.main-header-bar{background-color:#fff;border-bottom-color:var(--ast-border-color);border-bottom-style:solid}.ast-header-break-point .main-header-bar{border:0}.ast-header-break-point .main-header-bar{border-bottom-color:var(--ast-border-color);border-bottom-style:solid}.main-header-bar{margin-left:auto;margin-right:auto}.ast-desktop .main-header-menu.ast-menu-shadow .sub-menu{box-shadow:0 4px 10px -2px rgba(0,0,0,.1)}.ast-header-custom-item-inside .button-custom-menu-item .menu-link{display:none}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item{padding-left:0;padding-right:0;margin-top:0;margin-bottom:0}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item .ast-custom-button-link{display:none}.ast-header-custom-item-inside.ast-header-break-point .button-custom-menu-item .menu-link{display:block}.nav-style{display:block;padding:0 15px}.site-branding{line-height:1;align-self:center}.ast-no-menu-items .main-navigation{display:none}.ast-menu-toggle{display:none;background:0 0;color:inherit;border-style:dotted;border-color:transparent}.ast-menu-toggle:focus,.ast-menu-toggle:hover{background:0 0;border-color:inherit;color:inherit}.ast-menu-toggle:focus{outline:thin dotted}.ast-main-header-nav-open .main-header-bar{padding-bottom:0}.main-header-bar{z-index:4;position:relative;line-height:4}.main-header-bar .main-header-bar-navigation{height:100%}.main-header-bar .main-header-bar-navigation:empty{padding:0}.main-header-bar .main-header-bar-navigation .sub-menu{line-height:1.45}.main-header-bar .main-header-bar-navigation .menu-item-has-children>.menu-link:after{line-height:normal}.main-header-bar .main-header-bar-navigation .ast-search-icon{display:block;z-index:4;position:relative}.main-header-bar .ast-search-menu-icon .search-form{background-color:#fff}.ast-primary-menu-disabled .main-header-bar .main-header-bar-navigation.toggle-on{padding-top:0}.ast-flyout-menu-enable .main-header-bar .ast-masthead-custom-menu-items .ast-custom-button-link{border:none}.ast-header-break-point.ast-header-custom-item-inside .main-header-bar .ast-search-menu-icon .search-form{visibility:visible;opacity:1;position:relative;right:auto;top:auto;transform:none}.ast-above-header-section .user-select .ast-dropdown-active .slide-search.astra-search-icon,.ast-masthead-custom-menu-items .ast-dropdown-active .slide-search.astra-search-icon,.below-header-user-select .ast-dropdown-active .slide-search.astra-search-icon{color:#757575}.ast-search-menu-icon.slide-search .search-form{backface-visibility:visible;visibility:hidden;opacity:0;transition:all .2s;position:absolute;z-index:3;right:-1em;top:50%;transform:translateY(-50%)}.ast-search-menu-icon.ast-dropdown-active.slide-search .search-form{visibility:visible;opacity:1}.ast-search-menu-icon .search-form{border:1px solid var(--ast-border-color);line-height:normal;padding:0 3em 0 0;border-radius:2px;display:inline-block;backface-visibility:hidden;position:relative;color:inherit;background-color:#fff}.ast-search-menu-icon .astra-search-icon{-js-display:flex;display:flex;line-height:normal}.ast-search-menu-icon .astra-search-icon:focus{outline:0}.ast-search-menu-icon .search-field{border:none;background-color:transparent;transition:width .2s;border-radius:inherit;color:inherit;font-size:inherit;width:0;color:#757575}.ast-search-menu-icon .search-submit{display:none;background:0 0;border:none;font-size:1.3em;color:#757575}.ast-search-menu-icon.ast-dropdown-active{visibility:visible;opacity:1;position:relative}.ast-search-menu-icon.ast-dropdown-active .search-field{width:235px}li.ast-masthead-custom-menu-items{padding:0 1em}li.ast-masthead-custom-menu-items a{padding-left:0;padding-right:0;vertical-align:middle}li.ast-masthead-custom-menu-items a,li.ast-masthead-custom-menu-items a:focus,li.ast-masthead-custom-menu-items a:hover{background:0 0}li.ast-masthead-custom-menu-items .ast-search-icon .astra-search-icon{line-height:1}.ast-search-icon{z-index:4;position:relative;line-height:normal}.ast-primary-menu-disabled.ast-mobile-header-inline .ast-masthead-custom-menu-items{text-align:right}.ast-primary-menu-disabled .ast-masthead-custom-menu-items{flex:1}.ast-primary-menu-disabled.header-main-layout-2 .ast-masthead-custom-menu-items{text-align:center}.ast-primary-menu-disabled.header-main-layout-3 .ast-masthead-custom-menu-items{text-align:left}.ast-masthead-custom-menu-items{padding:0 1em}.search-custom-menu-item{position:relative}.custom-mobile-logo-link{display:none}.ast-site-identity{padding:1em 0}.ast-header-break-point .ast-mobile-header-stack .site-description{text-align:center}.ast-header-break-point .ast-mobile-header-stack.ast-logo-title-inline .site-description{text-align:left}.ast-header-break-point.ast-header-custom-item-outside .ast-primary-menu-disabled .ast-mobile-menu-buttons{display:none}.ast-header-break-point .ast-hide-custom-menu-mobile .ast-masthead-custom-menu-items{display:none}.ast-header-break-point .ast-mobile-header-inline .site-branding{text-align:left;padding-bottom:0}.ast-header-break-point .ast-mobile-header-inline.header-main-layout-3 .site-branding{text-align:right}.ast-header-break-point .site-header .main-header-bar-wrap .site-branding{-js-display:flex;display:flex;flex:1;align-self:center}.ast-header-break-point ul li.ast-masthead-custom-menu-items a{padding:0;display:inline-block;width:auto;border:0}.ast-header-break-point li.ast-masthead-custom-menu-items{padding-left:20px;padding-right:20px;margin-bottom:1em;margin-top:1em}.ast-header-break-point .ast-site-identity{width:100%}.ast-header-break-point .main-header-bar-navigation .menu-item-has-children>.menu-link:after{display:none}.ast-header-break-point .main-header-bar{display:block;line-height:3}.ast-header-break-point .main-header-bar .main-header-bar-navigation{line-height:3;display:none}.ast-header-break-point .main-header-bar .main-header-bar-navigation .sub-menu{line-height:3}.ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children .sub-menu{display:none}.ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle{display:inline-block;position:absolute;font-size:inherit;top:-1px;right:20px;cursor:pointer;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0 .907em;font-weight:400;line-height:inherit;transition:all .2s}.ast-header-break-point .main-header-bar .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle .icon-arrow svg,.ast-header-break-point .main-header-bar .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before{transform:rotateX(180deg)}.ast-header-break-point .main-header-bar .main-header-bar-navigation .main-header-menu{border-top-width:1px;border-style:solid;border-color:var(--ast-border-color)}.ast-header-break-point.ast-header-custom-item-inside .ast-search-menu-icon{position:relative;display:block;right:auto;transform:none}.ast-header-break-point .main-navigation{display:block;width:100%}.ast-header-break-point .main-navigation ul>.menu-item:first-child{border-top:0}.ast-header-break-point .main-navigation ul ul{left:auto;right:auto}.ast-header-break-point .main-navigation li{width:100%}.ast-header-break-point .main-navigation .widget{margin-bottom:1em}.ast-header-break-point .main-navigation .widget li{width:auto}.ast-header-break-point .main-navigation .widget:last-child{margin-bottom:0}.ast-header-break-point .main-header-bar-navigation{width:calc(100% + 40px);margin:0 -20px}.ast-header-break-point .main-header-menu ul ul{top:0}.ast-header-break-point .ast-has-mobile-header-logo .custom-logo-link{display:none}.ast-header-break-point .ast-has-mobile-header-logo .custom-mobile-logo-link{display:inline-block}.ast-header-break-point.ast-mobile-inherit-site-logo .ast-has-mobile-header-logo .astra-logo-svg,.ast-header-break-point.ast-mobile-inherit-site-logo .ast-has-mobile-header-logo .custom-logo-link{display:block}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-menu-buttons{order:2}.ast-header-break-point.ast-header-custom-item-outside .main-header-bar-navigation{order:3}.ast-header-break-point.ast-header-custom-item-outside .ast-masthead-custom-menu-items{order:1}.ast-header-break-point.ast-header-custom-item-outside .header-main-layout-2 .ast-masthead-custom-menu-items{text-align:center}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .ast-mobile-menu-buttons,.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .site-branding{-js-display:flex;display:flex}.ast-header-break-point.ast-header-custom-item-outside.ast-header-custom-item-outside .header-main-layout-2 .ast-mobile-menu-buttons{padding-bottom:0}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline .ast-site-identity{width:100%}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline.header-main-layout-3 .ast-site-identity{width:auto}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-inline.header-main-layout-2 .site-branding{flex:1 1 auto}@media (max-width:544px){.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{width:100%}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons,.ast-header-break-point .ast-mobile-header-stack .site-branding{justify-content:center}.ast-header-break-point .ast-mobile-header-stack .main-header-bar-wrap .site-branding{flex:1 1 auto}.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons{padding-top:.8em}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-2 .ast-mobile-menu-buttons{padding-top:.8em}.ast-header-break-point .ast-mobile-header-stack.header-main-layout-1 .site-branding{padding-bottom:0}.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack .ast-masthead-custom-menu-items{padding:.8em 1em 0 1em;text-align:center;width:100%}.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .ast-masthead-custom-menu-items,.ast-header-custom-item-outside.ast-header-break-point .ast-mobile-header-stack.header-main-layout-3 .ast-mobile-menu-buttons{padding-top:.8em}}.customize-partial-edit-shortcut-blogname button.customize-partial-edit-shortcut-button{display:none}.ast-site-title-wrap:hover .customize-partial-edit-shortcut-blogname button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-blogdescription button.customize-partial-edit-shortcut-button{display:none}.ast-site-title-wrap:hover .customize-partial-edit-shortcut-blogdescription button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-astra-settings-display-site-title-responsive button.customize-partial-edit-shortcut-button{display:none}.customize-partial-edit-shortcut-astra-settings-display-site-tagline-responsive button.customize-partial-edit-shortcut-button{display:none}.customize-partial-edit-shortcut-custom_logo button.customize-partial-edit-shortcut-button{display:none}.site-logo-img:hover .customize-partial-edit-shortcut-custom_logo button.customize-partial-edit-shortcut-button{display:inline-block}.customize-partial-edit-shortcut-astra-settings-disable-primary-nav button.customize-partial-edit-shortcut-button{display:none}.main-navigation:hover .customize-partial-edit-shortcut-astra-settings-disable-primary-nav button.customize-partial-edit-shortcut-button{display:inline-block}.ast-primary-sticky-header-active .customize-partial-edit-shortcut-astra-settings-header-main-stick .customize-partial-edit-shortcut-button{left:100px}.ast-primary-sticky-header-active.ast-full-width-header .customize-partial-edit-shortcut-astra-settings-header-main-stick .customize-partial-edit-shortcut-button{left:5px}.customize-partial-edit-shortcut-astra-settings-disable-primary-nav .customize-partial-edit-shortcut-button{top:15px}.ast-masthead-custom-menu-items.search-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{left:-30px;top:-7px;display:none}.ast-masthead-custom-menu-items.search-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.button-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-button-text .customize-partial-edit-shortcut-button{top:-14px;display:none}.ast-masthead-custom-menu-items.button-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-button-text .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.text-html-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-html .customize-partial-edit-shortcut-button{left:-30px;top:15px;display:none}.ast-masthead-custom-menu-items.text-html-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section-html .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.widget-custom-menu-item{text-align:left}.ast-masthead-custom-menu-items.widget-custom-menu-item .customize-partial-edit-shortcut .customize-partial-edit-shortcut-button{left:-25px;top:-8px;display:none}.ast-masthead-custom-menu-items.widget-custom-menu-item:hover .customize-partial-edit-shortcut .customize-partial-edit-shortcut-button{display:block}.ast-masthead-custom-menu-items.woocommerce-custom-menu-item .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{top:-20px;left:-25px;display:none}.ast-masthead-custom-menu-items.woocommerce-custom-menu-item:hover .customize-partial-edit-shortcut-astra-settings-header-main-rt-section .customize-partial-edit-shortcut-button{display:block}.ast-below-header .below-header-user-select .ast-search-menu-icon,.ast-below-header .below-header-user-select .ast-site-header-cart,.ast-below-header .below-header-user-select.below-header-widget{text-align:left}.ast-below-header .customize-partial-edit-shortcut{top:1em}.ast-above-header-section .user-select .ast-search-menu-icon{text-align:left}.ast-above-header .customize-partial-edit-shortcut{top:.3em}.ast-above-header-section-1 .ast-above-header-navigation .customize-partial-edit-shortcut-astra-settings-above-header-section-1 .customize-partial-edit-shortcut-button{left:-14px}.ast-above-header-section-1 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-above-header-section-1-search-box-type .customize-partial-edit-shortcut-button{left:-25px;top:-10px}.ast-above-header-section-1.woocommerce-above-header .customize-partial-edit-shortcut-astra-settings-above-header-section-1 .customize-partial-edit-shortcut-button{left:-25px;top:-15px}.ast-above-header-section-1 .customize-partial-edit-shortcut-astra-settings-above-header-section-1-html .customize-partial-edit-shortcut-button{left:-25px}.ast-above-header-section-2 .ast-above-header-navigation .customize-partial-edit-shortcut-astra-settings-above-header-section-2 .customize-partial-edit-shortcut-button{left:-14px}.ast-above-header-section-2 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-above-header-section-2-search-box-type .customize-partial-edit-shortcut-button{top:-10px;left:-25px}.ast-above-header-section-2.woocommerce-above-header .customize-partial-edit-shortcut-astra-settings-above-header-section-2 .customize-partial-edit-shortcut-button{left:-25px}.below-header-section-1.ast-below-header-navigation .customize-partial-edit-shortcut-astra-settings-below-header-section-1 .customize-partial-edit-shortcut-button{left:-14px}.below-header-section-1 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-below-header-section-1-search-box-type .customize-partial-edit-shortcut-button{top:-10px;left:-25px}.below-header-section-1 .ast-site-header-cart .customize-partial-edit-shortcut-astra-settings-below-header-section-1 .customize-partial-edit-shortcut-button{left:-25px}.below-header-section-1 .customize-partial-edit-shortcut-astra-settings-below-header-section-1-html .customize-partial-edit-shortcut-button{left:-25px}.below-header-section-2.ast-below-header-navigation .customize-partial-edit-shortcut-astra-settings-below-header-section-2 .customize-partial-edit-shortcut-button{left:-14px}.below-header-section-2 .ast-search-menu-icon .customize-partial-edit-shortcut-astra-settings-below-header-section-2-search-box-type .customize-partial-edit-shortcut-button{top:-10px;left:-25px}.below-header-section-2 .ast-site-header-cart .customize-partial-edit-shortcut-astra-settings-below-header-section-2 .customize-partial-edit-shortcut-button{left:-25px}.below-header-section-2 .customize-partial-edit-shortcut-astra-settings-below-header-section-2-html .customize-partial-edit-shortcut-button{left:-25px}.customize-partial-edit-shortcut-astra-settings-above-header-layout .customize-partial-edit-shortcut-button,.customize-partial-edit-shortcut-astra-settings-below-header-layout .customize-partial-edit-shortcut-button{left:-60px}.ast-header-break-point .ast-mobile-menu-buttons{text-align:right;-js-display:flex;display:flex;justify-content:flex-end}.ast-header-break-point .ast-mobile-menu-buttons .ast-button-wrap .ast-mobile-menu-buttons-minimal{font-size:1.7em}.sticky{display:block}.hentry{margin:0 0 1.5em}.byline{display:none}.group-blog .byline,.single .byline{display:inline}.page-links{clear:both;margin-top:1em}.page-links a{display:inline-block}.page-links a .page-link{border-color:var(--ast-border-color);background:0 0}.page-links .page-link{padding:0;margin:0 0 .3em .3em;border:2px solid var(--ast-border-color);color:#000;background:0 0;font-size:.8em;width:2.5em;height:2.5em;line-height:calc( 2.5em - 4px);display:inline-block;text-align:center;transition:all .2s linear}.page-links .page-link:focus,.page-links .page-link:hover{color:#000}@media (max-width:768px){.page-links .page-link{margin-bottom:6px}}.entry-content>:last-child,.entry-summary>:last-child,.page-content>:last-child{margin-bottom:0}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){margin:20px auto}.bypostauthor{display:block}body{overflow-x:hidden}.widget-title{font-weight:400;margin-bottom:1em;line-height:1.5}.widget{margin:0 0 2.8em 0}.widget:last-child{margin-bottom:0}.widget select{max-width:100%}.widget ul{margin:0;list-style-type:none}.no-widget-text{margin-bottom:0}.widget_nav_menu ul ul.sub-menu{margin-top:.25em}.widget_nav_menu ul ul.sub-menu li{padding-left:20px}.widget_nav_menu ul ul.sub-menu a:after{left:-20px}.widget_nav_menu ul ul.sub-menu ul a:after{left:-40px}.widget_nav_menu ul ul.sub-menu ul ul a:after{left:-60px}.widget_nav_menu li{transition:all .2s linear}#secondary .wp-block-search__input{line-height:1}#secondary .wp-block-search__button{padding:.7em 1em}.widget_search .search-form{position:relative;padding:0;background:initial;color:inherit}.widget_search .search-form>label{position:relative}.widget_search .search-form i{color:#3a3a3a}.widget_search .search-form button{position:absolute;top:0;right:15px;border:none;padding:0;cursor:pointer;background:0 0}.widget_search .search-form input[type=submit],.widget_search .search-form input[type=submit]:focus,.widget_search .search-form input[type=submit]:hover{padding:13px 20px;border-radius:2px;border:none;top:0;right:0;position:absolute;color:transparent;background:0 0;max-width:45px;z-index:2}.widget_search .search-form .search-field{background:#fafafa;border-width:1px;border-color:var(--ast-border-color);border-radius:2px}.widget_search .search-field,.widget_search .search-field:focus{width:100%;padding:16px 45px 16px 15px}.widget_archive ul.children,.widget_categories ul.children,.widget_pages ul.children{position:relative;margin-top:5px;width:100%}.widget_archive ul.children li,.widget_categories ul.children li,.widget_pages ul.children li{padding-left:20px}.widget_archive li ul.children a:after,.widget_categories li ul.children a:after,.widget_pages li ul.children a:after{left:-20px}.widget_archive li ul.children ul a:after,.widget_categories li ul.children ul a:after,.widget_pages li ul.children ul a:after{left:-40px}.widget_tag_cloud .tagcloud{margin-top:10px;display:inline-block}.widget_tag_cloud .tagcloud a{border:1px solid var(--ast-border-color);padding:.5em .9em;display:inline-block;margin-bottom:4px;font-size:14px;margin-right:4px;line-height:1.5;transition:all .2s linear}.widget_calendar table,.widget_calendar td,.widget_calendar th{padding:0;text-align:center}.widget_calendar table,.widget_calendar th{border:none}.widget_calendar td{border-right:none;border-left:none}.widget_calendar caption{line-height:2.7em}.widget_calendar thead{line-height:2.5em}.widget_calendar thead a{color:#0274be;font-size:1rem;vertical-align:middle}.widget_calendar thead td{vertical-align:middle;font-weight:700}.widget_calendar thead>tr>th{line-height:2.5em;border-bottom:2px solid var(--ast-border-color);border-top:2px solid var(--ast-border-color)}.widget_calendar tbody{line-height:2.1em;text-align:center}.widget_calendar tbody>tr>td{width:14.2857%}.widget_calendar tbody>tr:first-child>td{padding-top:3px}.widget_calendar #today{color:#0274be;font-weight:700;border-bottom:2px solid #0274be}.ast-footer-overlay{background-color:#3a3a3a;padding-top:2em;padding-bottom:2em}@media (min-width:769px){.ast-footer-overlay{padding-top:2.66666em;padding-bottom:2.66666em}}.ast-small-footer{line-height:1.85714285714286;position:relative}.ast-small-footer .nav-menu a{padding:0 .5em}.ast-small-footer .no-widget-text,.ast-small-footer .widget-title{margin-bottom:0}.ast-small-footer .widget{margin-bottom:1em}.ast-small-footer .widget ul{position:static;border:0;width:auto}.ast-small-footer .widget ul a{border:0}.ast-small-footer .widget:last-child{margin-bottom:0}@media (min-width:769px){.ast-small-footer .nav-menu li{margin:0}.ast-small-footer .nav-menu li:first-child a{padding-left:0}.ast-small-footer .nav-menu li:last-child a{padding-right:0}}.ast-footer-site-title .customize-partial-edit-shortcut-button{display:none}.footer-sml-layout-1{text-align:center}.footer-sml-layout-1 .ast-small-footer-section-2{margin-top:1em}.footer-sml-layout-2 .ast-small-footer-section-1,.footer-sml-layout-2 .ast-small-footer-section-2{text-align:center}@media (min-width:769px){.footer-sml-layout-2 .ast-small-footer-section-1{text-align:left}.footer-sml-layout-2 .ast-small-footer-section-1 .menu-item .menu-link{padding:0 1em 0 0}.footer-sml-layout-2 .ast-small-footer-section-2{text-align:right}.footer-sml-layout-2 .ast-small-footer-section-2 .menu-item .menu-link{padding:0 0 0 1em}}@media (max-width:768px){.ast-header-break-point .footer-sml-layout-2 .ast-small-footer-section-2{margin-top:1em}}@media screen and (min-color-index:0) and (-webkit-min-device-pixel-ratio:0){.ast-small-footer-wrap .ast-row:before{display:block}}.site-footer{color:#fff}.site-footer .widget-title{color:var(--ast-border-color)}.site-footer a{color:var(--ast-border-color)}.site-footer a:focus,.site-footer a:hover{color:#fff}.site-footer ul{margin:0;list-style-type:none}.site-footer .nav-menu li{display:inline-block}.footer-adv-overlay{background-color:#3a3a3a;padding-top:70px;padding-bottom:70px}.footer-adv p:last-child{margin-bottom:0}.footer-adv .widget_calendar table{margin-bottom:0}@media all and (max-width:768px){.footer-adv-widget-1 .widget:last-child{margin:0 0 2.8em}}.footer-adv .ast-no-widget-row .widget-title{text-transform:capitalize}@media all and (max-width:768px){.footer-adv-layout-4 .footer-adv-widget-2 .widget:last-child,.footer-adv-layout-4 .footer-adv-widget-3 .widget:last-child{margin:0 0 2.8em}}input[type=email],input[type=number],input[type=password],input[type=reset],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{color:#666;padding:.75em;height:auto;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:2px;background:var(--ast-comment-inputs-background);box-shadow:none;box-sizing:border-box;transition:all .2s linear}input[type=email]:focus,input[type=password]:focus,input[type=reset]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{background-color:#fff;border-color:var(--ast-border-color);box-shadow:none}input[type=button],input[type=button]:focus,input[type=button]:hover,input[type=reset],input[type=reset]:focus,input[type=reset]:hover,input[type=submit],input[type=submit]:focus,input[type=submit]:hover{box-shadow:none}textarea{width:100%}input[type=search]:focus{outline:thin dotted}input[type=range]{-webkit-appearance:none;width:100%;margin:5.7px 0;padding:0;border:none}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{width:100%;height:8.6px;cursor:pointer;box-shadow:2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9;background:rgba(255,255,255,.2);border-radius:13.6px;border:0 solid #fff}input[type=range]::-webkit-slider-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer;-webkit-appearance:none;margin-top:-5.7px}input[type=range]:focus::-webkit-slider-runnable-track{background:rgba(255,255,255,.2)}input[type=range]::-moz-range-track{width:100%;height:8.6px;cursor:pointer;box-shadow:2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9;background:rgba(255,255,255,.2);border-radius:13.6px;border:0 solid #fff}input[type=range]::-moz-range-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer}input[type=range]::-ms-track{width:100%;height:8.6px;cursor:pointer;background:0 0;border-color:transparent;color:transparent}input[type=range]::-ms-fill-lower{background:rgba(199,199,199,.2);border:0 solid #fff;border-radius:27.2px;box-shadow:2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9}input[type=range]::-ms-fill-upper{background:rgba(255,255,255,.2);border:0 solid #fff;border-radius:27.2px;box-shadow:2.6px 2.6px .4px #ccc,0 0 2.6px #d9d9d9}input[type=range]::-ms-thumb{box-shadow:0 0 0 rgba(255,221,0,.37),0 0 0 rgba(255,224,26,.37);border:7.9px solid #0274be;height:20px;width:20px;border-radius:50px;background:#0274be;cursor:pointer;height:8.6px}input[type=range]:focus::-ms-fill-lower{background:rgba(255,255,255,.2)}input[type=range]:focus::-ms-fill-upper{background:rgba(255,255,255,.2)}input[type=color]{border:none;width:100px;padding:0;height:30px;cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:0;border:none}input[type=color]::-webkit-color-swatch{border:none}.page .entry-header{margin-bottom:1.5em}.search .entry-header{margin-bottom:1em}.ast-single-post .entry-header.ast-header-without-markup,.ast-single-post .entry-header.ast-no-title.ast-no-thumbnail{margin-bottom:0}.entry-header{margin-bottom:1em;word-wrap:break-word}.entry-header+.ast-blog-featured-section{margin-top:.5em}.entry-content{word-wrap:break-word}.entry-content p{margin-bottom:1.6em}.read-more{margin-bottom:0}.read-more .ast-right-arrow{font-size:1em}.ast-no-thumb .ast-blog-featured-section{margin-bottom:0}.ast-no-thumb .entry-header+.ast-blog-featured-section{margin-top:0}.ast-blog-featured-section{margin-bottom:1.5em}.error404 .page-header{margin-bottom:1.5em}.error404 .page-header .page-title{margin-bottom:0}.archive .entry-title,.blog .entry-title,.search .entry-title{line-height:1.3}.archive .format-aside .entry-title,.archive .format-status .entry-title,.blog .format-aside .entry-title,.blog .format-status .entry-title{display:none}.page-title{margin-bottom:1em;font-weight:400}.entry-title{margin-bottom:.2em}.ast-article-post{margin-bottom:2.5em}.ast-article-post:last-child{margin-bottom:0;border-bottom:0}.search .site-content .content-area .search-form{margin-bottom:3em}.blog-layout-1 .post-thumb{padding-left:0;padding-right:0;position:relative}.blog .posted-on{z-index:1}.ast-blog-featured-section .posted-on{width:5.714285714em;height:5.714285714em;padding:.7em}.ast-blog-featured-section .posted-on .date-month,.ast-blog-featured-section .posted-on .date-year{font-size:.8571428571em;line-height:1em}.ast-blog-featured-section .posted-on .date-day{font-size:2.5em;line-height:.9em;font-weight:900;margin:.1em 0}.ast-author-box img.avatar{border-radius:50%;margin:0 0 0 20px}.ast-archive-description{margin-bottom:2.5em;padding-bottom:1.3333em;border-bottom:1px solid var(--ast-border-color)}.ast-archive-description .ast-archive-title{margin-bottom:4px;font-size:40px;font-size:2.85714rem;font-weight:300}.ast-archive-description p{margin-bottom:0;font-size:20px;font-size:1.42857rem;line-height:1.65;font-weight:300}.ast-separate-container .ast-archive-description,.ast-separate-container .ast-author-box{background-color:#eee;padding-bottom:0;border-bottom:0}@media (max-width:1200px){.ast-separate-container .ast-archive-description{margin:0;padding:3.34em 2.4em}}@media (max-width:992px){.ast-separate-container .ast-archive-description{padding:2.14em}}@media (min-width:1201px){.ast-separate-container .ast-archive-description,.ast-separate-container .ast-author-box{margin:0;padding:5em 6.67em 3.33333em}}.single .entry-header{margin-bottom:2em}.single .post-navigation{margin:0;padding:2em 0 0;border-top:1px solid var(--ast-border-color)}@media (max-width:768px){.single .post-navigation{padding-top:1.5em}}.single .post-navigation a{margin:2px;display:inline-block;text-align:center;color:#000}@media (min-width:421px){.single .post-navigation .nav-links{-js-display:flex;display:flex}.single .post-navigation .nav-next,.single .post-navigation .nav-previous{flex:auto}}@media (max-width:420px){.single .post-navigation .ast-left-arrow,.single .post-navigation .ast-right-arrow{display:none}.single .post-navigation .nav-next,.single .post-navigation .nav-previous{width:100%}.single .post-navigation .nav-next a,.single .post-navigation .nav-previous a{width:100%}.single .post-navigation .nav-previous{margin-bottom:1em}}.single .entry-header .post-thumb{margin-bottom:2em}.single .entry-header .post-thumb img{margin-top:0;margin-bottom:0}.page .has-post-thumbnail .post-thumb img{margin-bottom:1.5em}.post-password-form{text-align:center}@media (max-width:420px){.post-password-form input[type=password]{display:block;margin:10px auto}}.post-password-form input[type=submit]{padding:10px 20px;border-radius:2px}.ast-separate-container .post-navigation{border-top:0;padding-left:3.33333em;padding-right:3.33333em}@media (max-width:420px){.ast-separate-container .post-navigation{padding-left:0;padding-right:0}}@media (max-width:768px){.ast-separate-container .entry-header{margin-bottom:1em}}.ast-404-layout-1{text-align:center;margin:4em auto}.ast-404-layout-1 .page-sub-title{font-size:1.5rem;font-weight:700}.ast-404-layout-1 .widget_search{padding-top:.5em}.ast-404-search{margin-top:1.5em}.ast-404-search .widget_search{max-width:370px;margin:0 auto}.ast-separate-container .error-404,.ast-separate-container .no-results{background-color:#fff}@media (max-width:1200px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{margin:0;padding:3.34em 2.4em}}@media (max-width:768px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{padding:1.5em 2.14em}}@media (max-width:544px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{padding:1.5em 1em}}@media (min-width:1201px){.ast-separate-container .ast-404-layout-1,.ast-separate-container .no-results{margin:0;padding:5.34em 6.67em}}.blog-layout-1{width:100%;display:inline-block;padding-bottom:2em;vertical-align:middle;border-bottom:1px solid var(--ast-border-color)}.blog-layout-1 .posted-on{left:0}.blog-layout-1 .post-content,.blog-layout-1 .post-thumb{padding-left:0;padding-right:0}.ast-flex{-js-display:flex;display:flex;flex-wrap:wrap}.ast-flex-1{flex:1}.ast-flex-2{flex:2}.ast-flex-3{flex:3}.ast-flex-4{flex:4}.ast-flex-5{flex:5}.ast-inline-flex{-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center}.ast-flex-direction-row{flex-direction:row}.ast-flex-direction-row-reverse{flex-direction:row-reverse}.ast-flex-direction-column{flex-direction:column}.ast-flex-direction-column-reverse{flex-direction:column-reverse}.ast-flex-wrap-nowrap{flex-wrap:nowrap}.ast-flex-wrap-wrap{flex-wrap:wrap}.ast-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse}.ast-justify-content-flex-start{justify-content:flex-start}.ast-justify-content-flex-end{justify-content:flex-end}.ast-justify-content-center{justify-content:center}.ast-justify-content-space-between{justify-content:space-between}.ast-justify-content-space-around{justify-content:space-around}.ast-align-items-flex-start{align-items:flex-start}.ast-align-items-flex-end{align-items:flex-end}.ast-align-items-center{align-items:center}.ast-align-items-baseline{align-items:baseline}.ast-align-items-stretch{align-items:stretch}.ast-align-content-flex-start{align-content:flex-start}.ast-align-content-flex-end{align-content:flex-end}.ast-align-content-center{align-content:center}.ast-align-content-space-between{align-content:space-between}.ast-align-content-space-around{align-content:space-around}.ast-align-content-stretch{align-content:stretch}.ast-order-1{order:1}.ast-order-2{order:2}.ast-order-3{order:3}.ast-order-4{order:4}.ast-order-5{order:5}.ast-flex-grow-1{flex-grow:1}.ast-flex-grow-2{flex-grow:2}.ast-flex-grow-3{flex-grow:3}.ast-flex-grow-4{flex-grow:4}.ast-flex-grow-5{flex-grow:5}.ast-flex-shrink-1{flex-shrink:1}.ast-flex-shrink-2{flex-shrink:2}.ast-flex-shrink-3{flex-shrink:3}.ast-flex-shrink-4{flex-shrink:4}.ast-flex-shrink-5{flex-shrink:5}.ast-align-self-auto{align-self:auto}.ast-align-self-flex-start{align-self:flex-start}.ast-align-self-flex-end{align-self:flex-end}.ast-align-self-center{align-self:center}.ast-align-self-baseline{align-self:baseline}.ast-align-self-stretch{align-self:stretch}.ahfb-svg-iconset{-js-display:inline-flex;display:inline-flex;align-self:center}.ahfb-svg-iconset svg{width:17px;height:17px;transition:none}.ahfb-svg-iconset svg>*{transition:none} \ No newline at end of file diff --git a/wp-content/themes/astra/assets/js/minified/frontend.min.js b/wp-content/themes/astra/assets/js/minified/frontend.min.js index 626638183..8f13030f2 100644 --- a/wp-content/themes/astra/assets/js/minified/frontend.min.js +++ b/wp-content/themes/astra/assets/js/minified/frontend.min.js @@ -1 +1 @@ -var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 #ast-desktop-header .ast-desktop-header-content"),n=document.querySelector(".elementor-editor-active"),a&&(a.style.display="none"),(null!==navigator.userAgent.match(/Android/i)&&"Android"===navigator.userAgent.match(/Android/i)[0]?window.visualViewport.width:window.innerWidth)!==s&&(t&&null===n&&t.click(),document.body.classList.remove("ast-main-header-nav-open","ast-popup-nav-open"),e)&&null==n&&e.click(),h(),AstraToggleSetup())}),document.addEventListener("DOMContentLoaded",function(){if(AstraToggleSetup(),null!==(e=u.classList.contains("ast-header-break-point")?document.getElementById("ast-mobile-header"):document.getElementById("ast-desktop-header"))){var e,t=e.querySelector(".navigation-accessibility");if(t&&e){var a=e.getElementsByTagName("button")[0];if(void 0===a){if(!0===(a=e.getElementsByTagName("a")[0]).classList.contains("astra-search-icon"))return;if(void 0===a)return}var n=t.getElementsByTagName("ul")[0];if(void 0===n)a.style.display="none";else{if(-1===n.className.indexOf("nav-menu")&&(n.className+=" nav-menu"),window.onload=function(){var e;"off-canvas"===d&&(e=document.getElementById("menu-toggle-close"))&&(e.onclick=function(){-1!==t.className.indexOf("toggled")?(t.className=t.className.replace(" toggled",""),a.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false")):(t.className+=" toggled",a.setAttribute("aria-expanded","true"),n.setAttribute("aria-expanded","true"))})},a.onclick=function(){-1!==t.className.indexOf("toggled")?(t.className=t.className.replace(" toggled",""),a.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false")):(t.className+=" toggled",a.setAttribute("aria-expanded","true"),n.setAttribute("aria-expanded","true"))},!astra.is_header_footer_builder_active){for(var s=n.getElementsByTagName("a"),o=n.getElementsByTagName("ul"),r=0,l=o.length;r a .ast-header-navigation-arrow"),a=document.querySelectorAll("nav.site-navigation .sub-menu"),n=document.querySelectorAll("nav.site-navigation .menu-item-has-children"),s=document.querySelectorAll(".astra-full-megamenu-wrapper");t&&(t.forEach(e=>{e.addEventListener("keydown",function(a){"Enter"===a.key&&(a.target.closest("li").querySelector(".sub-menu").classList.contains("astra-megamenu")?setTimeout(()=>{var e=a.target.closest("li").querySelector(".sub-menu"),t=a.target.closest("li").querySelector(".astra-full-megamenu-wrapper");e&&e.classList.toggle("astra-megamenu-focus"),t&&t.classList.toggle("astra-megamenu-wrapper-focus"),a.target.closest("li").classList.toggle("ast-menu-hover"),"false"!==a.target.getAttribute("aria-expanded")&&a.target.getAttribute("aria-expanded")?a.target.setAttribute("aria-expanded","false"):a.target.setAttribute("aria-expanded","true")},10):setTimeout(()=>{a.target.closest("li").querySelector(".sub-menu").classList.toggle("toggled-on"),a.target.closest("li").classList.toggle("ast-menu-hover"),"false"!==a.target.getAttribute("aria-expanded")&&a.target.getAttribute("aria-expanded")?a.target.setAttribute("aria-expanded","false"):a.target.setAttribute("aria-expanded","true")},10))})}),(a||n)&&document.addEventListener("click",function(e){b(a,t,n,s)},!1),a||n)&&document.addEventListener("keydown",function(e){"Escape"===e.key&&b(a,t,n,s)},!1);var e=document.querySelectorAll("nav.site-navigation .ast-nav-menu > .menu-item-has-children > a .ast-header-navigation-arrow");e&&e.forEach(e=>{e.addEventListener("keydown",function(e){e.target.closest("li").classList.contains("ast-menu-hover")||"Enter"!==e.key||b(a,t,n,s)},!1)})}()}}}});for(var t,a,o,l,h=function(){var e=u.style.overflow,t=(u.style.overflow="hidden",document.documentElement.clientWidth);if(u.style.overflow=e,astra.break_point .menu-link, ul.main-header-menu .ast-menu-toggle"):t[r].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var l=0;l #ast-mobile-header .main-header-bar-navigation"),t=(r=document.querySelectorAll("#masthead > #ast-mobile-header .main-header-menu-toggle"),"0");if(null!==this.closest("#ast-fixed-header")&&(e=document.querySelectorAll("#ast-fixed-header > #ast-mobile-header .main-header-bar-navigation"),r=document.querySelectorAll("#ast-fixed-header .main-header-menu-toggle"),t="0"),void 0===e[t])return!1;for(var a=e[t].querySelectorAll(".menu-item-has-children"),n=0;n{e.classList.remove("astra-megamenu-focus"),e.classList.remove("toggled-on")}),a&&a.forEach(e=>{e.classList.remove("ast-menu-hover")}),n&&n.forEach(e=>{e.classList.remove("astra-megamenu-wrapper-focus")}),t&&t.forEach(e=>{e.setAttribute("aria-expanded","false")})}function L(){var e=this||"";if(e&&!e.classList.contains("astra-search-icon")&&null===e.closest(".ast-builder-menu")&&-1!==new String(e).indexOf("#")){var t=e.parentNode;if(u.classList.contains("ast-header-break-point"))document.querySelector("header.site-header").classList.contains("ast-builder-menu-toggle-link")&&t.classList.contains("menu-item-has-children")||(document.querySelector(".main-header-menu-toggle").classList.remove("toggled"),(t=document.querySelector(".main-header-bar-navigation")).classList.remove("toggle-on"),t.style.display="none",astraTriggerEvent(document.querySelector("body"),"astraMenuHashLinkClicked"));else for(;-1===e.className.indexOf("nav-menu");)"li"===e.tagName.toLowerCase()&&-1!==e.className.indexOf("focus")&&(e.className=e.className.replace(" focus","")),e=e.parentElement}}function E(){for(var e=this;-1===e.className.indexOf("navigation-accessibility");)"li"===e.tagName.toLowerCase()&&e.classList.toggle("focus"),e=e.parentElement}if(document.querySelectorAll(".search-field").forEach(e=>{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t&&astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t&&(t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active"))})}),u.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=document.querySelector(a))&&(a=a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(o=document.querySelector("#page header"),l=document.getElementById("ast-scroll-top"),astScrollToTopHandler(o,l),window.addEventListener("scroll",function(){astScrollToTopHandler(o,l)}),l.onclick=function(e){astraSmoothScroll(e,0)},l.addEventListener("keydown",function(e){"Enter"===e.key&&astraSmoothScroll(e,0)}))}(); \ No newline at end of file +var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 #ast-desktop-header .ast-desktop-header-content"),n=document.querySelector(".elementor-editor-active"),a&&(a.style.display="none"),(null!==navigator.userAgent.match(/Android/i)&&"Android"===navigator.userAgent.match(/Android/i)[0]?window.visualViewport.width:window.innerWidth)!==s&&(t&&null===n&&t.click(),document.body.classList.remove("ast-main-header-nav-open","ast-popup-nav-open"),e)&&null==n&&e.click(),h(),AstraToggleSetup())}),document.addEventListener("DOMContentLoaded",function(){if(AstraToggleSetup(),null!==(e=u.classList.contains("ast-header-break-point")?document.getElementById("ast-mobile-header"):document.getElementById("ast-desktop-header"))){var e,t=e.querySelector(".navigation-accessibility");if(t&&e){var a=e.getElementsByTagName("button")[0];if(void 0===a){if(!0===(a=e.getElementsByTagName("a")[0]).classList.contains("astra-search-icon"))return;if(void 0===a)return}var n=t.getElementsByTagName("ul")[0];if(void 0===n)a.style.display="none";else{if(-1===n.className.indexOf("nav-menu")&&(n.className+=" nav-menu"),window.onload=function(){var e;"off-canvas"===d&&(e=document.getElementById("menu-toggle-close"))&&(e.onclick=function(){-1!==t.className.indexOf("toggled")?(t.className=t.className.replace(" toggled",""),a.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false")):(t.className+=" toggled",a.setAttribute("aria-expanded","true"),n.setAttribute("aria-expanded","true"))})},a.onclick=function(){-1!==t.className.indexOf("toggled")?(t.className=t.className.replace(" toggled",""),a.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false")):(t.className+=" toggled",a.setAttribute("aria-expanded","true"),n.setAttribute("aria-expanded","true"))},!astra.is_header_footer_builder_active){for(var s=n.getElementsByTagName("a"),o=n.getElementsByTagName("ul"),r=0,l=o.length;r a .ast-header-navigation-arrow"),a=document.querySelectorAll("nav.site-navigation .sub-menu"),n=document.querySelectorAll("nav.site-navigation .menu-item-has-children"),s=document.querySelectorAll(".astra-full-megamenu-wrapper");t&&(t.forEach(e=>{e.addEventListener("keydown",function(a){"Enter"===a.key&&(a.target.closest("li").querySelector(".sub-menu").classList.contains("astra-megamenu")?setTimeout(()=>{var e=a.target.closest("li").querySelector(".sub-menu"),t=a.target.closest("li").querySelector(".astra-full-megamenu-wrapper");e&&e.classList.toggle("astra-megamenu-focus"),t&&t.classList.toggle("astra-megamenu-wrapper-focus"),a.target.closest("li").classList.toggle("ast-menu-hover"),"false"!==a.target.getAttribute("aria-expanded")&&a.target.getAttribute("aria-expanded")?a.target.setAttribute("aria-expanded","false"):a.target.setAttribute("aria-expanded","true")},10):setTimeout(()=>{a.target.closest("li").querySelector(".sub-menu").classList.toggle("toggled-on"),a.target.closest("li").classList.toggle("ast-menu-hover"),"false"!==a.target.getAttribute("aria-expanded")&&a.target.getAttribute("aria-expanded")?a.target.setAttribute("aria-expanded","false"):a.target.setAttribute("aria-expanded","true")},10))})}),(a||n)&&document.addEventListener("click",function(e){b(a,t,n,s)},!1),a||n)&&document.addEventListener("keydown",function(e){"Escape"===e.key&&b(a,t,n,s)},!1);var e=document.querySelectorAll("nav.site-navigation .ast-nav-menu > .menu-item-has-children > a .ast-header-navigation-arrow");e&&e.forEach(e=>{e.addEventListener("keydown",function(e){e.target.closest("li").classList.contains("ast-menu-hover")||"Enter"!==e.key||b(a,t,n,s)},!1)})}()}}}});for(var t,a,o,l,h=function(){var e=u.style.overflow,t=(u.style.overflow="hidden",document.documentElement.clientWidth);if(u.style.overflow=e,astra.break_point .menu-link, ul.main-header-menu .ast-menu-toggle"):t[r].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var l=0;l #ast-mobile-header .main-header-bar-navigation"),t=(r=document.querySelectorAll("#masthead > #ast-mobile-header .main-header-menu-toggle"),"0");if(null!==this.closest("#ast-fixed-header")&&(e=document.querySelectorAll("#ast-fixed-header > #ast-mobile-header .main-header-bar-navigation"),r=document.querySelectorAll("#ast-fixed-header .main-header-menu-toggle"),t="0"),void 0===e[t])return!1;for(var a=e[t].querySelectorAll(".menu-item-has-children"),n=0;n{e.classList.remove("astra-megamenu-focus"),e.classList.remove("toggled-on")}),a&&a.forEach(e=>{e.classList.remove("ast-menu-hover")}),n&&n.forEach(e=>{e.classList.remove("astra-megamenu-wrapper-focus")}),t&&t.forEach(e=>{e.setAttribute("aria-expanded","false")})}function L(){var e=this||"";if(e&&!e.classList.contains("astra-search-icon")&&null===e.closest(".ast-builder-menu")&&-1!==new String(e).indexOf("#")){var t=e.parentNode;if(u.classList.contains("ast-header-break-point"))document.querySelector("header.site-header").classList.contains("ast-builder-menu-toggle-link")&&t.classList.contains("menu-item-has-children")||(document.querySelector(".main-header-menu-toggle").classList.remove("toggled"),(t=document.querySelector(".main-header-bar-navigation")).classList.remove("toggle-on"),t.style.display="none",astraTriggerEvent(document.querySelector("body"),"astraMenuHashLinkClicked"));else for(;-1===e.className.indexOf("nav-menu");)"li"===e.tagName.toLowerCase()&&-1!==e.className.indexOf("focus")&&(e.className=e.className.replace(" focus","")),e=e.parentElement}}function k(){for(var e=this;-1===e.className.indexOf("navigation-accessibility");)"li"===e.tagName.toLowerCase()&&e.classList.toggle("focus"),e=e.parentElement}if(document.querySelectorAll(".search-field").forEach(e=>{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t&&astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t&&(t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active"))})}),u.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=document.querySelector(a))&&(a=a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(o=document.querySelector("#page header"),l=document.getElementById("ast-scroll-top"),astScrollToTopHandler(o,l),window.addEventListener("scroll",function(){astScrollToTopHandler(o,l)}),l.onclick=function(e){astraSmoothScroll(e,0)},l.addEventListener("keydown",function(e){"Enter"===e.key&&astraSmoothScroll(e,0)}))}(); \ No newline at end of file diff --git a/wp-content/themes/astra/assets/js/minified/live-search.min.js b/wp-content/themes/astra/assets/js/minified/live-search.min.js index 6cde54f4c..79434a0b6 100644 --- a/wp-content/themes/astra/assets/js/minified/live-search.min.js +++ b/wp-content/themes/astra/assets/js/minified/live-search.min.js @@ -1,19 +1,19 @@ -!function(){function o(e){let a="";return Object.entries(e).map(([e,t])=>{a+=``,t.map(e=>{t=e.title.rendered;var t=(new DOMParser).parseFromString(t,"text/html").documentElement.textContent;a+=` ${t} `})}),a}window.addEventListener("load",function(e){document.querySelectorAll(".search-field").forEach(e=>{e.addEventListener("input",async t=>{var a=e.closest("form.search-form"),t=t.target.value.trim(),s=astra_search.search_post_types;const r=document.querySelectorAll(".ast-live-search-results");r&&r.forEach(function(e){e.parentNode.removeChild(e)});try{var l=`${astra_search.rest_api_url}wp/v2/posts${-1{e.type in t?t[e.type].push(e):t[e.type]=[e]});var n=o(t);e=` -
- ${n} -
- `}else e=` -
- -
- `;const r=document.querySelectorAll(".ast-live-search-results");r&&r.forEach(function(e){e.parentNode.removeChild(e)}),a.insertAdjacentHTML("beforeend",e)}catch(e){console.error("Error while fetching data:",e)}})})}),document.addEventListener("click",function(e){var e=e.target.closest("form.search-form");null!==e?e.querySelector(".ast-live-search-results")&&(e.querySelector(".ast-live-search-results").style.display="block"):(e=document.querySelectorAll(".ast-live-search-results"))&&e.forEach(function(e){e.style.display="none"})})}(); \ No newline at end of file +!function(){function c(e){let s="";return Object.entries(e).map(([e,t])=>{e=astra_search.search_post_types_labels[e]||e+"s";s+=``,t.map(e=>{t=e.title.rendered;var t=(new DOMParser).parseFromString(t,"text/html").documentElement.textContent;s+=` ${t} `})}),s}window.addEventListener("load",function(e){document.querySelectorAll(".search-field").forEach(n=>{n.addEventListener("input",function(e){const a=n.closest("form.search-form");var e=e.target.value.trim(),t=astra_search.search_post_types,s=document.querySelectorAll(".ast-live-search-results");s&&s.forEach(function(e){e.parentNode.removeChild(e)});try{var r=`${astra_search.rest_api_url}wp/v2/posts${-1{e.type in t?t[e.type].push(e):t[e.type]=[e]});s=c(t);e=` +
+ ${s} +
+ `}else e=` +
+ +
+ `;s=document.querySelectorAll(".ast-live-search-results");s&&s.forEach(function(e){e.parentNode.removeChild(e)}),a.insertAdjacentHTML("beforeend",e)}},l.send()}catch(e){console.error("Error while fetching data:",e)}})})}),document.addEventListener("click",function(e){var e=e.target.closest("form.search-form");null!==e?e.querySelector(".ast-live-search-results")&&(e.querySelector(".ast-live-search-results").style.display="block"):(e=document.querySelectorAll(".ast-live-search-results"))&&e.forEach(function(e){e.style.display="none"})})}(); \ No newline at end of file diff --git a/wp-content/themes/astra/assets/js/minified/navigation.min.js b/wp-content/themes/astra/assets/js/minified/navigation.min.js index 816d2739d..3181f6919 100644 --- a/wp-content/themes/astra/assets/js/minified/navigation.min.js +++ b/wp-content/themes/astra/assets/js/minified/navigation.min.js @@ -1 +1 @@ -var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 .menu-link, .ast-header-break-point ul.main-header-menu .ast-menu-toggle"):e[a].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var n=0;n{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active")})}),document.body.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=document.querySelector(a))&&(a=a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(s=document.querySelector("#page header"),o=document.getElementById("ast-scroll-top"),astScrollToTopHandler(s,o),window.addEventListener("scroll",function(){astScrollToTopHandler(s,o)}),o.onclick=function(e){astraSmoothScroll(e,0)})}(); \ No newline at end of file +var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 .menu-link, .ast-header-break-point ul.main-header-menu .ast-menu-toggle"):e[a].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var n=0;n{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active")})}),document.body.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=document.querySelector(a))&&(a=a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(s=document.querySelector("#page header"),o=document.getElementById("ast-scroll-top"),astScrollToTopHandler(s,o),window.addEventListener("scroll",function(){astScrollToTopHandler(s,o)}),o.onclick=function(e){astraSmoothScroll(e,0)})}(); \ No newline at end of file diff --git a/wp-content/themes/astra/assets/js/minified/style.min.js b/wp-content/themes/astra/assets/js/minified/style.min.js index 792d8fd3b..20fa82cc3 100644 --- a/wp-content/themes/astra/assets/js/minified/style.min.js +++ b/wp-content/themes/astra/assets/js/minified/style.min.js @@ -1 +1 @@ -var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 .menu-link, .ast-header-break-point ul.main-header-menu .ast-menu-toggle"):e[a].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var n=0;n{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active")})}),document.body.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=(a=document.querySelector(a))&&a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(s=document.querySelector("#page header"),o=document.getElementById("ast-scroll-top"),astScrollToTopHandler(s,o),window.addEventListener("scroll",function(){astScrollToTopHandler(s,o)}),o.onclick=function(e){astraSmoothScroll(e,0)})}(); \ No newline at end of file +var astraGetParents=function(e,t){Element.prototype.matches||(Element.prototype.matches=Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),a=t.length;0<=--a&&t.item(a)!==this;);return-1e.offsetHeight+100?t.style.display="block":t.style.display="none":300 .menu-link, .ast-header-break-point ul.main-header-menu .ast-menu-toggle"):e[a].querySelectorAll("ul.main-header-menu .ast-menu-toggle")).length)for(var n=0;n{e.addEventListener("focus",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");astraToggleClass(t,"ast-dropdown-active")}),e.addEventListener("blur",function(e){var t=this.parentNode.parentNode.parentNode.querySelector(".ast-search-menu-icon");t.classList.remove("ast-dropdown-active"),astraToggleClass(t,"ast-dropdown-active")})}),document.body.onclick=function(e){if(void 0!==e.target.classList&&!e.target.classList.contains("ast-search-menu-icon")&&0===astraGetParents(e.target,".ast-search-menu-icon").length&&0===astraGetParents(e.target,".ast-search-icon").length)for(var t=document.getElementsByClassName("ast-search-menu-icon"),a=0;a{t+=e.clientHeight}),a=this.hash)&&(a=(a=document.querySelector(a))&&a.offsetTop-t)&&astraSmoothScroll(e,a)}}astra.is_scroll_to_top&&(s=document.querySelector("#page header"),o=document.getElementById("ast-scroll-top"),astScrollToTopHandler(s,o),window.addEventListener("scroll",function(){astScrollToTopHandler(s,o)}),o.onclick=function(e){astraSmoothScroll(e,0)})}(); \ No newline at end of file diff --git a/wp-content/themes/astra/assets/js/unminified/frontend.js b/wp-content/themes/astra/assets/js/unminified/frontend.js index fc3cd2369..6668465fc 100644 --- a/wp-content/themes/astra/assets/js/unminified/frontend.js +++ b/wp-content/themes/astra/assets/js/unminified/frontend.js @@ -1172,7 +1172,7 @@ astScrollToTopHandler = function ( masthead, astScrollTop ) { * @since x.x.x */ if ( astra.is_scroll_to_id ) { - const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger)'); + const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger):not(.skip-link)'); if (links) { for (const link of links) { diff --git a/wp-content/themes/astra/assets/js/unminified/live-search.js b/wp-content/themes/astra/assets/js/unminified/live-search.js index e8d80feee..b293f2b30 100644 --- a/wp-content/themes/astra/assets/js/unminified/live-search.js +++ b/wp-content/themes/astra/assets/js/unminified/live-search.js @@ -16,7 +16,8 @@ let processedHtml = ''; Object.entries( resultsData ).map( ( [ postType, postsData ] ) => { - processedHtml += ``; + let postTypeLabel = astra_search.search_post_types_labels[postType] ? astra_search.search_post_types_labels[postType] : postType + 's'; + processedHtml += ``; postsData.map((post) => { const searchPostTitle = decodeHTMLEntities(post.title.rendered); processedHtml += ` ${searchPostTitle} `; @@ -29,7 +30,7 @@ window.addEventListener( "load", function(e) { const searchInputs = document.querySelectorAll('.search-field'); searchInputs.forEach(searchInput => { - searchInput.addEventListener('input', async (event) => { + searchInput.addEventListener('input', function (event) { const searchForm = searchInput.closest('form.search-form'); const searchTerm = event.target.value.trim(); const postTypes = astra_search.search_post_types; @@ -48,52 +49,57 @@ astra_search.search_posts_per_page }&search=${searchTerm}${astra_search.search_language ? `&lang=${astra_search.search_language}` : ''}`; - const response = await fetch( restRequest ); - const postsData = await response.json(); - let resultsContainer = ''; - - if (postsData.length > 0) { - let formattedPostsData = {} - postsData.map((post) => { - if ( post.type in formattedPostsData ) { - formattedPostsData[post.type].push(post); + var xhr = new XMLHttpRequest(); + xhr.open( 'GET', restRequest, true ); + xhr.onreadystatechange = function () { + if ( xhr.readyState === 4 && xhr.status === 200 ) { + const postsData = JSON.parse(xhr.responseText); + let resultsContainer = ''; + + if (postsData.length > 0) { + let formattedPostsData = {} + postsData.map((post) => { + if ( post.type in formattedPostsData ) { + formattedPostsData[post.type].push(post); + } else { + formattedPostsData[post.type] = [post]; + } + }); + let searchResultMarkup = getSearchResultPostMarkup(formattedPostsData); + resultsContainer = ` +
+ ${searchResultMarkup} +
+ `; } else { - formattedPostsData[post.type] = [post]; + resultsContainer = ` +
+ +
+ `; } - }); - let searchResultMarkup = getSearchResultPostMarkup(formattedPostsData); - resultsContainer = ` -
- ${searchResultMarkup} -
- `; - } else { - resultsContainer = ` -
- -
- `; - } - - const searchResultsWrappers = document.querySelectorAll('.ast-live-search-results'); - if ( searchResultsWrappers ) { - searchResultsWrappers.forEach(function(wrap) { - wrap.parentNode.removeChild(wrap); - }); - } - searchForm.insertAdjacentHTML('beforeend', resultsContainer); + const searchResultsWrappers = document.querySelectorAll('.ast-live-search-results'); + if ( searchResultsWrappers ) { + searchResultsWrappers.forEach(function(wrap) { + wrap.parentNode.removeChild(wrap); + }); + } + searchForm.insertAdjacentHTML('beforeend', resultsContainer); + } + }; + xhr.send(); } catch (error) { console.error('Error while fetching data:', error); } diff --git a/wp-content/themes/astra/assets/js/unminified/navigation.js b/wp-content/themes/astra/assets/js/unminified/navigation.js index 949f8c8b3..335b8fd52 100644 --- a/wp-content/themes/astra/assets/js/unminified/navigation.js +++ b/wp-content/themes/astra/assets/js/unminified/navigation.js @@ -656,7 +656,7 @@ astScrollToTopHandler = function ( masthead, astScrollTop ) { * @since x.x.x */ if ( astra.is_scroll_to_id ) { - const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger)'); + const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger):not(.skip-link)'); if (links) { for (const link of links) { diff --git a/wp-content/themes/astra/assets/js/unminified/style.js b/wp-content/themes/astra/assets/js/unminified/style.js index 949f8c8b3..335b8fd52 100644 --- a/wp-content/themes/astra/assets/js/unminified/style.js +++ b/wp-content/themes/astra/assets/js/unminified/style.js @@ -656,7 +656,7 @@ astScrollToTopHandler = function ( masthead, astScrollTop ) { * @since x.x.x */ if ( astra.is_scroll_to_id ) { - const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger)'); + const links = document.querySelectorAll('a[href*="#"]:not([href="#"]):not([href="#0"]):not([href*="uagb-tab"]):not(.uagb-toc-link__trigger):not(.skip-link)'); if (links) { for (const link of links) { diff --git a/wp-content/themes/astra/changelog.txt b/wp-content/themes/astra/changelog.txt index fbe692f3a..d2826fd6c 100644 --- a/wp-content/themes/astra/changelog.txt +++ b/wp-content/themes/astra/changelog.txt @@ -1,3 +1,17 @@ +v4.4.1 +- Improvement: Compatibility with WordPress-6.4. +- Improvement: Updated SelectWoo library to 1.0.10 to hardened the security. +- Fix: Default colors from customizer palette are mismatch with frontend global colors & with block editor's theme colors. +- Fix: Smooth Scroll fails to navigate by keyboard on-focus and eventually breaks Accessibility. +- Fix: Search - Live Search - Search results dropdown goes beneath the header menu. +- Fix: Search - Live Search results container not visible in offcanvas section. +- Fix: Search - Live search is not working on the Safari browser. +- Fix: Search - Live search not getting their translated post type label on the frontend. +- Fix: WooCommerce - Duplicate 'No Products in the Cart' Message in WooCommerce Cart Widget. +- Fix: Editor - Content Background not applying correctly in some edge cases. +- Fix: Post Title - Behind Featured image position breaks the UI with sidebar layout. +- Fix: Block Editor - Slow editor experience after version 4.4.0. + v4.4.0 - New: Header Builder - Search - Introducing a new feature Live Search. ( https://wpastra.com/docs/live-search/ ) - New: Header Builder - Search - Post Types selection option to filter Live Search results within. diff --git a/wp-content/themes/astra/functions.php b/wp-content/themes/astra/functions.php index 1c5badd15..7c573eb71 100644 --- a/wp-content/themes/astra/functions.php +++ b/wp-content/themes/astra/functions.php @@ -15,7 +15,7 @@ /** * Define Constants */ -define( 'ASTRA_THEME_VERSION', '4.4.0' ); +define( 'ASTRA_THEME_VERSION', '4.4.1' ); define( 'ASTRA_THEME_SETTINGS', 'astra-settings' ); define( 'ASTRA_THEME_DIR', trailingslashit( get_template_directory() ) ); define( 'ASTRA_THEME_URI', trailingslashit( esc_url( get_template_directory_uri() ) ) ); diff --git a/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs-loader.php b/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs-loader.php index 118b6b36e..8cbae45ab 100644 --- a/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs-loader.php +++ b/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs-loader.php @@ -1,205 +1,205 @@ - '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['breadcrumb-active-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['breadcrumb-hover-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['breadcrumb-separator-color'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['breadcrumb-bg-color'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['breadcrumb-spacing'] = array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - - /** - * Breadcrumb Font Defaults - */ - $defaults['breadcrumb-font-family'] = 'inherit'; - $defaults['breadcrumb-font-weight'] = 'inherit'; - $defaults['breadcrumb-font-size'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - $defaults['breadcrumb-font-extras'] = array( - 'line-height' => ! isset( $astra_options['breadcrumb-font-extras'] ) && isset( $astra_options['breadcrumb-line-height'] ) ? $astra_options['breadcrumb-line-height'] : '', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['breadcrumb-font-extras'] ) && isset( $astra_options['breadcrumb-text-transform'] ) ? $astra_options['breadcrumb-text-transform'] : '', - 'text-decoration' => '', - ); - - /** - * Breadcrumb Separator defaults - */ - - $defaults['breadcrumb-separator-selector'] = '\003E'; - $defaults['breadcrumb-separator'] = '\00bb'; - - return $defaults; - } - - /** - * Add postMessage support for site title and description for the Theme Customizer. - * - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - */ - public function customize_register( $wp_customize ) { - - /** - * Register Panel & Sections - */ - // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-configs.php'; - require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-color-configs.php'; - require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-typo-configs.php'; - // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Customizer Preview - */ - public function preview_scripts() { - /** - * Load unminified if SCRIPT_DEBUG is true. - */ - /* Directory and Extension */ - $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; - $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; - wp_enqueue_script( 'astra-breadcrumbs-customizer-preview-js', ASTRA_THEME_BREADCRUMBS_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); - } - } -} - -/** -* Kicking this off by calling 'get_instance()' method -*/ -Astra_Breadcrumbs_Loader::get_instance(); + '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['breadcrumb-active-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['breadcrumb-hover-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['breadcrumb-separator-color'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['breadcrumb-bg-color'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['breadcrumb-spacing'] = array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + + /** + * Breadcrumb Font Defaults + */ + $defaults['breadcrumb-font-family'] = 'inherit'; + $defaults['breadcrumb-font-weight'] = 'inherit'; + $defaults['breadcrumb-font-size'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + $defaults['breadcrumb-font-extras'] = array( + 'line-height' => ! isset( $astra_options['breadcrumb-font-extras'] ) && isset( $astra_options['breadcrumb-line-height'] ) ? $astra_options['breadcrumb-line-height'] : '', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['breadcrumb-font-extras'] ) && isset( $astra_options['breadcrumb-text-transform'] ) ? $astra_options['breadcrumb-text-transform'] : '', + 'text-decoration' => '', + ); + + /** + * Breadcrumb Separator defaults + */ + + $defaults['breadcrumb-separator-selector'] = '\003E'; + $defaults['breadcrumb-separator'] = '\00bb'; + + return $defaults; + } + + /** + * Add postMessage support for site title and description for the Theme Customizer. + * + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + */ + public function customize_register( $wp_customize ) { + + /** + * Register Panel & Sections + */ + // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-configs.php'; + require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-color-configs.php'; + require_once ASTRA_THEME_BREADCRUMBS_DIR . 'customizer/class-astra-breadcrumbs-typo-configs.php'; + // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Customizer Preview + */ + public function preview_scripts() { + /** + * Load unminified if SCRIPT_DEBUG is true. + */ + /* Directory and Extension */ + $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; + $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; + wp_enqueue_script( 'astra-breadcrumbs-customizer-preview-js', ASTRA_THEME_BREADCRUMBS_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); + } + } +} + +/** +* Kicking this off by calling 'get_instance()' method +*/ +Astra_Breadcrumbs_Loader::get_instance(); diff --git a/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs.php b/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs.php index d89fed604..cbac1c61a 100644 --- a/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs.php +++ b/wp-content/themes/astra/inc/addons/breadcrumbs/class-astra-breadcrumbs.php @@ -1,109 +1,109 @@ - $breadcrumb_enable, - ); - } - - if ( function_exists( 'yoast_breadcrumb' ) && true === $wpseo_option['breadcrumbs-enable'] ) { - $options['yoast-seo-breadcrumbs'] = 'Yoast SEO Breadcrumbs'; - } - - if ( function_exists( 'bcn_display' ) ) { - $options['breadcrumb-navxt'] = 'Breadcrumb NavXT'; - } - - if ( function_exists( 'rank_math_the_breadcrumbs' ) ) { - $options['rank-math'] = 'Rank Math'; - } - - if ( function_exists( 'seopress_display_breadcrumbs' ) ) { - $options['seopress'] = 'SEOPress'; - } - - return $options; - } - } - - /** - * Kicking this off by calling 'get_instance()' method - */ - Astra_Breadcrumbs::get_instance(); - -} + $breadcrumb_enable, + ); + } + + if ( function_exists( 'yoast_breadcrumb' ) && true === $wpseo_option['breadcrumbs-enable'] ) { + $options['yoast-seo-breadcrumbs'] = 'Yoast SEO Breadcrumbs'; + } + + if ( function_exists( 'bcn_display' ) ) { + $options['breadcrumb-navxt'] = 'Breadcrumb NavXT'; + } + + if ( function_exists( 'rank_math_the_breadcrumbs' ) ) { + $options['rank-math'] = 'Rank Math'; + } + + if ( function_exists( 'seopress_display_breadcrumbs' ) ) { + $options['seopress'] = 'SEOPress'; + } + + return $options; + } + } + + /** + * Kicking this off by calling 'get_instance()' method + */ + Astra_Breadcrumbs::get_instance(); + +} diff --git a/wp-content/themes/astra/inc/addons/heading-colors/class-astra-heading-colors-loader.php b/wp-content/themes/astra/inc/addons/heading-colors/class-astra-heading-colors-loader.php index 34e3e89c5..e2d3d2c79 100644 --- a/wp-content/themes/astra/inc/addons/heading-colors/class-astra-heading-colors-loader.php +++ b/wp-content/themes/astra/inc/addons/heading-colors/class-astra-heading-colors-loader.php @@ -1,273 +1,273 @@ - to
- */ - $defaults['h1-color'] = ''; - $defaults['h2-color'] = ''; - $defaults['h3-color'] = ''; - $defaults['h4-color'] = ''; - $defaults['h5-color'] = ''; - $defaults['h6-color'] = ''; - - // Header

. - $defaults['font-family-h1'] = 'inherit'; - $defaults['font-weight-h1'] = 'inherit'; - $defaults['font-extras-h1'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h1'] ) && isset( $astra_options['line-height-h1'] ) ? $astra_options['line-height-h1'] : '1.4', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h1'] ) && isset( $astra_options['text-transform-h1'] ) ? $astra_options['text-transform-h1'] : '', - 'text-decoration' => '', - ); - - // Header

. - $defaults['font-family-h2'] = 'inherit'; - $defaults['font-weight-h2'] = 'inherit'; - $defaults['font-extras-h2'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h2'] ) && isset( $astra_options['line-height-h2'] ) ? $astra_options['line-height-h2'] : '1.25', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h2'] ) && isset( $astra_options['text-transform-h2'] ) ? $astra_options['text-transform-h2'] : '', - 'text-decoration' => '', - ); - - // Header

. - $defaults['font-family-h3'] = 'inherit'; - $defaults['font-weight-h3'] = 'inherit'; - $defaults['font-extras-h3'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h3'] ) && isset( $astra_options['line-height-h3'] ) ? $astra_options['line-height-h3'] : '1.2', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h3'] ) && isset( $astra_options['text-transform-h3'] ) ? $astra_options['text-transform-h3'] : '', - 'text-decoration' => '', - ); - - // Header

. - $defaults['font-family-h4'] = 'inherit'; - $defaults['font-weight-h4'] = 'inherit'; - $defaults['font-extras-h4'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h4'] ) && isset( $astra_options['line-height-h4'] ) ? $astra_options['line-height-h4'] : '1.2', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h4'] ) && isset( $astra_options['text-transform-h4'] ) ? $astra_options['text-transform-h4'] : '', - 'text-decoration' => '', - ); - - // Header

. - $defaults['font-family-h5'] = 'inherit'; - $defaults['font-weight-h5'] = 'inherit'; - $defaults['font-extras-h5'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h5'] ) && isset( $astra_options['line-height-h5'] ) ? $astra_options['line-height-h5'] : '1.2', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h5'] ) && isset( $astra_options['text-transform-h5'] ) ? $astra_options['text-transform-h5'] : '', - 'text-decoration' => '', - ); - - // Header
. - $defaults['font-family-h6'] = 'inherit'; - $defaults['font-weight-h6'] = 'inherit'; - $defaults['font-extras-h6'] = array( - 'line-height' => ! isset( $astra_options['font-extras-h6'] ) && isset( $astra_options['line-height-h6'] ) ? $astra_options['line-height-h6'] : '1.25', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-h6'] ) && isset( $astra_options['text-transform-h6'] ) ? $astra_options['text-transform-h6'] : '', - 'text-decoration' => '', - ); - - /** - * Theme button Font Defaults - */ - $defaults['font-weight-button'] = $apply_new_default_color_typo_values ? '500' : 'inherit'; - $defaults['secondary-font-weight-button'] = $apply_new_default_color_typo_values ? '500' : 'inherit'; - $defaults['font-family-button'] = 'inherit'; - $defaults['secondary-font-family-button'] = 'inherit'; - $defaults['font-size-button'] = array( - 'desktop' => $apply_new_default_color_typo_values ? '16' : '', - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - $defaults['secondary-font-size-button'] = array( - 'desktop' => $apply_new_default_color_typo_values ? '16' : '', - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - - $defaults['font-extras-button'] = array( - 'line-height' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['theme-btn-line-height'] ) ? $astra_options['theme-btn-line-height'] : 1, - 'line-height-unit' => 'em', - 'letter-spacing' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['theme-btn-letter-spacing'] ) ? $astra_options['theme-btn-letter-spacing'] : '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['text-transform-button'] ) ? $astra_options['text-transform-button'] : '', - 'text-decoration' => '', - ); - - $defaults['secondary-font-extras-button'] = array( - 'line-height' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-theme-btn-line-height'] ) ? $astra_options['secondary-theme-btn-line-height'] : 1, - 'line-height-unit' => 'em', - 'letter-spacing' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-theme-btn-letter-spacing'] ) ? $astra_options['secondary-theme-btn-letter-spacing'] : '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-text-transform-button'] ) ? $astra_options['secondary-text-transform-button'] : '', - 'text-decoration' => '', - ); - - return $defaults; - } - - /** - * Load color configs for the Heading Colors. - * - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - * - * @since 2.2.0 - */ - public function customize_register( $wp_customize ) { - - /** - * Register Panel & Sections - */ - require_once ASTRA_THEME_HEADING_COLORS_DIR . 'customizer/class-astra-heading-colors-configs.php';// phpcs:ignore: WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Customizer Preview - * - * @since 2.2.0 - */ - public function preview_scripts() { - /** - * Load unminified if SCRIPT_DEBUG is true. - */ - /* Directory and Extension */ - $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; - $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; - wp_enqueue_script( 'astra-heading-colors-customizer-preview-js', ASTRA_THEME_HEADING_COLORS_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); - - wp_localize_script( - 'astra-heading-colors-customizer-preview-js', - 'astraHeadingColorOptions', - array( - 'maybeApplyHeadingColorForTitle' => astra_has_global_color_format_support(), - ) - ); - - } -} - -/** -* Kicking this off by creating the object of the class. -*/ -new Astra_Heading_Colors_Loader(); + to
+ */ + $defaults['h1-color'] = ''; + $defaults['h2-color'] = ''; + $defaults['h3-color'] = ''; + $defaults['h4-color'] = ''; + $defaults['h5-color'] = ''; + $defaults['h6-color'] = ''; + + // Header

. + $defaults['font-family-h1'] = 'inherit'; + $defaults['font-weight-h1'] = 'inherit'; + $defaults['font-extras-h1'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h1'] ) && isset( $astra_options['line-height-h1'] ) ? $astra_options['line-height-h1'] : '1.4', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h1'] ) && isset( $astra_options['text-transform-h1'] ) ? $astra_options['text-transform-h1'] : '', + 'text-decoration' => '', + ); + + // Header

. + $defaults['font-family-h2'] = 'inherit'; + $defaults['font-weight-h2'] = 'inherit'; + $defaults['font-extras-h2'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h2'] ) && isset( $astra_options['line-height-h2'] ) ? $astra_options['line-height-h2'] : '1.25', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h2'] ) && isset( $astra_options['text-transform-h2'] ) ? $astra_options['text-transform-h2'] : '', + 'text-decoration' => '', + ); + + // Header

. + $defaults['font-family-h3'] = 'inherit'; + $defaults['font-weight-h3'] = 'inherit'; + $defaults['font-extras-h3'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h3'] ) && isset( $astra_options['line-height-h3'] ) ? $astra_options['line-height-h3'] : '1.2', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h3'] ) && isset( $astra_options['text-transform-h3'] ) ? $astra_options['text-transform-h3'] : '', + 'text-decoration' => '', + ); + + // Header

. + $defaults['font-family-h4'] = 'inherit'; + $defaults['font-weight-h4'] = 'inherit'; + $defaults['font-extras-h4'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h4'] ) && isset( $astra_options['line-height-h4'] ) ? $astra_options['line-height-h4'] : '1.2', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h4'] ) && isset( $astra_options['text-transform-h4'] ) ? $astra_options['text-transform-h4'] : '', + 'text-decoration' => '', + ); + + // Header

. + $defaults['font-family-h5'] = 'inherit'; + $defaults['font-weight-h5'] = 'inherit'; + $defaults['font-extras-h5'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h5'] ) && isset( $astra_options['line-height-h5'] ) ? $astra_options['line-height-h5'] : '1.2', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h5'] ) && isset( $astra_options['text-transform-h5'] ) ? $astra_options['text-transform-h5'] : '', + 'text-decoration' => '', + ); + + // Header
. + $defaults['font-family-h6'] = 'inherit'; + $defaults['font-weight-h6'] = 'inherit'; + $defaults['font-extras-h6'] = array( + 'line-height' => ! isset( $astra_options['font-extras-h6'] ) && isset( $astra_options['line-height-h6'] ) ? $astra_options['line-height-h6'] : '1.25', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-h6'] ) && isset( $astra_options['text-transform-h6'] ) ? $astra_options['text-transform-h6'] : '', + 'text-decoration' => '', + ); + + /** + * Theme button Font Defaults + */ + $defaults['font-weight-button'] = $apply_new_default_color_typo_values ? '500' : 'inherit'; + $defaults['secondary-font-weight-button'] = $apply_new_default_color_typo_values ? '500' : 'inherit'; + $defaults['font-family-button'] = 'inherit'; + $defaults['secondary-font-family-button'] = 'inherit'; + $defaults['font-size-button'] = array( + 'desktop' => $apply_new_default_color_typo_values ? '16' : '', + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + $defaults['secondary-font-size-button'] = array( + 'desktop' => $apply_new_default_color_typo_values ? '16' : '', + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + + $defaults['font-extras-button'] = array( + 'line-height' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['theme-btn-line-height'] ) ? $astra_options['theme-btn-line-height'] : 1, + 'line-height-unit' => 'em', + 'letter-spacing' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['theme-btn-letter-spacing'] ) ? $astra_options['theme-btn-letter-spacing'] : '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['font-extras-button'] ) && isset( $astra_options['text-transform-button'] ) ? $astra_options['text-transform-button'] : '', + 'text-decoration' => '', + ); + + $defaults['secondary-font-extras-button'] = array( + 'line-height' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-theme-btn-line-height'] ) ? $astra_options['secondary-theme-btn-line-height'] : 1, + 'line-height-unit' => 'em', + 'letter-spacing' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-theme-btn-letter-spacing'] ) ? $astra_options['secondary-theme-btn-letter-spacing'] : '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['secondary-font-extras-button'] ) && isset( $astra_options['secondary-text-transform-button'] ) ? $astra_options['secondary-text-transform-button'] : '', + 'text-decoration' => '', + ); + + return $defaults; + } + + /** + * Load color configs for the Heading Colors. + * + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + * + * @since 2.2.0 + */ + public function customize_register( $wp_customize ) { + + /** + * Register Panel & Sections + */ + require_once ASTRA_THEME_HEADING_COLORS_DIR . 'customizer/class-astra-heading-colors-configs.php';// phpcs:ignore: WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Customizer Preview + * + * @since 2.2.0 + */ + public function preview_scripts() { + /** + * Load unminified if SCRIPT_DEBUG is true. + */ + /* Directory and Extension */ + $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; + $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; + wp_enqueue_script( 'astra-heading-colors-customizer-preview-js', ASTRA_THEME_HEADING_COLORS_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); + + wp_localize_script( + 'astra-heading-colors-customizer-preview-js', + 'astraHeadingColorOptions', + array( + 'maybeApplyHeadingColorForTitle' => astra_has_global_color_format_support(), + ) + ); + + } +} + +/** +* Kicking this off by creating the object of the class. +*/ +new Astra_Heading_Colors_Loader(); diff --git a/wp-content/themes/astra/inc/addons/heading-colors/customizer/class-astra-heading-colors-configs.php b/wp-content/themes/astra/inc/addons/heading-colors/customizer/class-astra-heading-colors-configs.php index b9455808b..ea0da8929 100644 --- a/wp-content/themes/astra/inc/addons/heading-colors/customizer/class-astra-heading-colors-configs.php +++ b/wp-content/themes/astra/inc/addons/heading-colors/customizer/class-astra-heading-colors-configs.php @@ -1,248 +1,248 @@ - astra_get_option( 'heading-base-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'transport' => 'postMessage', - 'priority' => 5, - 'name' => ASTRA_THEME_SETTINGS . '[heading-base-color]', - 'title' => __( 'Heading (H1-H6)', 'astra' ), - 'section' => $_section, - ), - - /** - * Option: Button Typography Heading - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[button-text-typography]', - 'default' => astra_get_option( 'button-text-typography' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => __( 'Font', 'astra' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'priority' => 18.5, - 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), - ), - - /** - * Option: Outline Button Typography Heading - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', - 'default' => astra_get_option( 'secondary-button-text-typography' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => __( 'Font', 'astra' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'priority' => 10, - 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), - 'context' => Astra_Builder_Helper::$design_tab, - ), - - /** - * Option: Button Font Family - */ - array( - 'name' => 'font-family-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', - 'section' => 'section-buttons', - 'control' => 'ast-font', - 'font_type' => 'ast-font-family', - 'title' => __( 'Font Family', 'astra' ), - 'default' => astra_get_option( 'font-family-button' ), - 'connect' => ASTRA_THEME_SETTINGS . '[font-weight-button]', - 'priority' => 1, - 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), - ), - - /** - * Option: Outline Button Font Family - */ - array( - 'name' => 'secondary-font-family-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', - 'section' => 'section-buttons', - 'control' => 'ast-font', - 'font_type' => 'ast-font-family', - 'title' => __( 'Font Family', 'astra' ), - 'default' => astra_get_option( 'secondary-font-family-button' ), - 'connect' => ASTRA_THEME_SETTINGS . '[secondary-font-weight-button]', - 'priority' => 1, - 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), - ), - - /** - * Option: Button Font Weight - */ - array( - 'name' => 'font-weight-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', - 'section' => 'section-buttons', - 'control' => 'ast-font', - 'font_type' => 'ast-font-weight', - 'title' => __( 'Font Weight', 'astra' ), - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_font_weight' ), - 'default' => astra_get_option( 'font-weight-button' ), - 'connect' => 'font-family-button', - 'priority' => 2, - 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), - ), - - /** - * Option: Button Font Weight - */ - array( - 'name' => 'secondary-font-weight-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', - 'section' => 'section-buttons', - 'control' => 'ast-font', - 'font_type' => 'ast-font-weight', - 'title' => __( 'Font Weight', 'astra' ), - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_font_weight' ), - 'default' => astra_get_option( 'secondary-font-weight-button' ), - 'connect' => 'secondary-font-family-button', - 'priority' => 2, - 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), - ), - - /** - * Option: Button Font Size - */ - - array( - 'name' => 'font-size-button', - 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', - 'type' => 'sub-control', - 'control' => 'ast-responsive-slider', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'title' => __( 'Font Size', 'astra' ), - 'priority' => 3, - 'default' => astra_get_option( 'font-size-button' ), - 'suffix' => array( 'px', 'em' ), - 'input_attrs' => array( - 'px' => array( - 'min' => 0, - 'step' => 1, - 'max' => 200, - ), - 'em' => array( - 'min' => 0, - 'step' => 1, - 'max' => 20, - ), - ), - ), - - /** - * Option: Outline Button Font Size - */ - - array( - 'name' => 'secondary-font-size-button', - 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', - 'type' => 'sub-control', - 'control' => 'ast-responsive-slider', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'title' => __( 'Font Size', 'astra' ), - 'priority' => 3, - 'default' => astra_get_option( 'secondary-font-size-button' ), - 'suffix' => array( 'px', 'em' ), - 'input_attrs' => array( - 'px' => array( - 'min' => 0, - 'step' => 1, - 'max' => 200, - ), - 'em' => array( - 'min' => 0, - 'step' => 1, - 'max' => 20, - ), - ), - ), - - /** - * Option: Button Font Extras - */ - array( - 'name' => 'font-extras-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', - 'control' => 'ast-font-extras', - 'section' => 'section-buttons', - 'priority' => 4, - 'default' => astra_get_option( 'font-extras-button' ), - ), - - /** - * Option: Outline Button Font Extras - */ - array( - 'name' => 'secondary-font-extras-button', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', - 'control' => 'ast-font-extras', - 'section' => 'section-buttons', - 'priority' => 4, - 'default' => astra_get_option( 'secondary-font-extras-button' ), - ), - ); - - return array_merge( $configurations, $_configs ); - - } - } -} - -new Astra_Heading_Colors_Configs(); + astra_get_option( 'heading-base-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'transport' => 'postMessage', + 'priority' => 5, + 'name' => ASTRA_THEME_SETTINGS . '[heading-base-color]', + 'title' => __( 'Heading (H1-H6)', 'astra' ), + 'section' => $_section, + ), + + /** + * Option: Button Typography Heading + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[button-text-typography]', + 'default' => astra_get_option( 'button-text-typography' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => __( 'Font', 'astra' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'priority' => 18.5, + 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), + ), + + /** + * Option: Outline Button Typography Heading + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', + 'default' => astra_get_option( 'secondary-button-text-typography' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => __( 'Font', 'astra' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'priority' => 10, + 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), + 'context' => Astra_Builder_Helper::$design_tab, + ), + + /** + * Option: Button Font Family + */ + array( + 'name' => 'font-family-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', + 'section' => 'section-buttons', + 'control' => 'ast-font', + 'font_type' => 'ast-font-family', + 'title' => __( 'Font Family', 'astra' ), + 'default' => astra_get_option( 'font-family-button' ), + 'connect' => ASTRA_THEME_SETTINGS . '[font-weight-button]', + 'priority' => 1, + 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), + ), + + /** + * Option: Outline Button Font Family + */ + array( + 'name' => 'secondary-font-family-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', + 'section' => 'section-buttons', + 'control' => 'ast-font', + 'font_type' => 'ast-font-family', + 'title' => __( 'Font Family', 'astra' ), + 'default' => astra_get_option( 'secondary-font-family-button' ), + 'connect' => ASTRA_THEME_SETTINGS . '[secondary-font-weight-button]', + 'priority' => 1, + 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), + ), + + /** + * Option: Button Font Weight + */ + array( + 'name' => 'font-weight-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', + 'section' => 'section-buttons', + 'control' => 'ast-font', + 'font_type' => 'ast-font-weight', + 'title' => __( 'Font Weight', 'astra' ), + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_font_weight' ), + 'default' => astra_get_option( 'font-weight-button' ), + 'connect' => 'font-family-button', + 'priority' => 2, + 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), + ), + + /** + * Option: Button Font Weight + */ + array( + 'name' => 'secondary-font-weight-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', + 'section' => 'section-buttons', + 'control' => 'ast-font', + 'font_type' => 'ast-font-weight', + 'title' => __( 'Font Weight', 'astra' ), + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_font_weight' ), + 'default' => astra_get_option( 'secondary-font-weight-button' ), + 'connect' => 'secondary-font-family-button', + 'priority' => 2, + 'divider' => array( 'ast_class' => 'ast-sub-bottom-dotted-divider' ), + ), + + /** + * Option: Button Font Size + */ + + array( + 'name' => 'font-size-button', + 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', + 'type' => 'sub-control', + 'control' => 'ast-responsive-slider', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'title' => __( 'Font Size', 'astra' ), + 'priority' => 3, + 'default' => astra_get_option( 'font-size-button' ), + 'suffix' => array( 'px', 'em' ), + 'input_attrs' => array( + 'px' => array( + 'min' => 0, + 'step' => 1, + 'max' => 200, + ), + 'em' => array( + 'min' => 0, + 'step' => 1, + 'max' => 20, + ), + ), + ), + + /** + * Option: Outline Button Font Size + */ + + array( + 'name' => 'secondary-font-size-button', + 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', + 'type' => 'sub-control', + 'control' => 'ast-responsive-slider', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'title' => __( 'Font Size', 'astra' ), + 'priority' => 3, + 'default' => astra_get_option( 'secondary-font-size-button' ), + 'suffix' => array( 'px', 'em' ), + 'input_attrs' => array( + 'px' => array( + 'min' => 0, + 'step' => 1, + 'max' => 200, + ), + 'em' => array( + 'min' => 0, + 'step' => 1, + 'max' => 20, + ), + ), + ), + + /** + * Option: Button Font Extras + */ + array( + 'name' => 'font-extras-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[button-text-typography]', + 'control' => 'ast-font-extras', + 'section' => 'section-buttons', + 'priority' => 4, + 'default' => astra_get_option( 'font-extras-button' ), + ), + + /** + * Option: Outline Button Font Extras + */ + array( + 'name' => 'secondary-font-extras-button', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[secondary-button-text-typography]', + 'control' => 'ast-font-extras', + 'section' => 'section-buttons', + 'priority' => 4, + 'default' => astra_get_option( 'secondary-font-extras-button' ), + ), + ); + + return array_merge( $configurations, $_configs ); + + } + } +} + +new Astra_Heading_Colors_Configs(); diff --git a/wp-content/themes/astra/inc/addons/transparent-header/class-astra-ext-transparent-header.php b/wp-content/themes/astra/inc/addons/transparent-header/class-astra-ext-transparent-header.php index 646e58ee9..13170e195 100644 --- a/wp-content/themes/astra/inc/addons/transparent-header/class-astra-ext-transparent-header.php +++ b/wp-content/themes/astra/inc/addons/transparent-header/class-astra-ext-transparent-header.php @@ -1,64 +1,64 @@ - 150, - 'tablet' => 120, - 'mobile' => 100, - ); - $defaults['transparent-header-enable'] = 0; - $defaults['transparent-header-disable-archive'] = 1; - $defaults['transparent-header-disable-latest-posts-index'] = 1; - $defaults['transparent-header-on-devices'] = 'both'; - $defaults['transparent-header-main-sep'] = ''; - $defaults['transparent-header-main-sep-color'] = ''; - - /** - * Transparent Header - */ - $defaults['transparent-header-bg-color'] = ''; - $defaults['transparent-header-color-site-title'] = ''; - $defaults['transparent-header-color-h-site-title'] = ''; - $defaults['transparent-menu-bg-color'] = ''; - $defaults['transparent-menu-color'] = ''; - $defaults['transparent-menu-h-color'] = ''; - $defaults['transparent-submenu-bg-color'] = ''; - $defaults['transparent-submenu-color'] = ''; - $defaults['transparent-submenu-h-color'] = ''; - $defaults['transparent-header-logo-color'] = ''; - - /** - * Transparent Header Responsive Colors - */ - $defaults['transparent-header-bg-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-header-color-site-title-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-header-color-h-site-title-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-menu-bg-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-menu-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-menu-h-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-submenu-bg-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-submenu-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-submenu-h-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - $defaults['transparent-content-section-text-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - $defaults['transparent-content-section-link-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - $defaults['transparent-content-section-link-h-color-responsive'] = array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ); - - return $defaults; - } - - /** - * Add postMessage support for site title and description for the Theme Customizer. - * - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - */ - public function customize_register( $wp_customize ) { - - // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - /** - * Register Panel & Sections - */ - require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/class-astra-transparent-header-panels-and-sections.php'; - - /** - * Sections - */ - require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/sections/class-astra-customizer-colors-transparent-header-configs.php'; - // Check Transparent Header is activated. - require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/sections/class-astra-customizer-transparent-header-configs.php'; - // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Customizer Preview - */ - public function preview_scripts() { - /** - * Load unminified if SCRIPT_DEBUG is true. - */ - /* Directory and Extension */ - $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; - $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; - wp_enqueue_script( 'astra-transparent-header-customizer-preview-js', ASTRA_THEME_TRANSPARENT_HEADER_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); - - // Localize variables for further JS. - wp_localize_script( - 'astra-transparent-header-customizer-preview-js', - 'AstraBuilderTransparentData', - array( - 'is_astra_hf_builder_active' => Astra_Builder_Helper::$is_header_footer_builder_active, - 'is_flex_based_css' => Astra_Builder_Helper::apply_flex_based_css(), - ) - ); - } - } -} - -/** -* Kicking this off by calling 'get_instance()' method -*/ -Astra_Ext_Transparent_Header_Loader::get_instance(); + 150, + 'tablet' => 120, + 'mobile' => 100, + ); + $defaults['transparent-header-enable'] = 0; + $defaults['transparent-header-disable-archive'] = 1; + $defaults['transparent-header-disable-latest-posts-index'] = 1; + $defaults['transparent-header-on-devices'] = 'both'; + $defaults['transparent-header-main-sep'] = ''; + $defaults['transparent-header-main-sep-color'] = ''; + + /** + * Transparent Header + */ + $defaults['transparent-header-bg-color'] = ''; + $defaults['transparent-header-color-site-title'] = ''; + $defaults['transparent-header-color-h-site-title'] = ''; + $defaults['transparent-menu-bg-color'] = ''; + $defaults['transparent-menu-color'] = ''; + $defaults['transparent-menu-h-color'] = ''; + $defaults['transparent-submenu-bg-color'] = ''; + $defaults['transparent-submenu-color'] = ''; + $defaults['transparent-submenu-h-color'] = ''; + $defaults['transparent-header-logo-color'] = ''; + + /** + * Transparent Header Responsive Colors + */ + $defaults['transparent-header-bg-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-header-color-site-title-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-header-color-h-site-title-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-menu-bg-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-menu-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-menu-h-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-submenu-bg-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-submenu-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-submenu-h-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + $defaults['transparent-content-section-text-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + $defaults['transparent-content-section-link-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + $defaults['transparent-content-section-link-h-color-responsive'] = array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ); + + return $defaults; + } + + /** + * Add postMessage support for site title and description for the Theme Customizer. + * + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + */ + public function customize_register( $wp_customize ) { + + // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + /** + * Register Panel & Sections + */ + require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/class-astra-transparent-header-panels-and-sections.php'; + + /** + * Sections + */ + require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/sections/class-astra-customizer-colors-transparent-header-configs.php'; + // Check Transparent Header is activated. + require_once ASTRA_THEME_TRANSPARENT_HEADER_DIR . 'classes/sections/class-astra-customizer-transparent-header-configs.php'; + // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Customizer Preview + */ + public function preview_scripts() { + /** + * Load unminified if SCRIPT_DEBUG is true. + */ + /* Directory and Extension */ + $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; + $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; + wp_enqueue_script( 'astra-transparent-header-customizer-preview-js', ASTRA_THEME_TRANSPARENT_HEADER_URI . 'assets/js/' . $dir_name . '/customizer-preview' . $file_prefix . '.js', array( 'customize-preview', 'astra-customizer-preview-js' ), ASTRA_THEME_VERSION, true ); + + // Localize variables for further JS. + wp_localize_script( + 'astra-transparent-header-customizer-preview-js', + 'AstraBuilderTransparentData', + array( + 'is_astra_hf_builder_active' => Astra_Builder_Helper::$is_header_footer_builder_active, + 'is_flex_based_css' => Astra_Builder_Helper::apply_flex_based_css(), + ) + ); + } + } +} + +/** +* Kicking this off by calling 'get_instance()' method +*/ +Astra_Ext_Transparent_Header_Loader::get_instance(); diff --git a/wp-content/themes/astra/inc/addons/transparent-header/classes/dynamic-css/dynamic.css.php b/wp-content/themes/astra/inc/addons/transparent-header/classes/dynamic-css/dynamic.css.php index a8b75379f..05f61ebaf 100644 --- a/wp-content/themes/astra/inc/addons/transparent-header/classes/dynamic-css/dynamic.css.php +++ b/wp-content/themes/astra/inc/addons/transparent-header/classes/dynamic-css/dynamic.css.php @@ -1,545 +1,545 @@ - array( - 'display' => 'none', - ), - ); - $css .= astra_parse_css( $css_output ); - } - - // Desktop Transparent Heder Logo Width. - $css_output = array( - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( - 'width' => astra_get_css_value( $transparent_header_logo_width['desktop'], 'px' ), - 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['desktop-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['desktop-svg-height'] : '', 'px' ), - ), - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( - ' max-width' => astra_get_css_value( $transparent_header_logo_width['desktop'], 'px' ), - ), - ); - $css .= astra_parse_css( $css_output ); - - // Tablet Transparent Heder Logo Width. - $tablet_css_output = array( - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( - 'width' => astra_get_css_value( $transparent_header_logo_width['tablet'], 'px' ), - 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['tablet-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['tablet-svg-height'] : '', 'px' ), - ), - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( - ' max-width' => astra_get_css_value( $transparent_header_logo_width['tablet'], 'px' ), - ), - ); - $css .= astra_parse_css( $tablet_css_output, '', astra_get_tablet_breakpoint() ); - - // Mobile Transparent Heder Logo Width. - $mobile_css_output = array( - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( - 'width' => astra_get_css_value( $transparent_header_logo_width['mobile'], 'px' ), - 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['mobile-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['mobile-svg-height'] : '', 'px' ), - ), - '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( - ' max-width' => astra_get_css_value( $transparent_header_logo_width['mobile'], 'px' ), - ), - ); - $css .= astra_parse_css( $mobile_css_output, '', astra_get_mobile_breakpoint( 1 ) ); - - $transparent_header_base = array( - '.ast-theme-transparent-header #masthead' => array( - 'position' => 'absolute', - 'left' => '0', - 'right' => '0', - ), - - '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar' => array( - 'background' => 'none', - ), - - 'body.elementor-editor-active.ast-theme-transparent-header #masthead, .fl-builder-edit .ast-theme-transparent-header #masthead, body.vc_editor.ast-theme-transparent-header #masthead, body.brz-ed.ast-theme-transparent-header #masthead' => array( - 'z-index' => '0', - ), - - '.ast-header-break-point.ast-replace-site-logo-transparent.ast-theme-transparent-header .custom-mobile-logo-link' => array( - 'display' => 'none', - ), - - '.ast-header-break-point.ast-replace-site-logo-transparent.ast-theme-transparent-header .transparent-custom-logo' => array( - 'display' => 'inline-block', - ), - - '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar' => array( - 'background-image' => 'none', - 'background-color' => 'transparent', - ), - - '.ast-theme-transparent-header .ast-below-header' => array( - 'background-image' => 'none', - 'background-color' => 'transparent', - ), - ); - - /** - * Transparent Header Colors - */ - $transparent_header_desktop = array( - - '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( - 'background-color' => esc_attr( $transparent_bg_color_desktop ), - ), - '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( - 'background-color' => esc_attr( $transparent_bg_color_desktop ), - ), - - '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( - 'background-color' => esc_attr( $transparent_bg_color_desktop ), - ), - - '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited' => array( - 'color' => esc_attr( $transparent_color_site_title_desktop ), - ), - '.ast-theme-transparent-header .site-header .site-title a:hover' => array( - 'color' => esc_attr( $transparent_color_h_site_title_desktop ), - ), - - '.ast-theme-transparent-header .site-header .site-description' => array( - 'color' => esc_attr( $transparent_color_site_title_desktop ), - ), - - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'background-color' => esc_attr( $transparent_menu_bg_color_desktop ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( - 'background-color' => esc_attr( $transparent_sub_menu_bg_color_desktop ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_color_desktop ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_h_color_desktop ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-above-header-navigation a, .ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation a, .ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation > ul.ast-above-header-menu > .menu-item-has-children:not(.current-menu-item) > .ast-menu-toggle, .ast-theme-transparent-header .ast-below-header-menu, .ast-theme-transparent-header .ast-below-header-menu a, .ast-header-break-point.ast-theme-transparent-header .ast-below-header-menu a, .ast-header-break-point.ast-theme-transparent-header .ast-below-header-menu, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'color' => esc_attr( $transparent_menu_color_desktop ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( - 'color' => esc_attr( $transparent_menu_h_color_desktop ), - ), - // Content Section text color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( - 'color' => esc_attr( $transparent_content_section_text_color_desktop ), - ), - // Content Section link color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element a' => array( - 'color' => esc_attr( $transparent_content_section_link_color_desktop ), - ), - // Content Section link hover color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element a:hover' => array( - 'color' => esc_attr( $transparent_content_section_link_h_color_desktop ), - ), - ); - - if ( astra_has_submenu_transperent_styling() ) { - $transparent_header_desktop['.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link'] = array( - 'background-color' => 'transparent', - ); - } - $transparent_header_tablet = array( - - '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( - 'background-color' => esc_attr( $transparent_bg_color_tablet ), - ), - '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( - 'background-color' => esc_attr( $transparent_bg_color_tablet ), - ), - '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( - 'background-color' => esc_attr( $transparent_bg_color_tablet ), - ), - - '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:hover, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:focus, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:visited' => array( - 'color' => esc_attr( $transparent_color_site_title_tablet ), - ), - '.ast-theme-transparent-header .site-header .site-title a:hover' => array( - 'color' => esc_attr( $transparent_color_h_site_title_tablet ), - ), - - '.ast-theme-transparent-header .site-header .site-description' => array( - 'color' => esc_attr( $transparent_color_site_title_tablet ), - ), - - '.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'background-color' => esc_attr( $transparent_menu_bg_color_tablet ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( - 'background-color' => esc_attr( $transparent_sub_menu_bg_color_tablet ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_color_tablet ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_h_color_tablet ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'color' => esc_attr( $transparent_menu_color_tablet ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( - 'color' => esc_attr( $transparent_menu_h_color_tablet ), - ), - // Content Section text color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( - 'color' => esc_attr( $transparent_content_section_text_color_tablet ), - ), - // Content Section link color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a' => array( - 'color' => esc_attr( $transparent_content_section_link_color_tablet ), - ), - // Content Section link hover color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover' => array( - 'color' => esc_attr( $transparent_content_section_link_h_color_tablet ), - ), - ); - - $transparent_header_mobile = array( - - '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( - 'background-color' => esc_attr( $transparent_bg_color_mobile ), - ), - '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( - 'background-color' => esc_attr( $transparent_bg_color_mobile ), - ), - - '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( - 'background-color' => esc_attr( $transparent_bg_color_mobile ), - ), - - '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:hover, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:focus, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:visited' => array( - 'color' => esc_attr( $transparent_color_site_title_mobile ), - ), - '.ast-theme-transparent-header .site-header .site-title a:hover' => array( - 'color' => esc_attr( $transparent_color_h_site_title_mobile ), - ), - - '.ast-theme-transparent-header .site-header .site-description' => array( - 'color' => esc_attr( $transparent_color_site_title_mobile ), - ), - - '.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'background-color' => esc_attr( $transparent_menu_bg_color_mobile ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( - 'background-color' => esc_attr( $transparent_sub_menu_bg_color_mobile ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_color_mobile ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( - 'color' => esc_attr( $transparent_sub_menu_h_color_mobile ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-link' => array( - 'color' => esc_attr( $transparent_menu_color_mobile ), - ), - '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( - 'color' => esc_attr( $transparent_menu_h_color_mobile ), - ), - // Content Section text color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( - 'color' => esc_attr( $transparent_content_section_text_color_mobile ), - ), - // Content Section link color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a' => array( - 'color' => esc_attr( $transparent_content_section_link_color_mobile ), - ), - // Content Section link hover color. - '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover' => array( - 'color' => esc_attr( $transparent_content_section_link_h_color_mobile ), - ), - ); - - /* Parse CSS from array() */ - if ( 'both' === $transparent_header_devices || 'desktop' === $transparent_header_devices ) { - $css .= astra_parse_css( $transparent_header_base, strval( astra_get_tablet_breakpoint() ) ); - - // If Transparent header is active on mobile + desktop, enqueue CSS without media queeries. - // If only for desktop add media query for the transparent header. - if ( 'both' === $transparent_header_devices ) { - $css .= astra_parse_css( $transparent_header_desktop ); - } else { - $css .= astra_parse_css( $transparent_header_desktop, astra_get_tablet_breakpoint( '', 1 ) ); - } - } - - if ( 'mobile' === $transparent_header_devices ) { - $css .= astra_parse_css( - array( - '.transparent-custom-logo' => array( - 'display' => 'none', - ), - ), - astra_get_tablet_breakpoint() - ); - - $css .= astra_parse_css( - array( - '.transparent-custom-logo' => array( - 'display' => 'block', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - - $css .= astra_parse_css( - array( - '.ast-transparent-desktop-logo' => array( - 'display' => 'none', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - } - - if ( 'desktop' === $transparent_header_devices ) { - $css .= astra_parse_css( - array( - '.transparent-custom-logo' => array( - 'display' => 'none', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - - $css .= astra_parse_css( - array( - '.ast-transparent-mobile-logo' => array( - 'display' => 'none', - ), - ), - astra_get_tablet_breakpoint() - ); - - $css .= astra_parse_css( - array( - '.ast-transparent-mobile-logo' => array( - 'display' => 'block', - ), - ), - '', - astra_get_tablet_breakpoint( 1 ) - ); - } - - if ( 'both' === $transparent_header_devices || 'mobile' === $transparent_header_devices ) { - $css .= astra_parse_css( $transparent_header_base, '', astra_get_tablet_breakpoint() ); - $css .= astra_parse_css( $transparent_header_tablet, '', astra_get_tablet_breakpoint() ); - $css .= astra_parse_css( $transparent_header_mobile, '', astra_get_mobile_breakpoint() ); - } - - $mobile_header_type = astra_get_option( 'mobile-header-type' ); - - if ( 'dropdown' === $mobile_header_type || is_customize_preview() ) { - $header_child_selector = '[CLASS*="-header-wrap"]:nth-last-child(2) > [CLASS*="-header-bar"]'; - } else { - $header_child_selector = '[CLASS*="-header-wrap"]:last-child > [CLASS*="-header-bar"]'; - } - - if ( 'both' === $transparent_header_devices ) { - - $selector = '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar'; - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $selector = '.ast-theme-transparent-header #ast-desktop-header > ' . $header_child_selector . ', .ast-theme-transparent-header.ast-header-break-point #ast-mobile-header > ' . $header_child_selector; - } - - if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { - $css .= astra_parse_css( - array( - $selector => array( - 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), - 'border-bottom-style' => 'solid', - 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), - ), - ) - ); - } else { - $css .= astra_parse_css( - array( - $selector => array( - 'border-bottom-style' => 'none', - ), - ) - ); - } - } - - if ( 'mobile' === $transparent_header_devices ) { - - $selector = '.ast-theme-transparent-header.ast-header-break-point .main-header-bar'; - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $selector = '.ast-theme-transparent-header.ast-header-break-point #ast-mobile-header > ' . $header_child_selector; - } - - if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { - $css .= astra_parse_css( - array( - $selector => array( - 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), - 'border-bottom-style' => 'solid', - 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), - ), - ), - '', - astra_get_tablet_breakpoint() - ); - } else { - $css .= astra_parse_css( - array( - $selector => array( - 'border-bottom-style' => 'none', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - } - } - - if ( 'desktop' === $transparent_header_devices ) { - - $selector = '.ast-theme-transparent-header .main-header-bar'; - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $selector = '.ast-theme-transparent-header #ast-desktop-header > ' . $header_child_selector; - } - - if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { - $transparent_header_base = array( - $selector => array( - 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), - 'border-bottom-style' => 'solid', - 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), - ), - ); - } else { - $transparent_header_base = array( - $selector => array( - 'border-bottom-style' => 'none', - ), - ); - } - - $css .= astra_parse_css( $transparent_header_base, strval( astra_get_tablet_breakpoint() ) ); - } - - $dynamic_css .= $css; - - return $dynamic_css; -} + array( + 'display' => 'none', + ), + ); + $css .= astra_parse_css( $css_output ); + } + + // Desktop Transparent Heder Logo Width. + $css_output = array( + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( + 'width' => astra_get_css_value( $transparent_header_logo_width['desktop'], 'px' ), + 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['desktop-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['desktop-svg-height'] : '', 'px' ), + ), + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( + ' max-width' => astra_get_css_value( $transparent_header_logo_width['desktop'], 'px' ), + ), + ); + $css .= astra_parse_css( $css_output ); + + // Tablet Transparent Heder Logo Width. + $tablet_css_output = array( + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( + 'width' => astra_get_css_value( $transparent_header_logo_width['tablet'], 'px' ), + 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['tablet-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['tablet-svg-height'] : '', 'px' ), + ), + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( + ' max-width' => astra_get_css_value( $transparent_header_logo_width['tablet'], 'px' ), + ), + ); + $css .= astra_parse_css( $tablet_css_output, '', astra_get_tablet_breakpoint() ); + + // Mobile Transparent Heder Logo Width. + $mobile_css_output = array( + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo .astra-logo-svg' => array( + 'width' => astra_get_css_value( $transparent_header_logo_width['mobile'], 'px' ), + 'height' => astra_get_css_value( ( ! empty( $transparent_header_logo_width['mobile-svg-height'] ) && ! is_customize_preview() ) ? $transparent_header_logo_width['mobile-svg-height'] : '', 'px' ), + ), + '.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img' => array( + ' max-width' => astra_get_css_value( $transparent_header_logo_width['mobile'], 'px' ), + ), + ); + $css .= astra_parse_css( $mobile_css_output, '', astra_get_mobile_breakpoint( 1 ) ); + + $transparent_header_base = array( + '.ast-theme-transparent-header #masthead' => array( + 'position' => 'absolute', + 'left' => '0', + 'right' => '0', + ), + + '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar' => array( + 'background' => 'none', + ), + + 'body.elementor-editor-active.ast-theme-transparent-header #masthead, .fl-builder-edit .ast-theme-transparent-header #masthead, body.vc_editor.ast-theme-transparent-header #masthead, body.brz-ed.ast-theme-transparent-header #masthead' => array( + 'z-index' => '0', + ), + + '.ast-header-break-point.ast-replace-site-logo-transparent.ast-theme-transparent-header .custom-mobile-logo-link' => array( + 'display' => 'none', + ), + + '.ast-header-break-point.ast-replace-site-logo-transparent.ast-theme-transparent-header .transparent-custom-logo' => array( + 'display' => 'inline-block', + ), + + '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar' => array( + 'background-image' => 'none', + 'background-color' => 'transparent', + ), + + '.ast-theme-transparent-header .ast-below-header' => array( + 'background-image' => 'none', + 'background-color' => 'transparent', + ), + ); + + /** + * Transparent Header Colors + */ + $transparent_header_desktop = array( + + '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( + 'background-color' => esc_attr( $transparent_bg_color_desktop ), + ), + '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( + 'background-color' => esc_attr( $transparent_bg_color_desktop ), + ), + + '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( + 'background-color' => esc_attr( $transparent_bg_color_desktop ), + ), + + '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited' => array( + 'color' => esc_attr( $transparent_color_site_title_desktop ), + ), + '.ast-theme-transparent-header .site-header .site-title a:hover' => array( + 'color' => esc_attr( $transparent_color_h_site_title_desktop ), + ), + + '.ast-theme-transparent-header .site-header .site-description' => array( + 'color' => esc_attr( $transparent_color_site_title_desktop ), + ), + + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'background-color' => esc_attr( $transparent_menu_bg_color_desktop ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( + 'background-color' => esc_attr( $transparent_sub_menu_bg_color_desktop ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_color_desktop ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_h_color_desktop ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-above-header-navigation a, .ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation a, .ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation > ul.ast-above-header-menu > .menu-item-has-children:not(.current-menu-item) > .ast-menu-toggle, .ast-theme-transparent-header .ast-below-header-menu, .ast-theme-transparent-header .ast-below-header-menu a, .ast-header-break-point.ast-theme-transparent-header .ast-below-header-menu a, .ast-header-break-point.ast-theme-transparent-header .ast-below-header-menu, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'color' => esc_attr( $transparent_menu_color_desktop ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( + 'color' => esc_attr( $transparent_menu_h_color_desktop ), + ), + // Content Section text color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( + 'color' => esc_attr( $transparent_content_section_text_color_desktop ), + ), + // Content Section link color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element a' => array( + 'color' => esc_attr( $transparent_content_section_link_color_desktop ), + ), + // Content Section link hover color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element a:hover' => array( + 'color' => esc_attr( $transparent_content_section_link_h_color_desktop ), + ), + ); + + if ( astra_has_submenu_transperent_styling() ) { + $transparent_header_desktop['.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link'] = array( + 'background-color' => 'transparent', + ); + } + $transparent_header_tablet = array( + + '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( + 'background-color' => esc_attr( $transparent_bg_color_tablet ), + ), + '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( + 'background-color' => esc_attr( $transparent_bg_color_tablet ), + ), + '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( + 'background-color' => esc_attr( $transparent_bg_color_tablet ), + ), + + '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:hover, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:focus, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:visited' => array( + 'color' => esc_attr( $transparent_color_site_title_tablet ), + ), + '.ast-theme-transparent-header .site-header .site-title a:hover' => array( + 'color' => esc_attr( $transparent_color_h_site_title_tablet ), + ), + + '.ast-theme-transparent-header .site-header .site-description' => array( + 'color' => esc_attr( $transparent_color_site_title_tablet ), + ), + + '.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'background-color' => esc_attr( $transparent_menu_bg_color_tablet ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( + 'background-color' => esc_attr( $transparent_sub_menu_bg_color_tablet ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_color_tablet ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_h_color_tablet ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'color' => esc_attr( $transparent_menu_color_tablet ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( + 'color' => esc_attr( $transparent_menu_h_color_tablet ), + ), + // Content Section text color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( + 'color' => esc_attr( $transparent_content_section_text_color_tablet ), + ), + // Content Section link color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a' => array( + 'color' => esc_attr( $transparent_content_section_link_color_tablet ), + ), + // Content Section link hover color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover' => array( + 'color' => esc_attr( $transparent_content_section_link_h_color_tablet ), + ), + ); + + $transparent_header_mobile = array( + + '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar' => array( + 'background-color' => esc_attr( $transparent_bg_color_mobile ), + ), + '.ast-theme-transparent-header .main-header-bar .ast-search-menu-icon form' => array( + 'background-color' => esc_attr( $transparent_bg_color_mobile ), + ), + + '.ast-theme-transparent-header .ast-above-header, .ast-theme-transparent-header .ast-above-header.ast-above-header-bar, .ast-theme-transparent-header .ast-below-header, .ast-header-break-point.ast-theme-transparent-header .ast-above-header, .ast-header-break-point.ast-theme-transparent-header .ast-below-header' => array( + 'background-color' => esc_attr( $transparent_bg_color_mobile ), + ), + + '.ast-theme-transparent-header .site-title a, .ast-theme-transparent-header .site-title a:focus, .ast-theme-transparent-header .site-title a:hover, .ast-theme-transparent-header .site-title a:visited, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:hover, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:focus, .ast-theme-transparent-header .ast-builder-layout-element .ast-site-identity .site-title a:visited' => array( + 'color' => esc_attr( $transparent_color_site_title_mobile ), + ), + '.ast-theme-transparent-header .site-header .site-title a:hover' => array( + 'color' => esc_attr( $transparent_color_h_site_title_mobile ), + ), + + '.ast-theme-transparent-header .site-header .site-description' => array( + 'color' => esc_attr( $transparent_color_site_title_mobile ), + ), + + '.ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu .sub-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .ast-builder-menu .main-header-bar-wrap .main-header-menu, .ast-flyout-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-fullscreen-menu-enable.ast-header-break-point.ast-theme-transparent-header .main-header-bar-navigation .site-navigation, .ast-flyout-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap .ast-above-header-navigation, .ast-flyout-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap .ast-below-header-actual-nav, .ast-fullscreen-above-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-above-header-navigation-wrap, .ast-fullscreen-below-menu-enable.ast-header-break-point.ast-theme-transparent-header .ast-below-header-navigation-wrap, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'background-color' => esc_attr( $transparent_menu_bg_color_mobile ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .ast-builder-menu .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header.astra-hfb-header .ast-builder-menu [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.astra-hfb-header .ast-builder-menu .main-header-bar-navigation [CLASS*="ast-builder-menu-"] .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu' => array( + 'background-color' => esc_attr( $transparent_sub_menu_bg_color_mobile ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_color_mobile ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-link:hover,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .menu-item,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .menu-link,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.current-menu-item > .ast-menu-toggle,.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item.focus > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item .sub-menu .menu-item:hover > .menu-link, .ast-header-break-point.ast-flyout-menu-enable.ast-header-break-point .main-header-bar-navigation .main-header-menu .menu-item .sub-menu .menu-link' => array( + 'color' => esc_attr( $transparent_sub_menu_h_color_mobile ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-link, .ast-theme-transparent-header .ast-masthead-custom-menu-items, .ast-theme-transparent-header .ast-masthead-custom-menu-items a, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-link' => array( + 'color' => esc_attr( $transparent_menu_color_mobile ), + ), + '.ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .menu-item:hover > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .focus > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header .ast-builder-menu .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .menu-link, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-item > .ast-menu-toggle, .ast-theme-transparent-header [CLASS*="ast-builder-menu-"] .main-header-menu .current-menu-ancestor > .ast-menu-toggle, .ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-item > .menu-link, .ast-theme-transparent-header .main-header-menu .current-menu-ancestor > .menu-link' => array( + 'color' => esc_attr( $transparent_menu_h_color_mobile ), + ), + // Content Section text color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget-title, .ast-theme-transparent-header .site-header-section [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( + 'color' => esc_attr( $transparent_content_section_text_color_mobile ), + ), + // Content Section link color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a' => array( + 'color' => esc_attr( $transparent_content_section_link_color_mobile ), + ), + // Content Section link hover color. + '.ast-theme-transparent-header div.ast-masthead-custom-menu-items a:hover, .ast-theme-transparent-header div.ast-masthead-custom-menu-items .widget a:hover' => array( + 'color' => esc_attr( $transparent_content_section_link_h_color_mobile ), + ), + ); + + /* Parse CSS from array() */ + if ( 'both' === $transparent_header_devices || 'desktop' === $transparent_header_devices ) { + $css .= astra_parse_css( $transparent_header_base, strval( astra_get_tablet_breakpoint() ) ); + + // If Transparent header is active on mobile + desktop, enqueue CSS without media queeries. + // If only for desktop add media query for the transparent header. + if ( 'both' === $transparent_header_devices ) { + $css .= astra_parse_css( $transparent_header_desktop ); + } else { + $css .= astra_parse_css( $transparent_header_desktop, astra_get_tablet_breakpoint( '', 1 ) ); + } + } + + if ( 'mobile' === $transparent_header_devices ) { + $css .= astra_parse_css( + array( + '.transparent-custom-logo' => array( + 'display' => 'none', + ), + ), + astra_get_tablet_breakpoint() + ); + + $css .= astra_parse_css( + array( + '.transparent-custom-logo' => array( + 'display' => 'block', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + + $css .= astra_parse_css( + array( + '.ast-transparent-desktop-logo' => array( + 'display' => 'none', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + } + + if ( 'desktop' === $transparent_header_devices ) { + $css .= astra_parse_css( + array( + '.transparent-custom-logo' => array( + 'display' => 'none', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + + $css .= astra_parse_css( + array( + '.ast-transparent-mobile-logo' => array( + 'display' => 'none', + ), + ), + astra_get_tablet_breakpoint() + ); + + $css .= astra_parse_css( + array( + '.ast-transparent-mobile-logo' => array( + 'display' => 'block', + ), + ), + '', + astra_get_tablet_breakpoint( 1 ) + ); + } + + if ( 'both' === $transparent_header_devices || 'mobile' === $transparent_header_devices ) { + $css .= astra_parse_css( $transparent_header_base, '', astra_get_tablet_breakpoint() ); + $css .= astra_parse_css( $transparent_header_tablet, '', astra_get_tablet_breakpoint() ); + $css .= astra_parse_css( $transparent_header_mobile, '', astra_get_mobile_breakpoint() ); + } + + $mobile_header_type = astra_get_option( 'mobile-header-type' ); + + if ( 'dropdown' === $mobile_header_type || is_customize_preview() ) { + $header_child_selector = '[CLASS*="-header-wrap"]:nth-last-child(2) > [CLASS*="-header-bar"]'; + } else { + $header_child_selector = '[CLASS*="-header-wrap"]:last-child > [CLASS*="-header-bar"]'; + } + + if ( 'both' === $transparent_header_devices ) { + + $selector = '.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar'; + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $selector = '.ast-theme-transparent-header #ast-desktop-header > ' . $header_child_selector . ', .ast-theme-transparent-header.ast-header-break-point #ast-mobile-header > ' . $header_child_selector; + } + + if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { + $css .= astra_parse_css( + array( + $selector => array( + 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), + 'border-bottom-style' => 'solid', + 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), + ), + ) + ); + } else { + $css .= astra_parse_css( + array( + $selector => array( + 'border-bottom-style' => 'none', + ), + ) + ); + } + } + + if ( 'mobile' === $transparent_header_devices ) { + + $selector = '.ast-theme-transparent-header.ast-header-break-point .main-header-bar'; + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $selector = '.ast-theme-transparent-header.ast-header-break-point #ast-mobile-header > ' . $header_child_selector; + } + + if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { + $css .= astra_parse_css( + array( + $selector => array( + 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), + 'border-bottom-style' => 'solid', + 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), + ), + ), + '', + astra_get_tablet_breakpoint() + ); + } else { + $css .= astra_parse_css( + array( + $selector => array( + 'border-bottom-style' => 'none', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + } + } + + if ( 'desktop' === $transparent_header_devices ) { + + $selector = '.ast-theme-transparent-header .main-header-bar'; + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $selector = '.ast-theme-transparent-header #ast-desktop-header > ' . $header_child_selector; + } + + if ( '' !== $transparent_header_separator && 'inherit' !== $transparent_header_separator ) { + $transparent_header_base = array( + $selector => array( + 'border-bottom-width' => astra_get_css_value( $transparent_header_separator, 'px' ), + 'border-bottom-style' => 'solid', + 'border-bottom-color' => esc_attr( $transparent_header_separator_color ), + ), + ); + } else { + $transparent_header_base = array( + $selector => array( + 'border-bottom-style' => 'none', + ), + ); + } + + $css .= astra_parse_css( $transparent_header_base, strval( astra_get_tablet_breakpoint() ) ); + } + + $dynamic_css .= $css; + + return $dynamic_css; +} diff --git a/wp-content/themes/astra/inc/addons/transparent-header/classes/sections/class-astra-customizer-transparent-header-configs.php b/wp-content/themes/astra/inc/addons/transparent-header/classes/sections/class-astra-customizer-transparent-header-configs.php index ff7396747..46390a4b6 100644 --- a/wp-content/themes/astra/inc/addons/transparent-header/classes/sections/class-astra-customizer-transparent-header-configs.php +++ b/wp-content/themes/astra/inc/addons/transparent-header/classes/sections/class-astra-customizer-transparent-header-configs.php @@ -1,1174 +1,1174 @@ - ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'default' => astra_get_option( 'transparent-header-enable' ), - 'type' => 'control', - 'section' => $_section, - 'title' => __( 'Enable on Complete Website', 'astra' ), - 'priority' => 20, - 'control' => 'ast-toggle-control', - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - - /** - * Option: Disable Transparent Header on Archive Pages - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-archive]', - 'default' => astra_get_option( 'transparent-header-disable-archive' ), - 'type' => 'control', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'operator' => '==', - 'value' => '1', - ), - ), - 'title' => __( 'Disable on 404, Search & Archives?', 'astra' ), - 'description' => __( 'This setting is generally not recommended on special pages such as archive, search, 404, etc. If you would like to enable it, uncheck this option', 'astra' ), - 'priority' => 25, - 'control' => 'ast-toggle-control', - ), - - /** - * Option: Disable Transparent Header on Archive Pages - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-index]', - 'default' => astra_get_option( 'transparent-header-disable-index' ), - 'type' => 'control', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'operator' => '==', - 'value' => '1', - ), - ), - 'title' => __( 'Disable on Blog page?', 'astra' ), - 'description' => __( 'Blog Page is when Latest Posts are selected to be displayed on a particular page.', 'astra' ), - 'priority' => 25, - 'control' => 'ast-toggle-control', - ), - - - /** - * Option: Disable Transparent Header on Your latest posts index Page - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-latest-posts-index]', - 'default' => astra_get_option( 'transparent-header-disable-latest-posts-index' ), - 'type' => 'control', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'operator' => '==', - 'value' => '1', - ), - ), - 'title' => __( 'Disable on Latest Posts Page?', 'astra' ), - 'description' => __( "Latest Posts page is your site's front page when the latest posts are displayed on the home page.", 'astra' ), - 'priority' => 25, - 'control' => 'ast-toggle-control', - ), - - - /** - * Option: Disable Transparent Header on Pages - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-page]', - 'default' => astra_get_option( 'transparent-header-disable-page' ), - 'type' => 'control', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'operator' => '==', - 'value' => '1', - ), - ), - 'title' => __( 'Disable on Pages?', 'astra' ), - 'priority' => 25, - 'control' => 'ast-toggle-control', - ), - - - /** - * Option: Disable Transparent Header on Posts - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-posts]', - 'default' => astra_get_option( 'transparent-header-disable-posts' ), - 'type' => 'control', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', - 'operator' => '==', - 'value' => '1', - ), - ), - 'title' => __( 'Disable on Posts?', 'astra' ), - 'priority' => 25, - 'control' => 'ast-toggle-control', - ), - - /** - * Option: Sticky Header Display On - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-on-devices]', - 'default' => astra_get_option( 'transparent-header-on-devices' ), - 'type' => 'control', - 'section' => $_section, - 'priority' => 27, - 'title' => __( 'Enable On', 'astra' ), - 'control' => 'ast-selector', - 'choices' => array( - 'desktop' => __( 'Desktop', 'astra' ), - 'mobile' => __( 'Mobile', 'astra' ), - 'both' => __( 'Desktop + Mobile', 'astra' ), - ), - 'responsive' => false, - 'renderAs' => 'text', - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider ast-bottom-section-divider' ), - ), - - - array( - 'name' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'default' => $diff_trans_logo, - 'type' => 'control', - 'section' => $_section, - 'title' => __( 'Different Logo for Transparent Header?', 'astra' ), - 'priority' => 30, - 'control' => 'ast-toggle-control', - ), - - - /** - * Option: Transparent header logo selector - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-logo]', - 'default' => astra_get_option( 'transparent-header-logo' ), - 'type' => 'control', - 'control' => 'image', - 'sanitize_callback' => 'esc_url_raw', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'priority' => 30.1, - 'title' => __( 'Logo', 'astra' ), - 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), - 'partial' => array( - 'selector' => '.ast-replace-site-logo-transparent .site-branding .site-logo-img', - 'container_inclusive' => false, - ), - ), - - /** - * Option: Different retina logo - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[different-transparent-retina-logo]', - 'default' => astra_get_option( 'different-transparent-retina-logo' ), - 'type' => 'control', - 'section' => $_section, - 'title' => __( 'Different Logo For Retina Devices?', 'astra' ), - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'priority' => 30.2, - 'control' => 'ast-toggle-control', - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Transparent header logo selector - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-retina-logo]', - 'default' => astra_get_option( 'transparent-header-retina-logo' ), - 'type' => 'control', - 'control' => 'image', - 'sanitize_callback' => 'esc_url_raw', - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-retina-logo]', - 'operator' => '==', - 'value' => true, - ), - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'priority' => 30.3, - 'title' => __( 'Retina Logo', 'astra' ), - 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Transparent header logo width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-logo-width]', - 'default' => astra_get_option( 'transparent-header-logo-width' ), - 'type' => 'control', - 'transport' => 'postMessage', - 'control' => 'ast-responsive-slider', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), - 'section' => $_section, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'suffix' => 'px', - 'priority' => 30.4, - 'title' => __( 'Logo Width', 'astra' ), - 'input_attrs' => array( - 'min' => 50, - 'step' => 1, - 'max' => 600, - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Bottom Border Size - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep]', - 'default' => astra_get_option( 'transparent-header-main-sep' ), - 'type' => 'control', - 'transport' => 'postMessage', - 'control' => 'ast-slider', - 'section' => $_section, - 'priority' => 32, - 'title' => __( 'Bottom Border Size', 'astra' ), - 'suffix' => 'px', - 'input_attrs' => array( - 'min' => 0, - 'step' => 1, - 'max' => 600, - ), - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - - /** - * Option: Bottom Border Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep-color]', - 'default' => astra_get_option( 'transparent-header-main-sep-color' ), - 'type' => 'control', - 'transport' => 'postMessage', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => $_section, - 'priority' => 32, - 'title' => __( 'Bottom Border Color', 'astra' ), - 'context' => array( - array( - 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep]', - 'operator' => '>=', - 'value' => 1, - ), - ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab_config : Astra_Builder_Helper::$general_tab_config, - ), - ), - - /** - * Option: Transparent Header Styling - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[divider-sec-transparent-styling]', - 'type' => 'control', - 'control' => 'ast-heading', - 'section' => $_section, - 'title' => __( 'Colors & Background', 'astra' ), - 'priority' => 32, - 'settings' => array(), - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors]', - 'default' => astra_get_option( 'transparent-header-colors' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Site Title', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 34, - 'context' => ( Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'responsive' => true, - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-menu]', - 'default' => astra_get_option( 'transparent-header-colors-menu' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Text / Link', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 35, - 'context' => ( Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'responsive' => true, - 'divider' => array( - 'ast_class' => 'ast-top-dotted-divider', - 'ast_title' => __( 'Menu Color', 'astra' ), - ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-submenu]', - 'default' => astra_get_option( 'transparent-header-colors-submenu' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Text / Link', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 37, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'responsive' => true, - 'divider' => array( - 'ast_class' => 'ast-top-dotted-divider', - 'ast_title' => __( 'Submenu Color', 'astra' ), - ), - ), - ); - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $_hfb_configs = array( - /** - * Option: Header Builder Tabs - */ - array( - 'name' => $_section . '-ast-context-tabs', - 'section' => $_section, - 'type' => 'control', - 'control' => 'ast-builder-header-control', - 'priority' => 0, - 'description' => '', - ), - - /** - * Option: Transparent Header Builder - Social Element configs. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', - 'default' => astra_get_option( 'transparent-header-social-colors-content' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Text / Icon', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 40, - 'context' => Astra_Builder_Helper::$design_tab, - 'responsive' => true, - 'divider' => array( - 'ast_class' => 'ast-top-dotted-divider', - 'ast_title' => __( 'Social Color', 'astra' ), - ), - ), - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', - 'default' => astra_get_option( 'transparent-header-social-colors-content' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Background', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 40, - 'context' => Astra_Builder_Helper::$design_tab, - 'responsive' => true, - ), - - - /** - * Option: Social Text Color - */ - array( - 'name' => 'transparent-header-social-icons-color', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'transparent-header-social-icons-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-responsive-color', - 'responsive' => true, - 'rgba' => true, - 'priority' => 5, - 'context' => Astra_Builder_Helper::$design_tab, - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Social Text Hover Color - */ - array( - 'name' => 'transparent-header-social-icons-h-color', - 'default' => astra_get_option( 'transparent-header-social-icons-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-responsive-color', - 'responsive' => true, - 'rgba' => true, - 'priority' => 7, - 'context' => Astra_Builder_Helper::$design_tab, - 'title' => __( 'Hover', 'astra' ), - ), - - /** - * Option: Social Background Color - */ - array( - 'name' => 'transparent-header-social-icons-bg-color', - 'default' => astra_get_option( 'transparent-header-social-icons-bg-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-responsive-color', - 'responsive' => true, - 'rgba' => true, - 'priority' => 9, - 'context' => Astra_Builder_Helper::$design_tab, - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Social Background Hover Color - */ - array( - 'name' => 'transparent-header-social-icons-bg-h-color', - 'default' => astra_get_option( 'transparent-header-social-icons-bg-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-responsive-color', - 'responsive' => true, - 'rgba' => true, - 'priority' => 11, - 'context' => Astra_Builder_Helper::$design_tab, - 'title' => __( 'Hover', 'astra' ), - ), - - /** - * Option: Transparent Header Builder - HTML Elements configs. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', - 'default' => astra_get_option( 'transparent-header-html-colors-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Link', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 75, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: HTML Text Color. - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-html-text-color]', - 'default' => astra_get_option( 'transparent-header-html-text-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 74, - 'title' => __( 'Text', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - 'divider' => array( - 'ast_class' => 'ast-top-divider ast-top-dotted-divider', - 'ast_title' => __( 'HTML Color', 'astra' ), - ), - ), - - // Option: HTML Link Color. - array( - 'name' => 'transparent-header-html-link-color', - 'default' => astra_get_option( 'transparent-header-html-link-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 5, - 'title' => __( 'Normal', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - ), - - // Option: HTML Link Hover Color. - array( - 'name' => 'transparent-header-html-link-h-color', - 'default' => astra_get_option( 'transparent-header-html-link-h-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 5, - 'title' => __( 'Hover', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - ), - - /** - * Option: Transparent Header Builder - Search Elements configs. - */ - - // Option: Search Color. - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-icon-color]', - 'default' => astra_get_option( 'transparent-header-search-icon-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 45, - 'title' => __( 'Icon', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - - 'divider' => array( - 'ast_class' => 'ast-top-divider ast-top-dotted-divider', - 'ast_title' => __( 'Search Color', 'astra' ), - ), - ), - - /** - * Search Box Background Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-box-background-color]', - 'default' => astra_get_option( 'transparent-header-search-box-background-color' ), - 'type' => 'control', - 'section' => 'section-transparent-header', - 'priority' => 45, - 'transport' => 'postMessage', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'title' => __( 'Box Background', 'astra' ), - 'context' => array( - Astra_Builder_Helper::$design_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-search-box-type]', - 'operator' => 'in', - 'value' => array( 'slide-search', 'search-box' ), - ), - ), - ), - - /** - * Group: Transparent Header Button Colors Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', - 'default' => astra_get_option( 'transparent-header-buttons-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Text', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 60, - 'context' => Astra_Builder_Helper::$design_tab, - 'divider' => array( - 'ast_class' => 'ast-top-dotted-divider', - 'ast_title' => __( 'Button Color', 'astra' ), - ), - ), - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', - 'default' => astra_get_option( 'transparent-header-buttons-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Background', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 60, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - /** - * Option: Button Text Color - */ - array( - 'name' => 'transparent-header-button-text-color', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'transparent-header-button-text-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 5, - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Button Text Hover Color - */ - array( - 'name' => 'transparent-header-button-text-h-color', - 'default' => astra_get_option( 'transparent-header-button-text-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 7, - 'title' => __( 'Hover', 'astra' ), - ), - - /** - * Option: Button Background Color - */ - array( - 'name' => 'transparent-header-button-bg-color', - 'default' => astra_get_option( 'transparent-header-button-bg-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 9, - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Button Button Hover Color - */ - array( - 'name' => 'transparent-header-button-bg-h-color', - 'default' => astra_get_option( 'transparent-header-button-bg-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 11, - 'title' => __( 'Hover', 'astra' ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-icon-color]', - 'default' => astra_get_option( 'transparent-account-icon-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 65, - 'title' => __( 'Icon', 'astra' ), - 'divider' => array( - 'ast_class' => 'ast-top-divider ast-top-dotted-divider', - 'ast_title' => __( 'Account', 'astra' ), - ), - 'context' => array( - Astra_Builder_Helper::$design_tab_config, - array( - 'relation' => 'OR', - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', - 'operator' => '==', - 'value' => 'icon', - ), - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', - 'operator' => '==', - 'value' => 'text', - ), - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', - 'operator' => '!=', - 'value' => 'none', - ), - ), - ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-type-text-color]', - 'default' => astra_get_option( 'transparent-account-type-text-color' ), - 'type' => 'control', - 'section' => $_section, - 'priority' => 65, - 'transport' => 'postMessage', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'title' => __( 'Text', 'astra' ), - 'context' => array( - Astra_Builder_Helper::$design_tab_config, - array( - 'relation' => 'OR', - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', - 'operator' => '==', - 'value' => 'icon', - ), - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', - 'operator' => '==', - 'value' => 'text', - ), - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', - 'operator' => '!=', - 'value' => 'none', - ), - ), - ), - ), - - /** - * Option: Toggle Button Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-btn-color]', - 'default' => astra_get_option( 'transparent-header-toggle-btn-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'title' => __( 'Icon', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 70, - 'context' => Astra_Builder_Helper::$design_tab, - 'divider' => array( - 'ast_class' => 'ast-top-divider ast-top-dotted-divider', - 'ast_title' => __( 'Toggle Color', 'astra' ), - ), - ), - - /** - * Option: Toggle Button Bg Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-btn-bg-color]', - 'default' => astra_get_option( 'transparent-header-toggle-btn-bg-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'title' => __( 'Background', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 70, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - /** - * Option: Toggle Button Border Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-border-color]', - 'default' => astra_get_option( 'transparent-header-toggle-border-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'title' => __( 'Border', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 70, - 'context' => Astra_Builder_Helper::$design_tab, - ), - ); - - $widget_configs = array( - /** - * Option: Transparent Header Builder - Widget Elements configs. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', - 'default' => astra_get_option( 'transparent-header-widget-colors-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Link', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 50, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Widget Title Color. - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-title-color]', - 'default' => astra_get_option( 'transparent-header-widget-title-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 49, - 'title' => __( 'Title', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - 'divider' => array( - 'ast_class' => 'ast-top-divider', - 'ast_title' => __( 'Widget Color', 'astra' ), - ), - ), - - // Option: Widget Content Color. - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-content-color]', - 'default' => astra_get_option( 'transparent-header-widget-content-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 49, - 'title' => __( 'Content', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Widget Link Color. - array( - 'name' => 'transparent-header-widget-link-color', - 'default' => astra_get_option( 'transparent-header-widget-link-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 15, - 'tab' => __( 'Normal', 'astra' ), - 'title' => __( 'Normal', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - ), - - // Option: Widget Link Hover Color. - array( - 'name' => 'transparent-header-widget-link-h-color', - 'default' => astra_get_option( 'transparent-header-widget-link-h-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'tab' => __( 'Hover', 'astra' ), - 'priority' => 20, - 'title' => __( 'Hover', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - ), - ); - $_configs = array_merge( $_configs, $_hfb_configs ); - - } else { - $_old_content_configs = array( - - /** - * Option: Content Section Text color. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-content-section-text-color-responsive]', - 'default' => astra_get_option( 'transparent-content-section-text-color-responsive' ), - 'type' => 'control', - 'priority' => 39, - 'section' => $_section, - 'transport' => 'postMessage', - 'control' => 'ast-responsive-color', - 'title' => __( 'Text', 'astra' ), - 'responsive' => true, - 'rgba' => true, - 'divider' => array( - 'ast_class' => 'ast-top-divider', - 'ast_title' => __( 'Content', 'astra' ), - ), - ), - /** - * Option: Header Builder Tabs - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-content]', - 'default' => astra_get_option( 'transparent-header-colors-content' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Link', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => 39, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'responsive' => true, - ), - ); - - $_configs = array_merge( $_configs, $_old_content_configs ); - } - - if ( defined( 'ASTRA_EXT_VER' ) && ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ) { - - $pro_elements_transparent_config = array( - - /** - * Search Box Background Color - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-box-placeholder-color]', - 'default' => astra_get_option( 'transparent-header-search-box-placeholder-color' ), - 'type' => 'control', - 'section' => 'section-transparent-header', - 'priority' => 45, - 'transport' => 'postMessage', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'title' => __( 'Text / Placeholder', 'astra' ), - 'context' => array( - Astra_Builder_Helper::$design_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-search-box-type]', - 'operator' => 'in', - 'value' => array( 'slide-search', 'search-box' ), - ), - ), - ), - - /** - * Option: Transparent Header Builder - Divider Elements configs. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-divider-color]', - 'default' => astra_get_option( 'transparent-header-divider-color' ), - 'type' => 'control', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'transport' => 'postMessage', - 'priority' => 64, - 'title' => __( 'Divider', 'astra' ), - 'section' => 'section-transparent-header', - 'context' => Astra_Builder_Helper::$design_tab, - 'divider' => array( 'ast_class' => 'ast-top-divider ast-top-dotted-divider' ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'default' => astra_get_option( 'transparent-account-menu-colors' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => __( 'Account Menu Color', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 66, - 'context' => array( - Astra_Builder_Helper::$design_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', - 'operator' => '==', - 'value' => 'menu', - ), - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - // Option: Menu Color. - array( - 'name' => 'transparent-account-menu-color', - 'default' => astra_get_option( 'transparent-account-menu-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'tab' => __( 'Normal', 'astra' ), - 'section' => 'section-transparent-header', - 'title' => __( 'Link / Text Color', 'astra' ), - 'priority' => 7, - 'context' => array( - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', - 'operator' => '==', - 'value' => 'menu', - ), - Astra_Builder_Helper::$design_tab, - ), - ), - - // Option: Background Color. - array( - 'name' => 'transparent-account-menu-bg-obj', - 'default' => astra_get_option( 'transparent-account-menu-bg-obj' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'section' => 'section-transparent-header', - 'title' => __( 'Background Color', 'astra' ), - 'tab' => __( 'Normal', 'astra' ), - 'priority' => 8, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Menu Hover Color. - array( - 'name' => 'transparent-account-menu-h-color', - 'default' => astra_get_option( 'transparent-account-menu-h-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'tab' => __( 'Hover', 'astra' ), - 'type' => 'sub-control', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'title' => __( 'Link Color', 'astra' ), - 'section' => 'section-transparent-header', - 'priority' => 19, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Menu Hover Background Color. - array( - 'name' => 'transparent-account-menu-h-bg-color', - 'default' => astra_get_option( 'transparent-account-menu-h-bg-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'type' => 'sub-control', - 'title' => __( 'Background Color', 'astra' ), - 'section' => 'section-transparent-header', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'tab' => __( 'Hover', 'astra' ), - 'priority' => 21, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Active Menu Color. - array( - 'name' => 'transparent-account-menu-a-color', - 'default' => astra_get_option( 'transparent-account-menu-a-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'type' => 'sub-control', - 'section' => 'section-transparent-header', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'tab' => __( 'Active', 'astra' ), - 'title' => __( 'Link Color', 'astra' ), - 'priority' => 31, - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Active Menu Background Color. - array( - 'name' => 'transparent-account-menu-a-bg-color', - 'default' => astra_get_option( 'transparent-account-menu-a-bg-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'section' => 'section-transparent-header', - 'title' => __( 'Background Color', 'astra' ), - 'tab' => __( 'Active', 'astra' ), - 'priority' => 33, - 'context' => Astra_Builder_Helper::$design_tab, - ), - ); - - $_configs = array_merge( $_configs, $pro_elements_transparent_config ); - } - - return array_merge( $configurations, $_configs ); - } - } -} - -/** - * Kicking this off by calling 'get_instance()' method - */ -new Astra_Customizer_Transparent_Header_Configs(); + ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'default' => astra_get_option( 'transparent-header-enable' ), + 'type' => 'control', + 'section' => $_section, + 'title' => __( 'Enable on Complete Website', 'astra' ), + 'priority' => 20, + 'control' => 'ast-toggle-control', + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + + /** + * Option: Disable Transparent Header on Archive Pages + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-archive]', + 'default' => astra_get_option( 'transparent-header-disable-archive' ), + 'type' => 'control', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'operator' => '==', + 'value' => '1', + ), + ), + 'title' => __( 'Disable on 404, Search & Archives?', 'astra' ), + 'description' => __( 'This setting is generally not recommended on special pages such as archive, search, 404, etc. If you would like to enable it, uncheck this option', 'astra' ), + 'priority' => 25, + 'control' => 'ast-toggle-control', + ), + + /** + * Option: Disable Transparent Header on Archive Pages + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-index]', + 'default' => astra_get_option( 'transparent-header-disable-index' ), + 'type' => 'control', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'operator' => '==', + 'value' => '1', + ), + ), + 'title' => __( 'Disable on Blog page?', 'astra' ), + 'description' => __( 'Blog Page is when Latest Posts are selected to be displayed on a particular page.', 'astra' ), + 'priority' => 25, + 'control' => 'ast-toggle-control', + ), + + + /** + * Option: Disable Transparent Header on Your latest posts index Page + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-latest-posts-index]', + 'default' => astra_get_option( 'transparent-header-disable-latest-posts-index' ), + 'type' => 'control', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'operator' => '==', + 'value' => '1', + ), + ), + 'title' => __( 'Disable on Latest Posts Page?', 'astra' ), + 'description' => __( "Latest Posts page is your site's front page when the latest posts are displayed on the home page.", 'astra' ), + 'priority' => 25, + 'control' => 'ast-toggle-control', + ), + + + /** + * Option: Disable Transparent Header on Pages + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-page]', + 'default' => astra_get_option( 'transparent-header-disable-page' ), + 'type' => 'control', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'operator' => '==', + 'value' => '1', + ), + ), + 'title' => __( 'Disable on Pages?', 'astra' ), + 'priority' => 25, + 'control' => 'ast-toggle-control', + ), + + + /** + * Option: Disable Transparent Header on Posts + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-disable-posts]', + 'default' => astra_get_option( 'transparent-header-disable-posts' ), + 'type' => 'control', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-enable]', + 'operator' => '==', + 'value' => '1', + ), + ), + 'title' => __( 'Disable on Posts?', 'astra' ), + 'priority' => 25, + 'control' => 'ast-toggle-control', + ), + + /** + * Option: Sticky Header Display On + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-on-devices]', + 'default' => astra_get_option( 'transparent-header-on-devices' ), + 'type' => 'control', + 'section' => $_section, + 'priority' => 27, + 'title' => __( 'Enable On', 'astra' ), + 'control' => 'ast-selector', + 'choices' => array( + 'desktop' => __( 'Desktop', 'astra' ), + 'mobile' => __( 'Mobile', 'astra' ), + 'both' => __( 'Desktop + Mobile', 'astra' ), + ), + 'responsive' => false, + 'renderAs' => 'text', + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider ast-bottom-section-divider' ), + ), + + + array( + 'name' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'default' => $diff_trans_logo, + 'type' => 'control', + 'section' => $_section, + 'title' => __( 'Different Logo for Transparent Header?', 'astra' ), + 'priority' => 30, + 'control' => 'ast-toggle-control', + ), + + + /** + * Option: Transparent header logo selector + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-logo]', + 'default' => astra_get_option( 'transparent-header-logo' ), + 'type' => 'control', + 'control' => 'image', + 'sanitize_callback' => 'esc_url_raw', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'priority' => 30.1, + 'title' => __( 'Logo', 'astra' ), + 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), + 'partial' => array( + 'selector' => '.ast-replace-site-logo-transparent .site-branding .site-logo-img', + 'container_inclusive' => false, + ), + ), + + /** + * Option: Different retina logo + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[different-transparent-retina-logo]', + 'default' => astra_get_option( 'different-transparent-retina-logo' ), + 'type' => 'control', + 'section' => $_section, + 'title' => __( 'Different Logo For Retina Devices?', 'astra' ), + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'priority' => 30.2, + 'control' => 'ast-toggle-control', + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Transparent header logo selector + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-retina-logo]', + 'default' => astra_get_option( 'transparent-header-retina-logo' ), + 'type' => 'control', + 'control' => 'image', + 'sanitize_callback' => 'esc_url_raw', + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-retina-logo]', + 'operator' => '==', + 'value' => true, + ), + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'priority' => 30.3, + 'title' => __( 'Retina Logo', 'astra' ), + 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Transparent header logo width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-logo-width]', + 'default' => astra_get_option( 'transparent-header-logo-width' ), + 'type' => 'control', + 'transport' => 'postMessage', + 'control' => 'ast-responsive-slider', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), + 'section' => $_section, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'suffix' => 'px', + 'priority' => 30.4, + 'title' => __( 'Logo Width', 'astra' ), + 'input_attrs' => array( + 'min' => 50, + 'step' => 1, + 'max' => 600, + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Bottom Border Size + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep]', + 'default' => astra_get_option( 'transparent-header-main-sep' ), + 'type' => 'control', + 'transport' => 'postMessage', + 'control' => 'ast-slider', + 'section' => $_section, + 'priority' => 32, + 'title' => __( 'Bottom Border Size', 'astra' ), + 'suffix' => 'px', + 'input_attrs' => array( + 'min' => 0, + 'step' => 1, + 'max' => 600, + ), + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + + /** + * Option: Bottom Border Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep-color]', + 'default' => astra_get_option( 'transparent-header-main-sep-color' ), + 'type' => 'control', + 'transport' => 'postMessage', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => $_section, + 'priority' => 32, + 'title' => __( 'Bottom Border Color', 'astra' ), + 'context' => array( + array( + 'setting' => ASTRA_THEME_SETTINGS . '[transparent-header-main-sep]', + 'operator' => '>=', + 'value' => 1, + ), + ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab_config : Astra_Builder_Helper::$general_tab_config, + ), + ), + + /** + * Option: Transparent Header Styling + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[divider-sec-transparent-styling]', + 'type' => 'control', + 'control' => 'ast-heading', + 'section' => $_section, + 'title' => __( 'Colors & Background', 'astra' ), + 'priority' => 32, + 'settings' => array(), + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors]', + 'default' => astra_get_option( 'transparent-header-colors' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Site Title', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 34, + 'context' => ( Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'responsive' => true, + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-menu]', + 'default' => astra_get_option( 'transparent-header-colors-menu' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Text / Link', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 35, + 'context' => ( Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'responsive' => true, + 'divider' => array( + 'ast_class' => 'ast-top-dotted-divider', + 'ast_title' => __( 'Menu Color', 'astra' ), + ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-submenu]', + 'default' => astra_get_option( 'transparent-header-colors-submenu' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Text / Link', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 37, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'responsive' => true, + 'divider' => array( + 'ast_class' => 'ast-top-dotted-divider', + 'ast_title' => __( 'Submenu Color', 'astra' ), + ), + ), + ); + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $_hfb_configs = array( + /** + * Option: Header Builder Tabs + */ + array( + 'name' => $_section . '-ast-context-tabs', + 'section' => $_section, + 'type' => 'control', + 'control' => 'ast-builder-header-control', + 'priority' => 0, + 'description' => '', + ), + + /** + * Option: Transparent Header Builder - Social Element configs. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', + 'default' => astra_get_option( 'transparent-header-social-colors-content' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Text / Icon', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 40, + 'context' => Astra_Builder_Helper::$design_tab, + 'responsive' => true, + 'divider' => array( + 'ast_class' => 'ast-top-dotted-divider', + 'ast_title' => __( 'Social Color', 'astra' ), + ), + ), + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', + 'default' => astra_get_option( 'transparent-header-social-colors-content' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Background', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 40, + 'context' => Astra_Builder_Helper::$design_tab, + 'responsive' => true, + ), + + + /** + * Option: Social Text Color + */ + array( + 'name' => 'transparent-header-social-icons-color', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'transparent-header-social-icons-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-responsive-color', + 'responsive' => true, + 'rgba' => true, + 'priority' => 5, + 'context' => Astra_Builder_Helper::$design_tab, + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Social Text Hover Color + */ + array( + 'name' => 'transparent-header-social-icons-h-color', + 'default' => astra_get_option( 'transparent-header-social-icons-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-text-colors-content]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-responsive-color', + 'responsive' => true, + 'rgba' => true, + 'priority' => 7, + 'context' => Astra_Builder_Helper::$design_tab, + 'title' => __( 'Hover', 'astra' ), + ), + + /** + * Option: Social Background Color + */ + array( + 'name' => 'transparent-header-social-icons-bg-color', + 'default' => astra_get_option( 'transparent-header-social-icons-bg-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-responsive-color', + 'responsive' => true, + 'rgba' => true, + 'priority' => 9, + 'context' => Astra_Builder_Helper::$design_tab, + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Social Background Hover Color + */ + array( + 'name' => 'transparent-header-social-icons-bg-h-color', + 'default' => astra_get_option( 'transparent-header-social-icons-bg-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-social-background-colors-content]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-responsive-color', + 'responsive' => true, + 'rgba' => true, + 'priority' => 11, + 'context' => Astra_Builder_Helper::$design_tab, + 'title' => __( 'Hover', 'astra' ), + ), + + /** + * Option: Transparent Header Builder - HTML Elements configs. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', + 'default' => astra_get_option( 'transparent-header-html-colors-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Link', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 75, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: HTML Text Color. + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-html-text-color]', + 'default' => astra_get_option( 'transparent-header-html-text-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 74, + 'title' => __( 'Text', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + 'divider' => array( + 'ast_class' => 'ast-top-divider ast-top-dotted-divider', + 'ast_title' => __( 'HTML Color', 'astra' ), + ), + ), + + // Option: HTML Link Color. + array( + 'name' => 'transparent-header-html-link-color', + 'default' => astra_get_option( 'transparent-header-html-link-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 5, + 'title' => __( 'Normal', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + ), + + // Option: HTML Link Hover Color. + array( + 'name' => 'transparent-header-html-link-h-color', + 'default' => astra_get_option( 'transparent-header-html-link-h-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-html-colors-group]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 5, + 'title' => __( 'Hover', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + ), + + /** + * Option: Transparent Header Builder - Search Elements configs. + */ + + // Option: Search Color. + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-icon-color]', + 'default' => astra_get_option( 'transparent-header-search-icon-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 45, + 'title' => __( 'Icon', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + + 'divider' => array( + 'ast_class' => 'ast-top-divider ast-top-dotted-divider', + 'ast_title' => __( 'Search Color', 'astra' ), + ), + ), + + /** + * Search Box Background Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-box-background-color]', + 'default' => astra_get_option( 'transparent-header-search-box-background-color' ), + 'type' => 'control', + 'section' => 'section-transparent-header', + 'priority' => 45, + 'transport' => 'postMessage', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'title' => __( 'Box Background', 'astra' ), + 'context' => array( + Astra_Builder_Helper::$design_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-search-box-type]', + 'operator' => 'in', + 'value' => array( 'slide-search', 'search-box' ), + ), + ), + ), + + /** + * Group: Transparent Header Button Colors Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', + 'default' => astra_get_option( 'transparent-header-buttons-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Text', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 60, + 'context' => Astra_Builder_Helper::$design_tab, + 'divider' => array( + 'ast_class' => 'ast-top-dotted-divider', + 'ast_title' => __( 'Button Color', 'astra' ), + ), + ), + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', + 'default' => astra_get_option( 'transparent-header-buttons-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Background', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 60, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + /** + * Option: Button Text Color + */ + array( + 'name' => 'transparent-header-button-text-color', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'transparent-header-button-text-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 5, + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Button Text Hover Color + */ + array( + 'name' => 'transparent-header-button-text-h-color', + 'default' => astra_get_option( 'transparent-header-button-text-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-text-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 7, + 'title' => __( 'Hover', 'astra' ), + ), + + /** + * Option: Button Background Color + */ + array( + 'name' => 'transparent-header-button-bg-color', + 'default' => astra_get_option( 'transparent-header-button-bg-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 9, + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Button Button Hover Color + */ + array( + 'name' => 'transparent-header-button-bg-h-color', + 'default' => astra_get_option( 'transparent-header-button-bg-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-buttons-background-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 11, + 'title' => __( 'Hover', 'astra' ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-icon-color]', + 'default' => astra_get_option( 'transparent-account-icon-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 65, + 'title' => __( 'Icon', 'astra' ), + 'divider' => array( + 'ast_class' => 'ast-top-divider ast-top-dotted-divider', + 'ast_title' => __( 'Account', 'astra' ), + ), + 'context' => array( + Astra_Builder_Helper::$design_tab_config, + array( + 'relation' => 'OR', + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', + 'operator' => '==', + 'value' => 'icon', + ), + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', + 'operator' => '==', + 'value' => 'text', + ), + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', + 'operator' => '!=', + 'value' => 'none', + ), + ), + ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-type-text-color]', + 'default' => astra_get_option( 'transparent-account-type-text-color' ), + 'type' => 'control', + 'section' => $_section, + 'priority' => 65, + 'transport' => 'postMessage', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'title' => __( 'Text', 'astra' ), + 'context' => array( + Astra_Builder_Helper::$design_tab_config, + array( + 'relation' => 'OR', + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', + 'operator' => '==', + 'value' => 'icon', + ), + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-login-style]', + 'operator' => '==', + 'value' => 'text', + ), + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-logout-style]', + 'operator' => '!=', + 'value' => 'none', + ), + ), + ), + ), + + /** + * Option: Toggle Button Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-btn-color]', + 'default' => astra_get_option( 'transparent-header-toggle-btn-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'title' => __( 'Icon', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 70, + 'context' => Astra_Builder_Helper::$design_tab, + 'divider' => array( + 'ast_class' => 'ast-top-divider ast-top-dotted-divider', + 'ast_title' => __( 'Toggle Color', 'astra' ), + ), + ), + + /** + * Option: Toggle Button Bg Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-btn-bg-color]', + 'default' => astra_get_option( 'transparent-header-toggle-btn-bg-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'title' => __( 'Background', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 70, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + /** + * Option: Toggle Button Border Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-toggle-border-color]', + 'default' => astra_get_option( 'transparent-header-toggle-border-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'title' => __( 'Border', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 70, + 'context' => Astra_Builder_Helper::$design_tab, + ), + ); + + $widget_configs = array( + /** + * Option: Transparent Header Builder - Widget Elements configs. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', + 'default' => astra_get_option( 'transparent-header-widget-colors-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Link', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 50, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Widget Title Color. + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-title-color]', + 'default' => astra_get_option( 'transparent-header-widget-title-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 49, + 'title' => __( 'Title', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + 'divider' => array( + 'ast_class' => 'ast-top-divider', + 'ast_title' => __( 'Widget Color', 'astra' ), + ), + ), + + // Option: Widget Content Color. + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-content-color]', + 'default' => astra_get_option( 'transparent-header-widget-content-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 49, + 'title' => __( 'Content', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Widget Link Color. + array( + 'name' => 'transparent-header-widget-link-color', + 'default' => astra_get_option( 'transparent-header-widget-link-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 15, + 'tab' => __( 'Normal', 'astra' ), + 'title' => __( 'Normal', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + ), + + // Option: Widget Link Hover Color. + array( + 'name' => 'transparent-header-widget-link-h-color', + 'default' => astra_get_option( 'transparent-header-widget-link-h-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-widget-link-colors-group]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'tab' => __( 'Hover', 'astra' ), + 'priority' => 20, + 'title' => __( 'Hover', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + ), + ); + $_configs = array_merge( $_configs, $_hfb_configs ); + + } else { + $_old_content_configs = array( + + /** + * Option: Content Section Text color. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-content-section-text-color-responsive]', + 'default' => astra_get_option( 'transparent-content-section-text-color-responsive' ), + 'type' => 'control', + 'priority' => 39, + 'section' => $_section, + 'transport' => 'postMessage', + 'control' => 'ast-responsive-color', + 'title' => __( 'Text', 'astra' ), + 'responsive' => true, + 'rgba' => true, + 'divider' => array( + 'ast_class' => 'ast-top-divider', + 'ast_title' => __( 'Content', 'astra' ), + ), + ), + /** + * Option: Header Builder Tabs + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-colors-content]', + 'default' => astra_get_option( 'transparent-header-colors-content' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Link', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => 39, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'responsive' => true, + ), + ); + + $_configs = array_merge( $_configs, $_old_content_configs ); + } + + if ( defined( 'ASTRA_EXT_VER' ) && ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ) { + + $pro_elements_transparent_config = array( + + /** + * Search Box Background Color + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-search-box-placeholder-color]', + 'default' => astra_get_option( 'transparent-header-search-box-placeholder-color' ), + 'type' => 'control', + 'section' => 'section-transparent-header', + 'priority' => 45, + 'transport' => 'postMessage', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'title' => __( 'Text / Placeholder', 'astra' ), + 'context' => array( + Astra_Builder_Helper::$design_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-search-box-type]', + 'operator' => 'in', + 'value' => array( 'slide-search', 'search-box' ), + ), + ), + ), + + /** + * Option: Transparent Header Builder - Divider Elements configs. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-divider-color]', + 'default' => astra_get_option( 'transparent-header-divider-color' ), + 'type' => 'control', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'transport' => 'postMessage', + 'priority' => 64, + 'title' => __( 'Divider', 'astra' ), + 'section' => 'section-transparent-header', + 'context' => Astra_Builder_Helper::$design_tab, + 'divider' => array( 'ast_class' => 'ast-top-divider ast-top-dotted-divider' ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'default' => astra_get_option( 'transparent-account-menu-colors' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => __( 'Account Menu Color', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 66, + 'context' => array( + Astra_Builder_Helper::$design_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', + 'operator' => '==', + 'value' => 'menu', + ), + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + // Option: Menu Color. + array( + 'name' => 'transparent-account-menu-color', + 'default' => astra_get_option( 'transparent-account-menu-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'tab' => __( 'Normal', 'astra' ), + 'section' => 'section-transparent-header', + 'title' => __( 'Link / Text Color', 'astra' ), + 'priority' => 7, + 'context' => array( + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-account-action-type]', + 'operator' => '==', + 'value' => 'menu', + ), + Astra_Builder_Helper::$design_tab, + ), + ), + + // Option: Background Color. + array( + 'name' => 'transparent-account-menu-bg-obj', + 'default' => astra_get_option( 'transparent-account-menu-bg-obj' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'section' => 'section-transparent-header', + 'title' => __( 'Background Color', 'astra' ), + 'tab' => __( 'Normal', 'astra' ), + 'priority' => 8, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Menu Hover Color. + array( + 'name' => 'transparent-account-menu-h-color', + 'default' => astra_get_option( 'transparent-account-menu-h-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'tab' => __( 'Hover', 'astra' ), + 'type' => 'sub-control', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'title' => __( 'Link Color', 'astra' ), + 'section' => 'section-transparent-header', + 'priority' => 19, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Menu Hover Background Color. + array( + 'name' => 'transparent-account-menu-h-bg-color', + 'default' => astra_get_option( 'transparent-account-menu-h-bg-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'type' => 'sub-control', + 'title' => __( 'Background Color', 'astra' ), + 'section' => 'section-transparent-header', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'tab' => __( 'Hover', 'astra' ), + 'priority' => 21, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Active Menu Color. + array( + 'name' => 'transparent-account-menu-a-color', + 'default' => astra_get_option( 'transparent-account-menu-a-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'type' => 'sub-control', + 'section' => 'section-transparent-header', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'tab' => __( 'Active', 'astra' ), + 'title' => __( 'Link Color', 'astra' ), + 'priority' => 31, + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Active Menu Background Color. + array( + 'name' => 'transparent-account-menu-a-bg-color', + 'default' => astra_get_option( 'transparent-account-menu-a-bg-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-account-menu-colors]', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'section' => 'section-transparent-header', + 'title' => __( 'Background Color', 'astra' ), + 'tab' => __( 'Active', 'astra' ), + 'priority' => 33, + 'context' => Astra_Builder_Helper::$design_tab, + ), + ); + + $_configs = array_merge( $_configs, $pro_elements_transparent_config ); + } + + return array_merge( $configurations, $_configs ); + } + } +} + +/** + * Kicking this off by calling 'get_instance()' method + */ +new Astra_Customizer_Transparent_Header_Configs(); diff --git a/wp-content/themes/astra/inc/assets/js/block-editor-script.js b/wp-content/themes/astra/inc/assets/js/block-editor-script.js index 6d8424524..e017f855f 100644 --- a/wp-content/themes/astra/inc/assets/js/block-editor-script.js +++ b/wp-content/themes/astra/inc/assets/js/block-editor-script.js @@ -137,11 +137,6 @@ function astra_onload_function() { titleBlock = editorDocument.querySelector( '.edit-post-visual-editor__post-title-wrapper' ); - // Add Google Fonts CSS to iframe. - var fontCss = document.getElementById('astra-google-fonts-css'); - if ( fontCss && editorDocument && editorDocument.head ) { - editorDocument.head.appendChild( fontCss.cloneNode(true) ); - } } // Compatibility for updating layout in editor with direct reflection. @@ -168,7 +163,7 @@ function astra_onload_function() { "ast-page-builder-template", "ast-separate-container", "ast-narrow-container" - ); + ); } break; case "content-boxed-container": @@ -186,7 +181,7 @@ function astra_onload_function() { "ast-page-builder-template", "ast-plain-container", "ast-narrow-container" - ); + ); } break; case "boxed-container": @@ -208,7 +203,7 @@ function astra_onload_function() { "ast-page-builder-template", "ast-plain-container", "ast-narrow-container" - ); + ); } break; case "page-builder-template": @@ -226,7 +221,7 @@ function astra_onload_function() { "ast-plain-container", "ast-separate-container", "ast-narrow-container" - ); + ); } break; case "narrow-container": @@ -244,7 +239,7 @@ function astra_onload_function() { "ast-plain-container", "ast-separate-container", "ast-page-builder-template" - ); + ); } break; default: @@ -438,26 +433,23 @@ function astra_onload_function() { } // Live reflections for page background setting. - const backgroundToggle = (undefined !== wp.data.select('core/editor') && - null !== wp.data.select('core/editor') && - undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && - wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-enabled']) - ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-enabled'] - : 'default'; - - if ( 'enabled' === backgroundToggle ) { - if ( isUnboxedContainer ) { - updatePageBackground( false, isUnboxedContainer ); - } - else { - updatePageBackground(); - } - } - else if ( 'default' === backgroundToggle ) { - if ( isUnboxedContainer ) { - updatePageBackground( true, isUnboxedContainer ); + if ( astraColors.is_astra_pro_colors_activated ) { + const backgroundToggle = (undefined !== wp.data.select('core/editor') && + null !== wp.data.select('core/editor') && + undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && + wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-enabled']) + ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-enabled'] + : 'default'; + + if ( 'enabled' === backgroundToggle ) { + if ( isUnboxedContainer ) { + updatePageBackground( false, isUnboxedContainer ); + } + else { + updatePageBackground(); + } } - else { + else if ( 'default' === backgroundToggle ) { updatePageBackground( true ); } } @@ -470,25 +462,6 @@ function astra_onload_function() { * Updates the page background css from the color picker. */ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContainer = false ) => { - - let bgObj = (undefined !== wp.data.select('core/editor') && - null !== wp.data.select('core/editor') && - undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && - wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-meta']) - ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-meta'] - : 'default'; - - let contentObj = (undefined !== wp.data.select('core/editor') && - null !== wp.data.select('core/editor') && - undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && - wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-content-background-meta']) - ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-content-background-meta'] - : 'default'; - - if ( apply_customizer_default ) { - bgObj = astraColors.customizer_site_bg_obj; - contentObj = astraColors.customizer_content_bg_obj; - } // Document as per wp version. editorDoc = document; @@ -510,6 +483,53 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai } } + if ( apply_customizer_default ) { + + if ( document ) { + const pageBgWrapper = document.querySelector('#editor .edit-post-visual-editor'); + + if ( pageBgWrapper ) { + pageBgWrapper.style['background-color'] = ''; + pageBgWrapper.style['background-image'] = ''; + pageBgWrapper.style['background-size'] = ''; + pageBgWrapper.style['background-position'] = ''; + pageBgWrapper.style['background-repeat'] = ''; + pageBgWrapper.style['background-attachment'] = ''; + + } + } + + if ( editorDoc ) { + + const contentBgWrapper = editorDoc.querySelector('.editor-styles-wrapper'); + + if ( contentBgWrapper ) { + contentBgWrapper.style['background-color'] = ''; + contentBgWrapper.style['background-image'] = ''; + contentBgWrapper.style['background-size'] = ''; + contentBgWrapper.style['background-position'] = ''; + contentBgWrapper.style['background-repeat'] = ''; + contentBgWrapper.style['background-attachment'] = ''; + } + } + + return; + } + + let bgObj = (undefined !== wp.data.select('core/editor') && + null !== wp.data.select('core/editor') && + undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && + wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-meta']) + ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-page-background-meta'] + : 'default'; + + let contentObj = (undefined !== wp.data.select('core/editor') && + null !== wp.data.select('core/editor') && + undefined !== wp.data.select('core/editor').getEditedPostAttribute('meta') && + wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-content-background-meta']) + ? wp.data.select('core/editor').getEditedPostAttribute('meta')['ast-content-background-meta'] + : 'default'; + if ( desktopPreview.length > 0 ) { // Get the background object css values and update page background. @@ -517,7 +537,10 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai applyStylesToElement('#editor .edit-post-visual-editor', desktopCSS, document ); // Check current layout. - is_boxed_based_layout = document.querySelector('body').contains( document.querySelector('.ast-separate-container') ); + is_boxed_based_layout = false; + if ( document && document.querySelector('body') ) { + is_boxed_based_layout = document.querySelector('body').classList.contains('ast-separate-container'); + } if ( astraColors.apply_content_bg_fullwidth && ( ! is_boxed_based_layout ) ) { @@ -558,10 +581,13 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai else if ( tabletPreview.length > 0 ) { // Check current layout. - is_boxed_based_layout = document.querySelector('body').contains( document.querySelector('.ast-separate-container') ); + is_boxed_based_layout = false; + if ( document && document.querySelector('body') ) { + is_boxed_based_layout = document.querySelector('body').classList.contains('ast-separate-container'); + } if ( astraColors.apply_content_bg_fullwidth && ( ! is_boxed_based_layout ) ) { - + /** Fullwidth with Content Bg */ // Get the background object css values and update page content background. const tabletContentCSS = astraGetResponsiveBackgroundObj(contentObj, 'tablet'); @@ -571,7 +597,7 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai applyStylesToElement('#editor .edit-post-visual-editor', {'background-color' : '#363636'}, document ); } else if ( ! astraColors.apply_content_bg_fullwidth && ( ! is_boxed_based_layout ) ) { - + /** Fullwidth with Page Bg */ // Get the background object css values and update page background. const tabletCSS = astraGetResponsiveBackgroundObj(bgObj, 'tablet'); @@ -579,7 +605,7 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai } else if ( is_boxed_based_layout ) { - + /** Boxed Layouts with Content Bg & Page Bg */ // Get the background object css values and update page background. const tabletCSS = astraGetResponsiveBackgroundObj(bgObj, 'tablet'); @@ -594,10 +620,13 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai else if ( mobilePreview.length > 0 ) { // Check current layout. - is_boxed_based_layout = document.querySelector('body').contains( document.querySelector('.ast-separate-container') ); + is_boxed_based_layout = false; + if ( document && document.querySelector('body') ) { + is_boxed_based_layout = document.querySelector('body').classList.contains('ast-separate-container'); + } if ( astraColors.apply_content_bg_fullwidth && ( ! is_boxed_based_layout ) ) { - + /** Fullwidth with Content Bg */ // Get the background object css values and update page content background. const mobileContentCSS = astraGetResponsiveBackgroundObj(contentObj, 'mobile'); @@ -607,7 +636,7 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai applyStylesToElement('#editor .edit-post-visual-editor', {'background-color' : '#363636'}, document ); } else if ( ! astraColors.apply_content_bg_fullwidth && ( ! is_boxed_based_layout ) ) { - + /** Fullwidth with Page Bg */ // Get the background object css values and update page background. const mobileCSS = astraGetResponsiveBackgroundObj(bgObj, 'mobile'); @@ -615,7 +644,7 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai } else if ( is_boxed_based_layout ) { - + /** Boxed Layouts with Content Bg & Page Bg */ // Get the background object css values and update page background. const mobileCSS = astraGetResponsiveBackgroundObj(bgObj, 'mobile'); @@ -628,25 +657,23 @@ const updatePageBackground = ( apply_customizer_default = false, isUnboxedContai } } - } /* * Dynamically applies styles to DOM element. */ -function applyStylesToElement( selector, styles, docObj ) { - - const element = docObj.querySelector(selector); - - // Remove any prior cache values if set already. - element.style.backgroundImage = 'none'; - - if (element) { - Object.keys(styles).forEach((property) => { - element.style[property] = styles[property]; - }); - } else { - console.error(`Element with selector "${selector}" not found.`); +function applyStylesToElement( selector, styles, docObj ) { + if ( docObj ) { + const element = docObj.querySelector(selector); + if (element) { + // Remove any prior cache values if set already. + element.style.backgroundImage = 'none'; + Object.keys(styles).forEach((property) => { + element.style[property] = styles[property]; + }); + } else { + console.error(`Element with selector "${selector}" not found.`); + } } } diff --git a/wp-content/themes/astra/inc/assets/js/customizer-preview.js b/wp-content/themes/astra/inc/assets/js/customizer-preview.js index e86183735..ae6dbc934 100644 --- a/wp-content/themes/astra/inc/assets/js/customizer-preview.js +++ b/wp-content/themes/astra/inc/assets/js/customizer-preview.js @@ -1,347 +1,347 @@ -( function( $, api ) { - var $document = $( document ); - - wp.customize.bind( 'preview-ready', function() { - - var defaultTarget = window.parent === window ? null : window.parent; - $document.on( - 'click', - '.site-header-focus-item .item-customizer-focus, .builder-item-focus .edit-row-action', - function(e) { - - e.preventDefault(); - e.stopPropagation(); - var p = $( this ).closest( '.site-header-focus-item' ); - var section_id = p.attr( 'data-section' ) || ''; - if ( section_id ) { - if ( defaultTarget.wp.customize.section( section_id ) ) { - defaultTarget.wp.customize.section( section_id ).focus(); - } - } - } - ); - - $document.on( - 'click', - '.site-footer-focus-item .item-customizer-focus', - function(e) { - - e.preventDefault(); - e.stopPropagation(); - var p = $( this ).closest( '.site-footer-focus-item' ); - var section_id = p.attr( 'data-section' ) || ''; - if ( section_id ) { - if ( defaultTarget.wp.customize.section( section_id ) ) { - defaultTarget.wp.customize.section( section_id ).focus(); - } - } - } - ); - - $document.on( - 'click', - '.customizer-navigate-on-focus', - function(e) { - e.preventDefault(); - e.stopPropagation(); - - const currentElement = $( this ).closest( '.customizer-navigate-on-focus' ); - const section_id = currentElement.attr( 'data-section' ) || ''; - const type = currentElement.attr( 'data-type' ) ? currentElement.attr( 'data-type' ) : 'section'; - - if ( section_id && type ) { - - if( 'section' === type ) { - if ( defaultTarget.wp.customize.section( section_id ) ) { - defaultTarget.wp.customize.section( section_id ).focus(); - } - } - - if( 'control' === type ) { - if ( defaultTarget.wp.customize.control( section_id ) ) { - defaultTarget.wp.customize.control( section_id ).focus(); - } - } - - if( 'panel' === type ) { - if ( defaultTarget.wp.customize.panel( section_id ) ) { - defaultTarget.wp.customize.panel( section_id ).focus(); - } - } - - } - } - ); - - /** - * Ajax quantity input show. - */ - wp.customize( 'astra-settings[woo-header-cart-click-action]', function( setting ) { - setting.bind( function( action ) { - $( document.body ).trigger( 'wc_fragment_refresh' ); - } ); - } ); - - /** - * Register partial refresh events at once asynchronously. - */ - wp.customize.preview.bind( 'active', function() { - var partials = $.extend({}, astraCustomizer.dynamic_partial_options), key; - var register_partial = async function () { - for ( key in partials) { - wp.customize.selectiveRefresh.partial.add( - new wp.customize.selectiveRefresh.Partial( - key, - _.extend({params: partials[key]}, partials[key]) - ) - ); - await null; - } - } - register_partial(); - }); - - } ); - - /** - * Inline logo and title css only. - */ - wp.customize( 'astra-settings[logo-title-inline]', function( value ) { - value.bind( function( is_checked ) { - jQuery('#masthead').toggleClass( 'ast-logo-title-inline', is_checked ); - } ); - } ); - -} )( jQuery, wp ); - -/** - * Apply Advanced CSS for the element - * - * @param string section Section ID. - * @param string selector Base Selector. - */ -function astra_builder_advanced_css( section, selector ) { - - var tablet_break_point = astraBuilderPreview.tablet_break_point || 768, - mobile_break_point = astraBuilderPreview.mobile_break_point || 544; - - // Padding. - wp.customize( 'astra-settings[' + section + '-padding]', function( value ) { - value.bind( function( padding ) { - - if( ! padding.hasOwnProperty('desktop') ) { - return - } - - if( - padding.desktop.bottom != '' || padding.desktop.top != '' || padding.desktop.left != '' || padding.desktop.right != '' || - padding.tablet.bottom != '' || padding.tablet.top != '' || padding.tablet.left != '' || padding.tablet.right != '' || - padding.mobile.bottom != '' || padding.mobile.top != '' || padding.mobile.left != '' || padding.mobile.right != '' - ) { - var dynamicStyle = ''; - dynamicStyle += selector + ' {'; - dynamicStyle += 'padding-left: ' + padding['desktop']['left'] + padding['desktop-unit'] + ';'; - dynamicStyle += 'padding-right: ' + padding['desktop']['right'] + padding['desktop-unit'] + ';'; - dynamicStyle += 'padding-top: ' + padding['desktop']['top'] + padding['desktop-unit'] + ';'; - dynamicStyle += 'padding-bottom: ' + padding['desktop']['bottom'] + padding['desktop-unit'] + ';'; - dynamicStyle += '} '; - - dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {'; - dynamicStyle += selector + ' {'; - dynamicStyle += 'padding-left: ' + padding['tablet']['left'] + padding['tablet-unit'] + ';'; - dynamicStyle += 'padding-right: ' + padding['tablet']['right'] + padding['tablet-unit'] + ';'; - dynamicStyle += 'padding-top: ' + padding['tablet']['top'] + padding['tablet-unit'] + ';'; - dynamicStyle += 'padding-bottom: ' + padding['tablet']['bottom'] + padding['tablet-unit'] + ';'; - dynamicStyle += '} '; - dynamicStyle += '} '; - - dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {'; - dynamicStyle += selector + ' {'; - dynamicStyle += 'padding-left: ' + padding['mobile']['left'] + padding['mobile-unit'] + ';'; - dynamicStyle += 'padding-right: ' + padding['mobile']['right'] + padding['mobile-unit'] + ';'; - dynamicStyle += 'padding-top: ' + padding['mobile']['top'] + padding['mobile-unit'] + ';'; - dynamicStyle += 'padding-bottom: ' + padding['mobile']['bottom'] + padding['mobile-unit'] + ';'; - dynamicStyle += '} '; - dynamicStyle += '} '; - astra_add_dynamic_css( section + '-padding-toggle-button', dynamicStyle ); - } else { - astra_add_dynamic_css( section + '-padding-toggle-button', '' ); - } - } ); - } ); - - // Margin. - wp.customize( 'astra-settings[' + section + '-margin]', function( value ) { - value.bind( function( margin ) { - - if( ! margin.hasOwnProperty('desktop') ) { - return - } - - if( - margin.desktop.bottom != '' || margin.desktop.top != '' || margin.desktop.left != '' || margin.desktop.right != '' || - margin.tablet.bottom != '' || margin.tablet.top != '' || margin.tablet.left != '' || margin.tablet.right != '' || - margin.mobile.bottom != '' || margin.mobile.top != '' || margin.mobile.left != '' || margin.mobile.right != '' - ) { - var dynamicStyle = ''; - dynamicStyle += selector + ' {'; - dynamicStyle += 'margin-left: ' + margin['desktop']['left'] + margin['desktop-unit'] + ';'; - dynamicStyle += 'margin-right: ' + margin['desktop']['right'] + margin['desktop-unit'] + ';'; - dynamicStyle += 'margin-top: ' + margin['desktop']['top'] + margin['desktop-unit'] + ';'; - dynamicStyle += 'margin-bottom: ' + margin['desktop']['bottom'] + margin['desktop-unit'] + ';'; - dynamicStyle += '} '; - - dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {'; - dynamicStyle += selector + ' {'; - dynamicStyle += 'margin-left: ' + margin['tablet']['left'] + margin['tablet-unit'] + ';'; - dynamicStyle += 'margin-right: ' + margin['tablet']['right'] + margin['tablet-unit'] + ';'; - dynamicStyle += 'margin-top: ' + margin['tablet']['top'] + margin['tablet-unit'] + ';'; - dynamicStyle += 'margin-bottom: ' + margin['tablet']['bottom'] + margin['tablet-unit'] + ';'; - dynamicStyle += '} '; - dynamicStyle += '} '; - - dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {'; - dynamicStyle += selector + ' {'; - dynamicStyle += 'margin-left: ' + margin['mobile']['left'] + margin['mobile-unit'] + ';'; - dynamicStyle += 'margin-right: ' + margin['mobile']['right'] + margin['mobile-unit'] + ';'; - dynamicStyle += 'margin-top: ' + margin['mobile']['top'] + margin['mobile-unit'] + ';'; - dynamicStyle += 'margin-bottom: ' + margin['mobile']['bottom'] + margin['mobile-unit'] + ';'; - dynamicStyle += '} '; - dynamicStyle += '} '; - astra_add_dynamic_css( section + '-margin-toggle-button', dynamicStyle ); - } else { - astra_add_dynamic_css( section + '-margin-toggle-button', '' ); - } - } ); - } ); - -} -// Single Post Content Width -wp.customize( 'astra-settings[blog-single-width]', function( value ) { - value.bind( function( value ) { - - var single_post_max_width = wp.customize('astra-settings[blog-single-max-width]').get(); - - var dynamicStyle = ''; - - if ( 'custom' === value ) { - - dynamicStyle += '.single-post .site-content > .ast-container {'; - dynamicStyle += 'max-width: ' + single_post_max_width + 'px;'; - dynamicStyle += '} '; - } - else{ - wp.customize.preview.send( 'refresh' ); - } - astra_add_dynamic_css( 'blog-single-width', dynamicStyle ); - } ); -} ); - -// Blog Post Content Width -wp.customize( 'astra-settings[blog-width]', function( value ) { - value.bind( function( value ) { - - var blog_max_width = wp.customize('astra-settings[blog-max-width]').get(); - - var dynamicStyle = ''; - - if ( 'custom' === value ) { - - dynamicStyle += '.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container {'; - dynamicStyle += 'max-width: ' + blog_max_width + 'px;'; - dynamicStyle += '} '; - } - else{ - wp.customize.preview.send( 'refresh' ); - } - astra_add_dynamic_css( 'blog-width', dynamicStyle ); - } ); -} ); - -// Blog Post Content Width -wp.customize( 'astra-settings[edd-archive-grids]', function( value ) { - value.bind( function( value ) { - - for ( var i = 1; i < 7; i++ ) { - jQuery('body').removeClass( 'columns-' + i ); - jQuery('body').removeClass( 'tablet-columns-' + i ); - jQuery('body').removeClass( 'mobile-columns-' + i ); - } - - if ( jQuery('body').hasClass( 'ast-edd-archive-page' ) ) { - - jQuery('body').addClass( 'columns-' + value['desktop'] ); - jQuery('body').addClass( 'tablet-columns-' + value['tablet'] ); - jQuery('body').addClass( 'mobile-columns-' + value['mobile'] ); - } - } ); -} ); - - -// Blog Post Content Width -wp.customize( 'astra-settings[edd-archive-width]', function( value ) { - value.bind( function( value ) { - - var edd_archive_max_width = wp.customize('astra-settings[edd-archive-max-width]').get(); - edd_archive_max_width = ( 'custom' === value ) ? edd_archive_max_width : edd_archive_max_width + 40; - - var dynamicStyle = ''; - dynamicStyle += '.ast-edd-archive-page .site-content > .ast-container {'; - dynamicStyle += 'max-width: ' + edd_archive_max_width + 'px;'; - dynamicStyle += '} '; - - astra_add_dynamic_css( 'edd-archive-width', dynamicStyle ); - } ); -} ); - -// WooCommerce store notice color configs. -astra_css( 'astra-settings[store-notice-text-color]', 'color', 'body p.demo_store, body .woocommerce-store-notice, body p.demo_store a, body .woocommerce-store-notice a' ); -astra_css( 'astra-settings[store-notice-background-color]', 'background-color', 'body p.demo_store, body .woocommerce-store-notice, body p.demo_store a, body .woocommerce-store-notice a' ); - -// WooCommerce store notice position preview. -wp.customize( 'astra-settings[store-notice-position]', function( setting ) { - setting.bind( function( position ) { - if( 'hang-over-top' === position ) { - wp.customize.preview.send( 'refresh' ); - } else { - jQuery('body').removeClass( 'ast-woocommerce-store-notice-hanged' ); - jQuery('.woocommerce-store-notice').attr( 'data-position', position ); - } - } ); -} ); - -wp.customize( 'astra-settings[blog-meta-date-type]', function( setting ) { - setting.bind( function( val ) { - wp.customize.preview.send( 'refresh' ); - } ); -} ); -wp.customize( 'astra-settings[blog-meta-date-format]', function( setting ) { - setting.bind( function( val ) { - wp.customize.preview.send( 'refresh' ); - } ); -} ); - -// Global Typography Refresh - START -const bodyFontFamily = [ - 'body-font-family', - 'body-font-variant', - 'font-size-body', - 'body-font-weight', - 'body-font-extras', - 'headings-font-family', - 'headings-font-variant', - 'headings-font-weight', - 'headings-font-extras' -]; - -bodyFontFamily.forEach(element => { - // Body Font Family - wp.customize( 'astra-settings['+element+']', function( value ) { - value.bind( function( value ) { - wp.customize.preview.send( 'refresh' ); - } ); - } ); - -}); - -// Global Typography Refresh - END +( function( $, api ) { + var $document = $( document ); + + wp.customize.bind( 'preview-ready', function() { + + var defaultTarget = window.parent === window ? null : window.parent; + $document.on( + 'click', + '.site-header-focus-item .item-customizer-focus, .builder-item-focus .edit-row-action', + function(e) { + + e.preventDefault(); + e.stopPropagation(); + var p = $( this ).closest( '.site-header-focus-item' ); + var section_id = p.attr( 'data-section' ) || ''; + if ( section_id ) { + if ( defaultTarget.wp.customize.section( section_id ) ) { + defaultTarget.wp.customize.section( section_id ).focus(); + } + } + } + ); + + $document.on( + 'click', + '.site-footer-focus-item .item-customizer-focus', + function(e) { + + e.preventDefault(); + e.stopPropagation(); + var p = $( this ).closest( '.site-footer-focus-item' ); + var section_id = p.attr( 'data-section' ) || ''; + if ( section_id ) { + if ( defaultTarget.wp.customize.section( section_id ) ) { + defaultTarget.wp.customize.section( section_id ).focus(); + } + } + } + ); + + $document.on( + 'click', + '.customizer-navigate-on-focus', + function(e) { + e.preventDefault(); + e.stopPropagation(); + + const currentElement = $( this ).closest( '.customizer-navigate-on-focus' ); + const section_id = currentElement.attr( 'data-section' ) || ''; + const type = currentElement.attr( 'data-type' ) ? currentElement.attr( 'data-type' ) : 'section'; + + if ( section_id && type ) { + + if( 'section' === type ) { + if ( defaultTarget.wp.customize.section( section_id ) ) { + defaultTarget.wp.customize.section( section_id ).focus(); + } + } + + if( 'control' === type ) { + if ( defaultTarget.wp.customize.control( section_id ) ) { + defaultTarget.wp.customize.control( section_id ).focus(); + } + } + + if( 'panel' === type ) { + if ( defaultTarget.wp.customize.panel( section_id ) ) { + defaultTarget.wp.customize.panel( section_id ).focus(); + } + } + + } + } + ); + + /** + * Ajax quantity input show. + */ + wp.customize( 'astra-settings[woo-header-cart-click-action]', function( setting ) { + setting.bind( function( action ) { + $( document.body ).trigger( 'wc_fragment_refresh' ); + } ); + } ); + + /** + * Register partial refresh events at once asynchronously. + */ + wp.customize.preview.bind( 'active', function() { + var partials = $.extend({}, astraCustomizer.dynamic_partial_options), key; + var register_partial = async function () { + for ( key in partials) { + wp.customize.selectiveRefresh.partial.add( + new wp.customize.selectiveRefresh.Partial( + key, + _.extend({params: partials[key]}, partials[key]) + ) + ); + await null; + } + } + register_partial(); + }); + + } ); + + /** + * Inline logo and title css only. + */ + wp.customize( 'astra-settings[logo-title-inline]', function( value ) { + value.bind( function( is_checked ) { + jQuery('#masthead').toggleClass( 'ast-logo-title-inline', is_checked ); + } ); + } ); + +} )( jQuery, wp ); + +/** + * Apply Advanced CSS for the element + * + * @param string section Section ID. + * @param string selector Base Selector. + */ +function astra_builder_advanced_css( section, selector ) { + + var tablet_break_point = astraBuilderPreview.tablet_break_point || 768, + mobile_break_point = astraBuilderPreview.mobile_break_point || 544; + + // Padding. + wp.customize( 'astra-settings[' + section + '-padding]', function( value ) { + value.bind( function( padding ) { + + if( ! padding.hasOwnProperty('desktop') ) { + return + } + + if( + padding.desktop.bottom != '' || padding.desktop.top != '' || padding.desktop.left != '' || padding.desktop.right != '' || + padding.tablet.bottom != '' || padding.tablet.top != '' || padding.tablet.left != '' || padding.tablet.right != '' || + padding.mobile.bottom != '' || padding.mobile.top != '' || padding.mobile.left != '' || padding.mobile.right != '' + ) { + var dynamicStyle = ''; + dynamicStyle += selector + ' {'; + dynamicStyle += 'padding-left: ' + padding['desktop']['left'] + padding['desktop-unit'] + ';'; + dynamicStyle += 'padding-right: ' + padding['desktop']['right'] + padding['desktop-unit'] + ';'; + dynamicStyle += 'padding-top: ' + padding['desktop']['top'] + padding['desktop-unit'] + ';'; + dynamicStyle += 'padding-bottom: ' + padding['desktop']['bottom'] + padding['desktop-unit'] + ';'; + dynamicStyle += '} '; + + dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {'; + dynamicStyle += selector + ' {'; + dynamicStyle += 'padding-left: ' + padding['tablet']['left'] + padding['tablet-unit'] + ';'; + dynamicStyle += 'padding-right: ' + padding['tablet']['right'] + padding['tablet-unit'] + ';'; + dynamicStyle += 'padding-top: ' + padding['tablet']['top'] + padding['tablet-unit'] + ';'; + dynamicStyle += 'padding-bottom: ' + padding['tablet']['bottom'] + padding['tablet-unit'] + ';'; + dynamicStyle += '} '; + dynamicStyle += '} '; + + dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {'; + dynamicStyle += selector + ' {'; + dynamicStyle += 'padding-left: ' + padding['mobile']['left'] + padding['mobile-unit'] + ';'; + dynamicStyle += 'padding-right: ' + padding['mobile']['right'] + padding['mobile-unit'] + ';'; + dynamicStyle += 'padding-top: ' + padding['mobile']['top'] + padding['mobile-unit'] + ';'; + dynamicStyle += 'padding-bottom: ' + padding['mobile']['bottom'] + padding['mobile-unit'] + ';'; + dynamicStyle += '} '; + dynamicStyle += '} '; + astra_add_dynamic_css( section + '-padding-toggle-button', dynamicStyle ); + } else { + astra_add_dynamic_css( section + '-padding-toggle-button', '' ); + } + } ); + } ); + + // Margin. + wp.customize( 'astra-settings[' + section + '-margin]', function( value ) { + value.bind( function( margin ) { + + if( ! margin.hasOwnProperty('desktop') ) { + return + } + + if( + margin.desktop.bottom != '' || margin.desktop.top != '' || margin.desktop.left != '' || margin.desktop.right != '' || + margin.tablet.bottom != '' || margin.tablet.top != '' || margin.tablet.left != '' || margin.tablet.right != '' || + margin.mobile.bottom != '' || margin.mobile.top != '' || margin.mobile.left != '' || margin.mobile.right != '' + ) { + var dynamicStyle = ''; + dynamicStyle += selector + ' {'; + dynamicStyle += 'margin-left: ' + margin['desktop']['left'] + margin['desktop-unit'] + ';'; + dynamicStyle += 'margin-right: ' + margin['desktop']['right'] + margin['desktop-unit'] + ';'; + dynamicStyle += 'margin-top: ' + margin['desktop']['top'] + margin['desktop-unit'] + ';'; + dynamicStyle += 'margin-bottom: ' + margin['desktop']['bottom'] + margin['desktop-unit'] + ';'; + dynamicStyle += '} '; + + dynamicStyle += '@media (max-width: ' + tablet_break_point + 'px) {'; + dynamicStyle += selector + ' {'; + dynamicStyle += 'margin-left: ' + margin['tablet']['left'] + margin['tablet-unit'] + ';'; + dynamicStyle += 'margin-right: ' + margin['tablet']['right'] + margin['tablet-unit'] + ';'; + dynamicStyle += 'margin-top: ' + margin['tablet']['top'] + margin['tablet-unit'] + ';'; + dynamicStyle += 'margin-bottom: ' + margin['tablet']['bottom'] + margin['tablet-unit'] + ';'; + dynamicStyle += '} '; + dynamicStyle += '} '; + + dynamicStyle += '@media (max-width: ' + mobile_break_point + 'px) {'; + dynamicStyle += selector + ' {'; + dynamicStyle += 'margin-left: ' + margin['mobile']['left'] + margin['mobile-unit'] + ';'; + dynamicStyle += 'margin-right: ' + margin['mobile']['right'] + margin['mobile-unit'] + ';'; + dynamicStyle += 'margin-top: ' + margin['mobile']['top'] + margin['mobile-unit'] + ';'; + dynamicStyle += 'margin-bottom: ' + margin['mobile']['bottom'] + margin['mobile-unit'] + ';'; + dynamicStyle += '} '; + dynamicStyle += '} '; + astra_add_dynamic_css( section + '-margin-toggle-button', dynamicStyle ); + } else { + astra_add_dynamic_css( section + '-margin-toggle-button', '' ); + } + } ); + } ); + +} +// Single Post Content Width +wp.customize( 'astra-settings[blog-single-width]', function( value ) { + value.bind( function( value ) { + + var single_post_max_width = wp.customize('astra-settings[blog-single-max-width]').get(); + + var dynamicStyle = ''; + + if ( 'custom' === value ) { + + dynamicStyle += '.single-post .site-content > .ast-container {'; + dynamicStyle += 'max-width: ' + single_post_max_width + 'px;'; + dynamicStyle += '} '; + } + else{ + wp.customize.preview.send( 'refresh' ); + } + astra_add_dynamic_css( 'blog-single-width', dynamicStyle ); + } ); +} ); + +// Blog Post Content Width +wp.customize( 'astra-settings[blog-width]', function( value ) { + value.bind( function( value ) { + + var blog_max_width = wp.customize('astra-settings[blog-max-width]').get(); + + var dynamicStyle = ''; + + if ( 'custom' === value ) { + + dynamicStyle += '.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container {'; + dynamicStyle += 'max-width: ' + blog_max_width + 'px;'; + dynamicStyle += '} '; + } + else{ + wp.customize.preview.send( 'refresh' ); + } + astra_add_dynamic_css( 'blog-width', dynamicStyle ); + } ); +} ); + +// Blog Post Content Width +wp.customize( 'astra-settings[edd-archive-grids]', function( value ) { + value.bind( function( value ) { + + for ( var i = 1; i < 7; i++ ) { + jQuery('body').removeClass( 'columns-' + i ); + jQuery('body').removeClass( 'tablet-columns-' + i ); + jQuery('body').removeClass( 'mobile-columns-' + i ); + } + + if ( jQuery('body').hasClass( 'ast-edd-archive-page' ) ) { + + jQuery('body').addClass( 'columns-' + value['desktop'] ); + jQuery('body').addClass( 'tablet-columns-' + value['tablet'] ); + jQuery('body').addClass( 'mobile-columns-' + value['mobile'] ); + } + } ); +} ); + + +// Blog Post Content Width +wp.customize( 'astra-settings[edd-archive-width]', function( value ) { + value.bind( function( value ) { + + var edd_archive_max_width = wp.customize('astra-settings[edd-archive-max-width]').get(); + edd_archive_max_width = ( 'custom' === value ) ? edd_archive_max_width : edd_archive_max_width + 40; + + var dynamicStyle = ''; + dynamicStyle += '.ast-edd-archive-page .site-content > .ast-container {'; + dynamicStyle += 'max-width: ' + edd_archive_max_width + 'px;'; + dynamicStyle += '} '; + + astra_add_dynamic_css( 'edd-archive-width', dynamicStyle ); + } ); +} ); + +// WooCommerce store notice color configs. +astra_css( 'astra-settings[store-notice-text-color]', 'color', 'body p.demo_store, body .woocommerce-store-notice, body p.demo_store a, body .woocommerce-store-notice a' ); +astra_css( 'astra-settings[store-notice-background-color]', 'background-color', 'body p.demo_store, body .woocommerce-store-notice, body p.demo_store a, body .woocommerce-store-notice a' ); + +// WooCommerce store notice position preview. +wp.customize( 'astra-settings[store-notice-position]', function( setting ) { + setting.bind( function( position ) { + if( 'hang-over-top' === position ) { + wp.customize.preview.send( 'refresh' ); + } else { + jQuery('body').removeClass( 'ast-woocommerce-store-notice-hanged' ); + jQuery('.woocommerce-store-notice').attr( 'data-position', position ); + } + } ); +} ); + +wp.customize( 'astra-settings[blog-meta-date-type]', function( setting ) { + setting.bind( function( val ) { + wp.customize.preview.send( 'refresh' ); + } ); +} ); +wp.customize( 'astra-settings[blog-meta-date-format]', function( setting ) { + setting.bind( function( val ) { + wp.customize.preview.send( 'refresh' ); + } ); +} ); + +// Global Typography Refresh - START +const bodyFontFamily = [ + 'body-font-family', + 'body-font-variant', + 'font-size-body', + 'body-font-weight', + 'body-font-extras', + 'headings-font-family', + 'headings-font-variant', + 'headings-font-weight', + 'headings-font-extras' +]; + +bodyFontFamily.forEach(element => { + // Body Font Family + wp.customize( 'astra-settings['+element+']', function( value ) { + value.bind( function( value ) { + wp.customize.preview.send( 'refresh' ); + } ); + } ); + +}); + +// Global Typography Refresh - END diff --git a/wp-content/themes/astra/inc/blog/blog-config.php b/wp-content/themes/astra/inc/blog/blog-config.php index b3c714dc7..c78a2ef9c 100644 --- a/wp-content/themes/astra/inc/blog/blog-config.php +++ b/wp-content/themes/astra/inc/blog/blog-config.php @@ -1,589 +1,589 @@ -slug, $tax_type ); - - // If there was an error, continue to the next term. - if ( is_wp_error( $term_link ) ) { - continue; - } - - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $term_links[] = '' . esc_html( $term->name ) . ''; - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - } - - $all_terms = join( ', ', $term_links ); - $output_str = '' . $all_terms . ''; - - return ( 1 != $loop_count ) ? ' ' . $separator . ' ' . $output_str : $output_str; - } - - return ''; -} - -/** - * Common Functions for Blog and Single Blog - * - * @return post meta - */ -if ( ! function_exists( 'astra_get_post_meta' ) ) { - - /** - * Post meta - * - * @param array $post_meta Post meta. - * @param string $separator Separator. - * @return string post meta markup. - */ - function astra_get_post_meta( $post_meta, $separator = '/' ) { - - $output_str = ''; - $loop_count = 1; - - $separator = apply_filters( 'astra_post_meta_separator', $separator ); - - foreach ( $post_meta as $meta_value ) { - - switch ( $meta_value ) { - - case 'author': - $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; - $output_str .= esc_html( astra_default_strings( 'string-blog-meta-author-by', false ) ) . astra_post_author(); - break; - - case 'date': - $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; - $output_str .= astra_post_date(); - break; - - case 'category': - $category = astra_post_categories(); - if ( '' != $category ) { - $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; - $output_str .= $category; - } - break; - - case 'tag': - $tags = astra_post_tags(); - if ( '' != $tags ) { - $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; - $output_str .= $tags; - } - break; - - case 'comments': - $comment = astra_post_comments(); - if ( '' != $comment ) { - $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; - $output_str .= $comment; - } - break; - default: - $output_str = apply_filters( 'astra_meta_case_' . $meta_value, $output_str, $loop_count, $separator ); - - } - - if ( strpos( $meta_value, '-taxonomy' ) !== false ) { - $output_str .= astra_get_dynamic_taxonomy( $meta_value, $loop_count, $separator ); - } - - $loop_count ++; - } - - return $output_str; - } -} - -/** - * Get post format as per new configurations set in customizer. - * - * @return string HTML markup for date span. - * @since 4.1.0 - */ -function astra_get_dynamic_post_format() { - $post_type = strval( get_post_type() ); - $is_singular = is_singular() ? true : false; - $date_format_option = $is_singular ? astra_get_option( 'ast-dynamic-single-' . esc_attr( $post_type ) . '-date-format', '' ) : astra_get_option( 'blog-meta-date-format', '' ); - $date_type = $is_singular ? astra_get_option( 'ast-dynamic-single-' . esc_attr( $post_type ) . '-meta-date-type', 'published' ) : astra_get_option( 'blog-meta-date-type', 'published' ); - $date_format = apply_filters( 'astra_post_date_format', ( '' === $date_format_option ) ? get_option( 'date_format' ) : $date_format_option ); - - $published_date = strval( get_the_date( $date_format ) ); - $modified_date = strval( get_the_modified_date( $date_format ) ); - - if ( 'updated' === $date_type ) { - $class = 'updated'; - $itemprop = 'dateModified'; - $date = sprintf( - esc_html( '%s' ), - $modified_date - ); - } else { - $class = 'published'; - $itemprop = 'datePublished'; - $date = sprintf( - esc_html( '%s' ), - $published_date - ); - } - - return sprintf( ' %3$s ', $class, $itemprop, $date ); -} - -/** - * Function to get Date of Post - * - * @since 1.0.0 - * @return html - */ -if ( ! function_exists( 'astra_post_date' ) ) { - - /** - * Function to get Date of Post - * - * @return html Markup. - */ - function astra_post_date() { - $output = ''; - $output .= ''; - $output .= astra_get_dynamic_post_format(); - $output .= ''; - return apply_filters( 'astra_post_date', $output ); - } -} - -/** - * Function to get Author name. - * - * @return null|string $author_name Author name. - * @since 4.0.0 - */ -function astra_post_author_name() { - $author_name = ''; - $get_the_author = get_the_author(); - if ( empty( $get_the_author ) ) { - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - global $post; - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( is_object( $post ) && isset( $post->post_author ) ) { - $user_id = $post->post_author; - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - global $authordata; - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $author_data = ''; - if ( ! $authordata ) { - $author_data = get_userdata( $user_id ); - } - - $author_name = esc_attr( ! empty( $author_data ) ? $author_data->display_name : '' ); - } - } else { - $author_name = get_the_author(); - } - - return $author_name; -} - -/** - * Function to get Author of Post - * - * @since 1.0.0 - * @return html - */ -if ( ! function_exists( 'astra_post_author' ) ) { - - /** - * Function to get Author of Post - * - * @param string $output_filter Filter string. - * @return html Markup. - */ - function astra_post_author( $output_filter = '' ) { - - global $post; - if ( isset( $post->post_author ) ) { - $author_id = $post->post_author; - } elseif ( is_callable( 'get_the_author_meta' ) ) { - $author_id = get_the_author_meta( 'ID' ); - } else { - $author_id = 1; - } - - ob_start(); - - echo ' 'posted-by vcard author', - ) - ); - echo '>'; - // Translators: Author Name. ?> - - - - ' . the_title( '', '', false ) . ' ' . $read_more_text . '' - ); - - $output = ' …

' . $post_link . '

'; - - return apply_filters( 'astra_post_link', $output, $output_filter ); - } -} -add_filter( 'excerpt_more', 'astra_post_link', 20 ); - -/** - * Function to get Number of Comments of Post - * - * @since 1.0.0 - * @return html - */ -if ( ! function_exists( 'astra_post_comments' ) ) { - - /** - * Function to get Number of Comments of Post - * - * @param string $output_filter Output filter. - * @return html Markup. - */ - function astra_post_comments( $output_filter = '' ) { - - $output = ''; - - ob_start(); - if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) { - ?> - - - - - ' . $tags_list . ''; - } - - return apply_filters( 'astra_post_tags', $output, $output_filter ); - } -} - -/** - * Function to get Categories of Post - * - * @since 1.0.0 - * @return html - */ -if ( ! function_exists( 'astra_post_categories' ) ) { - - /** - * Function to get Categories applied of Post - * - * @param string $output_filter Output filter. - * @return html Markup. - */ - function astra_post_categories( $output_filter = '' ) { - - $output = ''; - - /* translators: used between list items, there is a space after the comma */ - $categories_list = get_the_category_list( __( ', ', 'astra' ) ); - - if ( $categories_list ) { - $output .= '' . $categories_list . ''; - } - - return apply_filters( 'astra_post_categories', $output, $output_filter ); - } -} - -/** - * Display classes for primary div - * - * @since 1.0.0 - */ -if ( ! function_exists( 'astra_blog_layout_class' ) ) { - - /** - * Layout class - * - * @param string $class Class. - */ - function astra_blog_layout_class( $class = '' ) { - - // Separates classes with a single space, collates classes for body element. - echo 'class="' . esc_attr( join( ' ', astra_get_blog_layout_class( $class ) ) ) . '"'; - } -} - -/** - * Retrieve the classes for the body element as an array. - * - * @since 1.0.0 - * @param string|array $class One or more classes to add to the class list. - * @return array Array of classes. - */ -if ( ! function_exists( 'astra_get_blog_layout_class' ) ) { - - /** - * Retrieve the classes for the body element as an array. - * - * @param string $class Class. - */ - function astra_get_blog_layout_class( $class = '' ) { - - // array of class names. - $classes = array(); - - $post_format = get_post_format(); - if ( $post_format ) { - $post_format = 'standard'; - } - - $classes[] = 'ast-post-format-' . $post_format; - - if ( ! has_post_thumbnail() || ! wp_get_attachment_image_src( get_post_thumbnail_id() ) ) { - switch ( $post_format ) { - - case 'aside': - $classes[] = 'ast-no-thumb'; - break; - - case 'image': - $has_image = astra_get_first_image_from_post(); - if ( empty( $has_image ) || is_single() ) { - $classes[] = 'ast-no-thumb'; - } - break; - - case 'video': - $post_featured_data = astra_get_video_from_post( get_the_ID() ); - if ( empty( $post_featured_data ) ) { - $classes[] = 'ast-no-thumb'; - } - break; - - case 'quote': - $classes[] = 'ast-no-thumb'; - break; - - case 'link': - $classes[] = 'ast-no-thumb'; - break; - - case 'gallery': - $post_featured_data = get_post_gallery(); - if ( empty( $post_featured_data ) || is_single() ) { - $classes[] = 'ast-no-thumb'; - } - break; - - case 'audio': - $has_audio = astra_get_audios_from_post( get_the_ID() ); - if ( empty( $has_audio ) || is_single() ) { - $classes[] = 'ast-no-thumb'; - } else { - $classes[] = 'ast-embeded-audio'; - } - break; - - case 'standard': - default: - if ( ! has_post_thumbnail() || ! wp_get_attachment_image_src( get_post_thumbnail_id() ) ) { - $classes[] = 'ast-no-thumb'; - } - break; - } - } - - if ( ! empty( $class ) ) { - if ( ! is_array( $class ) ) { - $class = preg_split( '#\s+#', $class ); - } - $classes = array_merge( $classes, $class ); - } else { - // Ensure that we always coerce class to being an array. - $class = array(); - } - - /** - * Filter primary div class names - */ - $classes = apply_filters( 'astra_blog_layout_class', $classes, $class ); - - $classes = array_map( 'sanitize_html_class', $classes ); - - return array_unique( $classes ); - } -} - -/** - * Function to get Content Read More Link of Post - * - * @since 1.2.7 - * @return html - */ -if ( ! function_exists( 'astra_the_content_more_link' ) ) { - - /** - * Filters the Read More link text. - * - * @param string $more_link_element Read More link element. - * @param string $more_link_text Read More text. - * @return html Markup. - */ - function astra_the_content_more_link( $more_link_element = '', $more_link_text = '' ) { - - $enabled = apply_filters( 'astra_the_content_more_link_enabled', '__return_true' ); - if ( ( is_admin() && ! wp_doing_ajax() ) || ! $enabled ) { - return $more_link_element; - } - - $more_link_text = apply_filters( 'astra_the_content_more_string', __( 'Read More »', 'astra' ) ); - $read_more_classes = apply_filters( 'astra_the_content_more_link_class', array() ); - - $post_link = sprintf( - esc_html( '%s' ), - ' ' . the_title( '', '', false ) . $more_link_text . '' - ); - - $more_link_element = ' …'; - - return apply_filters( 'astra_the_content_more_link', $more_link_element, $more_link_text ); - } -} -add_filter( 'the_content_more_link', 'astra_the_content_more_link', 10, 2 ); +slug, $tax_type ); + + // If there was an error, continue to the next term. + if ( is_wp_error( $term_link ) ) { + continue; + } + + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $term_links[] = '' . esc_html( $term->name ) . ''; + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + } + + $all_terms = join( ', ', $term_links ); + $output_str = '' . $all_terms . ''; + + return ( 1 != $loop_count ) ? ' ' . $separator . ' ' . $output_str : $output_str; + } + + return ''; +} + +/** + * Common Functions for Blog and Single Blog + * + * @return post meta + */ +if ( ! function_exists( 'astra_get_post_meta' ) ) { + + /** + * Post meta + * + * @param array $post_meta Post meta. + * @param string $separator Separator. + * @return string post meta markup. + */ + function astra_get_post_meta( $post_meta, $separator = '/' ) { + + $output_str = ''; + $loop_count = 1; + + $separator = apply_filters( 'astra_post_meta_separator', $separator ); + + foreach ( $post_meta as $meta_value ) { + + switch ( $meta_value ) { + + case 'author': + $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; + $output_str .= esc_html( astra_default_strings( 'string-blog-meta-author-by', false ) ) . astra_post_author(); + break; + + case 'date': + $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; + $output_str .= astra_post_date(); + break; + + case 'category': + $category = astra_post_categories(); + if ( '' != $category ) { + $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; + $output_str .= $category; + } + break; + + case 'tag': + $tags = astra_post_tags(); + if ( '' != $tags ) { + $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; + $output_str .= $tags; + } + break; + + case 'comments': + $comment = astra_post_comments(); + if ( '' != $comment ) { + $output_str .= ( 1 != $loop_count && '' != $output_str ) ? ' ' . $separator . ' ' : ''; + $output_str .= $comment; + } + break; + default: + $output_str = apply_filters( 'astra_meta_case_' . $meta_value, $output_str, $loop_count, $separator ); + + } + + if ( strpos( $meta_value, '-taxonomy' ) !== false ) { + $output_str .= astra_get_dynamic_taxonomy( $meta_value, $loop_count, $separator ); + } + + $loop_count ++; + } + + return $output_str; + } +} + +/** + * Get post format as per new configurations set in customizer. + * + * @return string HTML markup for date span. + * @since 4.1.0 + */ +function astra_get_dynamic_post_format() { + $post_type = strval( get_post_type() ); + $is_singular = is_singular() ? true : false; + $date_format_option = $is_singular ? astra_get_option( 'ast-dynamic-single-' . esc_attr( $post_type ) . '-date-format', '' ) : astra_get_option( 'blog-meta-date-format', '' ); + $date_type = $is_singular ? astra_get_option( 'ast-dynamic-single-' . esc_attr( $post_type ) . '-meta-date-type', 'published' ) : astra_get_option( 'blog-meta-date-type', 'published' ); + $date_format = apply_filters( 'astra_post_date_format', ( '' === $date_format_option ) ? get_option( 'date_format' ) : $date_format_option ); + + $published_date = strval( get_the_date( $date_format ) ); + $modified_date = strval( get_the_modified_date( $date_format ) ); + + if ( 'updated' === $date_type ) { + $class = 'updated'; + $itemprop = 'dateModified'; + $date = sprintf( + esc_html( '%s' ), + $modified_date + ); + } else { + $class = 'published'; + $itemprop = 'datePublished'; + $date = sprintf( + esc_html( '%s' ), + $published_date + ); + } + + return sprintf( ' %3$s ', $class, $itemprop, $date ); +} + +/** + * Function to get Date of Post + * + * @since 1.0.0 + * @return html + */ +if ( ! function_exists( 'astra_post_date' ) ) { + + /** + * Function to get Date of Post + * + * @return html Markup. + */ + function astra_post_date() { + $output = ''; + $output .= ''; + $output .= astra_get_dynamic_post_format(); + $output .= ''; + return apply_filters( 'astra_post_date', $output ); + } +} + +/** + * Function to get Author name. + * + * @return null|string $author_name Author name. + * @since 4.0.0 + */ +function astra_post_author_name() { + $author_name = ''; + $get_the_author = get_the_author(); + if ( empty( $get_the_author ) ) { + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + global $post; + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( is_object( $post ) && isset( $post->post_author ) ) { + $user_id = $post->post_author; + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + global $authordata; + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $author_data = ''; + if ( ! $authordata ) { + $author_data = get_userdata( $user_id ); + } + + $author_name = esc_attr( ! empty( $author_data ) ? $author_data->display_name : '' ); + } + } else { + $author_name = get_the_author(); + } + + return $author_name; +} + +/** + * Function to get Author of Post + * + * @since 1.0.0 + * @return html + */ +if ( ! function_exists( 'astra_post_author' ) ) { + + /** + * Function to get Author of Post + * + * @param string $output_filter Filter string. + * @return html Markup. + */ + function astra_post_author( $output_filter = '' ) { + + global $post; + if ( isset( $post->post_author ) ) { + $author_id = $post->post_author; + } elseif ( is_callable( 'get_the_author_meta' ) ) { + $author_id = get_the_author_meta( 'ID' ); + } else { + $author_id = 1; + } + + ob_start(); + + echo ' 'posted-by vcard author', + ) + ); + echo '>'; + // Translators: Author Name. ?> + + + + ' . the_title( '', '', false ) . ' ' . $read_more_text . '' + ); + + $output = ' …

' . $post_link . '

'; + + return apply_filters( 'astra_post_link', $output, $output_filter ); + } +} +add_filter( 'excerpt_more', 'astra_post_link', 20 ); + +/** + * Function to get Number of Comments of Post + * + * @since 1.0.0 + * @return html + */ +if ( ! function_exists( 'astra_post_comments' ) ) { + + /** + * Function to get Number of Comments of Post + * + * @param string $output_filter Output filter. + * @return html Markup. + */ + function astra_post_comments( $output_filter = '' ) { + + $output = ''; + + ob_start(); + if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) { + ?> + + + + + ' . $tags_list . ''; + } + + return apply_filters( 'astra_post_tags', $output, $output_filter ); + } +} + +/** + * Function to get Categories of Post + * + * @since 1.0.0 + * @return html + */ +if ( ! function_exists( 'astra_post_categories' ) ) { + + /** + * Function to get Categories applied of Post + * + * @param string $output_filter Output filter. + * @return html Markup. + */ + function astra_post_categories( $output_filter = '' ) { + + $output = ''; + + /* translators: used between list items, there is a space after the comma */ + $categories_list = get_the_category_list( __( ', ', 'astra' ) ); + + if ( $categories_list ) { + $output .= '' . $categories_list . ''; + } + + return apply_filters( 'astra_post_categories', $output, $output_filter ); + } +} + +/** + * Display classes for primary div + * + * @since 1.0.0 + */ +if ( ! function_exists( 'astra_blog_layout_class' ) ) { + + /** + * Layout class + * + * @param string $class Class. + */ + function astra_blog_layout_class( $class = '' ) { + + // Separates classes with a single space, collates classes for body element. + echo 'class="' . esc_attr( join( ' ', astra_get_blog_layout_class( $class ) ) ) . '"'; + } +} + +/** + * Retrieve the classes for the body element as an array. + * + * @since 1.0.0 + * @param string|array $class One or more classes to add to the class list. + * @return array Array of classes. + */ +if ( ! function_exists( 'astra_get_blog_layout_class' ) ) { + + /** + * Retrieve the classes for the body element as an array. + * + * @param string $class Class. + */ + function astra_get_blog_layout_class( $class = '' ) { + + // array of class names. + $classes = array(); + + $post_format = get_post_format(); + if ( $post_format ) { + $post_format = 'standard'; + } + + $classes[] = 'ast-post-format-' . $post_format; + + if ( ! has_post_thumbnail() || ! wp_get_attachment_image_src( get_post_thumbnail_id() ) ) { + switch ( $post_format ) { + + case 'aside': + $classes[] = 'ast-no-thumb'; + break; + + case 'image': + $has_image = astra_get_first_image_from_post(); + if ( empty( $has_image ) || is_single() ) { + $classes[] = 'ast-no-thumb'; + } + break; + + case 'video': + $post_featured_data = astra_get_video_from_post( get_the_ID() ); + if ( empty( $post_featured_data ) ) { + $classes[] = 'ast-no-thumb'; + } + break; + + case 'quote': + $classes[] = 'ast-no-thumb'; + break; + + case 'link': + $classes[] = 'ast-no-thumb'; + break; + + case 'gallery': + $post_featured_data = get_post_gallery(); + if ( empty( $post_featured_data ) || is_single() ) { + $classes[] = 'ast-no-thumb'; + } + break; + + case 'audio': + $has_audio = astra_get_audios_from_post( get_the_ID() ); + if ( empty( $has_audio ) || is_single() ) { + $classes[] = 'ast-no-thumb'; + } else { + $classes[] = 'ast-embeded-audio'; + } + break; + + case 'standard': + default: + if ( ! has_post_thumbnail() || ! wp_get_attachment_image_src( get_post_thumbnail_id() ) ) { + $classes[] = 'ast-no-thumb'; + } + break; + } + } + + if ( ! empty( $class ) ) { + if ( ! is_array( $class ) ) { + $class = preg_split( '#\s+#', $class ); + } + $classes = array_merge( $classes, $class ); + } else { + // Ensure that we always coerce class to being an array. + $class = array(); + } + + /** + * Filter primary div class names + */ + $classes = apply_filters( 'astra_blog_layout_class', $classes, $class ); + + $classes = array_map( 'sanitize_html_class', $classes ); + + return array_unique( $classes ); + } +} + +/** + * Function to get Content Read More Link of Post + * + * @since 1.2.7 + * @return html + */ +if ( ! function_exists( 'astra_the_content_more_link' ) ) { + + /** + * Filters the Read More link text. + * + * @param string $more_link_element Read More link element. + * @param string $more_link_text Read More text. + * @return html Markup. + */ + function astra_the_content_more_link( $more_link_element = '', $more_link_text = '' ) { + + $enabled = apply_filters( 'astra_the_content_more_link_enabled', '__return_true' ); + if ( ( is_admin() && ! wp_doing_ajax() ) || ! $enabled ) { + return $more_link_element; + } + + $more_link_text = apply_filters( 'astra_the_content_more_string', __( 'Read More »', 'astra' ) ); + $read_more_classes = apply_filters( 'astra_the_content_more_link_class', array() ); + + $post_link = sprintf( + esc_html( '%s' ), + ' ' . the_title( '', '', false ) . $more_link_text . '' + ); + + $more_link_element = ' …'; + + return apply_filters( 'astra_the_content_more_link', $more_link_element, $more_link_text ); + } +} +add_filter( 'the_content_more_link', 'astra_the_content_more_link', 10, 2 ); diff --git a/wp-content/themes/astra/inc/blog/blog.php b/wp-content/themes/astra/inc/blog/blog.php index 458ea62db..52514b0e3 100644 --- a/wp-content/themes/astra/inc/blog/blog.php +++ b/wp-content/themes/astra/inc/blog/blog.php @@ -1,534 +1,534 @@ -' . $output_str . '', $output_str ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } - } - } -} - -/** - * Featured post meta. - */ -if ( ! function_exists( 'astra_blog_post_get_featured_item' ) ) { - - /** - * To featured image / gallery / audio / video etc. As per the post format. - * - * @since 1.0 - * @return mixed - */ - function astra_blog_post_get_featured_item() { - - $post_featured_data = ''; - $post_format = get_post_format(); - - if ( has_post_thumbnail() ) { - - $post_featured_data = ''; - $post_featured_data .= get_the_post_thumbnail(); - $post_featured_data .= ''; - - } else { - - switch ( $post_format ) { - case 'image': - break; - - case 'video': - $post_featured_data = astra_get_video_from_post( get_the_ID() ); - break; - - case 'gallery': - $post_featured_data = get_post_gallery( get_the_ID(), false ); - if ( isset( $post_featured_data['ids'] ) ) { - $img_ids = explode( ',', $post_featured_data['ids'] ); - - $image_alt = get_post_meta( $img_ids[0], '_wp_attachment_image_alt', true ); - $image_url = wp_get_attachment_url( $img_ids[0] ); - - if ( isset( $img_ids[0] ) ) { - $post_featured_data = ''; - $post_featured_data .= '' . esc_attr( $image_alt ) . ''; - $post_featured_data .= ''; - } - } - break; - - case 'audio': - $post_featured_data = do_shortcode( astra_get_audios_from_post( get_the_ID() ) ); - break; - } - } - - echo $post_featured_data; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } -} - -add_action( 'astra_blog_post_featured_format', 'astra_blog_post_get_featured_item' ); - - -/** - * Blog Post Thumbnail / Title & Meta Order - */ -if ( ! function_exists( 'astra_blog_post_thumbnail_and_title_order' ) ) { - - /** - * Blog post Thubmnail, Title & Blog Meta order - * - * @since 1.0.8 - */ - function astra_blog_post_thumbnail_and_title_order() { - - $blog_post_thumb_title_order = astra_get_option( 'blog-post-structure' ); - if ( is_singular() ) { - return astra_banner_elements_order(); - } - - if ( is_array( $blog_post_thumb_title_order ) ) { - // Append the custom class for second element for single post. - foreach ( $blog_post_thumb_title_order as $post_thumb_title_order ) { - - switch ( $post_thumb_title_order ) { - - // Blog Post Featured Image. - case 'image': - do_action( 'astra_blog_archive_featured_image_before' ); - astra_get_blog_post_thumbnail( 'archive' ); - do_action( 'astra_blog_archive_featured_image_after' ); - break; - - // Blog Post Title and Blog Post Meta. - case 'title-meta': - do_action( 'astra_blog_archive_title_meta_before' ); - astra_get_blog_post_title_meta(); - do_action( 'astra_blog_archive_title_meta_after' ); - break; - } - } - } - } -} - -/** - * Blog / Single Post Thumbnail - */ -if ( ! function_exists( 'astra_get_blog_post_thumbnail' ) ) { - - /** - * Blog post Thumbnail - * - * @param string $type Type of post. - * @since 1.0.8 - */ - function astra_get_blog_post_thumbnail( $type = 'archive' ) { - - if ( 'archive' === $type ) { - // Blog Post Featured Image. - astra_get_post_thumbnail( '
', '
' ); - } elseif ( 'single' === $type ) { - // Single Post Featured Image. - astra_get_post_thumbnail(); - } - } -} - -/** - * Blog Post Title & Meta Order - */ -if ( ! function_exists( 'astra_get_blog_post_title_meta' ) ) { - - /** - * Blog post Thumbnail - * - * @since 1.0.8 - */ - function astra_get_blog_post_title_meta() { - - // Blog Post Title and Blog Post Meta. - do_action( 'astra_archive_entry_header_before' ); - ?> -
- ', - esc_url( get_permalink() ), - astra_attr( - 'article-title-blog', - array( - 'class' => '', - ) - ) - ), - '
', - get_the_id() - ); - - do_action( 'astra_archive_post_title_after' ); - - ?> - - - post_content ) ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound - $embeds = apply_filters( 'astra_get_post_audio', get_media_embedded_in_content( $content ) ); - - if ( empty( $embeds ) ) { - return ''; - } - - // check what is the first embed containg video tag, youtube or vimeo. - foreach ( $embeds as $embed ) { - if ( strpos( $embed, 'audio' ) ) { - return '' . $embed . ''; - } - } - } -} - -/** - * Get first image from post content - */ -if ( ! function_exists( 'astra_get_video_from_post' ) ) { - - /** - * Get first image from post content - * - * @since 1.0 - * @param number $post_id Post id. - * @return mixed - */ - function astra_get_video_from_post( $post_id ) { - - $post = get_post( $post_id ); - $content = do_shortcode( apply_filters( 'the_content', $post->post_content ) ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound - $embeds = apply_filters( 'astra_get_post_audio', get_media_embedded_in_content( $content ) ); - - if ( empty( $embeds ) ) { - return ''; - } - - // check what is the first embed containg video tag, youtube or vimeo. - foreach ( $embeds as $embed ) { - if ( strpos( $embed, 'video' ) || strpos( $embed, 'youtube' ) || strpos( $embed, 'vimeo' ) ) { - return $embed; - } - } - } -} - -/** - * Get last word of string to get meta-key of custom post structure. - * - * @since 4.0.0 - * @param string $string from this get last word. - * @return string $last_word result. - */ -function astra_get_last_meta_word( $string ) { - $string = explode( '-', $string ); - $last_word = array_pop( $string ); - return $last_word; -} - -/** - * Get the current archive description. - * - * @since 4.0.0 - * @param string $post_type post type. - * @return string $description Description for archive. - */ -function astra_get_archive_description( $post_type ) { - $description = ''; - - if ( defined( 'SURECART_PLUGIN_FILE' ) && is_page() && get_the_ID() === absint( get_option( 'surecart_shop_page_id' ) ) ) { - $description = astra_get_option( 'ast-dynamic-archive-sc_product-custom-description', '' ); - return $description; - } - - if ( ! is_search() ) { - - $get_archive_description = get_the_archive_description(); - $get_author_meta = trim( get_the_author_meta( 'description' ) ); - - if ( ! empty( $get_archive_description ) ) { - $description = get_the_archive_description(); - } - if ( is_author() ) { - if ( ! empty( $get_author_meta ) ) { - $description = get_the_author_meta( 'description' ); - } - } - if ( empty( $description ) && ! have_posts() ) { - $description = esc_html( astra_default_strings( 'string-content-nothing-found-message', false ) ); - } - } - if ( is_post_type_archive( $post_type ) ) { - $description = astra_get_option( 'ast-dynamic-archive-' . $post_type . '-custom-description', '' ); - } - if ( 'post' === $post_type && ( ( is_front_page() && is_home() ) || is_home() ) ) { - $description = astra_get_option( 'ast-dynamic-archive-post-custom-description', '' ); - } - return $description; -} - -/** - * Custom single post Title & Meta order display. - * - * @since 4.0.0 - * @param array $structure archive or single post structure. - * @return mixed - */ -function astra_banner_elements_order( $structure = array() ) { - - if ( true === apply_filters( 'astra_remove_entry_header_content', false ) ) { - return; - } - - global $post; - if ( is_null( $post ) ) { - return; - } - - // If Blog / Latest Post page is active then looping required structural order. - if ( ( ! is_front_page() && is_home() ) && false === astra_get_option( 'ast-dynamic-archive-post-banner-on-blog', false ) ) { - return astra_blog_post_thumbnail_and_title_order(); - } - - $post_type = strval( $post->post_type ); - - $prefix = 'archive'; - $structure = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-structure', array( 'ast-dynamic-' . $prefix . '-' . $post_type . '-title', 'ast-dynamic-' . $prefix . '-' . $post_type . '-description' ) ); - $layout_type = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-layout', 'layout-1' ); - - if ( is_singular() ) { - $prefix = 'single'; - $structure = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-structure', array( 'ast-dynamic-' . $prefix . '-' . $post_type . '-title', 'ast-dynamic-' . $prefix . '-' . $post_type . '-meta' ) ); - if ( 'page' === $post_type ) { - $structure = astra_get_option( 'ast-dynamic-single-page-structure', array( 'ast-dynamic-single-page-image', 'ast-dynamic-single-page-title' ) ); - } - $layout_type = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-layout', 'layout-1' ); - } - - do_action( 'astra_single_post_banner_before' ); - $post_type = apply_filters( 'astra_banner_elements_post_type', $post_type ); - $prefix = apply_filters( 'astra_banner_elements_prefix', $prefix ); - - foreach ( apply_filters( 'astra_banner_elements_structure', $structure ) as $metaval ) { - $meta_key = $prefix . '-' . astra_get_last_meta_word( $metaval ); - switch ( $meta_key ) { - case 'single-breadcrumb': - do_action( 'astra_single_post_banner_breadcrumb_before' ); - echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - do_action( 'astra_single_post_banner_breadcrumb_after' ); - break; - - case 'single-title': - do_action( 'astra_single_post_banner_title_before' ); - if ( 'page' === $post_type ) { - astra_the_title( - '

'', - ) - ) . '>', - '

' - ); - } else { - astra_the_title( - '

'', - ) - ) . '>', - '

' - ); - } - do_action( 'astra_single_post_banner_title_after' ); - break; - - case 'single-excerpt': - do_action( 'astra_single_post_banner_excerpt_before' ); - echo '' . get_the_excerpt( $post->ID ) . ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - do_action( 'astra_single_post_banner_excerpt_after' ); - break; - - case 'single-meta': - do_action( 'astra_single_post_banner_meta_before' ); - $post_meta = astra_get_option( 'ast-dynamic-single-' . $post_type . '-metadata', array( 'comments', 'author', 'date' ) ); - $output = ''; - if ( ! empty( $post_meta ) ) { - $output_str = astra_get_post_meta( $post_meta ); - if ( ! empty( $output_str ) ) { - $output = apply_filters( 'astra_single_post_meta', '' ); // WPCS: XSS OK. - } - } - echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - do_action( 'astra_single_post_banner_meta_after' ); - break; - - case 'single-image': - $featured_background = astra_get_option( 'ast-dynamic-single-' . $post_type . '-featured-as-background', false ); - - if ( 'layout-1' === $layout_type ) { - $article_featured_image_position = astra_get_option( 'ast-dynamic-single-' . $post_type . '-article-featured-image-position-layout-1', 'behind' ); - } else { - $article_featured_image_position = astra_get_option( 'ast-dynamic-single-' . $post_type . '-article-featured-image-position-layout-2', 'none' ); - } - - if ( 'none' !== $article_featured_image_position ) { - break; - } - - if ( ( 'layout-2' === $layout_type && false === $featured_background ) || 'layout-1' === $layout_type ) { - do_action( 'astra_blog_single_featured_image_before' ); - astra_get_blog_post_thumbnail( 'single' ); - do_action( 'astra_blog_single_featured_image_after' ); - } - break; - - case 'archive-title': - do_action( 'astra_blog_archive_title_before' ); - add_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); - if ( 'layout-1' === $layout_type ) { - astra_the_post_title( '

', '

', 0, true ); - } else { - astra_the_post_title( '

', '

', 0, true ); - } - remove_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); - do_action( 'astra_blog_archive_title_after' ); - break; - - case 'archive-breadcrumb': - if ( ! is_author() ) { - do_action( 'astra_blog_archive_breadcrumb_before' ); - echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - do_action( 'astra_blog_archive_breadcrumb_after' ); - } - break; - - case 'archive-description': - do_action( 'astra_blog_archive_description_before' ); - echo wp_kses_post( wpautop( astra_get_archive_description( $post_type ) ) ); - do_action( 'astra_blog_archive_description_after' ); - break; - } - } - - do_action( 'astra_single_post_banner_after' ); -} +' . $output_str . '', $output_str ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } + } + } +} + +/** + * Featured post meta. + */ +if ( ! function_exists( 'astra_blog_post_get_featured_item' ) ) { + + /** + * To featured image / gallery / audio / video etc. As per the post format. + * + * @since 1.0 + * @return mixed + */ + function astra_blog_post_get_featured_item() { + + $post_featured_data = ''; + $post_format = get_post_format(); + + if ( has_post_thumbnail() ) { + + $post_featured_data = ''; + $post_featured_data .= get_the_post_thumbnail(); + $post_featured_data .= ''; + + } else { + + switch ( $post_format ) { + case 'image': + break; + + case 'video': + $post_featured_data = astra_get_video_from_post( get_the_ID() ); + break; + + case 'gallery': + $post_featured_data = get_post_gallery( get_the_ID(), false ); + if ( isset( $post_featured_data['ids'] ) ) { + $img_ids = explode( ',', $post_featured_data['ids'] ); + + $image_alt = get_post_meta( $img_ids[0], '_wp_attachment_image_alt', true ); + $image_url = wp_get_attachment_url( $img_ids[0] ); + + if ( isset( $img_ids[0] ) ) { + $post_featured_data = ''; + $post_featured_data .= '' . esc_attr( $image_alt ) . ''; + $post_featured_data .= ''; + } + } + break; + + case 'audio': + $post_featured_data = do_shortcode( astra_get_audios_from_post( get_the_ID() ) ); + break; + } + } + + echo $post_featured_data; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } +} + +add_action( 'astra_blog_post_featured_format', 'astra_blog_post_get_featured_item' ); + + +/** + * Blog Post Thumbnail / Title & Meta Order + */ +if ( ! function_exists( 'astra_blog_post_thumbnail_and_title_order' ) ) { + + /** + * Blog post Thubmnail, Title & Blog Meta order + * + * @since 1.0.8 + */ + function astra_blog_post_thumbnail_and_title_order() { + + $blog_post_thumb_title_order = astra_get_option( 'blog-post-structure' ); + if ( is_singular() ) { + return astra_banner_elements_order(); + } + + if ( is_array( $blog_post_thumb_title_order ) ) { + // Append the custom class for second element for single post. + foreach ( $blog_post_thumb_title_order as $post_thumb_title_order ) { + + switch ( $post_thumb_title_order ) { + + // Blog Post Featured Image. + case 'image': + do_action( 'astra_blog_archive_featured_image_before' ); + astra_get_blog_post_thumbnail( 'archive' ); + do_action( 'astra_blog_archive_featured_image_after' ); + break; + + // Blog Post Title and Blog Post Meta. + case 'title-meta': + do_action( 'astra_blog_archive_title_meta_before' ); + astra_get_blog_post_title_meta(); + do_action( 'astra_blog_archive_title_meta_after' ); + break; + } + } + } + } +} + +/** + * Blog / Single Post Thumbnail + */ +if ( ! function_exists( 'astra_get_blog_post_thumbnail' ) ) { + + /** + * Blog post Thumbnail + * + * @param string $type Type of post. + * @since 1.0.8 + */ + function astra_get_blog_post_thumbnail( $type = 'archive' ) { + + if ( 'archive' === $type ) { + // Blog Post Featured Image. + astra_get_post_thumbnail( '
', '
' ); + } elseif ( 'single' === $type ) { + // Single Post Featured Image. + astra_get_post_thumbnail(); + } + } +} + +/** + * Blog Post Title & Meta Order + */ +if ( ! function_exists( 'astra_get_blog_post_title_meta' ) ) { + + /** + * Blog post Thumbnail + * + * @since 1.0.8 + */ + function astra_get_blog_post_title_meta() { + + // Blog Post Title and Blog Post Meta. + do_action( 'astra_archive_entry_header_before' ); + ?> +
+ ', + esc_url( get_permalink() ), + astra_attr( + 'article-title-blog', + array( + 'class' => '', + ) + ) + ), + '', + get_the_id() + ); + + do_action( 'astra_archive_post_title_after' ); + + ?> + +
+ post_content ) ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound + $embeds = apply_filters( 'astra_get_post_audio', get_media_embedded_in_content( $content ) ); + + if ( empty( $embeds ) ) { + return ''; + } + + // check what is the first embed containg video tag, youtube or vimeo. + foreach ( $embeds as $embed ) { + if ( strpos( $embed, 'audio' ) ) { + return '' . $embed . ''; + } + } + } +} + +/** + * Get first image from post content + */ +if ( ! function_exists( 'astra_get_video_from_post' ) ) { + + /** + * Get first image from post content + * + * @since 1.0 + * @param number $post_id Post id. + * @return mixed + */ + function astra_get_video_from_post( $post_id ) { + + $post = get_post( $post_id ); + $content = do_shortcode( apply_filters( 'the_content', $post->post_content ) ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound + $embeds = apply_filters( 'astra_get_post_audio', get_media_embedded_in_content( $content ) ); + + if ( empty( $embeds ) ) { + return ''; + } + + // check what is the first embed containg video tag, youtube or vimeo. + foreach ( $embeds as $embed ) { + if ( strpos( $embed, 'video' ) || strpos( $embed, 'youtube' ) || strpos( $embed, 'vimeo' ) ) { + return $embed; + } + } + } +} + +/** + * Get last word of string to get meta-key of custom post structure. + * + * @since 4.0.0 + * @param string $string from this get last word. + * @return string $last_word result. + */ +function astra_get_last_meta_word( $string ) { + $string = explode( '-', $string ); + $last_word = array_pop( $string ); + return $last_word; +} + +/** + * Get the current archive description. + * + * @since 4.0.0 + * @param string $post_type post type. + * @return string $description Description for archive. + */ +function astra_get_archive_description( $post_type ) { + $description = ''; + + if ( defined( 'SURECART_PLUGIN_FILE' ) && is_page() && get_the_ID() === absint( get_option( 'surecart_shop_page_id' ) ) ) { + $description = astra_get_option( 'ast-dynamic-archive-sc_product-custom-description', '' ); + return $description; + } + + if ( ! is_search() ) { + + $get_archive_description = get_the_archive_description(); + $get_author_meta = trim( get_the_author_meta( 'description' ) ); + + if ( ! empty( $get_archive_description ) ) { + $description = get_the_archive_description(); + } + if ( is_author() ) { + if ( ! empty( $get_author_meta ) ) { + $description = get_the_author_meta( 'description' ); + } + } + if ( empty( $description ) && ! have_posts() ) { + $description = esc_html( astra_default_strings( 'string-content-nothing-found-message', false ) ); + } + } + if ( is_post_type_archive( $post_type ) ) { + $description = astra_get_option( 'ast-dynamic-archive-' . $post_type . '-custom-description', '' ); + } + if ( 'post' === $post_type && ( ( is_front_page() && is_home() ) || is_home() ) ) { + $description = astra_get_option( 'ast-dynamic-archive-post-custom-description', '' ); + } + return $description; +} + +/** + * Custom single post Title & Meta order display. + * + * @since 4.0.0 + * @param array $structure archive or single post structure. + * @return mixed + */ +function astra_banner_elements_order( $structure = array() ) { + + if ( true === apply_filters( 'astra_remove_entry_header_content', false ) ) { + return; + } + + global $post; + if ( is_null( $post ) ) { + return; + } + + // If Blog / Latest Post page is active then looping required structural order. + if ( ( ! is_front_page() && is_home() ) && false === astra_get_option( 'ast-dynamic-archive-post-banner-on-blog', false ) ) { + return astra_blog_post_thumbnail_and_title_order(); + } + + $post_type = strval( $post->post_type ); + + $prefix = 'archive'; + $structure = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-structure', array( 'ast-dynamic-' . $prefix . '-' . $post_type . '-title', 'ast-dynamic-' . $prefix . '-' . $post_type . '-description' ) ); + $layout_type = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-layout', 'layout-1' ); + + if ( is_singular() ) { + $prefix = 'single'; + $structure = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-structure', array( 'ast-dynamic-' . $prefix . '-' . $post_type . '-title', 'ast-dynamic-' . $prefix . '-' . $post_type . '-meta' ) ); + if ( 'page' === $post_type ) { + $structure = astra_get_option( 'ast-dynamic-single-page-structure', array( 'ast-dynamic-single-page-image', 'ast-dynamic-single-page-title' ) ); + } + $layout_type = astra_get_option( 'ast-dynamic-' . $prefix . '-' . $post_type . '-layout', 'layout-1' ); + } + + do_action( 'astra_single_post_banner_before' ); + $post_type = apply_filters( 'astra_banner_elements_post_type', $post_type ); + $prefix = apply_filters( 'astra_banner_elements_prefix', $prefix ); + + foreach ( apply_filters( 'astra_banner_elements_structure', $structure ) as $metaval ) { + $meta_key = $prefix . '-' . astra_get_last_meta_word( $metaval ); + switch ( $meta_key ) { + case 'single-breadcrumb': + do_action( 'astra_single_post_banner_breadcrumb_before' ); + echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + do_action( 'astra_single_post_banner_breadcrumb_after' ); + break; + + case 'single-title': + do_action( 'astra_single_post_banner_title_before' ); + if ( 'page' === $post_type ) { + astra_the_title( + '

'', + ) + ) . '>', + '

' + ); + } else { + astra_the_title( + '

'', + ) + ) . '>', + '

' + ); + } + do_action( 'astra_single_post_banner_title_after' ); + break; + + case 'single-excerpt': + do_action( 'astra_single_post_banner_excerpt_before' ); + echo '' . get_the_excerpt( $post->ID ) . ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + do_action( 'astra_single_post_banner_excerpt_after' ); + break; + + case 'single-meta': + do_action( 'astra_single_post_banner_meta_before' ); + $post_meta = astra_get_option( 'ast-dynamic-single-' . $post_type . '-metadata', array( 'comments', 'author', 'date' ) ); + $output = ''; + if ( ! empty( $post_meta ) ) { + $output_str = astra_get_post_meta( $post_meta ); + if ( ! empty( $output_str ) ) { + $output = apply_filters( 'astra_single_post_meta', '' ); // WPCS: XSS OK. + } + } + echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + do_action( 'astra_single_post_banner_meta_after' ); + break; + + case 'single-image': + $featured_background = astra_get_option( 'ast-dynamic-single-' . $post_type . '-featured-as-background', false ); + + if ( 'layout-1' === $layout_type ) { + $article_featured_image_position = astra_get_option( 'ast-dynamic-single-' . $post_type . '-article-featured-image-position-layout-1', 'behind' ); + } else { + $article_featured_image_position = astra_get_option( 'ast-dynamic-single-' . $post_type . '-article-featured-image-position-layout-2', 'none' ); + } + + if ( 'none' !== $article_featured_image_position ) { + break; + } + + if ( ( 'layout-2' === $layout_type && false === $featured_background ) || 'layout-1' === $layout_type ) { + do_action( 'astra_blog_single_featured_image_before' ); + astra_get_blog_post_thumbnail( 'single' ); + do_action( 'astra_blog_single_featured_image_after' ); + } + break; + + case 'archive-title': + do_action( 'astra_blog_archive_title_before' ); + add_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); + if ( 'layout-1' === $layout_type ) { + astra_the_post_title( '

', '

', 0, true ); + } else { + astra_the_post_title( '

', '

', 0, true ); + } + remove_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); + do_action( 'astra_blog_archive_title_after' ); + break; + + case 'archive-breadcrumb': + if ( ! is_author() ) { + do_action( 'astra_blog_archive_breadcrumb_before' ); + echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + do_action( 'astra_blog_archive_breadcrumb_after' ); + } + break; + + case 'archive-description': + do_action( 'astra_blog_archive_description_before' ); + echo wp_kses_post( wpautop( astra_get_archive_description( $post_type ) ) ); + do_action( 'astra_blog_archive_description_after' ); + break; + } + } + + do_action( 'astra_single_post_banner_after' ); +} diff --git a/wp-content/themes/astra/inc/builder/type/header/search/assets/js/minified/customizer-preview.min.js b/wp-content/themes/astra/inc/builder/type/header/search/assets/js/minified/customizer-preview.min.js index a753743ee..6eb8a9a14 100644 --- a/wp-content/themes/astra/inc/builder/type/header/search/assets/js/minified/customizer-preview.min.js +++ b/wp-content/themes/astra/inc/builder/type/header/search/assets/js/minified/customizer-preview.min.js @@ -1 +1 @@ -!function(){var s=astraBuilderPreview.tablet_break_point||768,i=astraBuilderPreview.mobile_break_point||544,a=".ast-header-search";astra_color_responsive_css("header-search-icon-color","astra-settings[header-search-icon-color]","color",a+" .astra-search-icon, "+a+" .search-field::placeholder,"+a+" .ast-icon"),astra_css("astra-settings[header-search-icon-space]","font-size",a+" .astra-search-icon","px"),wp.customize("astra-settings[header-search-icon-space]",function(e){e.bind(function(e){var t;""==e.desktop&&""==e.tablet&&""==e.mobile||(t="",t=(t=(t=(t=(t=(t+=a+" .astra-search-icon {")+"font-size: "+e.desktop+"px;} ")+"@media (max-width: "+s+"px) {"+a+" .astra-search-icon {")+"font-size: "+e.tablet+"px;} ")+"} @media (max-width: "+i+"px) {")+a+" .astra-search-icon {font-size: "+e.mobile+"px;} } ",astra_add_dynamic_css("header-search-icon-space",t))})}),wp.customize("astra-settings[header-search-width]",function(e){e.bind(function(e){var t;""==e.desktop&&""==e.tablet&&""==e.mobile||(t=(t=(t=(t=(t=(t=".ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {")+"width:"+e.desktop+"px;} ")+"@media( max-width: "+astColors.tablet_break_point+"px ) {.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {")+"width:"+e.tablet+"px;} }")+"@media( max-width: "+astColors.mobile_break_point+"px ) {.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {")+"width:"+e.mobile+"px;} }",astra_add_dynamic_css("astra-settings[header-search-width]",t))})}),wp.customize("astra-settings[section-header-search-margin]",function(e){e.bind(function(e){var t,a;""==e.desktop.bottom&&""==e.desktop.top&&""==e.desktop.left&&""==e.desktop.right&&""==e.tablet.bottom&&""==e.tablet.top&&""==e.tablet.left&&""==e.tablet.right&&""==e.mobile.bottom&&""==e.mobile.top&&""==e.mobile.left&&""==e.mobile.right||(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a="")+(t=".ast-hfb-header .site-header-section > .ast-header-search, .ast-hfb-header .ast-header-search")+" {margin-left: "+e.desktop.left+e["desktop-unit"]+";")+"margin-right: "+e.desktop.right+e["desktop-unit"]+";")+"margin-top: "+e.desktop.top+e["desktop-unit"]+";")+"margin-bottom: "+e.desktop.bottom+e["desktop-unit"]+";")+"} @media (max-width: "+s+"px) {")+t+" {margin-left: "+e.tablet.left+e["tablet-unit"]+";")+"margin-right: "+e.tablet.right+e["tablet-unit"]+";")+"margin-top: "+e.tablet.top+e["desktop-unit"]+";")+"margin-bottom: "+e.tablet.bottom+e["desktop-unit"]+";} ")+"} @media (max-width: "+i+"px) {")+t+" {margin-left: "+e.mobile.left+e["mobile-unit"]+";")+"margin-right: "+e.mobile.right+e["mobile-unit"]+";")+"margin-top: "+e.mobile.top+e["desktop-unit"]+";")+"margin-bottom: "+e.mobile.bottom+e["desktop-unit"]+";} } ",astra_add_dynamic_css("header-search-margin",a))})}),astra_builder_visibility_css("section-header-search",a)}(jQuery); \ No newline at end of file +!function(){var s=astraBuilderPreview.tablet_break_point||768,i=astraBuilderPreview.mobile_break_point||544,a=".ast-header-search";astra_color_responsive_css("header-search-icon-color","astra-settings[header-search-icon-color]","color",a+" .astra-search-icon, "+a+" .search-field::placeholder,"+a+" .ast-icon"),astra_css("astra-settings[header-search-icon-space]","font-size",a+" .astra-search-icon","px"),wp.customize("astra-settings[header-search-icon-space]",function(e){e.bind(function(e){var t;""==e.desktop&&""==e.tablet&&""==e.mobile||(t="",t=(t=(t=(t=(t=(t+=a+" .astra-search-icon {")+"font-size: "+e.desktop+"px;} ")+"@media (max-width: "+s+"px) {"+a+" .astra-search-icon {")+"font-size: "+e.tablet+"px;} ")+"} @media (max-width: "+i+"px) {")+a+" .astra-search-icon {font-size: "+e.mobile+"px;} } ",astra_add_dynamic_css("header-search-icon-space",t))})}),wp.customize("astra-settings[header-search-width]",function(e){e.bind(function(e){var t;""==e.desktop&&""==e.tablet&&""==e.mobile||(t=(t=(t=(t=(t=(t=".ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {")+"width:"+e.desktop+"px;} ")+"@media( max-width: "+astColors.tablet_break_point+"px ) {.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form {")+"width:"+e.tablet+"px;} }")+"@media( max-width: "+astColors.mobile_break_point+"px ) {.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form {")+"width:"+e.mobile+"px;} }",astra_add_dynamic_css("astra-settings[header-search-width]",t))})}),wp.customize("astra-settings[section-header-search-margin]",function(e){e.bind(function(e){var t,a;""==e.desktop.bottom&&""==e.desktop.top&&""==e.desktop.left&&""==e.desktop.right&&""==e.tablet.bottom&&""==e.tablet.top&&""==e.tablet.left&&""==e.tablet.right&&""==e.mobile.bottom&&""==e.mobile.top&&""==e.mobile.left&&""==e.mobile.right||(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a="")+(t=".ast-hfb-header .site-header-section > .ast-header-search, .ast-hfb-header .ast-header-search")+" {margin-left: "+e.desktop.left+e["desktop-unit"]+";")+"margin-right: "+e.desktop.right+e["desktop-unit"]+";")+"margin-top: "+e.desktop.top+e["desktop-unit"]+";")+"margin-bottom: "+e.desktop.bottom+e["desktop-unit"]+";")+"} @media (max-width: "+s+"px) {")+t+" {margin-left: "+e.tablet.left+e["tablet-unit"]+";")+"margin-right: "+e.tablet.right+e["tablet-unit"]+";")+"margin-top: "+e.tablet.top+e["desktop-unit"]+";")+"margin-bottom: "+e.tablet.bottom+e["desktop-unit"]+";} ")+"} @media (max-width: "+i+"px) {")+t+" {margin-left: "+e.mobile.left+e["mobile-unit"]+";")+"margin-right: "+e.mobile.right+e["mobile-unit"]+";")+"margin-top: "+e.mobile.top+e["desktop-unit"]+";")+"margin-bottom: "+e.mobile.bottom+e["desktop-unit"]+";} } ",astra_add_dynamic_css("header-search-margin",a))})}),astra_builder_visibility_css("section-header-search",a)}(jQuery); \ No newline at end of file diff --git a/wp-content/themes/astra/inc/builder/type/header/search/assets/js/unminified/customizer-preview.js b/wp-content/themes/astra/inc/builder/type/header/search/assets/js/unminified/customizer-preview.js index bfd5d0656..dd8dddb51 100644 --- a/wp-content/themes/astra/inc/builder/type/header/search/assets/js/unminified/customizer-preview.js +++ b/wp-content/themes/astra/inc/builder/type/header/search/assets/js/unminified/customizer-preview.js @@ -64,11 +64,11 @@ dynamicStyle += 'width:' + width['desktop'] + 'px;'; dynamicStyle += '} '; dynamicStyle += '@media( max-width: ' + astColors.tablet_break_point + 'px ) {'; - dynamicStyle += '.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {'; + dynamicStyle += '.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form {'; dynamicStyle += 'width:' + width['tablet'] + 'px;'; dynamicStyle += '} }'; dynamicStyle += '@media( max-width: ' + astColors.mobile_break_point + 'px ) {'; - dynamicStyle += '.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field {'; + dynamicStyle += '.ast-header-search form.search-form .search-field, .ast-header-search .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form {'; dynamicStyle += 'width:' + width['mobile'] + 'px;'; dynamicStyle += '} }'; astra_add_dynamic_css( 'astra-settings[header-search-width]', dynamicStyle ); diff --git a/wp-content/themes/astra/inc/builder/type/header/search/dynamic-css/dynamic.css.php b/wp-content/themes/astra/inc/builder/type/header/search/dynamic-css/dynamic.css.php index 9cf901a7a..65adfa875 100644 --- a/wp-content/themes/astra/inc/builder/type/header/search/dynamic-css/dynamic.css.php +++ b/wp-content/themes/astra/inc/builder/type/header/search/dynamic-css/dynamic.css.php @@ -34,7 +34,9 @@ function astra_hb_search_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) $selector = '.ast-header-search'; $icon_size = astra_get_option( 'header-search-icon-space' ); $search_width = astra_get_option( 'header-search-width' ); - $search_width_applicable = ( ! defined( 'ASTRA_EXT_VER' ) || ( defined( 'ASTRA_EXT_VER' ) && ( 'slide-search' === astra_get_option( 'header-search-box-type' ) || 'search-box' === astra_get_option( 'header-search-box-type' ) ) ) ) ? true : false; + $search_type = astra_get_option( 'header-search-box-type' ); + $live_search = astra_get_option( 'live-search' ); + $search_width_applicable = ( ! defined( 'ASTRA_EXT_VER' ) || ( defined( 'ASTRA_EXT_VER' ) && ( 'slide-search' === $search_type || 'search-box' === $search_type ) ) ) ? true : false; $icon_size_desktop = ( isset( $icon_size ) && isset( $icon_size['desktop'] ) && ! empty( $icon_size['desktop'] ) ) ? $icon_size['desktop'] : 20; @@ -86,6 +88,12 @@ function astra_hb_search_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) ); } + if ( $live_search && Astra_Builder_Helper::is_component_loaded( 'search', 'header' ) && ! is_customize_preview() && apply_filters( 'astra_increased_search_icon_zindex', true ) ) { + $css_output_desktop['.ast-search-menu-icon'] = array( + 'z-index' => '5', // To fix search results container overlapping issue with menu (AST-3605). + ); + } + $css_output_tablet = array( $selector . ' .astra-search-icon' => array( @@ -105,11 +113,17 @@ function astra_hb_search_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) ); if ( $search_width_applicable ) { - $css_output_tablet[ $selector . ' form.search-form .search-field, ' . $selector . ' .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field' ] = array( + $css_output_tablet[ $selector . ' form.search-form .search-field, ' . $selector . ' .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form' ] = array( 'width' => astra_get_css_value( astra_get_prop( $search_width, 'tablet' ), 'px' ), ); } + if ( $live_search && Astra_Builder_Helper::is_component_loaded( 'search', 'header', 'mobile' ) ) { + $css_output_tablet['.ast-mobile-header-content .ast-header-search .ast-search-menu-icon .search-form'] = array( + 'overflow' => 'visible', // To fix search results container should overflow inside offcanvas (AST-3604). + ); + } + $css_output_mobile = array( $selector . ' .astra-search-icon' => array( @@ -129,7 +143,7 @@ function astra_hb_search_dynamic_css( $dynamic_css, $dynamic_css_filtered = '' ) ); if ( $search_width_applicable ) { - $css_output_mobile[ $selector . ' form.search-form .search-field, ' . $selector . ' .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field' ] = array( + $css_output_mobile[ $selector . ' form.search-form .search-field, ' . $selector . ' .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field, .ast-mobile-header-content .ast-search-menu-icon .search-form' ] = array( 'width' => astra_get_css_value( astra_get_prop( $search_width, 'mobile' ), 'px' ), ); } diff --git a/wp-content/themes/astra/inc/class-astra-after-setup-theme.php b/wp-content/themes/astra/inc/class-astra-after-setup-theme.php index 749e24990..047711739 100644 --- a/wp-content/themes/astra/inc/class-astra-after-setup-theme.php +++ b/wp-content/themes/astra/inc/class-astra-after-setup-theme.php @@ -1,279 +1,279 @@ -get() ); - } - - // Switch default core markup for search form, comment form, and comments. - // to output valid HTML5. - // Added a new value in HTML5 array 'navigation-widgets' as this was introduced in WP5.5 for better accessibility. - add_theme_support( - 'html5', - array( - 'navigation-widgets', - 'search-form', - 'gallery', - 'caption', - 'style', - 'script', - ) - ); - - // Post formats. - add_theme_support( - 'post-formats', - array( - 'gallery', - 'image', - 'link', - 'quote', - 'video', - 'audio', - 'status', - 'aside', - ) - ); - - // Add theme support for Custom Logo. - add_theme_support( - 'custom-logo', - array( - 'width' => 180, - 'height' => 60, - 'flex-width' => true, - 'flex-height' => true, - ) - ); - - // Customize Selective Refresh Widgets. - add_theme_support( 'customize-selective-refresh-widgets' ); - - /** - * This theme styles the visual editor to resemble the theme style, - * specifically font, colors, icons, and column width. - */ - /* Directory and Extension */ - $dir_name = 'minified'; - $file_prefix = '.min'; - if ( apply_filters( 'astra_theme_editor_style', true ) ) { - add_editor_style( 'assets/css/' . $dir_name . '/editor-style' . $file_prefix . '.css' ); - } - - if ( apply_filters( 'astra_fullwidth_oembed', true ) ) { - // Filters the oEmbed process to run the responsive_oembed_wrapper() function. - add_filter( 'embed_oembed_html', array( $this, 'responsive_oembed_wrapper' ), 10, 3 ); - } - - // WooCommerce. - add_theme_support( 'woocommerce' ); - - // Rank Math Breadcrumb. - if ( true === apply_filters( 'astra_rank_math_theme_support', true ) ) { - add_theme_support( 'rank-math-breadcrumbs' ); - } - - // Native AMP Support. - if ( true === apply_filters( 'astra_amp_support', true ) ) { - add_theme_support( - 'amp', - apply_filters( - 'astra_amp_theme_features', - array( - 'paired' => true, - ) - ) - ); - } - - // Remove Template Editor support until WP 5.9 since more Theme Blocks are going to be introduced. - remove_theme_support( 'block-templates' ); - } - - /** - * Set the $content_width global variable used by WordPress to set image dimennsions. - * - * @since 1.5.5 - * @return void - */ - public function setup_content_width() { - global $content_width; - - /** - * Content Width - */ - if ( ! isset( $content_width ) ) { - - if ( is_home() || is_post_type_archive( 'post' ) ) { - $blog_width = astra_get_option( 'blog-width' ); - - if ( 'custom' === $blog_width ) { - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'blog-max-width', 1200 ) ); - } else { - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); - } - } elseif ( is_single() ) { - - if ( 'post' === get_post_type() ) { - $single_post_max = astra_get_option( 'blog-single-width' ); - - if ( 'custom' === $single_post_max ) { - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'blog-single-max-width', 1200 ) ); - } else { - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); - } - } - - // For custom post types set the global content width. - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); - } else { - $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); - } - } - - } - - /** - * Adds a responsive embed wrapper around oEmbed content - * - * @param string $html The oEmbed markup. - * @param string $url The URL being embedded. - * @param array $attr An array of attributes. - * @param bool $core_yt_block Whether the oEmbed is being rendered by the core YouTube block. - * - * @return string Updated embed markup. - */ - public function responsive_oembed_wrapper( $html, $url, $attr, $core_yt_block = false ) { - $add_astra_oembed_wrapper = apply_filters( 'astra_responsive_oembed_wrapper_enable', true ); - - $allowed_providers = apply_filters( - 'astra_allowed_fullwidth_oembed_providers', - array( - 'vimeo.com', - 'youtube.com', - 'youtu.be', - 'wistia.com', - 'wistia.net', - ) - ); - - if ( $core_yt_block ) { - if ( astra_strposa( $url, $allowed_providers ) && $add_astra_oembed_wrapper ) { - $embed_html = wp_oembed_get( $url ); - $html = false !== $embed_html ? '
' . $embed_html . '
' : ''; - } - } else { - if ( astra_strposa( $url, $allowed_providers ) && $add_astra_oembed_wrapper ) { - $html = ( '' !== $html ) ? '
' . $html . '
' : ''; - } - } - - return $html; - } - } -} - -/** - * Kicking this off by calling 'get_instance()' method - */ -Astra_After_Setup_Theme::get_instance(); +get() ); + } + + // Switch default core markup for search form, comment form, and comments. + // to output valid HTML5. + // Added a new value in HTML5 array 'navigation-widgets' as this was introduced in WP5.5 for better accessibility. + add_theme_support( + 'html5', + array( + 'navigation-widgets', + 'search-form', + 'gallery', + 'caption', + 'style', + 'script', + ) + ); + + // Post formats. + add_theme_support( + 'post-formats', + array( + 'gallery', + 'image', + 'link', + 'quote', + 'video', + 'audio', + 'status', + 'aside', + ) + ); + + // Add theme support for Custom Logo. + add_theme_support( + 'custom-logo', + array( + 'width' => 180, + 'height' => 60, + 'flex-width' => true, + 'flex-height' => true, + ) + ); + + // Customize Selective Refresh Widgets. + add_theme_support( 'customize-selective-refresh-widgets' ); + + /** + * This theme styles the visual editor to resemble the theme style, + * specifically font, colors, icons, and column width. + */ + /* Directory and Extension */ + $dir_name = 'minified'; + $file_prefix = '.min'; + if ( apply_filters( 'astra_theme_editor_style', true ) ) { + add_editor_style( 'assets/css/' . $dir_name . '/editor-style' . $file_prefix . '.css' ); + } + + if ( apply_filters( 'astra_fullwidth_oembed', true ) ) { + // Filters the oEmbed process to run the responsive_oembed_wrapper() function. + add_filter( 'embed_oembed_html', array( $this, 'responsive_oembed_wrapper' ), 10, 3 ); + } + + // WooCommerce. + add_theme_support( 'woocommerce' ); + + // Rank Math Breadcrumb. + if ( true === apply_filters( 'astra_rank_math_theme_support', true ) ) { + add_theme_support( 'rank-math-breadcrumbs' ); + } + + // Native AMP Support. + if ( true === apply_filters( 'astra_amp_support', true ) ) { + add_theme_support( + 'amp', + apply_filters( + 'astra_amp_theme_features', + array( + 'paired' => true, + ) + ) + ); + } + + // Remove Template Editor support until WP 5.9 since more Theme Blocks are going to be introduced. + remove_theme_support( 'block-templates' ); + } + + /** + * Set the $content_width global variable used by WordPress to set image dimennsions. + * + * @since 1.5.5 + * @return void + */ + public function setup_content_width() { + global $content_width; + + /** + * Content Width + */ + if ( ! isset( $content_width ) ) { + + if ( is_home() || is_post_type_archive( 'post' ) ) { + $blog_width = astra_get_option( 'blog-width' ); + + if ( 'custom' === $blog_width ) { + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'blog-max-width', 1200 ) ); + } else { + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); + } + } elseif ( is_single() ) { + + if ( 'post' === get_post_type() ) { + $single_post_max = astra_get_option( 'blog-single-width' ); + + if ( 'custom' === $single_post_max ) { + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'blog-single-max-width', 1200 ) ); + } else { + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); + } + } + + // For custom post types set the global content width. + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); + } else { + $content_width = apply_filters( 'astra_content_width', astra_get_option( 'site-content-width', 1200 ) ); + } + } + + } + + /** + * Adds a responsive embed wrapper around oEmbed content + * + * @param string $html The oEmbed markup. + * @param string $url The URL being embedded. + * @param array $attr An array of attributes. + * @param bool $core_yt_block Whether the oEmbed is being rendered by the core YouTube block. + * + * @return string Updated embed markup. + */ + public function responsive_oembed_wrapper( $html, $url, $attr, $core_yt_block = false ) { + $add_astra_oembed_wrapper = apply_filters( 'astra_responsive_oembed_wrapper_enable', true ); + + $allowed_providers = apply_filters( + 'astra_allowed_fullwidth_oembed_providers', + array( + 'vimeo.com', + 'youtube.com', + 'youtu.be', + 'wistia.com', + 'wistia.net', + ) + ); + + if ( $core_yt_block ) { + if ( astra_strposa( $url, $allowed_providers ) && $add_astra_oembed_wrapper ) { + $embed_html = wp_oembed_get( $url ); + $html = false !== $embed_html ? '
' . $embed_html . '
' : ''; + } + } else { + if ( astra_strposa( $url, $allowed_providers ) && $add_astra_oembed_wrapper ) { + $html = ( '' !== $html ) ? '
' . $html . '
' : ''; + } + } + + return $html; + } + } +} + +/** + * Kicking this off by calling 'get_instance()' method + */ +Astra_After_Setup_Theme::get_instance(); diff --git a/wp-content/themes/astra/inc/class-astra-dynamic-css.php b/wp-content/themes/astra/inc/class-astra-dynamic-css.php index 911e52dd9..78222b9f7 100644 --- a/wp-content/themes/astra/inc/class-astra-dynamic-css.php +++ b/wp-content/themes/astra/inc/class-astra-dynamic-css.php @@ -1,5234 +1,5234 @@ - astra_responsive_font( $heading_h4_font_size, 'desktop' ), - 'line-height' => esc_attr( $headings_line_height ), - ); - - $h5_properties = array( - 'font-size' => astra_responsive_font( $heading_h5_font_size, 'desktop' ), - 'line-height' => esc_attr( $headings_line_height ), - ); - - $h6_properties = array( - 'font-size' => astra_responsive_font( $heading_h6_font_size, 'desktop' ), - 'line-height' => esc_attr( $headings_line_height ), - ); - - if ( astra_has_gcp_typo_preset_compatibility() ) { - $h4_font_properties = array( - 'font-weight' => astra_get_css_value( $h4_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h4_font_family, 'font' ), - 'text-transform' => esc_attr( $h4_text_transform ), - 'line-height' => esc_attr( $h4_line_height ), - 'text-decoration' => esc_attr( $h4_text_decoration ), - 'letter-spacing' => esc_attr( $h4_letter_spacing ), - - ); - - $h4_properties = array_merge( $h4_properties, $h4_font_properties ); - - $h5_font_properties = array( - 'font-weight' => astra_get_css_value( $h5_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h5_font_family, 'font' ), - 'text-transform' => esc_attr( $h5_text_transform ), - 'line-height' => esc_attr( $h5_line_height ), - 'text-decoration' => esc_attr( $h5_text_decoration ), - 'letter-spacing' => esc_attr( $h5_letter_spacing ), - ); - - $h5_properties = array_merge( $h5_properties, $h5_font_properties ); - - $h6_font_properties = array( - 'font-weight' => astra_get_css_value( $h6_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h6_font_family, 'font' ), - 'text-transform' => esc_attr( $h6_text_transform ), - 'line-height' => esc_attr( $h6_line_height ), - 'text-decoration' => esc_attr( $h6_text_decoration ), - 'letter-spacing' => esc_attr( $h6_letter_spacing ), - ); - - $h6_properties = array_merge( $h6_properties, $h6_font_properties ); - } - - $link_selector = ( true === $update_customizer_strctural_defaults ) ? 'a' : 'a, .page-title'; - $transparent_search_box_bg_color = astra_get_option( 'transparent-header-search-box-background-color', '#fff' ); - - $css_output = array( - - ':root' => array( - '--ast-container-default-xlg-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '6.67em', - '--ast-container-default-lg-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '5.67em', - '--ast-container-default-slg-padding' => ( true === $update_customizer_strctural_defaults ) ? '2em' : '4.34em', - '--ast-container-default-md-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '3.34em', - '--ast-container-default-sm-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '6.67em', - '--ast-container-default-xs-padding' => ( true === $update_customizer_strctural_defaults ) ? '2.4em' : '2.4em', - '--ast-container-default-xxs-padding' => ( true === $update_customizer_strctural_defaults ) ? '1.8em' : '1.4em', - '--ast-code-block-background' => ( true === self::astra_check_default_color_typo() ) ? '#ECEFF3' : '#EEEEEE', - '--ast-comment-inputs-background' => ( true === self::astra_check_default_color_typo() ) ? '#F9FAFB' : '#FAFAFA', - ), - - // HTML. - 'html' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 6.25, '%' ), - ), - $link_selector => array( - 'color' => esc_attr( $link_color ), - ), - 'a:hover, a:focus' => array( - 'color' => esc_attr( $link_hover_color ), - ), - 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( - 'font-family' => astra_get_font_family( $body_font_family ), - 'font-weight' => esc_attr( $body_font_weight ), - 'font-size' => astra_responsive_font( $body_font_size, 'desktop' ), - 'line-height' => esc_attr( $body_line_height ), - 'text-transform' => esc_attr( $body_text_transform ), - 'text-decoration' => esc_attr( $body_text_decoration ), - 'letter-spacing' => esc_attr( $body_letter_spacing ), - ), - 'blockquote' => array( - 'border-color' => astra_hex_to_rgba( $link_color, 0.15 ), - ), - 'p, .entry-content p' => array( - 'margin-bottom' => astra_get_css_value( $para_margin_bottom, 'em' ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h1, .entry-content h1, .entry-content h1 a, h2, .entry-content h2, .entry-content h2 a, h3, .entry-content h3, .entry-content h3 a, h4, .entry-content h4, .entry-content h4 a, h5, .entry-content h5, .entry-content h5 a, h6, .entry-content h6, .entry-content h6 a, .site-title, .site-title a', - 'h1, .entry-content h1, h2, .entry-content h2, h3, .entry-content h3, h4, .entry-content h4, h5, .entry-content h5, h6, .entry-content h6, .site-title, .site-title a' - ) => astra_get_font_array_css( astra_get_option( 'headings-font-family' ), astra_get_option( 'headings-font-weight' ), array(), 'headings-font-extras' ), - - '.ast-site-identity .site-title a' => array( - 'color' => esc_attr( $title_color ), - ), - '.ast-site-identity .site-title a:hover' => array( - 'color' => esc_attr( $title_hover_color ), - ), - '.ast-site-identity .site-description' => array( - 'color' => esc_attr( $tagline_color ), - ), - '.site-title' => array( - 'font-size' => astra_responsive_font( $site_title_font_size, 'desktop' ), - 'display' => esc_attr( $desktop_title_visibility ), - ), - 'header .custom-logo-link img' => array( - 'max-width' => astra_get_css_value( $header_logo_width['desktop'], 'px' ), - ), - '.astra-logo-svg' => array( - 'width' => astra_get_css_value( $header_logo_width['desktop'], 'px' ), - ), - - '.site-header .site-description' => array( - 'font-size' => astra_responsive_font( $site_tagline_font_size, 'desktop' ), - 'display' => esc_attr( $desktop_tagline_visibility ), - ), - '.entry-title' => array( - 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'desktop' ), - ), - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h1, .entry-content h1, .entry-content h1 a', - 'h1, .entry-content h1' - ) => array( - 'font-size' => astra_responsive_font( $heading_h1_font_size, 'desktop' ), - 'font-weight' => astra_get_css_value( $h1_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h1_font_family, 'font' ), - 'line-height' => esc_attr( $h1_line_height ), - 'text-transform' => esc_attr( $h1_text_transform ), - 'text-decoration' => esc_attr( $h1_text_decoration ), - 'letter-spacing' => esc_attr( $h1_letter_spacing ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h2, .entry-content h2, .entry-content h2 a', - 'h2, .entry-content h2' - ) => array( - 'font-size' => astra_responsive_font( $heading_h2_font_size, 'desktop' ), - 'font-weight' => astra_get_css_value( $h2_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h2_font_family, 'font' ), - 'line-height' => esc_attr( $h2_line_height ), - 'text-transform' => esc_attr( $h2_text_transform ), - 'text-decoration' => esc_attr( $h2_text_decoration ), - 'letter-spacing' => esc_attr( $h2_letter_spacing ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h3, .entry-content h3, .entry-content h3 a', - 'h3, .entry-content h3' - ) => array( - 'font-size' => astra_responsive_font( $heading_h3_font_size, 'desktop' ), - 'font-weight' => astra_get_css_value( $h3_font_weight, 'font' ), - 'font-family' => astra_get_css_value( $h3_font_family, 'font' ), - 'line-height' => esc_attr( $h3_line_height ), - 'text-transform' => esc_attr( $h3_text_transform ), - 'text-decoration' => esc_attr( $h3_text_decoration ), - 'letter-spacing' => esc_attr( $h3_letter_spacing ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h4, .entry-content h4, .entry-content h4 a', - 'h4, .entry-content h4' - ) => $h4_properties, - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h5, .entry-content h5, .entry-content h5 a', - 'h5, .entry-content h5' - ) => $h5_properties, - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h6, .entry-content h6, .entry-content h6 a', - 'h6, .entry-content h6' - ) => $h6_properties, - - // Global CSS. - '::selection' => array( - 'background-color' => esc_attr( $theme_color ), - 'color' => esc_attr( $selection_text_color ), - ), - - // Conditionally select selectors with annchors or withour anchors for text color. - self::conditional_headings_css_selectors( - 'body, h1, .entry-title a, .entry-content h1, .entry-content h1 a, h2, .entry-content h2, .entry-content h2 a, h3, .entry-content h3, .entry-content h3 a, h4, .entry-content h4, .entry-content h4 a, h5, .entry-content h5, .entry-content h5 a, h6, .entry-content h6, .entry-content h6 a', - 'body, h1, .entry-title a, .entry-content h1, h2, .entry-content h2, h3, .entry-content h3, h4, .entry-content h4, h5, .entry-content h5, h6, .entry-content h6' - ) => array( - 'color' => esc_attr( $text_color ), - ), - - // Typography. - '.tagcloud a:hover, .tagcloud a:focus, .tagcloud a.current-item' => array( - 'color' => astra_get_foreground_color( $link_color ), - 'border-color' => esc_attr( $link_color ), - 'background-color' => esc_attr( $link_color ), - ), - - // Input tags. - 'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, textarea:focus' => array( - 'border-color' => esc_attr( $link_color ), - ), - 'input[type="radio"]:checked, input[type=reset], input[type="checkbox"]:checked, input[type="checkbox"]:hover:checked, input[type="checkbox"]:focus:checked, input[type=range]::-webkit-slider-thumb' => array( - 'border-color' => esc_attr( $link_color ), - 'background-color' => esc_attr( $link_color ), - 'box-shadow' => 'none', - ), - - // Small Footer. - '.site-footer a:hover + .post-count, .site-footer a:focus + .post-count' => array( - 'background' => esc_attr( $link_color ), - 'border-color' => esc_attr( $link_color ), - ), - - '.single .nav-links .nav-previous, .single .nav-links .nav-next' => array( - 'color' => esc_attr( $link_color ), - ), - - // Blog Post Meta Typography. - '.entry-meta, .entry-meta *' => array( - 'line-height' => '1.45', - 'color' => esc_attr( $link_color ), - ), - '.entry-meta a:hover, .entry-meta a:hover *, .entry-meta a:focus, .entry-meta a:focus *, .page-links > .page-link, .page-links .page-link:hover, .post-navigation a:hover' => array( - 'color' => esc_attr( $link_hover_color ), - ), - - // Blockquote Text Color. - 'blockquote' => array( - 'color' => astra_adjust_brightness( $text_color, 75, 'darken' ), - ), - - '#cat option, .secondary .calendar_wrap thead a, .secondary .calendar_wrap thead a:visited' => array( - 'color' => esc_attr( $link_color ), - ), - '.secondary .calendar_wrap #today, .ast-progress-val span' => array( - 'background' => esc_attr( $link_color ), - ), - '.secondary a:hover + .post-count, .secondary a:focus + .post-count' => array( - 'background' => esc_attr( $link_color ), - 'border-color' => esc_attr( $link_color ), - ), - '.calendar_wrap #today > a' => array( - 'color' => astra_get_foreground_color( $link_color ), - ), - - // Pagination. - '.page-links .page-link, .single .post-navigation a' => array( - 'color' => esc_attr( $link_color ), - ), - - // Menu Toggle Border Radius. - '.ast-header-break-point .main-header-bar .ast-button-wrap .menu-toggle' => array( - 'border-radius' => ( '' !== $mobile_header_toggle_btn_border_radius ) ? esc_attr( $mobile_header_toggle_btn_border_radius ) . 'px' : '', - ), - - // Search. - '.ast-search-menu-icon .search-form button.search-submit' => array( - 'padding' => '0 4px', - ), - '.ast-search-menu-icon form.search-form' => array( - 'padding-right' => '0', - ), - '.ast-search-menu-icon.slide-search input.search-field' => array( - 'width' => '0', - ), - '.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-form, .ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-field:focus' => array( - 'border-color' => 'var(--ast-global-color-0)', - 'transition' => 'all 0.2s', - ), - '.search-form input.search-field:focus' => array( - 'outline' => 'none', // Making highlight by border that's why making outline none. - ), - ); - - if ( self::astra_4_4_0_compatibility() ) { - $css_output['.ast-search-menu-icon .search-form button.search-submit:focus, .ast-theme-transparent-header .ast-header-search .ast-dropdown-active .ast-icon, .ast-theme-transparent-header .ast-inline-search .search-field:focus .ast-icon'] = array( - 'color' => 'var(--ast-global-color-1)', - ); - $css_output['.ast-header-search .slide-search .search-form'] = array( - 'border' => '2px solid var(--ast-global-color-0)', - ); - - // Reduced specificity so that it does not override customizer background color option. - $css_output['.ast-header-search .slide-search .search-field'] = array( - 'background-color' => '#fff', // Referred by main.css. - ); - } - - /* This is a fix issue with logo height for normal and transparent logo so that they are the same */ - if ( ! apply_filters( 'astra_site_svg_logo_equal_height', astra_get_option( 'astra-site-svg-logo-equal-height', true ) ) ) { - $css_output['.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)'] = array( - 'height' => astra_get_css_value( ( ! empty( $header_logo_width['desktop-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['desktop-svg-height'] : '', 'px' ), - ); - } - - /* Compatibility with cost calculator plugin range slider*/ - if ( defined( 'CALC_VERSION' ) ) { - $css_output['.calc-range-slider input::-webkit-slider-runnable-track'] = array( - 'height' => 'auto', - 'box-shadow' => 'none', - 'background' => 'transparent', - 'border-radius' => 'none', - 'border' => 'none', - ); - - $css_output['.calc-range-slider input::-moz-range-track'] = array( - 'height' => 'auto', - 'box-shadow' => 'none', - 'background' => 'transparent', - 'border-radius' => 'none', - 'border' => 'none', - ); - - $css_output['.calc-range-slider input::-webkit-slider-thumb'] = array( - 'margin-top' => 'auto', - ); - } - - if ( astra_has_global_color_format_support() ) { - $css_output['.ast-archive-title'] = array( - 'color' => esc_attr( $heading_base_color ), - ); - } - - if ( ! $block_editor_legacy_setup && false === $update_customizer_strctural_defaults ) { - $css_output['.wp-block-latest-posts > li > a'] = array( - 'color' => esc_attr( $heading_base_color ), - ); - } - - // Default widget title color. - $css_output['.widget-title, .widget .wp-block-heading'] = array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 1.428571429 ), - 'color' => astra_has_global_color_format_support() ? esc_attr( $heading_base_color ) : esc_attr( $text_color ), - ); - - // Remove this condition after 2-3 updates of add-on. - if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '3.0.1', '>=' ) ) { - $css_output['.single .ast-author-details .author-title'] = array( - 'color' => esc_attr( $link_hover_color ), - ); - } - - if ( 'no-sidebar' !== astra_page_layout() ) { - $css_output['#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea'] = array( - 'font-size' => astra_responsive_font( $body_font_size, 'desktop' ), - ); - } - - // Add underline to every link in content area. - $content_links_underline = astra_get_option( 'underline-content-links' ); - - if ( $content_links_underline ) { - $css_output['.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a)'] = array( - 'text-decoration' => 'underline', - ); - - $reset_underline_from_anchors = self::unset_builder_elements_underline(); - - $excluding_anchor_selectors = $reset_underline_from_anchors ? '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-button-wrapper .elementor-button, .ast-single-post .entry-content .uagb-tab a, .ast-single-post .entry-content .uagb-ifb-cta a, .ast-single-post .entry-content .wp-block-uagb-buttons a, .ast-single-post .entry-content .uabb-module-content a, .ast-single-post .entry-content .uagb-post-grid a, .ast-single-post .entry-content .uagb-timeline a, .ast-single-post .entry-content .uagb-toc__wrap a, .ast-single-post .entry-content .uagb-taxomony-box a, .ast-single-post .entry-content .woocommerce a, .entry-content .wp-block-latest-posts > li > a, .ast-single-post .entry-content .wp-block-file__button, li.ast-post-filter-single, .ast-single-post .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link' : '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-button-wrapper .elementor-button, li.ast-post-filter-single, .ast-single-post .wp-block-button.is-style-outline .wp-block-button__link, div.ast-custom-button'; - - $excluding_anchor_selectors = apply_filters( 'astra_remove_underline_anchor_links', $excluding_anchor_selectors ); - - $css_output[ $excluding_anchor_selectors ] = array( - 'text-decoration' => 'none', - ); - } - - // Accessibility options. - $enable_site_accessibility = astra_get_option( 'site-accessibility-toggle', false ); - $html_selectors_focus_visible = 'a:focus-visible, .ast-menu-toggle:focus-visible, .site .skip-link:focus-visible, .wp-block-loginout input:focus-visible, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper, .ast-header-navigation-arrow:focus-visible, .woocommerce .wc-proceed-to-checkout > .checkout-button:focus-visible, .woocommerce .woocommerce-MyAccount-navigation ul li a:focus-visible, .ast-orders-table__row .ast-orders-table__cell:focus-visible, .woocommerce .woocommerce-order-details .order-again > .button:focus-visible, .woocommerce .woocommerce-message a.button.wc-forward:focus-visible, .woocommerce #minus_qty:focus-visible, .woocommerce #plus_qty:focus-visible, a#ast-apply-coupon:focus-visible, .woocommerce .woocommerce-info a:focus-visible, .woocommerce .astra-shop-summary-wrap a:focus-visible, .woocommerce a.wc-forward:focus-visible, #ast-apply-coupon:focus-visible, .woocommerce-js .woocommerce-mini-cart-item a.remove:focus-visible'; - $html_selectors_focus_only_inputs = 'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="number"]:focus, textarea:focus, .wp-block-search__input:focus, [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, .ast-mobile-popup-drawer.active .menu-toggle-close:focus, .woocommerce-ordering select.orderby:focus, #ast-scroll-top:focus, #coupon_code:focus, .woocommerce-page #comment:focus, .woocommerce #reviews #respond input#submit:focus, .woocommerce a.add_to_cart_button:focus, .woocommerce .button.single_add_to_cart_button:focus, .woocommerce .woocommerce-cart-form button:focus, .woocommerce .woocommerce-cart-form__cart-item .quantity .qty:focus, .woocommerce .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce #order_comments:focus, .woocommerce #place_order:focus, .woocommerce .woocommerce-address-fields .woocommerce-address-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce .woocommerce-MyAccount-content form button:focus, .woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-form-row .woocommerce-Input.input-text:focus, .woocommerce .ast-woocommerce-container .woocommerce-pagination ul.page-numbers li a:focus, body #content .woocommerce form .form-row .select2-container--default .select2-selection--single:focus, #ast-coupon-code:focus, .woocommerce.woocommerce-js .quantity input[type=number]:focus, .woocommerce-js .woocommerce-mini-cart-item .quantity input[type=number]:focus, .woocommerce p#ast-coupon-trigger:focus'; - - if ( $enable_site_accessibility ) { - $outline_style = astra_get_option( 'site-accessibility-highlight-type' ); - $outline_color = astra_get_option( 'site-accessibility-highlight-color' ); - - $outline_input_style = astra_get_option( 'site-accessibility-highlight-input-type' ); - $outline_input_color = astra_get_option( 'site-accessibility-highlight-input-color' ); - - $css_output[ $html_selectors_focus_visible ] = array( - 'outline-style' => $outline_style ? $outline_style : 'inherit', - 'outline-color' => $outline_color ? $outline_color : 'inherit', - 'outline-width' => 'thin', - 'border-color' => 'transparent', - ); - - if ( 'disable' !== $outline_input_style ) { - $css_output[ $html_selectors_focus_only_inputs ] = array( - 'border-style' => $outline_input_style ? $outline_input_style : 'inherit', - 'border-color' => $outline_input_color ? $outline_input_color : 'inherit', - 'border-width' => 'thin', - 'outline-color' => 'transparent', - ); - } else { - $css_output[ $html_selectors_focus_only_inputs ] = array( - 'border-style' => $outline_style ? $outline_style : 'inherit', - 'border-color' => $outline_color ? $outline_color : 'inherit', - 'border-width' => 'thin', - 'outline-color' => 'transparent', - ); - } - } - - if ( false === $enable_site_accessibility ) { - $css_output[ $html_selectors_focus_only_inputs . ', ' . $html_selectors_focus_visible ] = array( - 'outline-style' => 'none', - ); - } - - - - /** - * Loaded the following CSS conditionally because of following scenarios - - * - * 1. $text_color is applying to menu-link anchors as well though $link_color should apply over there. - * 2. $link_color applying in old header as hover color for menu-anchors. - * - * @since 3.0.0 - */ - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - // Header - Main Header CSS. - $css_output['.main-header-menu .menu-link, .ast-header-custom-item a'] = array( - 'color' => esc_attr( $text_color ), - ); - // Main - Menu Items. - $css_output['.main-header-menu .menu-item:hover > .menu-link, .main-header-menu .menu-item:hover > .ast-menu-toggle, .main-header-menu .ast-masthead-custom-menu-items a:hover, .main-header-menu .menu-item.focus > .menu-link, .main-header-menu .menu-item.focus > .ast-menu-toggle, .main-header-menu .current-menu-item > .menu-link, .main-header-menu .current-menu-ancestor > .menu-link, .main-header-menu .current-menu-item > .ast-menu-toggle, .main-header-menu .current-menu-ancestor > .ast-menu-toggle'] = array( - 'color' => esc_attr( $link_color ), - ); - $css_output['.header-main-layout-3 .ast-main-header-bar-alignment'] = array( - 'margin-right' => 'auto', - ); - if ( $is_site_rtl ) { - $css_output['.header-main-layout-2 .site-header-section-left .ast-site-identity'] = array( - 'text-align' => 'right', - ); - } else { - $css_output['.header-main-layout-2 .site-header-section-left .ast-site-identity'] = array( - 'text-align' => 'left', - ); - } - } - - $page_header_logo = ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'advanced-headers' ) && Astra_Ext_Advanced_Headers_Loader::astra_advanced_headers_design_option( 'logo-url' ) ) ? true : false; - - if ( astra_get_option( 'logo-title-inline' ) ) { - $css_output['.ast-logo-title-inline .site-logo-img'] = array( - 'padding-right' => '1em', - ); - } - - if ( get_theme_mod( 'custom_logo' ) - || astra_get_option( 'transparent-header-logo' ) - || astra_get_option( 'sticky-header-logo' ) - || $page_header_logo - || is_customize_preview() ) { - - $css_output['.site-logo-img img'] = array( - ' transition' => 'all 0.2s linear', - ); - - if ( astra_get_option( 'header-logo-color' ) ) { - $css_output['.site-logo-img img'] = array( - 'filter' => 'url(#ast-img-color-filter)', - ' transition' => 'all 0.2s linear', - ); - } - - if ( astra_get_option( 'transparent-header-logo-color' ) ) { - $css_output['.site-logo-img .transparent-custom-logo img, .ast-theme-transparent-header .site-logo-img img'] = array( - 'filter' => 'url(#ast-img-color-filter-2)', - ); - } - } - - $parse_css = ''; - if ( $block_editor_legacy_setup ) { - $parse_css .= ' - .ast-no-sidebar .entry-content .alignfull { - margin-left: calc( -50vw + 50%); - margin-right: calc( -50vw + 50%); - max-width: 100vw; - width: 100vw; - } - .ast-no-sidebar .entry-content .alignwide { - margin-left: calc(-41vw + 50%); - margin-right: calc(-41vw + 50%); - max-width: unset; - width: unset; - } - .ast-no-sidebar .entry-content .alignfull .alignfull, .ast-no-sidebar .entry-content .alignfull .alignwide, .ast-no-sidebar .entry-content .alignwide .alignfull, .ast-no-sidebar .entry-content .alignwide .alignwide, - .ast-no-sidebar .entry-content .wp-block-column .alignfull, .ast-no-sidebar .entry-content .wp-block-column .alignwide{ - width: 100%; - margin-left: auto; - margin-right: auto; - } - .wp-block-gallery, - .blocks-gallery-grid { - margin: 0; - } - .wp-block-separator { - max-width: 100px; - } - .wp-block-separator.is-style-wide, .wp-block-separator.is-style-dots { - max-width: none; - } - .entry-content .has-2-columns .wp-block-column:first-child { - padding-right: 10px; - } - .entry-content .has-2-columns .wp-block-column:last-child { - padding-left: 10px; - } - @media (max-width: 782px) { - .entry-content .wp-block-columns .wp-block-column { - flex-basis: 100%; - } - .entry-content .has-2-columns .wp-block-column:first-child { - padding-right: 0; - } - .entry-content .has-2-columns .wp-block-column:last-child { - padding-left: 0; - } - } - body .entry-content .wp-block-latest-posts { - margin-left: 0; - } - body .entry-content .wp-block-latest-posts li { - list-style: none; - } - .ast-no-sidebar .ast-container .entry-content .wp-block-latest-posts { - margin-left: 0; - } - .ast-header-break-point .entry-content .alignwide { - margin-left: auto; - margin-right: auto; - } - .entry-content .blocks-gallery-item img { - margin-bottom: auto; - } - .wp-block-pullquote { - border-top: 4px solid #555d66; - border-bottom: 4px solid #555d66; - color: #40464d; - } - '; - } - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $css_output ); - - if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { - - $old_header_mobile_toggle = array( - // toggle style - // Menu Toggle Minimal. - '.ast-header-break-point .ast-mobile-menu-buttons-minimal.menu-toggle' => array( - 'background' => 'transparent', - 'color' => esc_attr( $mobile_header_toggle_btn_style_color ), - ), - - // Menu Toggle Outline. - '.ast-header-break-point .ast-mobile-menu-buttons-outline.menu-toggle' => array( - 'background' => 'transparent', - 'border' => '1px solid ' . $mobile_header_toggle_btn_style_color, - 'color' => esc_attr( $mobile_header_toggle_btn_style_color ), - ), - - // Menu Toggle Fill. - '.ast-header-break-point .ast-mobile-menu-buttons-fill.menu-toggle' => array( - 'background' => esc_attr( $mobile_header_toggle_btn_style_color ), - 'color' => $menu_btn_color, - ), - ); - - $parse_css .= astra_parse_css( $old_header_mobile_toggle ); - } - - $parse_css .= astra_container_layout_css(); - - if ( 'no-sidebar' !== astra_page_layout() ) { - $parse_css .= Astra_Enqueue_Scripts::trim_css( self::load_sidebar_static_css() ); - $parse_css .= self::astra_sticky_sidebar_css(); - } - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - $parse_css .= astra_parse_css( - array( - '#ast-desktop-header' => array( - 'display' => 'none', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - - $parse_css .= astra_parse_css( - array( - '#ast-mobile-header' => array( - 'display' => 'none', - ), - ), - astra_get_tablet_breakpoint( '', 1 ) - ); - } - - // Comments CSS. - if ( ! Astra_Builder_Helper::apply_flex_based_css() ) { - require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } else { - require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments-flex.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - $live_search_enabled = astra_get_option( 'live-search', false ); - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active && Astra_Builder_Helper::is_component_loaded( 'search', 'header' ) && $live_search_enabled ) { - // Live search CSS. - require_once ASTRA_THEME_DIR . 'inc/dynamic-css/live-search.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - if ( Astra_Builder_Helper::is_component_loaded( 'woo-cart', 'header' ) || Astra_Builder_Helper::is_component_loaded( 'edd-cart', 'header' ) ) { - $parse_css .= Astra_Enqueue_Scripts::trim_css( self::load_cart_static_css() ); - - $parse_css .= astra_parse_css( - array( - '.astra-cart-drawer.active' => array( - 'width' => '80%', - ), - ), - '', - astra_get_tablet_breakpoint() - ); - - $parse_css .= astra_parse_css( - array( - '.astra-cart-drawer.active' => array( - 'width' => '100%', - ), - ), - '', - astra_get_mobile_breakpoint() - ); - } - - if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { - $footer_css_output = array( - '.ast-small-footer' => array( - 'color' => esc_attr( $footer_color ), - ), - '.ast-small-footer > .ast-footer-overlay' => astra_get_background_obj( $footer_bg_obj ), - - '.ast-small-footer a' => array( - 'color' => esc_attr( $footer_link_color ), - ), - '.ast-small-footer a:hover' => array( - 'color' => esc_attr( $footer_link_h_color ), - ), - - // Advanced Footer colors/fonts. - '.footer-adv .footer-adv-overlay' => array( - 'border-top-style' => 'solid', - 'border-top-width' => astra_get_css_value( $footer_adv_border_width, 'px' ), - 'border-top-color' => esc_attr( $footer_adv_border_color ), - ), - '.footer-adv .widget-title,.footer-adv .widget-title a' => array( - 'color' => esc_attr( $footer_adv_widget_title_color ), - ), - - '.footer-adv' => array( - 'color' => esc_attr( $footer_adv_text_color ), - ), - - '.footer-adv a' => array( - 'color' => esc_attr( $footer_adv_link_color ), - ), - - '.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array( - 'border-color' => esc_attr( $footer_adv_link_color ), - 'background-color' => esc_attr( $footer_adv_link_color ), - ), - - '.footer-adv a:hover, .footer-adv .no-widget-text a:hover, .footer-adv a:focus, .footer-adv .no-widget-text a:focus' => array( - 'color' => esc_attr( $footer_adv_link_h_color ), - ), - - '.footer-adv .calendar_wrap #today, .footer-adv a:hover + .post-count' => array( - 'background-color' => esc_attr( $footer_adv_link_color ), - ), - - '.footer-adv-overlay' => astra_get_background_obj( $footer_adv_bg_obj ), - - ); - - $parse_css .= astra_parse_css( $footer_css_output ); - } - - // Paginaiton CSS. - require_once ASTRA_THEME_DIR . 'inc/dynamic-css/pagination.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - // Related Posts Dynamic CSS. - - /** - * - * Fix button aligment issue comming from the gutenberg plugin (v9.3.0). - */ - $gtn_plugin_button_center_alignment = array( - '.wp-block-buttons.aligncenter' => array( - 'justify-content' => 'center', - ), - ); - $parse_css .= astra_parse_css( $gtn_plugin_button_center_alignment ); - - $ast_container_layout = astra_get_content_layout(); - $is_boxed = astra_is_content_style_boxed(); - $is_sidebar_boxed = astra_is_sidebar_style_boxed(); - $ast_container_layout = astra_apply_boxed_layouts( $ast_container_layout, $is_boxed, $is_sidebar_boxed ); - - /** - * If transparent header is activated then it adds top 1.5em padding space, so this CSS will fix this issue. - * This issue is only visible on responsive devices. - * - * @since 2.6.0 - */ - if ( self::gutenberg_core_blocks_css_comp() && is_singular() ) { - $trans_header_responsive_top_space_css_fix = array( - '.ast-theme-transparent-header #primary, .ast-theme-transparent-header #secondary' => array( - 'padding' => 0, - ), - ); - - /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $trans_header_responsive_top_space_css_fix, '', astra_get_tablet_breakpoint() ); - } - - /** - * Remove #primary padding on mobile devices which compromises deigned layout. - * - * @since 2.6.1 - */ - if ( self::gutenberg_media_text_block_css_compat() && is_singular() ) { - $remove_primary_padding_on_mobile_css = array( - '.ast-plain-container.ast-no-sidebar #primary' => array( - 'padding' => 0, - ), - ); - - /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $remove_primary_padding_on_mobile_css, '', astra_get_tablet_breakpoint() ); - } - - /** - * Remove margin top when Primary Header is not set and No Sidebar is added in Full-Width / Contained Layout. - * - * @since 2.5.0 - */ - if ( self::gtn_group_cover_css_comp() && is_singular() ) { - $display_header = get_post_meta( get_the_ID(), 'ast-main-header-display', true ); - if ( 'disabled' === $display_header && apply_filters( 'astra_content_margin_full_width_contained', true ) || ( Astra_Ext_Transparent_Header_Markup::is_transparent_header() ) || ( self::gutenberg_core_blocks_css_comp() ) ) { - $gtn_margin_top = array( - '.ast-plain-container.ast-no-sidebar #primary' => array( - 'margin-top' => '0', - 'margin-bottom' => '0', - ), - ); - $parse_css .= astra_parse_css( $gtn_margin_top ); - } - /** - * Re-add margin top when FullWidth Contained layout is set. - * - * @since 3.8.3 - */ - if ( true === $update_customizer_strctural_defaults ) { - $display_title = get_post_meta( get_the_ID(), 'site-post-title', true ); - if ( 'disabled' !== $display_title && ! Astra_Ext_Transparent_Header_Markup::is_transparent_header() && apply_filters( 'astra_contained_layout_primary_spacing', true ) ) { - $gtn_margin_top = array( - '.ast-plain-container.ast-no-sidebar #primary' => array( - 'margin-top' => '60px', - 'margin-bottom' => '60px', - ), - ); - /* Parse CSS from array() -> min-width: (1200)px CSS */ - $parse_css .= astra_parse_css( $gtn_margin_top, '1200' ); - } - } - } - - $single_post_outside_spacing = astra_get_option( 'single-post-outside-spacing' ); - - $single_post_outside_spacing_css_desktop = array( - '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'desktop' ), - 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'desktop' ), - ), - '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'desktop' ), - ), - ); - - $parse_css .= astra_parse_css( $single_post_outside_spacing_css_desktop ); - - $single_post_outside_spacing_css_tablet = array( - '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container #primary, .ast-narrow-container #primary' => array( - 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'tablet' ), - 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'tablet' ), - ), - '.ast-left-sidebar #primary, .ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container #primary, .ast-narrow-container #primary' => array( - 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'tablet' ), - ), - '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'tablet' ), - 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'tablet' ), - ), - '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'tablet' ), - ), - ); - - $parse_css .= astra_parse_css( $single_post_outside_spacing_css_tablet, '', astra_get_tablet_breakpoint() ); - - $single_post_outside_spacing_css_mobile = array( - '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'mobile' ), - 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'mobile' ), - ), - '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( - 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'mobile' ), - ), - ); - - $parse_css .= astra_parse_css( $single_post_outside_spacing_css_mobile, '', astra_get_mobile_breakpoint() ); - - /** - * Single Post Outer spacing - */ - // To apply Container Outside Spacing we need to remove default top padding given from the theme. - $remove_single_post_top_padding_container = array( - '.ast-separate-container #primary, .ast-narrow-container #primary' => array( - 'padding-top' => astra_get_css_value( 0, 'px' ), - ), - ); - - // To apply Container Outside Spacing we need to remove default bottom padding given from the theme. - $remove_single_post_bottom_padding_container = array( - '.ast-separate-container #primary, .ast-narrow-container #primary' => array( - 'padding-bottom' => astra_get_css_value( 0, 'px' ), - ), - ); - - if ( isset( $single_post_outside_spacing['desktop']['top'] ) && '' != $single_post_outside_spacing['desktop']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_top_padding_container ); - } - if ( isset( $single_post_outside_spacing['tablet']['top'] ) && '' != $single_post_outside_spacing['tablet']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_top_padding_container, '', astra_get_tablet_breakpoint() ); - } - if ( isset( $single_post_outside_spacing['mobile']['top'] ) && '' != $single_post_outside_spacing['mobile']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_top_padding_container, '', astra_get_mobile_breakpoint() ); - } - - if ( isset( $single_post_outside_spacing['desktop']['top'] ) && '' != $single_post_outside_spacing['desktop']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container ); - } - if ( isset( $single_post_outside_spacing['tablet']['top'] ) && '' != $single_post_outside_spacing['tablet']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container, '', astra_get_tablet_breakpoint() ); - } - if ( isset( $single_post_outside_spacing['mobile']['top'] ) && '' != $single_post_outside_spacing['mobile']['top'] ) { - $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container, '', astra_get_mobile_breakpoint() ); - } - - if ( $block_editor_legacy_setup ) { - /* - * Fix the wide width issue in gutenberg - * check if the current user is existing user or new user. - * if new user load the CSS bty default if existing provide a filter - */ - if ( self::gtn_image_group_css_comp() ) { - - if ( false === $improve_gb_ui && ( 'content-boxed-container' == $ast_container_layout || 'boxed-container' == $ast_container_layout ) ) { - $parse_css .= astra_parse_css( - array( - '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array( - 'margin-left' => '-6.67em', - 'margin-right' => '-6.67em', - 'max-width' => 'unset', - 'width' => 'unset', - ), - '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array( - 'margin-left' => '-20px', - 'margin-right' => '-20px', - 'max-width' => 'unset', - 'width' => 'unset', - ), - ), - '1200' - ); - } - - $gtn_full_wide_image_css = array( - '.wp-block-group .has-background' => array( - 'padding' => '20px', - ), - ); - $parse_css .= astra_parse_css( $gtn_full_wide_image_css, '1200' ); - - } else { - - $gtn_tablet_column_css = array( - '.entry-content .wp-block-columns .wp-block-column' => array( - 'margin-left' => '0px', - ), - ); - - $parse_css .= astra_parse_css( $gtn_tablet_column_css, '', '782' ); - } - - if ( self::gtn_group_cover_css_comp() ) { - - if ( 'no-sidebar' !== astra_page_layout() ) { - - switch ( $ast_container_layout ) { - case 'content-boxed-container': - case 'boxed-container': - if ( true === $improve_gb_ui ) { - break; - } - $parse_css .= astra_parse_css( - array( - // With container - Sidebar. - '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array( - 'margin-left' => '-20px', - 'margin-right' => '-20px', - 'padding-left' => '20px', - 'padding-right' => '20px', - ), - '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array( - 'margin-left' => '-6.67em', - 'margin-right' => '-6.67em', - 'padding-left' => '6.67em', - 'padding-right' => '6.67em', - ), - ), - '1200' - ); - break; - - case 'plain-container': - $parse_css .= astra_parse_css( - array( - // Without container - Sidebar. - '.ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignfull' => array( - 'padding-left' => '20px', - 'padding-right' => '20px', - ), - ), - '1200' - ); - break; - - case 'page-builder': - $parse_css .= astra_parse_css( - array( - '.ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignfull, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignful' => array( - 'padding-right' => '0', - 'padding-left' => '0', - ), - ), - '1200' - ); - break; - } - } else { - - switch ( $container_layout ) { - case 'content-boxed-container': - case 'boxed-container': - if ( true === $improve_gb_ui ) { - break; - } - - $parse_css .= astra_parse_css( - array( - // With container - No Sidebar. - '.ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignwide, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignwide' => array( - 'margin-left' => '-20px', - 'margin-right' => '-20px', - 'padding-left' => '20px', - 'padding-right' => '20px', - ), - '.ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignfull, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignfull' => array( - 'margin-left' => '-6.67em', - 'margin-right' => '-6.67em', - 'padding-left' => '6.67em', - 'padding-right' => '6.67em', - ), - ), - '1200' - ); - break; - - case 'plain-container': - $parse_css .= astra_parse_css( - array( - // Without container - No Sidebar. - '.ast-plain-container.ast-no-sidebar .entry-content .alignwide .wp-block-cover__inner-container, .ast-plain-container.ast-no-sidebar .entry-content .alignfull .wp-block-cover__inner-container' => array( - 'width' => astra_get_css_value( $site_content_width + 40, 'px' ), - ), - ), - '1200' - ); - break; - - case 'page-builder': - $parse_css .= astra_parse_css( - array( - '.ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignfull' => array( - 'padding-right' => '0', - 'padding-left' => '0', - ), - ), - '1200' - ); - break; - } - } - - $parse_css .= astra_parse_css( - array( - '.wp-block-cover-image.alignwide .wp-block-cover__inner-container, .wp-block-cover.alignwide .wp-block-cover__inner-container, .wp-block-cover-image.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull .wp-block-cover__inner-container' => array( - 'width' => '100%', - ), - ), - '1200' - ); - } - - if ( self::gutenberg_core_blocks_css_comp() ) { - $desktop_screen_gb_css = array( - // Group block, Columns block, Gallery block, Table block & has-text-align-center selector compatibility Desktop CSS. - '.wp-block-columns' => array( - 'margin-bottom' => 'unset', - ), - '.wp-block-image.size-full' => array( - 'margin' => '2rem 0', - ), - '.wp-block-separator.has-background' => array( - 'padding' => '0', - ), - '.wp-block-gallery' => array( - 'margin-bottom' => '1.6em', - ), - '.wp-block-group' => array( - 'padding-top' => '4em', - 'padding-bottom' => '4em', - ), - '.wp-block-group__inner-container .wp-block-columns:last-child, .wp-block-group__inner-container :last-child, .wp-block-table table' => array( - 'margin-bottom' => '0', - ), - '.blocks-gallery-grid' => array( - 'width' => '100%', - ), - '.wp-block-navigation-link__content' => array( - 'padding' => '5px 0', - ), - '.wp-block-group .wp-block-group .has-text-align-center, .wp-block-group .wp-block-column .has-text-align-center' => array( - 'max-width' => '100%', - ), - '.has-text-align-center' => array( - 'margin' => '0 auto', - ), - ); - - /* Parse CSS from array() -> Desktop CSS */ - $parse_css .= astra_parse_css( $desktop_screen_gb_css ); - - if ( false === $improve_gb_ui ) { - $middle_screen_min_gb_css = array( - // Group & Column block > align compatibility (min-width:1200px) CSS. - '.wp-block-cover__inner-container, .alignwide .wp-block-group__inner-container, .alignfull .wp-block-group__inner-container' => array( - 'max-width' => '1200px', - 'margin' => '0 auto', - ), - '.wp-block-group.alignnone, .wp-block-group.aligncenter, .wp-block-group.alignleft, .wp-block-group.alignright, .wp-block-group.alignwide, .wp-block-columns.alignwide' => array( - 'margin' => '2rem 0 1rem 0', - ), - ); - /* Parse CSS from array() -> min-width: (1200)px CSS */ - $parse_css .= astra_parse_css( $middle_screen_min_gb_css, '1200' ); - } - - $middle_screen_max_gb_css = array( - // Group & Column block (max-width:1200px) CSS. - '.wp-block-group' => array( - 'padding' => '3em', - ), - '.wp-block-group .wp-block-group' => array( - 'padding' => '1.5em', - ), - '.wp-block-columns, .wp-block-column' => array( - 'margin' => '1rem 0', - ), - ); - - /* Parse CSS from array() -> max-width: (1200)px CSS */ - $parse_css .= astra_parse_css( $middle_screen_max_gb_css, '', '1200' ); - - $tablet_screen_min_gb_css = array( - // Columns inside Group block compatibility (min-width: tablet-breakpoint) CSS. - '.wp-block-columns .wp-block-group' => array( - 'padding' => '2em', - ), - ); - - /* Parse CSS from array() -> min-width: (tablet-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $tablet_screen_min_gb_css, astra_get_tablet_breakpoint() ); - - $mobile_screen_max_gb_css = array( - // Content | image | video inside Media & Text block, Cover block, Image inside cover block compatibility (max-width: mobile-breakpoint) CSS. - '.wp-block-cover-image .wp-block-cover__inner-container, .wp-block-cover .wp-block-cover__inner-container' => array( - 'width' => 'unset', - ), - '.wp-block-cover, .wp-block-cover-image' => array( - 'padding' => '2em 0', - ), - '.wp-block-group, .wp-block-cover' => array( - 'padding' => '2em', - ), - '.wp-block-media-text__media img, .wp-block-media-text__media video' => array( - 'width' => 'unset', - 'max-width' => '100%', - ), - '.wp-block-media-text.has-background .wp-block-media-text__content' => array( - 'padding' => '1em', - ), - ); - - if ( ! self::gutenberg_media_text_block_css_compat() ) { - // Added this [! self::gutenberg_media_text_block_css_compat()] condition as we update the same selector CSS in gutenberg_media_text_block_css_compat() function with new padding: 8% 0; CSS for max-width: (mobile-breakpoint). - $mobile_screen_max_gb_css['.wp-block-media-text .wp-block-media-text__content'] = array( - 'padding' => '3em 2em', - ); - } - - /* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $mobile_screen_max_gb_css, '', astra_get_mobile_breakpoint() ); - } - - $is_legacy_setup = ( 'legacy' === astra_get_option( 'wp-blocks-ui' ) ) ? true : false; - - if ( $is_legacy_setup && astra_wp_version_compare( '6.0', '>=' ) ) { - // Image block align center CSS. - $image_block_center_align = array( - '.wp-block-image.aligncenter' => array( - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - ); - $parse_css .= astra_parse_css( $image_block_center_align ); - } - - if ( $is_legacy_setup ) { - // Table block align center CSS. - $table_block_center_align = array( - '.wp-block-table.aligncenter' => array( - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - ); - $parse_css .= astra_parse_css( $table_block_center_align ); - } - - if ( self::gutenberg_media_text_block_css_compat() ) { - $media_text_block_padding_css = array( - // Media & Text block CSS compatibility (min-width: mobile-breakpoint) CSS. - '.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content' => array( - 'padding' => '0 8% 0 0', - ), - '.entry-content .wp-block-media-text .wp-block-media-text__content' => array( - 'padding' => '0 0 0 8%', - ), - '.ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-left > *' => array( - 'margin' => 0, - ), - ); - - /* Parse CSS from array() -> min-width: (mobile-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $media_text_block_padding_css, astra_get_mobile_breakpoint() ); - - $mobile_screen_media_text_block_css = array( - // Media & Text block padding CSS for (max-width: mobile-breakpoint) CSS. - '.entry-content .wp-block-media-text .wp-block-media-text__content' => array( - 'padding' => '8% 0', - ), - '.wp-block-media-text .wp-block-media-text__media img' => array( - 'width' => 'auto', - 'max-width' => '100%', - ), - ); - - /* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $mobile_screen_media_text_block_css, '', astra_get_mobile_breakpoint() ); - } - } - - /** - * When supporting GB button outline patterns in v3.3.0 we have given 2px as default border for GB outline button, where we restrict button border for flat type buttons. - * But now while reverting this change there is no need of default border because whatever customizer border will set it should behave accordingly. Although it is empty ('') WP applying 2px as default border for outline buttons. - * - * @since 3.6.3 - */ - $default_border_size = '2px'; - if ( astra_button_default_padding_updated() ) { - $default_border_size = ''; - } - - // Outline Gutenberg button compatibility CSS. - $theme_btn_top_border = ( isset( $global_custom_button_border_size['top'] ) && ( '' !== $global_custom_button_border_size['top'] && '0' !== $global_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : $default_border_size; - $theme_btn_right_border = ( isset( $global_custom_button_border_size['right'] ) && ( '' !== $global_custom_button_border_size['right'] && '0' !== $global_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : $default_border_size; - $theme_btn_left_border = ( isset( $global_custom_button_border_size['left'] ) && ( '' !== $global_custom_button_border_size['left'] && '0' !== $global_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : $default_border_size; - $theme_btn_bottom_border = ( isset( $global_custom_button_border_size['bottom'] ) && ( '' !== $global_custom_button_border_size['bottom'] && '0' !== $global_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : $default_border_size; - - if ( self::gutenberg_core_patterns_compat() ) { - - $outline_button_css = array( - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'border-top-width' => esc_attr( $theme_btn_top_border ), - 'border-right-width' => esc_attr( $theme_btn_right_border ), - 'border-bottom-width' => esc_attr( $theme_btn_bottom_border ), - 'border-left-width' => esc_attr( $theme_btn_left_border ), - ), - 'div.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), div.wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color)' => array( - 'color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - ), - '.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover' => array( - 'color' => esc_attr( $btn_text_hover_color ), - 'background-color' => esc_attr( $btn_bg_hover_color ), - 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), - ), - // Adding CSS to highlight current paginated number. - '.post-page-numbers.current .page-link, .ast-pagination .page-numbers.current' => array( - 'color' => astra_get_foreground_color( $theme_color ), - 'border-color' => esc_attr( $theme_color ), - 'background-color' => esc_attr( $theme_color ), - 'border-radius' => '2px', - ), - ); - - /* Parse CSS from array() -> All media CSS */ - $parse_css .= astra_parse_css( $outline_button_css ); - - if ( $block_editor_legacy_setup ) { - - if ( ! astra_button_default_padding_updated() ) { - // Tablet CSS. - $outline_button_tablet_css = array( - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', - 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', - 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', - 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', - ), - ); - - $parse_css .= astra_parse_css( $outline_button_tablet_css, '', astra_get_tablet_breakpoint() ); - - // Mobile CSS. - $outline_button_mobile_css = array( - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', - 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', - 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', - 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', - ), - ); - - $parse_css .= astra_parse_css( $outline_button_mobile_css, '', astra_get_mobile_breakpoint() ); - } - - if ( $is_site_rtl ) { - $gb_patterns_min_mobile_css = array( - '.entry-content > .alignleft' => array( - 'margin-left' => '20px', - ), - '.entry-content > .alignright' => array( - 'margin-right' => '20px', - ), - ); - } else { - $gb_patterns_min_mobile_css = array( - '.entry-content > .alignleft' => array( - 'margin-right' => '20px', - ), - '.entry-content > .alignright' => array( - 'margin-left' => '20px', - ), - ); - } - - if ( ! astra_button_default_padding_updated() ) { - $gb_patterns_min_mobile_css['.wp-block-group.has-background'] = array( - 'padding' => '20px', - ); - } - - /* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */ - $parse_css .= astra_parse_css( $gb_patterns_min_mobile_css, astra_get_mobile_breakpoint() ); - } - } - - if ( astra_button_default_padding_updated() ) { - $outline_button_css = array( - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'border-top-width' => esc_attr( $theme_btn_top_border ), - 'border-right-width' => esc_attr( $theme_btn_right_border ), - 'border-bottom-width' => esc_attr( $theme_btn_bottom_border ), - 'border-left-width' => esc_attr( $theme_btn_left_border ), - ), - ); - - /* Parse CSS from array() -> All media CSS */ - $parse_css .= astra_parse_css( $outline_button_css ); - } - - /** - * Secondary button styles. - */ - $scndry_btn_text_color = astra_get_option( 'secondary-button-color' ); - $scndry_btn_border_color = astra_get_option( 'secondary-theme-button-border-group-border-color' ); - $scndry_btn_border_h_color = astra_get_option( 'secondary-theme-button-border-group-border-h-color' ); - $global_scndry_custom_button_border_size = astra_get_option( 'secondary-theme-button-border-group-border-size' ); - $scndry_theme_btn_top_border = ( isset( $global_scndry_custom_button_border_size['top'] ) && ( '' !== $global_scndry_custom_button_border_size['top'] && '0' !== $global_scndry_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['top'], 'px' ) : $default_border_size; - $scndry_theme_btn_right_border = ( isset( $global_scndry_custom_button_border_size['right'] ) && ( '' !== $global_scndry_custom_button_border_size['right'] && '0' !== $global_scndry_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['right'], 'px' ) : $default_border_size; - $scndry_theme_btn_left_border = ( isset( $global_scndry_custom_button_border_size['left'] ) && ( '' !== $global_scndry_custom_button_border_size['left'] && '0' !== $global_scndry_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['left'], 'px' ) : $default_border_size; - $scndry_theme_btn_bottom_border = ( isset( $global_scndry_custom_button_border_size['bottom'] ) && ( '' !== $global_scndry_custom_button_border_size['bottom'] && '0' !== $global_scndry_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['bottom'], 'px' ) : $default_border_size; - $scndry_theme_btn_font_family = astra_get_option( 'secondary-font-family-button' ); - $scndry_theme_btn_font_size = astra_get_option( 'secondary-font-size-button' ); - $scndry_theme_btn_font_weight = astra_get_option( 'secondary-font-weight-button' ); - $scndry_theme_btn_text_transform = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'text-transform' ); - $scndry_theme_btn_line_height = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'line-height', 'line-height-unit' ); - $scndry_theme_btn_letter_spacing = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'letter-spacing', 'letter-spacing-unit' ); - $scndry_theme_btn_text_decoration = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'text-decoration' ); - $scndry_theme_btn_padding = astra_get_option( 'secondary-theme-button-padding' ); - $scndry_btn_border_radius_fields = astra_get_option( 'secondary-button-radius-fields' ); - $scndry_btn_bg_color = astra_get_option( 'secondary-button-bg-color' ); - $scndry_btn_bg_hover_color = astra_get_option( 'secondary-button-bg-h-color' ); - $scndry_btn_text_hover_color = astra_get_option( 'secondary-button-h-color' ); - $outline_button_selector = '.wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; - $padding_top = astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'desktop' ); - $padding_right = astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'desktop' ); - $padding_bottom = astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'desktop' ); - $padding_left = astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'desktop' ); - $border_top_val = ''; - $border_right_val = ''; - $border_bottom_val = ''; - $border_left_val = ''; - $gutenberg_core_patterns_compat = self::gutenberg_core_patterns_compat(); - - // Secondary color. - if ( empty( $scndry_btn_text_color ) && $gutenberg_core_patterns_compat ) { - $btn_color_val = empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ); - } else { - $btn_color_val = $scndry_btn_text_color; - } - - // Secondary border color. - if ( empty( $scndry_btn_border_color ) && empty( $scndry_btn_bg_color ) && $gutenberg_core_patterns_compat ) { - $btn_border_color_val = empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ); - } else { - $btn_border_color_val = empty( $scndry_btn_border_color ) ? esc_attr( $scndry_btn_bg_color ) : esc_attr( $scndry_btn_border_color ); - } - - // Secondary border hover color. - if ( empty( $scndry_btn_border_h_color ) && $gutenberg_core_patterns_compat ) { - $btn_border_h_color_val = empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ); - } else { - $btn_border_h_color_val = $scndry_btn_border_h_color; - } - - // Secondary button border size. - if ( $scndry_theme_btn_top_border || $scndry_theme_btn_right_border || $scndry_theme_btn_left_border || $scndry_theme_btn_bottom_border ) { - $border_top_val = $scndry_theme_btn_top_border; - $border_right_val = $scndry_theme_btn_right_border; - $border_bottom_val = $scndry_theme_btn_bottom_border; - $border_left_val = $scndry_theme_btn_left_border; - $outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; - } - - // Secondary button padding. - if ( $padding_top || $padding_right || $padding_bottom || $padding_left ) { - $outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; - } - - $outline_button_css_desktop = array( - $outline_button_selector => array( - 'border-color' => esc_attr( $btn_border_color_val ), - 'border-top-width' => esc_attr( $border_top_val ), - 'border-right-width' => esc_attr( $border_right_val ), - 'border-bottom-width' => esc_attr( $border_bottom_val ), - 'border-left-width' => esc_attr( $border_left_val ), - 'font-family' => astra_get_font_family( $scndry_theme_btn_font_family ), - 'font-weight' => esc_attr( $scndry_theme_btn_font_weight ), - 'font-size' => isset( $scndry_theme_btn_font_size['desktop'] ) && isset( $scndry_theme_btn_font_size['desktop-unit'] ) && is_array( $scndry_theme_btn_font_size ) ? astra_get_font_css_value( $scndry_theme_btn_font_size['desktop'], $scndry_theme_btn_font_size['desktop-unit'] ) : '', - 'line-height' => esc_attr( $scndry_theme_btn_line_height ), - 'text-transform' => esc_attr( $scndry_theme_btn_text_transform ), - 'text-decoration' => esc_attr( $scndry_theme_btn_text_decoration ), - 'letter-spacing' => esc_attr( $scndry_theme_btn_letter_spacing ), - 'padding-top' => $padding_top, - 'padding-right' => $padding_right, - 'padding-bottom' => $padding_bottom, - 'padding-left' => $padding_left, - 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'desktop' ), - 'background-color' => 'transparent', - ), - '.wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color), .ast-outline-button' => array( - 'color' => esc_attr( $btn_color_val ), - ), - '.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover, .ast-outline-button:hover, .ast-outline-button:focus' => array( - 'color' => empty( $scndry_btn_text_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr( $btn_text_hover_color ) : esc_attr( $scndry_btn_text_hover_color ), - 'background-color' => empty( $scndry_btn_bg_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr( $btn_bg_hover_color ) : esc_attr( $scndry_btn_bg_hover_color ), - 'border-color' => esc_attr( $btn_border_h_color_val ), - ), - ); - - $outline_button_css_tablet = array( - $outline_button_selector => array( - 'font-size' => astra_responsive_font( $scndry_theme_btn_font_size, 'tablet' ), - 'padding-top' => astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'tablet' ), - 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'tablet' ), - 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'tablet' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'tablet' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'tablet' ), - ), - ); - - $outline_button_css_mobile = array( - $outline_button_selector => array( - 'font-size' => astra_responsive_font( $scndry_theme_btn_font_size, 'mobile' ), - 'padding-top' => astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'mobile' ), - 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'mobile' ), - 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'mobile' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'mobile' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'mobile' ), - ), - ); - - // Secondary button preset compatibility. - $btn_preset_style = astra_get_option( 'secondary-button-preset-style' ); - - if ( 'button_01' === $btn_preset_style || 'button_02' === $btn_preset_style || 'button_03' === $btn_preset_style ) { - if ( empty( $scndry_btn_text_color ) ) { - $scndry_btn_text_color = astra_get_foreground_color( $theme_color ); - } - $outline_button_css_desktop['.wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background), .wp-block-buttons .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)'] = array( - 'background-color' => empty( $scndry_btn_bg_color ) ? esc_attr( $theme_color ) : esc_attr( $scndry_btn_bg_color ), - 'color' => esc_attr( $scndry_btn_text_color ), - ); - } - - /* Parse CSS from array() -> Desktop */ - $parse_css .= astra_parse_css( $outline_button_css_desktop ); - - /* Parse CSS from array() -> Tablet */ - $parse_css .= astra_parse_css( $outline_button_css_tablet, '', astra_get_tablet_breakpoint() ); - - /* Parse CSS from array() -> Mobile */ - $parse_css .= astra_parse_css( $outline_button_css_mobile, '', astra_get_mobile_breakpoint() ); - - /** - * Add margin-bottom to the figure element conditionally for WordPress 6.3 or above. - * - * @since 4.4.0 - */ - if ( astra_wp_version_compare( '6.3', '>=' ) ) { - $figure_margin_bottom = array( - '.entry-content[ast-blocks-layout] > figure' => array( - 'margin-bottom' => '1em', - ), - ); - - /* Parse CSS from array() -> All media CSS */ - $parse_css .= astra_parse_css( $figure_margin_bottom ); - } - - if ( $is_widget_title_support_font_weight ) { - $widget_title_font_weight_support = array( - 'h1.widget-title' => array( - 'font-weight' => esc_attr( $h1_font_weight ), - ), - 'h2.widget-title' => array( - 'font-weight' => esc_attr( $h2_font_weight ), - ), - 'h3.widget-title' => array( - 'font-weight' => esc_attr( $h3_font_weight ), - ), - ); - - /* Parse CSS from array() -> All media CSS */ - $parse_css .= astra_parse_css( $widget_title_font_weight_support ); - } - - $static_layout_css = array( - '.ast-separate-container #primary, .ast-separate-container #secondary' => array( - 'padding' => '1.5em 0', - ), - '#primary, #secondary' => array( - 'padding' => '1.5em 0', - 'margin' => 0, - ), - '.ast-left-sidebar #content > .ast-container' => array( - 'display' => 'flex', - 'flex-direction' => 'column-reverse', - 'width' => '100%', - ), - ); - - if ( true === $update_customizer_strctural_defaults ) { - $is_site_rtl = is_rtl() ? true : false; - $ltr_left = $is_site_rtl ? esc_attr( 'right' ) : esc_attr( 'left' ); - $ltr_right = $is_site_rtl ? esc_attr( 'left' ) : esc_attr( 'right' ); - $default_layout_update_css = array( - '#page' => array( - 'display' => 'flex', - 'flex-direction' => 'column', - 'min-height' => '100vh', - ), - '.ast-404-layout-1 h1.page-title' => array( - 'color' => 'var(--ast-global-color-2)', - ), - '.single .post-navigation a' => array( - 'line-height' => '1em', - 'height' => 'inherit', - ), - '.error-404 .page-sub-title' => array( - 'font-size' => '1.5rem', - 'font-weight' => 'inherit', - ), - '.search .site-content .content-area .search-form' => array( - 'margin-bottom' => '0', - ), - '#page .site-content' => array( - 'flex-grow' => '1', - ), - '.widget' => array( - 'margin-bottom' => '1.25em', - ), - '#secondary li' => array( - 'line-height' => '1.5em', - ), - '#secondary .wp-block-group h2' => array( - 'margin-bottom' => '0.7em', - ), - '#secondary h2' => array( - 'font-size' => '1.7rem', - ), - '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .ast-comment-list li.depth-1, .ast-separate-container .comment-respond' => array( - 'padding' => '3em', - ), - - '.ast-separate-container .ast-article-single .ast-article-single' => array( - 'padding' => '0', - ), - - '.ast-article-single .wp-block-post-template-is-layout-grid' => array( - 'padding-' . $ltr_left => '0', - ), - - '.ast-separate-container .ast-comment-list li.depth-1, .hentry' => array( - 'margin-bottom' => '2em', - ), - '.ast-separate-container .ast-archive-description, .ast-separate-container .ast-author-box' => array( - 'border-bottom' => '1px solid var(--ast-border-color)', - ), - '.ast-separate-container .comments-title' => array( - 'padding' => '2em 2em 0 2em', - ), - '.ast-page-builder-template .comment-form-textarea, .ast-comment-formwrap .ast-grid-common-col' => array( - 'padding' => '0', - ), - '.ast-comment-formwrap' => array( - 'padding' => '0', - 'display' => 'inline-flex', - 'column-gap' => '20px', - 'width' => '100%', - 'margin-left' => '0', - 'margin-right' => '0', - ), - '.comments-area textarea#comment:focus, .comments-area textarea#comment:active, .comments-area .ast-comment-formwrap input[type="text"]:focus, .comments-area .ast-comment-formwrap input[type="text"]:active ' => array( - 'box-shadow' => 'none', - 'outline' => 'none', - ), - '.archive.ast-page-builder-template .entry-header' => array( - 'margin-top' => '2em', - ), - '.ast-page-builder-template .ast-comment-formwrap' => array( - 'width' => '100%', - ), - '.entry-title' => array( - 'margin-bottom' => '0.5em', - ), - '.ast-archive-description p' => array( - 'font-size' => 'inherit', - 'font-weight' => 'inherit', - 'line-height' => 'inherit', - ), - ); - /* Parse CSS from array() -> Desktop CSS */ - $parse_css .= astra_parse_css( $default_layout_update_css ); - - $default_tablet_layout_css = array( - '.ast-left-sidebar.ast-page-builder-template #secondary, .archive.ast-right-sidebar.ast-page-builder-template .site-main' => array( - 'padding-' . $ltr_left => '20px', - 'padding-' . $ltr_right => '20px', - ), - ); - - /* Parse CSS from array() -> min-width: tablet-breakpoint CSS */ - $parse_css .= astra_parse_css( $default_tablet_layout_css, astra_get_tablet_breakpoint() ); - - $default_mobile_layout_css = array( - '.ast-comment-formwrap.ast-row' => array( - 'column-gap' => '10px', - 'display' => 'inline-block', - ), - '#ast-commentform .ast-grid-common-col' => array( - 'position' => 'relative', - 'width' => '100%', - ), - ); - - /* Parse CSS from array() -> max-width: mobile-breakpoint CSS */ - $parse_css .= astra_parse_css( $default_mobile_layout_css, '', astra_get_mobile_breakpoint() ); - - if ( is_user_logged_in() ) { - $admin_bar_specific_page_css = array( - '.admin-bar #page' => array( - 'min-height' => 'calc(100vh - 32px)', - ), - ); - $parse_css .= astra_parse_css( $admin_bar_specific_page_css ); - - $admin_bar_responsive_page_css = array( - '.admin-bar #page' => array( - 'min-height' => 'calc(100vh - 46px)', - ), - ); - $parse_css .= astra_parse_css( $admin_bar_responsive_page_css, '', '782' ); - } - - $default_medium_layout_css = array( - '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .ast-author-box, .ast-separate-container .ast-404-layout-1, .ast-separate-container .no-results' => array( - 'padding' => '3em', - ), - ); - - /* Parse CSS from array() -> min-width: 1201px CSS */ - $parse_css .= astra_parse_css( $default_medium_layout_css, '1201' ); - - if ( is_author() ) { - $default_author_css = array( - '.ast-author-box img.avatar' => array( - 'margin' => '0', - ), - ); - /* Parse CSS from array() -> Desktop CSS */ - $parse_css .= astra_parse_css( $default_author_css ); - $default_tablet_min_author_css = array( - '.ast-author-box img.avatar' => array( - 'width' => '100px', - 'height' => '100px', - ), - '.ast-author-box' => array( - 'column-gap' => '50px', - ), - ); - /* Parse CSS from array() -> min-width: (tablet-breakpoint) CSS */ - $parse_css .= astra_parse_css( $default_tablet_min_author_css, astra_get_tablet_breakpoint() ); - $default_max_tablet_author_css = array( - '.ast-author-avatar' => array( - 'margin-top' => '20px', - ), - ); - /* Parse CSS from array() -> max-width: (tablet-breakpoint) CSS */ - $parse_css .= astra_parse_css( $default_max_tablet_author_css, '', astra_get_tablet_breakpoint() ); - $default_tablet_min_extra_px_author_css = array( - '.ast-author-box' => array( - 'align-items' => 'center', - ), - ); - /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1) CSS */ - $parse_css .= astra_parse_css( $default_tablet_min_extra_px_author_css, astra_get_tablet_breakpoint( '', 1 ) ); - } - } else { - $static_layout_css['.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single'] = array( - 'padding' => '1.5em 2.14em', - ); - $static_layout_css['.ast-author-box img.avatar'] = array( - 'margin' => '20px 0 0 0', - ); - } - - /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $static_layout_css, '', astra_get_tablet_breakpoint() ); - - if ( is_author() && false === $update_customizer_strctural_defaults ) { - $parse_css .= astra_parse_css( - array( - '.ast-author-box img.avatar' => array( - 'margin' => '20px 0 0 0', - ), - ), - astra_get_tablet_breakpoint() - ); - } - - if ( 'no-sidebar' !== astra_page_layout() ) { - $static_secondary_layout_css = array( - '#secondary.secondary' => array( - 'padding-top' => 0, - ), - '.ast-separate-container.ast-right-sidebar #secondary' => array( - 'padding-left' => '1em', - 'padding-right' => '1em', - ), - '.ast-separate-container.ast-two-container #secondary' => array( - 'padding-left' => 0, - 'padding-right' => 0, - ), - '.ast-page-builder-template .entry-header #secondary, .ast-page-builder-template #secondary' => array( - 'margin-top' => '1.5em', - ), - ); - $parse_css .= astra_parse_css( $static_secondary_layout_css, '', astra_get_tablet_breakpoint() ); - } - - if ( 'no-sidebar' !== astra_page_layout() ) { - if ( $is_site_rtl ) { - $static_layout_lang_direction_css = array( - '.ast-right-sidebar #primary' => array( - 'padding-left' => 0, - ), - '.ast-page-builder-template.ast-left-sidebar #secondary, ast-page-builder-template.ast-right-sidebar #secondary' => array( - 'padding-left' => '20px', - 'padding-right' => '20px', - ), - '.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array( - 'padding-right' => 0, - ), - '.ast-left-sidebar #secondary' => array( - 'padding-left' => 0, - ), - ); - } else { - $static_layout_lang_direction_css = array( - '.ast-right-sidebar #primary' => array( - 'padding-right' => 0, - ), - '.ast-page-builder-template.ast-left-sidebar #secondary, .ast-page-builder-template.ast-right-sidebar #secondary' => array( - 'padding-right' => '20px', - 'padding-left' => '20px', - ), - '.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array( - 'padding-left' => 0, - ), - '.ast-left-sidebar #secondary' => array( - 'padding-right' => 0, - ), - ); - } - /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ - $parse_css .= astra_parse_css( $static_layout_lang_direction_css, '', astra_get_tablet_breakpoint() ); - } - - $static_layout_css_min = array( - '.ast-separate-container.ast-right-sidebar #primary, .ast-separate-container.ast-left-sidebar #primary' => array( - 'border' => 0, - ), - '.search-no-results.ast-separate-container #primary' => array( - 'margin-bottom' => '4em', - ), - ); - - if ( is_author() ) { - $author_table_css = array( - '.ast-author-box' => array( - '-js-display' => 'flex', - 'display' => 'flex', - ), - '.ast-author-bio' => array( - 'flex' => '1', - ), - ); - $static_layout_css_min = array_merge( $static_layout_css_min, $author_table_css ); - } - - /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */ - $parse_css .= astra_parse_css( $static_layout_css_min, astra_get_tablet_breakpoint( '', '1' ) ); - - // 404 Page. - if ( is_404() ) { - - $page_404 = array( - '.ast-404-layout-1 .ast-404-text' => array( - 'font-size' => astra_get_font_css_value( '200' ), - ), - ); - $parse_css .= astra_parse_css( $page_404 ); - - $parse_css .= astra_parse_css( - array( - '.error404.ast-separate-container #primary' => array( - 'margin-bottom' => '4em', - ), - ), - astra_get_tablet_breakpoint( '', '1' ) - ); - - $parse_css .= astra_parse_css( - array( - '.ast-404-layout-1 .ast-404-text' => array( - 'font-size' => astra_get_font_css_value( 100 ), - ), - ), - '', - '920' - ); - } - - if ( 'no-sidebar' !== astra_page_layout() ) { - - if ( $is_site_rtl ) { - $static_layout_min_lang_direction_css = array( - '.ast-right-sidebar #primary' => array( - 'border-left' => '1px solid var(--ast-border-color)', - ), - '.ast-right-sidebar #secondary' => array( - 'border-right' => '1px solid var(--ast-border-color)', - 'margin-right' => '-1px', - ), - '.ast-left-sidebar #primary' => array( - 'border-right' => '1px solid var(--ast-border-color)', - ), - '.ast-left-sidebar #secondary' => array( - 'border-left' => '1px solid var(--ast-border-color)', - 'margin-left' => '-1px', - ), - '.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array( - 'padding-right' => '30px', - 'padding-left' => 0, - ), - '.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array( - 'padding-left' => '30px', - 'padding-right' => 0, - ), - '.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array( - 'border' => 0, - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - '.ast-separate-container.ast-two-container #secondary .widget:last-child' => array( - 'margin-bottom' => 0, - ), - ); - } else { - $static_layout_min_lang_direction_css = array( - '.ast-right-sidebar #primary' => array( - 'border-right' => '1px solid var(--ast-border-color)', - ), - '.ast-left-sidebar #primary' => array( - 'border-left' => '1px solid var(--ast-border-color)', - ), - '.ast-right-sidebar #secondary' => array( - 'border-left' => '1px solid var(--ast-border-color)', - 'margin-left' => '-1px', - ), - '.ast-left-sidebar #secondary' => array( - 'border-right' => '1px solid var(--ast-border-color)', - 'margin-right' => '-1px', - ), - '.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array( - 'padding-left' => '30px', - 'padding-right' => 0, - ), - '.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array( - 'padding-right' => '30px', - 'padding-left' => 0, - ), - '.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array( - 'border' => 0, - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - '.ast-separate-container.ast-two-container #secondary .widget:last-child' => array( - 'margin-bottom' => 0, - ), - ); - } - - /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */ - $parse_css .= astra_parse_css( $static_layout_min_lang_direction_css, astra_get_tablet_breakpoint( '', '1' ) ); - } - - /** - * Elementor & Gutenberg button backward compatibility for default styling. - */ - if ( self::page_builder_button_style_css() ) { - - $search_button_selector = ( ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ) ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : ''; - $search_button_hover_selector = ( ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ) ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : ''; - - $file_block_button_selector = ( ! $block_editor_legacy_setup || $improve_gb_ui ) ? ', body .wp-block-file .wp-block-file__button' : ''; - $file_block_button_hover_selector = ( ! $block_editor_legacy_setup || $improve_gb_ui ) ? ', body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus' : ''; - $search_page_btn_selector = ( true === $update_customizer_strctural_defaults ) ? ', .search .search-submit' : ''; - $woo_btns_selector = ( true === self::astra_woo_support_global_settings() ) ? ', .woocommerce-js a.button, .woocommerce button.button, .woocommerce .woocommerce-message a.button, .woocommerce #respond input#submit.alt, .woocommerce input.button.alt, .woocommerce input.button,.woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled], .woocommerce input.button:disabled:hover, .woocommerce input.button:disabled[disabled]:hover, .woocommerce #respond input#submit, .woocommerce button.button.alt.disabled, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link, .wc-block-grid__product-onsale, [CLASS*="wc-block"] button, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout, .woocommerce button.button.alt.disabled.wc-variation-selection-needed' : ''; - $woo_btns_hover_selector = ( true === self::astra_woo_support_global_settings() ) ? ', .woocommerce-js a.button:hover, .woocommerce button.button:hover, .woocommerce .woocommerce-message a.button:hover,.woocommerce #respond input#submit:hover,.woocommerce #respond input#submit.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce button.button.alt.disabled:hover, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover, [CLASS*="wc-block"] button:hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover, .woocommerce button.button.alt.disabled.wc-variation-selection-needed:hover' : ''; - $v4_2_2_core_form_btns_styling_selector = ( true === self::astra_core_form_btns_styling() ) ? ', #comments .submit, .search .search-submit' : ''; - - /** - * Global button CSS - Desktop. - */ - $global_button_desktop = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( - 'border-style' => 'solid', - 'border-top-width' => ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '0', - 'border-right-width' => ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '0', - 'border-left-width' => ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '0', - 'border-bottom-width' => ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '0', - 'color' => esc_attr( $btn_text_color ), - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'background-color' => esc_attr( $btn_bg_color ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), - 'font-family' => astra_get_font_family( $theme_btn_font_family ), - 'font-weight' => esc_attr( $theme_btn_font_weight ), - 'font-size' => astra_get_font_css_value( $theme_btn_font_size['desktop'], $theme_btn_font_size['desktop-unit'] ), - 'line-height' => esc_attr( $theme_btn_line_height ), - 'text-transform' => esc_attr( $theme_btn_text_transform ), - 'text-decoration' => esc_attr( $theme_btn_text_decoration ), - 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - ), - 'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover , input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector . $file_block_button_hover_selector . $woo_btns_hover_selector => array( - 'color' => esc_attr( $btn_text_hover_color ), - 'background-color' => esc_attr( $btn_bg_hover_color ), - 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), - - ), - ); - - /** - * Global button CSS - Tablet. - */ - $global_button_tablet = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), - ), - ); - - /** - * Global button CSS - Mobile. - */ - $global_button_mobile = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), - ), - ); - - $btn_text_color_selectors = '.wp-block-button .wp-block-button__link'; - - if ( 'color-typo' === self::elementor_default_color_font_setting() || 'color' === self::elementor_default_color_font_setting() || 'typo' === self::elementor_default_color_font_setting() ) { - $ele_btn_default_desktop = array( - '.elementor-button-wrapper .elementor-button' => array( - 'border-style' => 'solid', - 'text-decoration' => 'none', - 'border-top-width' => ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '0', - 'border-right-width' => ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '0', - 'border-left-width' => ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '0', - 'border-bottom-width' => ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '0', - ), - 'body .elementor-button.elementor-size-sm, body .elementor-button.elementor-size-xs, body .elementor-button.elementor-size-md, body .elementor-button.elementor-size-lg, body .elementor-button.elementor-size-xl, body .elementor-button' => array( - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $ele_btn_default_desktop ); - - $ele_btn_default_tablet = array( - '.elementor-button-wrapper .elementor-button.elementor-size-sm, .elementor-button-wrapper .elementor-button.elementor-size-xs, .elementor-button-wrapper .elementor-button.elementor-size-md, .elementor-button-wrapper .elementor-button.elementor-size-lg, .elementor-button-wrapper .elementor-button.elementor-size-xl, .elementor-button-wrapper .elementor-button' => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $ele_btn_default_tablet, '', astra_get_tablet_breakpoint() ); - - $ele_btn_default_mobile = array( - '.elementor-button-wrapper .elementor-button.elementor-size-sm, .elementor-button-wrapper .elementor-button.elementor-size-xs, .elementor-button-wrapper .elementor-button.elementor-size-md, .elementor-button-wrapper .elementor-button.elementor-size-lg, .elementor-button-wrapper .elementor-button.elementor-size-xl, .elementor-button-wrapper .elementor-button' => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $ele_btn_default_mobile, '', astra_get_mobile_breakpoint() ); - } - - if ( 'color-typo' === self::elementor_default_color_font_setting() || 'color' === self::elementor_default_color_font_setting() ) { - // Check if Global Elementor - Theme Style - button color is set. If yes then remove ( :visited ) CSS for the compatibility. - if ( false === self::is_elementor_kit_button_color_set() ) { - $btn_text_color_selectors .= ' , .elementor-button-wrapper .elementor-button, .elementor-button-wrapper .elementor-button:visited'; - } else { - $btn_text_color_selectors .= ' , .elementor-button-wrapper .elementor-button'; - } - - $ele_btn_color_builder_desktop = array( - '.elementor-button-wrapper .elementor-button' => array( - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'background-color' => esc_attr( $btn_bg_color ), - ), - '.elementor-button-wrapper .elementor-button:hover, .elementor-button-wrapper .elementor-button:focus' => array( - 'color' => esc_attr( $btn_text_hover_color ), - 'background-color' => esc_attr( $btn_bg_hover_color ), - 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), - - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $ele_btn_color_builder_desktop ); - } - - $global_button_page_builder_text_color_desktop = array( - $btn_text_color_selectors => array( - 'color' => esc_attr( $btn_text_color ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $global_button_page_builder_text_color_desktop ); - - if ( 'color-typo' === self::elementor_default_color_font_setting() || 'typo' === self::elementor_default_color_font_setting() ) { - $ele_btn_typo_builder_desktop = array( - '.elementor-button-wrapper .elementor-button' => astra_get_font_array_css( astra_get_option( 'font-family-button' ), astra_get_option( 'font-weight-button' ), $theme_btn_font_size, 'font-extras-button' ), - 'body .elementor-button.elementor-size-sm, body .elementor-button.elementor-size-xs, body .elementor-button.elementor-size-md, body .elementor-button.elementor-size-lg, body .elementor-button.elementor-size-xl, body .elementor-button' => array( - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $ele_btn_typo_builder_desktop ); - } - - $global_button_page_builder_desktop = array( - '.wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus' => array( - 'color' => esc_attr( $btn_text_hover_color ), - 'background-color' => esc_attr( $btn_bg_hover_color ), - 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), - ), - '.elementor-widget-heading h1.elementor-heading-title' => array( - 'line-height' => esc_attr( $h1_line_height ), - ), - '.elementor-widget-heading h2.elementor-heading-title' => array( - 'line-height' => esc_attr( $h2_line_height ), - ), - '.elementor-widget-heading h3.elementor-heading-title' => array( - 'line-height' => esc_attr( $h3_line_height ), - ), - '.elementor-widget-heading h4.elementor-heading-title' => array( - 'line-height' => esc_attr( $h4_line_height ), - ), - '.elementor-widget-heading h5.elementor-heading-title' => array( - 'line-height' => esc_attr( $h5_line_height ), - ), - '.elementor-widget-heading h6.elementor-heading-title' => array( - 'line-height' => esc_attr( $h6_line_height ), - ), - ); - - if ( $block_editor_legacy_setup && self::gutenberg_core_patterns_compat() && ! astra_button_default_padding_updated() ) { - $theme_outline_gb_btn_top_border = ( isset( $global_custom_button_border_size['top'] ) && ( '' !== $global_custom_button_border_size['top'] && '0' !== $global_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '2px'; - $theme_outline_gb_btn_right_border = ( isset( $global_custom_button_border_size['right'] ) && ( '' !== $global_custom_button_border_size['right'] && '0' !== $global_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '2px'; - $theme_outline_gb_btn_bottom_border = ( isset( $global_custom_button_border_size['bottom'] ) && ( '' !== $global_custom_button_border_size['bottom'] && '0' !== $global_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '2px'; - $theme_outline_gb_btn_left_border = ( isset( $global_custom_button_border_size['left'] ) && ( '' !== $global_custom_button_border_size['left'] && '0' !== $global_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '2px'; - - $global_button_page_builder_desktop['.wp-block-button .wp-block-button__link'] = array( - 'border' => 'none', - 'background-color' => esc_attr( $btn_bg_color ), - 'color' => esc_attr( $btn_text_color ), - 'font-family' => astra_get_font_family( $theme_btn_font_family ), - 'font-weight' => esc_attr( $theme_btn_font_weight ), - 'line-height' => esc_attr( $theme_btn_line_height ), - 'text-transform' => esc_attr( $theme_btn_text_transform ), - 'text-decoration' => esc_attr( $theme_btn_text_decoration ), - 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), - 'padding' => '15px 30px', - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - ); - $global_button_page_builder_desktop['.wp-block-button.is-style-outline .wp-block-button__link'] = array( - 'border-style' => 'solid', - 'border-top-width' => esc_attr( $theme_outline_gb_btn_top_border ), - 'border-right-width' => esc_attr( $theme_outline_gb_btn_right_border ), - 'border-left-width' => esc_attr( $theme_outline_gb_btn_left_border ), - 'border-bottom-width' => esc_attr( $theme_outline_gb_btn_bottom_border ), - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'padding-top' => 'calc(15px - ' . (int) $theme_outline_gb_btn_top_border . 'px)', - 'padding-right' => 'calc(30px - ' . (int) $theme_outline_gb_btn_right_border . 'px)', - 'padding-bottom' => 'calc(15px - ' . (int) $theme_outline_gb_btn_bottom_border . 'px)', - 'padding-left' => 'calc(30px - ' . (int) $theme_outline_gb_btn_left_border . 'px)', - ); - - $global_button_page_builder_tablet = array( - '.wp-block-button .wp-block-button__link' => array( - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), - 'border' => 'none', - 'padding' => '15px 30px', - ), - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', - 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', - 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', - 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', - ), - ); - - $global_button_page_builder_mobile = array( - '.wp-block-button .wp-block-button__link' => array( - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), - 'border' => 'none', - 'padding' => '15px 30px', - ), - '.wp-block-button.is-style-outline .wp-block-button__link' => array( - 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', - 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', - 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', - 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', - ), - ); - } else { - - $default_border_size = '0'; - if ( astra_button_default_padding_updated() || ! $block_editor_legacy_setup ) { - $default_border_size = ''; - } - - $selector = '.wp-block-button .wp-block-button__link'; - if ( ! $block_editor_legacy_setup ) { - $selector = $selector . ', .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button'; - } - - $btn_top_border_size = ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : $default_border_size; - $btn_bottom_border_size = ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : $default_border_size; - $btn_right_border_size = ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : $default_border_size; - $btn_left_border_size = ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : $default_border_size; - - $global_button_page_builder_desktop[ $selector ] = array( - 'border-style' => ( $btn_top_border_size || $btn_right_border_size || $btn_left_border_size || $btn_bottom_border_size ) ? 'solid' : '', - 'border-top-width' => $btn_top_border_size, - 'border-right-width' => $btn_right_border_size, - 'border-left-width' => $btn_left_border_size, - 'border-bottom-width' => $btn_bottom_border_size, - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'background-color' => esc_attr( $btn_bg_color ), - 'color' => esc_attr( $btn_text_color ), - 'font-family' => astra_get_font_family( $theme_btn_font_family ), - 'font-weight' => esc_attr( $theme_btn_font_weight ), - 'line-height' => esc_attr( $theme_btn_line_height ), - 'text-transform' => esc_attr( $theme_btn_text_transform ), - 'text-decoration' => esc_attr( $theme_btn_text_decoration ), - 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), - ); - - $global_button_page_builder_tablet = array( - $selector => array( - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), - ), - ); - - $global_button_page_builder_mobile = array( - $selector => array( - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), - ), - ); - } - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $global_button_page_builder_desktop ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $global_button_page_builder_tablet, '', astra_get_tablet_breakpoint() ); - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $global_button_page_builder_mobile, '', astra_get_mobile_breakpoint() ); - - } else { - - $search_button_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : ''; - $search_button_hover_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : ''; - - /** - * Global button CSS - Desktop. - */ - $global_button_desktop = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( - 'color' => esc_attr( $btn_text_color ), - 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), - 'background-color' => esc_attr( $btn_bg_color ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), - 'font-family' => astra_get_font_family( $theme_btn_font_family ), - 'font-weight' => esc_attr( $theme_btn_font_weight ), - 'font-size' => astra_get_font_css_value( $theme_btn_font_size['desktop'], $theme_btn_font_size['desktop-unit'] ), - 'text-transform' => esc_attr( $theme_btn_text_transform ), - 'text-decoration' => esc_attr( $theme_btn_text_decoration ), - 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), - ), - 'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector => array( - 'color' => esc_attr( $btn_text_hover_color ), - 'background-color' => esc_attr( $btn_bg_hover_color ), - 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), - ), - ); - - /** - * Global button CSS - Tablet. - */ - $global_button_tablet = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), - ), - ); - - /** - * Global button CSS - Mobile. - */ - $global_button_mobile = array( - '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( - 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), - 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), - ), - ); - } - - if ( true === $update_customizer_strctural_defaults ) { - $global_button_desktop['form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button.has-icon'] = array( - 'padding-top' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ) . ' - 3px)', - 'padding-right' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ) . ' - 3px)', - 'padding-bottom' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ) . ' - 3px)', - 'padding-left' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ) . ' - 3px)', - ); - } - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $global_button_desktop ); - - $parse_css .= astra_parse_css( $global_button_tablet, '', astra_get_tablet_breakpoint() ); - - $parse_css .= astra_parse_css( $global_button_mobile, '', astra_get_mobile_breakpoint() ); - - /* Parse CSS from array() -> min-width: (tablet-breakpoint) px CSS */ - if ( empty( $site_content_width ) ) { - $container_min_tablet_css = array( - '.ast-container' => array( - 'max-width' => '100%', - ), - ); - $parse_css .= astra_parse_css( $container_min_tablet_css, astra_get_tablet_breakpoint() ); - } - - $container_min_mobile_css = array( - '.ast-container' => array( - 'max-width' => '100%', - ), - ); - - /** - * Global button CSS - -> max-width: (tablet-breakpoint) px. - */ - $global_button_tablet = array( - '.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array( - 'font-size' => astra_get_font_css_value( $theme_btn_font_size['tablet'], $theme_btn_font_size['tablet-unit'] ), - ), - '.ast-mobile-header-stack .main-header-bar .ast-search-menu-icon' => array( - 'display' => 'inline-block', - ), - '.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-stack .main-header-bar .ast-search-icon' => array( - 'margin' => '0', - ), - '.ast-comment-avatar-wrap img' => array( - 'max-width' => '2.5em', - ), - '.ast-separate-container .ast-comment-list li.depth-1' => array( - 'padding' => '1.5em 2.14em', - ), - '.ast-separate-container .comment-respond' => array( - 'padding' => '2em 2.14em', - ), - '.ast-comment-meta' => array( - 'padding' => '0 1.8888em 1.3333em', - ), - ); - - /* Parse CSS from array() -> max-width: (tablet-breakpoint) px CSS */ - $parse_css .= astra_parse_css( $global_button_tablet, '', astra_get_tablet_breakpoint() ); - - /* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */ - $parse_css .= astra_parse_css( $container_min_mobile_css, astra_get_mobile_breakpoint() ); - - $global_button_mobile = array( - '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comments-title, .ast-separate-container .ast-archive-description' => array( - 'padding' => '1.5em 1em', - ), - '.ast-separate-container #content .ast-container' => array( - 'padding-left' => '0.54em', - 'padding-right' => '0.54em', - ), - '.ast-separate-container .ast-comment-list li.depth-1' => array( - 'padding' => '1.5em 1em', - 'margin-bottom' => '1.5em', - ), - '.ast-separate-container .ast-comment-list .bypostauthor' => array( - 'padding' => '.5em', - ), - '.ast-search-menu-icon.ast-dropdown-active .search-field' => array( - 'width' => '170px', - ), - '.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array( - 'font-size' => astra_get_font_css_value( $theme_btn_font_size['mobile'], $theme_btn_font_size['mobile-unit'] ), - ), - ); - - if ( 'no-sidebar' !== astra_page_layout() ) { - $global_button_mobile['.ast-separate-container #secondary'] = array( - 'padding-top' => 0, - ); - $global_button_mobile['.ast-separate-container.ast-two-container #secondary .widget'] = array( - 'margin-bottom' => '1.5em', - 'padding-left' => '1em', - 'padding-right' => '1em', - ); - } - - // Add/Remove logo max-width: 100%; CSS for logo in old header layout. - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && false === self::remove_logo_max_width_mobile_static_css() ) { - $global_button_mobile['.site-branding img, .site-header .site-logo-img .custom-logo-link img'] = array( - 'max-width' => '100%', - ); - } - - /* Parse CSS from array() -> max-width: (mobile-breakpoint) px */ - $parse_css .= astra_parse_css( $global_button_mobile, '', astra_get_mobile_breakpoint() ); - - - if ( Astra_Builder_Helper::is_component_loaded( 'search', 'header', 'mobile' ) ) { - - if ( $is_site_rtl ) { - $global_button_tablet_lang_direction_css = array( - '.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array( - 'left' => '0', - ), - '.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array( - 'left' => '-1em', - ), - ); - } else { - $global_button_tablet_lang_direction_css = array( - '.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array( - 'right' => '0', - ), - '.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array( - 'right' => '-1em', - ), - ); - } - - $parse_css .= astra_parse_css( $global_button_tablet_lang_direction_css, '', astra_get_tablet_breakpoint() ); - } - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'custom-button' === $header_custom_button_style ) { - $css_output = array( - - // Header button typography stylings. - '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button, .ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'font-family' => astra_get_font_family( $header_custom_btn_font_family ), - 'font-weight' => esc_attr( $header_custom_btn_font_weight ), - 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'desktop' ), - 'line-height' => esc_attr( $header_custom_btn_line_height ), - 'text-transform' => esc_attr( $header_custom_btn_text_transform ), - 'letter-spacing' => astra_get_css_value( $header_custom_btn_letter_spacing, 'px' ), - ), - - // Custom menu item button - Default. - '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'color' => esc_attr( $header_custom_button_text_color ), - 'background-color' => esc_attr( $header_custom_button_back_color ), - 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'desktop' ), - 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), - 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), - 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), - 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), - 'border-style' => 'solid', - 'border-color' => esc_attr( $header_custom_button_border_color ), - 'border-top-width' => ( isset( $header_custom_button_border_size['top'] ) && '' !== $header_custom_button_border_size['top'] ) ? astra_get_css_value( $header_custom_button_border_size['top'], 'px' ) : '0px', - 'border-right-width' => ( isset( $header_custom_button_border_size['right'] ) && '' !== $header_custom_button_border_size['right'] ) ? astra_get_css_value( $header_custom_button_border_size['right'], 'px' ) : '0px', - 'border-left-width' => ( isset( $header_custom_button_border_size['left'] ) && '' !== $header_custom_button_border_size['left'] ) ? astra_get_css_value( $header_custom_button_border_size['left'], 'px' ) : '0px', - 'border-bottom-width' => ( isset( $header_custom_button_border_size['bottom'] ) && '' !== $header_custom_button_border_size['bottom'] ) ? astra_get_css_value( $header_custom_button_border_size['bottom'], 'px' ) : '0px', - ), - '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array( - 'color' => esc_attr( $header_custom_button_text_h_color ), - 'background-color' => esc_attr( $header_custom_button_back_h_color ), - 'border-color' => esc_attr( $header_custom_button_border_h_color ), - ), - - // Custom menu item button - Transparent. - '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'color' => esc_attr( $header_custom_trans_button_text_color ), - 'background-color' => esc_attr( $header_custom_trans_button_back_color ), - 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'desktop' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'desktop' ), - 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'desktop' ), - 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'desktop' ), - 'border-radius' => astra_get_css_value( $header_custom_trans_button_radius, 'px' ), - 'border-style' => 'solid', - 'border-color' => esc_attr( $header_custom_trans_button_border_color ), - 'border-top-width' => ( isset( $header_custom_trans_button_border_size['top'] ) && '' !== $header_custom_trans_button_border_size['top'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['top'], 'px' ) : '', - 'border-right-width' => ( isset( $header_custom_trans_button_border_size['right'] ) && '' !== $header_custom_trans_button_border_size['right'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['right'], 'px' ) : '', - 'border-left-width' => ( isset( $header_custom_trans_button_border_size['left'] ) && '' !== $header_custom_trans_button_border_size['left'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['left'], 'px' ) : '', - 'border-bottom-width' => ( isset( $header_custom_trans_button_border_size['bottom'] ) && '' !== $header_custom_trans_button_border_size['bottom'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['bottom'], 'px' ) : '', - ), - '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array( - 'color' => esc_attr( $header_custom_trans_button_text_h_color ), - 'background-color' => esc_attr( $header_custom_trans_button_back_h_color ), - 'border-color' => esc_attr( $header_custom_trans_button_border_h_color ), - ), - ); - - /* Parse CSS from array() */ - $parse_css .= astra_parse_css( $css_output ); - - /* Parse CSS from array()*/ - - /* Custom Menu Item Button */ - $custom_button_css = array( - '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'tablet' ), - 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'tablet' ), - ), - ); - - $custom_trans_button_css = array( - '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'tablet' ), - 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'tablet' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'tablet' ), - 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'tablet' ), - 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'tablet' ), - ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( array_merge( $custom_button_css, $custom_trans_button_css ), '', astra_get_tablet_breakpoint() ); - - /* Custom Menu Item Button */ - $custom_button = array( - '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'mobile' ), - 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'mobile' ), - ), - ); - - $custom_trans_button = array( - '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'mobile' ), - 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'mobile' ), - 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'mobile' ), - 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'mobile' ), - 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'mobile' ), - ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( array_merge( $custom_button, $custom_trans_button ), '', astra_get_mobile_breakpoint() ); - } - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - // Foreground color. - if ( ! empty( $footer_adv_link_color ) ) { - $footer_adv_tagcloud = array( - '.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array( - 'color' => astra_get_foreground_color( $footer_adv_link_color ), - ), - '.footer-adv .calendar_wrap #today' => array( - 'color' => astra_get_foreground_color( $footer_adv_link_color ), - ), - ); - $parse_css .= astra_parse_css( $footer_adv_tagcloud ); - } - } - - /* Width for Footer */ - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'content' != $astra_footer_width ) { - $genral_global_responsive = array( - '.ast-small-footer .ast-container' => array( - 'max-width' => '100%', - 'padding-left' => '35px', - 'padding-right' => '35px', - ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( $genral_global_responsive, astra_get_tablet_breakpoint( '', 1 ) ); - } - - /* Width for Comments for Full Width / Stretched Template */ - if ( 'page-builder' == $container_layout ) { - $page_builder_comment = array( - '.ast-page-builder-template .comments-area, .single.ast-page-builder-template .entry-header, .single.ast-page-builder-template .post-navigation, .single.ast-page-builder-template .ast-single-related-posts-container' => array( - 'max-width' => astra_get_css_value( $site_content_width + 40, 'px' ), - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - ); - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( $page_builder_comment, astra_get_mobile_breakpoint( '', 1 ) ); - - } - - $astra_spearate_container_selector = 'body, .ast-separate-container'; - if ( astra_has_gcp_typo_preset_compatibility() && true === astra_apply_content_background_fullwidth_layouts() ) { - $astra_spearate_container_selector = '.ast-separate-container'; - } - - $separate_container_css = array( - $astra_spearate_container_selector => astra_get_responsive_background_obj( $box_bg_obj, 'desktop' ), - ); - $parse_css .= astra_parse_css( $separate_container_css ); - - if ( $block_editor_legacy_setup ) { - /** - * Added new compatibility & layout designs for core block layouts. - * - Compatibility for alignwide, alignfull, default width. - * - * @since 3.7.4 - */ - $entry_content_selector = '.entry-content'; - if ( true === $improve_gb_ui ) { - $entry_content_selector = '.entry-content >'; - $core_blocks_width_desktop_ui_css = array( - '.entry-content > .wp-block-group, .entry-content > .wp-block-media-text, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns' => array( - 'max-width' => '58em', - 'width' => 'calc(100% - 4em)', - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - '.entry-content [class*="__inner-container"] > .alignfull' => array( - 'max-width' => '100%', - 'margin-left' => 0, - 'margin-right' => 0, - ), - '.entry-content [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright)' => array( - 'margin-left' => 'auto', - 'margin-right' => 'auto', - ), - '.entry-content [class*="__inner-container"] > *:not(.alignwide):not(p):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(iframe)' => array( - 'max-width' => '50rem', - 'width' => '100%', - ), - ); - - /* Parse CSS from array -> Desktop CSS. */ - $parse_css .= astra_parse_css( $core_blocks_width_desktop_ui_css ); - - $core_blocks_min_width_tablet_ui_css = array( - '.entry-content > .wp-block-group.alignwide.has-background, .entry-content > .wp-block-group.alignfull.has-background, .entry-content > .wp-block-cover.alignwide, .entry-content > .wp-block-cover.alignfull, .entry-content > .wp-block-columns.has-background.alignwide, .entry-content > .wp-block-columns.has-background.alignfull' => array( - 'margin-top' => '0', - 'margin-bottom' => '0', - 'padding' => '6em 4em', - ), - '.entry-content > .wp-block-columns.has-background' => array( - 'margin-bottom' => '0', - ), - ); - - /* Parse CSS from array -> min-width(tablet-breakpoint) */ - $parse_css .= astra_parse_css( $core_blocks_min_width_tablet_ui_css, astra_get_tablet_breakpoint() ); - - $core_blocks_min_width_1200_ui_css = array( - '.entry-content .alignfull p' => array( - 'max-width' => astra_get_css_value( $site_content_width, 'px' ), - ), - '.entry-content .alignfull' => array( - 'max-width' => '100%', - 'width' => '100%', - ), - '.ast-page-builder-template .entry-content .alignwide, .entry-content [class*="__inner-container"] > .alignwide' => array( - 'max-width' => astra_get_css_value( $site_content_width, 'px' ), - 'margin-left' => '0', - 'margin-right' => '0', - ), - '.entry-content .alignfull [class*="__inner-container"] > .alignwide' => array( - 'max-width' => '80rem', - ), - ); - - /* Parse CSS from array -> min-width( 1200px ) */ - $parse_css .= astra_parse_css( $core_blocks_min_width_1200_ui_css, '1200' ); - - $core_blocks_min_width_mobile_ui_css = array( - '.site-main .entry-content > .alignwide' => array( - 'margin' => '0 auto', - ), - '.wp-block-group.has-background, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns.has-background' => array( - 'padding' => '4em', - 'margin-top' => '0', - 'margin-bottom' => '0', - ), - '.entry-content .wp-block-media-text.alignfull .wp-block-media-text__content, .entry-content .wp-block-media-text.has-background .wp-block-media-text__content' => array( - 'padding' => '0 8%', - ), - ); - - /* Parse CSS from array -> min-width(mobile-breakpoint + 1) */ - $parse_css .= astra_parse_css( $core_blocks_min_width_mobile_ui_css, astra_get_mobile_breakpoint( '', 1 ) ); - } else { - $astra_no_sidebar_layout_css = - '.ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { - margin-left: -6.67em; - margin-right: -6.67em; - width: auto; - } - @media (max-width: 1200px) { - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { - margin-left: -2.4em; - margin-right: -2.4em; - } - } - @media (max-width: 768px) { - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { - margin-left: -2.14em; - margin-right: -2.14em; - } - } - @media (max-width: 544px) { - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { - margin-left: -1em; - margin-right: -1em; - } - } - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignwide { - margin-left: -20px; - margin-right: -20px; - } - - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .wp-block-column .alignfull, - .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .wp-block-column .alignwide { - margin-left: auto; - margin-right: auto; - width: 100%; - } - '; - - $parse_css .= Astra_Enqueue_Scripts::trim_css( $astra_no_sidebar_layout_css ); - } - } - - $tablet_typo = array(); - - if ( isset( $body_font_size['tablet'] ) && '' != $body_font_size['tablet'] ) { - - $tablet_typo = array( - // Widget Title. - '.widget-title' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size['tablet'] * 1.428571429, 'px', 'tablet' ), - ), - ); - } - - /* Tablet Typography */ - $tablet_typography = array( - 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $body_font_size, 'tablet' ), - ), - '#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array( - 'font-size' => astra_responsive_font( $body_font_size, 'tablet' ), - ), - '.site-title' => array( - 'font-size' => astra_responsive_font( $site_title_font_size, 'tablet' ), - 'display' => esc_attr( $tablet_title_visibility ), - ), - '.site-header .site-description' => array( - 'font-size' => astra_responsive_font( $site_tagline_font_size, 'tablet' ), - 'display' => esc_attr( $tablet_tagline_visibility ), - ), - '.entry-title' => array( - 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'tablet', 30 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h1, .entry-content h1, .entry-content h1 a', - 'h1, .entry-content h1' - ) => array( - 'font-size' => astra_responsive_font( $heading_h1_font_size, 'tablet', 30 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h2, .entry-content h2, .entry-content h2 a', - 'h2, .entry-content h2' - ) => array( - 'font-size' => astra_responsive_font( $heading_h2_font_size, 'tablet', 25 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h3, .entry-content h3, .entry-content h3 a', - 'h3, .entry-content h3' - ) => array( - 'font-size' => astra_responsive_font( $heading_h3_font_size, 'tablet', 20 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h4, .entry-content h4, .entry-content h4 a', - 'h4, .entry-content h4' - ) => array( - 'font-size' => astra_responsive_font( $heading_h4_font_size, 'tablet' ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h5, .entry-content h5, .entry-content h5 a', - 'h5, .entry-content h5' - ) => array( - 'font-size' => astra_responsive_font( $heading_h5_font_size, 'tablet' ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h6, .entry-content h6, .entry-content h6 a', - 'h6, .entry-content h6' - ) => array( - 'font-size' => astra_responsive_font( $heading_h6_font_size, 'tablet' ), - ), - '.astra-logo-svg' => array( - 'width' => astra_get_css_value( $header_logo_width['tablet'], 'px' ), - ), - '.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array( - 'height' => astra_get_css_value( ( ! empty( $header_logo_width['tablet-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['tablet-svg-height'] : '', 'px' ), - ), - 'header .custom-logo-link img, .ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array( - 'max-width' => astra_get_css_value( $header_logo_width['tablet'], 'px' ), - ), - 'body, .ast-separate-container' => astra_get_responsive_background_obj( $box_bg_obj, 'tablet' ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( array_merge( $tablet_typo, $tablet_typography ), '', astra_get_tablet_breakpoint() ); - - $mobile_typo = array(); - if ( isset( $body_font_size['mobile'] ) && '' != $body_font_size['mobile'] ) { - $mobile_typo = array( - // Widget Title. - '.widget-title' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size['mobile'] * 1.428571429, 'px', 'mobile' ), - ), - ); - } - - /* Mobile Typography */ - $mobile_typography = array( - 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( - 'font-size' => astra_responsive_font( $body_font_size, 'mobile' ), - ), - '#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array( - 'font-size' => astra_responsive_font( $body_font_size, 'mobile' ), - ), - '.site-title' => array( - 'font-size' => astra_responsive_font( $site_title_font_size, 'mobile' ), - 'display' => esc_attr( $mobile_title_visibility ), - ), - '.site-header .site-description' => array( - 'font-size' => astra_responsive_font( $site_tagline_font_size, 'mobile' ), - 'display' => esc_attr( $mobile_tagline_visibility ), - ), - '.entry-title' => array( - 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'mobile', 30 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h1, .entry-content h1, .entry-content h1 a', - 'h1, .entry-content h1' - ) => array( - 'font-size' => astra_responsive_font( $heading_h1_font_size, 'mobile', 30 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h2, .entry-content h2, .entry-content h2 a', - 'h2, .entry-content h2' - ) => array( - 'font-size' => astra_responsive_font( $heading_h2_font_size, 'mobile', 25 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h3, .entry-content h3, .entry-content h3 a', - 'h3, .entry-content h3' - ) => array( - 'font-size' => astra_responsive_font( $heading_h3_font_size, 'mobile', 20 ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h4, .entry-content h4, .entry-content h4 a', - 'h4, .entry-content h4' - ) => array( - 'font-size' => astra_responsive_font( $heading_h4_font_size, 'mobile' ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h5, .entry-content h5, .entry-content h5 a', - 'h5, .entry-content h5' - ) => array( - 'font-size' => astra_responsive_font( $heading_h5_font_size, 'mobile' ), - ), - - // Conditionally select the css selectors with or without achors. - self::conditional_headings_css_selectors( - 'h6, .entry-content h6, .entry-content h6 a', - 'h6, .entry-content h6' - ) => array( - 'font-size' => astra_responsive_font( $heading_h6_font_size, 'mobile' ), - ), - 'header .custom-logo-link img, .ast-header-break-point .site-branding img, .ast-header-break-point .custom-logo-link img' => array( - 'max-width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), - ), - '.astra-logo-svg' => array( - 'width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), - ), - '.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array( - 'height' => astra_get_css_value( ( ! empty( $header_logo_width['mobile-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['mobile-svg-height'] : '', 'px' ), - ), - '.ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array( - 'max-width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), - ), - 'body, .ast-separate-container' => astra_get_responsive_background_obj( $box_bg_obj, 'mobile' ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( array_merge( $mobile_typo, $mobile_typography ), '', astra_get_mobile_breakpoint() ); - - /* - * Responsive Font Size for Tablet & Mobile to the root HTML element - */ - - // Tablet Font Size for HTML tag. - if ( '' == $body_font_size['tablet'] ) { - $html_tablet_typography = array( - 'html' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 5.7, '%' ), - ), - ); - $parse_css .= astra_parse_css( $html_tablet_typography, '', astra_get_tablet_breakpoint() ); - } - // Mobile Font Size for HTML tag. - if ( '' == $body_font_size['mobile'] ) { - $html_mobile_typography = array( - 'html' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 5.7, '%' ), - ), - ); - } else { - $html_mobile_typography = array( - 'html' => array( - 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 6.25, '%' ), - ), - ); - } - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( $html_mobile_typography, '', astra_get_mobile_breakpoint() ); - - /* Site width Responsive */ - $site_width = array( - '.ast-container' => array( - 'max-width' => astra_get_css_value( $site_content_width + 40, 'px' ), - ), - ); - - /* Parse CSS from array()*/ - $parse_css .= astra_parse_css( $site_width, astra_get_tablet_breakpoint( '', 1 ) ); - - /* Narrow width container layout dynamic css */ - $parse_css .= astra_narrow_container_width( astra_get_content_layout(), $narrow_container_max_width ); - - // Page Meta. - $parse_css .= astra_narrow_container_width( astra_get_content_layout(), $narrow_container_max_width ); - - if ( Astra_Builder_Helper::apply_flex_based_css() ) { - $max_site_container_css = array( - '.site-content .ast-container' => array( - 'display' => 'flex', - ), - ); - $parse_css .= astra_parse_css( $max_site_container_css, astra_get_tablet_breakpoint( '', 1 ) ); - - $min_site_container_css = array( - '.site-content .ast-container' => array( - 'flex-direction' => 'column', - ), - ); - $parse_css .= astra_parse_css( $min_site_container_css, '', astra_get_tablet_breakpoint() ); - } - - /** - * Astra Fonts - */ - if ( apply_filters( 'astra_enable_default_fonts', true ) ) { - $astra_fonts = '@font-face {'; - $astra_fonts .= 'font-family: "Astra";'; - $astra_fonts .= 'src: url(' . ASTRA_THEME_URI . 'assets/fonts/astra.woff) format("woff"),'; - $astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.ttf) format("truetype"),'; - $astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.svg#astra) format("svg");'; - $astra_fonts .= 'font-weight: normal;'; - $astra_fonts .= 'font-style: normal;'; - $astra_fonts .= 'font-display: ' . astra_get_fonts_display_property() . ';'; - $astra_fonts .= '}'; - $parse_css .= $astra_fonts; - } - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - /** - * Hide the default naviagtion markup for responsive devices. - * Once class .ast-header-break-point is added to the body below CSS will be override by the - * .ast-header-break-point class - */ - $astra_navigation = '@media (max-width:' . $header_break_point . 'px) {'; - $astra_navigation .= '.main-header-bar .main-header-bar-navigation{'; - $astra_navigation .= 'display:none;'; - $astra_navigation .= '}'; - $astra_navigation .= '}'; - $parse_css .= $astra_navigation; - } - - /* Blog */ - if ( 'custom' === $blog_width ) : - - /* Site width Responsive */ - $blog_css = array( - '.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container' => array( - 'max-width' => astra_get_css_value( $blog_max_width, 'px' ), - ), - ); - $parse_css .= astra_parse_css( $blog_css, astra_get_tablet_breakpoint( '', 1 ) ); - endif; - - /* Single Blog */ - if ( 'custom' === $single_post_max ) : - - /* Site width Responsive */ - $single_blog_css = array( - '.single-post .site-content > .ast-container' => array( - 'max-width' => astra_get_css_value( $single_post_max_width, 'px' ), - ), - ); - $parse_css .= astra_parse_css( $single_blog_css, astra_get_tablet_breakpoint( '', 1 ) ); - endif; - - // Primary Submenu Border Width & Color. - $submenu_border_style = array( - '.ast-desktop .main-header-menu.submenu-with-border .sub-menu, .ast-desktop .main-header-menu.submenu-with-border .astra-full-megamenu-wrapper' => array( - 'border-color' => esc_attr( $primary_submenu_b_color ), - ), - - '.ast-desktop .main-header-menu.submenu-with-border .sub-menu' => array( - 'border-top-width' => astra_get_css_value( $submenu_border['top'], 'px' ), - 'border-right-width' => astra_get_css_value( $submenu_border['right'], 'px' ), - 'border-left-width' => astra_get_css_value( $submenu_border['left'], 'px' ), - 'border-bottom-width' => astra_get_css_value( $submenu_border['bottom'], 'px' ), - 'border-style' => 'solid', - ), - '.ast-desktop .main-header-menu.submenu-with-border .sub-menu .sub-menu' => array( - 'top' => ( isset( $submenu_border['top'] ) && '' != $submenu_border['top'] ) ? astra_get_css_value( '-' . $submenu_border['top'], 'px' ) : '', - ), - '.ast-desktop .main-header-menu.submenu-with-border .sub-menu .menu-link, .ast-desktop .main-header-menu.submenu-with-border .children .menu-link' => array( - 'border-bottom-width' => ( $primary_submenu_item_border ) ? '1px' : '0px', - 'border-style' => 'solid', - 'border-color' => esc_attr( $primary_submenu_item_b_color ), - ), - ); - - // Submenu items goes outside? - $submenu_border_for_left_align_menu = array( - '.main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu:hover > .sub-menu, .main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu.focus > .sub-menu' => array( - 'margin-left' => ( ( isset( $submenu_border['left'] ) && '' != $submenu_border['left'] ) || isset( $submenu_border['right'] ) && '' != $submenu_border['right'] ) ? astra_get_css_value( '-' . ( (int) $submenu_border['left'] + (int) $submenu_border['right'] ), 'px' ) : '', - ), - ); - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $parse_css .= astra_parse_css( $submenu_border_style ); - } - - // Submenu items goes outside? - $parse_css .= astra_parse_css( $submenu_border_for_left_align_menu, astra_get_tablet_breakpoint( '', 1 ) ); - - /* Small Footer CSS */ - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'disabled' != $small_footer_layout ) : - $sml_footer_css = array( - '.ast-small-footer' => array( - 'border-top-style' => 'solid', - 'border-top-width' => astra_get_css_value( $small_footer_divider, 'px' ), - 'border-top-color' => esc_attr( $small_footer_divider_color ), - ), - ); - $parse_css .= astra_parse_css( $sml_footer_css ); - - if ( 'footer-sml-layout-2' != $small_footer_layout ) { - $sml_footer_css = array( - '.ast-small-footer-wrap' => array( - 'text-align' => 'center', - ), - ); - $parse_css .= astra_parse_css( $sml_footer_css ); - } - endif; - - /* Transparent Header - Comonent header specific CSS compatibility */ - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active && Astra_Ext_Transparent_Header_Markup::is_transparent_header() ) { - - $html_text_color = astra_get_option( 'transparent-header-html-text-color' ); - $html_link_color = astra_get_option( 'transparent-header-html-link-color' ); - $html_link_h_color = astra_get_option( 'transparent-header-html-link-h-color' ); - - $search_icon_color = astra_get_option( 'transparent-header-search-icon-color' ); - $search_text_color = astra_get_option( 'transparent-header-search-box-placeholder-color' ); - - $search_box_bg_color = astra_get_option( 'transparent-header-search-box-background-color' ); - - $social_color = astra_get_option( 'transparent-header-social-icons-color' ); - $social_hover_color = astra_get_option( 'transparent-header-social-icons-h-color' ); - $social_bg_color = astra_get_option( 'transparent-header-social-icons-bg-color' ); - $social_bg_hover_color = astra_get_option( 'transparent-header-social-icons-bg-h-color' ); - - $button_color = astra_get_option( 'transparent-header-button-text-color' ); - $button_h_color = astra_get_option( 'transparent-header-button-text-h-color' ); - $button_bg_color = astra_get_option( 'transparent-header-button-bg-color' ); - $button_bg_h_color = astra_get_option( 'transparent-header-button-bg-h-color' ); - - $divider_color = astra_get_option( 'transparent-header-divider-color' ); - $account_icon_color = astra_get_option( 'transparent-account-icon-color' ); - $account_loggedout_text_color = astra_get_option( 'transparent-account-type-text-color' ); - - // Menu colors. - $account_menu_color = astra_get_option( 'transparent-account-menu-color' ); - $account_menu_bg_color = astra_get_option( 'transparent-account-menu-bg-obj' ); - $account_menu_color_hover = astra_get_option( 'transparent-account-menu-h-color' ); - $account_menu_bg_color_hover = astra_get_option( 'transparent-account-menu-h-bg-color' ); - $account_menu_color_active = astra_get_option( 'transparent-account-menu-a-color' ); - $account_menu_bg_color_active = astra_get_option( 'transparent-account-menu-a-bg-color' ); - - $transparent_header_builder_desktop_css = array( - '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( - 'color' => esc_attr( $html_text_color ), - ), - '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a' => array( - 'color' => esc_attr( $html_link_color ), - ), - '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a:hover' => array( - 'color' => esc_attr( $html_link_h_color ), - ), - '.ast-theme-transparent-header .ast-header-search .astra-search-icon, .ast-theme-transparent-header .ast-header-search .search-field::placeholder, .ast-theme-transparent-header .ast-header-search .ast-icon' => array( - 'color' => esc_attr( $search_icon_color ), - ), - '.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field::placeholder' => array( - 'color' => esc_attr( $search_text_color ), - ), - '.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-form, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-submit' => array( - 'background-color' => esc_attr( $search_box_bg_color ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( - 'background' => esc_attr( $social_bg_color['desktop'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( - 'fill' => esc_attr( $social_color['desktop'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( - 'background' => esc_attr( $social_bg_hover_color['desktop'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( - 'fill' => esc_attr( $social_hover_color['desktop'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( - 'color' => esc_attr( $social_color['desktop'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( - 'color' => esc_attr( $social_hover_color['desktop'] ), - ), - '.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button' => array( - 'color' => esc_attr( $button_color ), - 'background' => esc_attr( $button_bg_color ), - ), - '.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button:hover' => array( - 'color' => esc_attr( $button_h_color ), - 'background' => esc_attr( $button_bg_h_color ), - ), - '.ast-theme-transparent-header .ast-header-divider-element .ast-divider-wrapper' => array( - 'border-color' => esc_attr( $divider_color ), - ), - '.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill), .ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg circle' => array( - 'fill' => esc_attr( $account_icon_color ), - ), - '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item .menu-link' => array( - 'color' => esc_attr( $account_menu_color ), - ), - '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item:hover > .menu-link' => array( - 'color' => $account_menu_color_hover, - 'background' => $account_menu_bg_color_hover, - ), - '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item.current-menu-item > .menu-link' => array( - 'color' => $account_menu_color_active, - 'background' => $account_menu_bg_color_active, - ), - '.ast-theme-transparent-header .ast-header-account-wrap .account-main-navigation ul' => array( - 'background' => $account_menu_bg_color, - ), - '.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-text' => array( - 'color' => $account_loggedout_text_color, - ), - ); - - - $widget_title_color = astra_get_option( 'transparent-header-widget-title-color' ); - $widget_content_color = astra_get_option( 'transparent-header-widget-content-color' ); - $widget_link_color = astra_get_option( 'transparent-header-widget-link-color' ); - $widget_link_hover_color = astra_get_option( 'transparent-header-widget-link-h-color' ); - - $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .widget-title'] = array( - 'color' => esc_attr( $widget_title_color ), - ); - $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner'] = array( - 'color' => esc_attr( $widget_content_color ), - ); - $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a'] = array( - 'color' => esc_attr( $widget_link_color ), - ); - $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a:hover'] = array( - 'color' => esc_attr( $widget_link_hover_color ), - ); - - if ( Astra_Builder_Helper::apply_flex_based_css() ) { - $transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area.header-widget-area-inner'; - } else { - $transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area. header-widget-area-inner'; - } - - $transparent_header_builder_desktop_css[ $transparent_header_widget_selector ] = array( - 'color' => esc_attr( $widget_content_color ), - ); - $transparent_header_builder_desktop_css[ $transparent_header_widget_selector . ' a' ] = array( - 'color' => esc_attr( $widget_link_color ), - ); - $transparent_header_builder_desktop_css[ $transparent_header_widget_selector . ' a:hover' ] = array( - 'color' => esc_attr( $widget_link_hover_color ), - ); - - if ( Astra_Builder_Helper::is_component_loaded( 'mobile-trigger', 'header', 'mobile' ) ) { - - $transparent_toggle_selector = '.ast-theme-transparent-header [data-section="section-header-mobile-trigger"]'; - - $trigger_bg = astra_get_option( 'transparent-header-toggle-btn-bg-color' ); - $trigger_border_color = astra_get_option( 'transparent-header-toggle-border-color', $trigger_bg ); - $style = astra_get_option( 'mobile-header-toggle-btn-style' ); - $default = '#ffffff'; - - if ( 'fill' !== $style ) { - $default = $theme_color; - } - - $icon_color = astra_get_option( 'transparent-header-toggle-btn-color' ); - - /** - * Off-Canvas CSS. - */ - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg' ] = array( - 'fill' => $icon_color, - ); - - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-wrap .mobile-menu' ] = array( - // Color. - 'color' => $icon_color, - ); - - if ( 'fill' === $style ) { - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill' ] = array( - 'background' => esc_attr( $trigger_bg ), - ); - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill, ' . $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array( - // Color & Border. - 'color' => esc_attr( $icon_color ), - 'border' => 'none', - ); - } elseif ( 'outline' === $style ) { - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-outline' ] = array( - // Background. - 'background' => 'transparent', - 'color' => esc_attr( $icon_color ), - 'border-color' => $trigger_border_color, - ); - } else { - $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array( - 'background' => 'transparent', - ); - } - } - - $parse_css .= astra_parse_css( $transparent_header_builder_desktop_css ); - - /** - * Max-width: Tablet Breakpoint CSS. - */ - $transparent_header_builder_tablet_css = array( - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( - 'background' => esc_attr( $social_bg_color['tablet'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( - 'fill' => esc_attr( $social_color['tablet'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( - 'background' => esc_attr( $social_bg_hover_color['tablet'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( - 'fill' => esc_attr( $social_hover_color['tablet'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( - 'color' => esc_attr( $social_color['tablet'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( - 'color' => esc_attr( $social_hover_color['tablet'] ), - ), - ); - - $parse_css .= astra_parse_css( $transparent_header_builder_tablet_css, '', astra_get_tablet_breakpoint() ); - - /** - * Max-width: Mobile Breakpoint CSS. - */ - $transparent_header_builder_mobile_css = array( - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( - 'background' => esc_attr( $social_bg_color['mobile'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( - 'fill' => esc_attr( $social_color['mobile'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( - 'background' => esc_attr( $social_bg_hover_color['mobile'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( - 'fill' => esc_attr( $social_hover_color['mobile'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( - 'color' => esc_attr( $social_color['mobile'] ), - ), - '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( - 'color' => esc_attr( $social_hover_color['mobile'] ), - ), - ); - - $parse_css .= astra_parse_css( $transparent_header_builder_mobile_css, '', astra_get_mobile_breakpoint() ); - } - - if ( self::astra_list_block_vertical_spacing() ) { - $list_spacing_css = array( - '.entry-content li > p' => array( - 'margin-bottom' => 0, - ), - ); - $parse_css .= astra_parse_css( $list_spacing_css ); - } - - if ( self::astra_fullwidth_sidebar_support() ) { - if ( 'page-builder' == $ast_container_layout ) { - add_filter( - 'astra_page_layout', - function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found - return 'no-sidebar'; - } - ); - } - } - - $parse_css .= $dynamic_css; - $custom_css = astra_get_option( 'custom-css' ); - - if ( '' != $custom_css ) { - $parse_css .= $custom_css; - } - - // trim white space for faster page loading. - $parse_css = Astra_Enqueue_Scripts::trim_css( $parse_css ); - - return apply_filters( 'astra_theme_dynamic_css', $parse_css ); - - } - - /** - * Return post meta CSS - * - * @param string $dynamic_css Astra Dynamic CSS. - * @param string $dynamic_css_filtered Astra Dynamic CSS Filters. - * @return mixed Return the CSS. - */ - public static function return_meta_output( $dynamic_css, $dynamic_css_filtered = '' ) { - - /** - * - Page Layout - * - * - Sidebar Positions CSS - */ - $secondary_width = absint( astra_get_option( 'site-sidebar-width' ) ); - $primary_width = absint( 100 - $secondary_width ); - $meta_style = ''; - - // Header Separator. - $header_separator = astra_get_option( 'header-main-sep' ); - $header_separator_color = astra_get_option( 'header-main-sep-color' ); - - $meta_style = array( - '.ast-header-break-point .main-header-bar' => array( - 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), - 'border-bottom-color' => esc_attr( $header_separator_color ), - ), - ); - - $parse_css = astra_parse_css( $meta_style ); - - $meta_style = array( - '.main-header-bar' => array( - 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), - 'border-bottom-color' => esc_attr( $header_separator_color ), - ), - ); - - $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); - - if ( 'no-sidebar' !== astra_page_layout() ) : - - $meta_style = array( - '#primary' => array( - 'width' => astra_get_css_value( $primary_width, '%' ), - ), - '#secondary' => array( - 'width' => astra_get_css_value( strval( $secondary_width ), '%' ), - ), - ); - - $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); - - endif; - - if ( false === self::astra_submenu_below_header_fix() ) : - // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. - // Also restore the padding to class `main-header-bar`. - $submenu_below_header = array( - '.ast-flex' => array( - '-webkit-align-content' => 'center', - '-ms-flex-line-pack' => 'center', - 'align-content' => 'center', - '-webkit-box-align' => 'center', - '-webkit-align-items' => 'center', - '-moz-box-align' => 'center', - '-ms-flex-align' => 'center', - 'align-items' => 'center', - ), - '.main-header-bar' => array( - 'padding' => '1em 0', - ), - '.ast-site-identity' => array( - 'padding' => '0', - ), - // CSS to open submenu just below menu. - '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( - '-webkit-align-content' => 'center', - '-ms-flex-line-pack' => 'center', - 'align-content' => 'center', - '-webkit-box-align' => 'center', - '-webkit-align-items' => 'center', - '-moz-box-align' => 'center', - '-ms-flex-align' => 'center', - 'align-items' => 'center', - ), - ); - - $parse_css .= astra_parse_css( $submenu_below_header ); - - else : - // `.menu-item` required display:flex, although weight of this css increases because of which custom CSS added from child themes to be not working. - // Hence this is added to dynamic CSS which will be applied only if this filter `astra_submenu_below_header_fix` is enabled. - // @see https://github.com/brainstormforce/astra/pull/828 - $submenu_below_header = array( - '.main-header-menu .menu-item, #astra-footer-menu .menu-item, .main-header-bar .ast-masthead-custom-menu-items' => array( - '-js-display' => 'flex', - 'display' => '-webkit-box', - 'display' => '-webkit-flex', - 'display' => '-moz-box', - 'display' => '-ms-flexbox', - 'display' => 'flex', - '-webkit-box-pack' => 'center', - '-webkit-justify-content' => 'center', - '-moz-box-pack' => 'center', - '-ms-flex-pack' => 'center', - 'justify-content' => 'center', - '-webkit-box-orient' => 'vertical', - '-webkit-box-direction' => 'normal', - '-webkit-flex-direction' => 'column', - '-moz-box-orient' => 'vertical', - '-moz-box-direction' => 'normal', - '-ms-flex-direction' => 'column', - 'flex-direction' => 'column', - ), - '.main-header-menu > .menu-item > .menu-link, #astra-footer-menu > .menu-item > .menu-link' => array( - 'height' => '100%', - '-webkit-box-align' => 'center', - '-webkit-align-items' => 'center', - '-moz-box-align' => 'center', - '-ms-flex-align' => 'center', - 'align-items' => 'center', - '-js-display' => 'flex', - 'display' => '-webkit-box', - 'display' => '-webkit-flex', - 'display' => '-moz-box', - 'display' => '-ms-flexbox', - 'display' => 'flex', - ), - ); - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $submenu_below_header['.ast-primary-menu-disabled .main-header-bar .ast-masthead-custom-menu-items'] = array( - 'flex' => 'unset', - ); - } - - $parse_css .= astra_parse_css( $submenu_below_header ); - - endif; - - if ( false === self::astra_submenu_open_below_header_fix() ) { - // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. - // Also restore the padding to class `main-header-bar`. - $submenu_below_header = array( - // CSS to open submenu just below menu. - '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( - '-webkit-align-content' => 'center', - '-ms-flex-line-pack' => 'center', - 'align-content' => 'center', - '-webkit-box-align' => 'center', - '-webkit-align-items' => 'center', - '-moz-box-align' => 'center', - '-ms-flex-align' => 'center', - 'align-items' => 'center', - ), - ); - - $parse_css .= astra_parse_css( $submenu_below_header ); - } - - $submenu_toggle = ''; - $is_site_rtl = is_rtl(); - - if ( false === Astra_Icons::is_svg_icons() ) { - // Update styles depend on RTL sites. - $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; - $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; - $default_left_rtl_right = 'left'; - $default_right_rtl_left = 'right'; - if ( $is_site_rtl ) { - $transform_svg_style = 'translate(0,-50%) rotate(90deg)'; - $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; - $default_left_rtl_right = 'right'; - $default_right_rtl_left = 'left'; - } - $submenu_toggle = array( - // HFB / Old Header Footer - CSS compatibility when SVGs are disabled. - '.main-header-menu .sub-menu .menu-item.menu-item-has-children > .menu-link:after' => array( - 'position' => 'absolute', - $default_right_rtl_left => '1em', - 'top' => '50%', - 'transform' => $transform_svg_style, - ), - '.ast-header-break-point .main-header-bar .main-header-bar-navigation .page_item_has_children > .ast-menu-toggle::before, .ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before, .ast-mobile-popup-drawer .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle::before, .ast-header-break-point .ast-mobile-header-wrap .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before' => array( - 'font-weight' => 'bold', - 'content' => '"\e900"', - 'font-family' => 'Astra', - 'text-decoration' => 'inherit', - 'display' => 'inline-block', - ), - '.ast-header-break-point .main-navigation ul.sub-menu .menu-item .menu-link:before' => array( - 'content' => '"\e900"', - 'font-family' => 'Astra', - 'font-size' => '.65em', - 'text-decoration' => 'inherit', - 'display' => 'inline-block', - 'transform' => $transform_nested_svg_transform, - 'margin-' . $default_right_rtl_left => '5px', - ), - '.widget_search .search-form:after' => array( - 'font-family' => 'Astra', - 'font-size' => '1.2em', - 'font-weight' => 'normal', - 'content' => '"\e8b6"', - 'position' => 'absolute', - 'top' => '50%', - $default_right_rtl_left => '15px', - 'transform' => 'translate(0, -50%)', - ), - '.astra-search-icon::before' => array( - 'content' => '"\e8b6"', - 'font-family' => 'Astra', - 'font-style' => 'normal', - 'font-weight' => 'normal', - 'text-decoration' => 'inherit', - 'text-align' => 'center', - '-webkit-font-smoothing' => 'antialiased', - '-moz-osx-font-smoothing' => 'grayscale', - 'z-index' => '3', - ), - '.main-header-bar .main-header-bar-navigation .page_item_has_children > a:after, .main-header-bar .main-header-bar-navigation .menu-item-has-children > a:after, .menu-item-has-children .ast-header-navigation-arrow:after' => array( - 'content' => '"\e900"', - 'display' => 'inline-block', - 'font-family' => 'Astra', - 'font-size' => '9px', - 'font-size' => '.6rem', - 'font-weight' => 'bold', - 'text-rendering' => 'auto', - '-webkit-font-smoothing' => 'antialiased', - '-moz-osx-font-smoothing' => 'grayscale', - 'margin-' . $default_left_rtl_right => '10px', - 'line-height' => 'normal', - ), - - '.menu-item-has-children .sub-menu .ast-header-navigation-arrow:after' => array( - 'margin-left' => '0', - ), - - '.ast-mobile-popup-drawer .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before' => array( - 'transform' => 'rotateX(180deg)', - ), - '.ast-header-break-point .main-header-bar-navigation .menu-item-has-children > .menu-link:after' => array( - 'display' => 'none', - ), - ); - } else { - if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { - // Update styles depend on RTL sites. - $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; - $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; - $default_left_rtl_right = 'left'; - $default_right_rtl_left = 'right'; - if ( $is_site_rtl ) { - $transform_svg_style = 'translate(0,-50%) rotate(900deg)'; - $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; - $default_left_rtl_right = 'right'; - $default_right_rtl_left = 'left'; - } - $submenu_toggle = array( - // Old Header Footer - SVG Support. - '.ast-desktop .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow svg' => array( - 'position' => 'absolute', - $default_right_rtl_left => '.6em', - 'top' => '50%', - 'transform' => $transform_svg_style, - ), - '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( - $default_left_rtl_right => '.1em', - 'top' => '.1em', - 'transform' => $transform_nested_svg_transform, - ), - ); - } else { - $transform_svg_style = 'translate(0, -2px) rotateZ(270deg)'; - $default_left_rtl_right = 'left'; - if ( $is_site_rtl ) { - $transform_svg_style = 'translate(0, -2px) rotateZ(90deg)'; - $default_left_rtl_right = 'right'; - } - $submenu_toggle = array( - // New Header Footer - SVG Support. - '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( - 'top' => '.2em', - 'margin-top' => '0px', - 'margin-' . $default_left_rtl_right => '0px', - 'width' => '.65em', - 'transform' => $transform_svg_style, - ), - '.ast-mobile-popup-content .ast-submenu-expanded > .ast-menu-toggle' => array( - 'transform' => 'rotateX(180deg)', - 'overflow-y' => 'auto', - ), - ); - } - } - - $parse_css .= astra_parse_css( $submenu_toggle ); - - $dynamic_css .= $parse_css; - - return $dynamic_css; - } - - /** - * Conditionally iclude CSS Selectors with anchors in the typography settings. - * - * Historically Astra adds Colors/Typography CSS for headings and anchors for headings but this causes irregularities with the expected output. - * For eg Link color does not work for the links inside headings. - * - * If filter `astra_include_achors_in_headings_typography` is set to true or Astra Option `include-headings-in-typography` is set to true, This will return selectors with anchors. Else This will return selectors without anchors. - * - * @access Private. - * - * @since 1.4.9 - * @param String $selectors_with_achors CSS Selectors with anchors. - * @param String $selectors_without_achors CSS Selectors withour annchors. - * - * @return String CSS Selectors based on the condition of filters. - */ - private static function conditional_headings_css_selectors( $selectors_with_achors, $selectors_without_achors ) { - - if ( true === self::anchors_in_css_selectors_heading() ) { - return $selectors_with_achors; - } else { - return $selectors_without_achors; - } - - } - - /** - * Check if CSS selectors in Headings should use anchors. - * - * @since 1.4.9 - * @return boolean true if it should include anchors, False if not. - */ - public static function anchors_in_css_selectors_heading() { - - if ( true === astra_get_option( 'include-headings-in-typography' ) && - true === apply_filters( - 'astra_include_achors_in_headings_typography', - true - ) ) { - - return true; - } - - return false; - } - - /** - * Check backwards compatibility CSS for loading submenu below the header needs to be added. - * - * @since 1.5.0 - * @return boolean true if CSS should be included, False if not. - */ - public static function astra_submenu_below_header_fix() { - - if ( false === astra_get_option( 'submenu-below-header', true ) && - false === apply_filters( - 'astra_submenu_below_header_fix', - false - ) ) { - - return false; - } - return true; - } - - /** - * Check backwards compatibility CSS for loading submenu below the header needs to be added. - * - * @since 2.1.3 - * @return boolean true if submenu below header fix is to be loaded, False if not. - */ - public static function astra_submenu_open_below_header_fix() { - - if ( false === astra_get_option( 'submenu-open-below-header', true ) && - false === apply_filters( - 'astra_submenu_open_below_header_fix', - false - ) ) { - - return false; - } - return true; - } - - /** - * Check backwards compatibility to not load default CSS for the button styling of Page Builders. - * - * @since 2.2.0 - * @return boolean true if button style CSS should be loaded, False if not. - */ - public static function page_builder_button_style_css() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['pb-button-color-compatibility'] = ( isset( $astra_settings['pb-button-color-compatibility'] ) && false === $astra_settings['pb-button-color-compatibility'] ) ? false : true; - return apply_filters( 'astra_page_builder_button_style_css', $astra_settings['pb-button-color-compatibility'] ); - } - - /** - * Elementor Theme Style - Button Text Color compatibility. This should be looked in the future for proper solution. - * - * Reference: https://github.com/elementor/elementor/issues/10733 - * Reference: https://github.com/elementor/elementor/issues/10739 - * - * @since 2.3.3 - * - * @return mixed - */ - public static function is_elementor_kit_button_color_set() { - $ele_btn_global_text_color = false; - $ele_kit_id = get_option( 'elementor_active_kit', false ); - if ( false !== $ele_kit_id ) { - $ele_global_btn_data = get_post_meta( $ele_kit_id, '_elementor_page_settings' ); - // Elementor Global theme style button text color fetch value from database. - $ele_btn_global_text_color = isset( $ele_global_btn_data[0]['button_text_color'] ) ? $ele_global_btn_data[0]['button_text_color'] : $ele_btn_global_text_color; - } - return $ele_btn_global_text_color; - } - - /** - * Check if Elementor - Disable Default Colors or Disable Default Fonts checked or unchecked. - * - * @since 2.3.3 - * - * @return mixed String if any of the settings are enabled. False if no settings are enabled. - */ - public static function elementor_default_color_font_setting() { - $ele_default_color_setting = get_option( 'elementor_disable_color_schemes' ); - $ele_default_typo_setting = get_option( 'elementor_disable_typography_schemes' ); - - if ( ( 'yes' === $ele_default_color_setting && 'yes' === $ele_default_typo_setting ) || ( false === self::is_elementor_default_color_font_comp() ) ) { - return 'color-typo'; - } - - if ( 'yes' === $ele_default_color_setting ) { - return 'color'; - } - - if ( 'yes' === $ele_default_typo_setting ) { - return 'typo'; - } - - return false; - - } - - /** - * For existing users, do not reflect direct change. - * - * @since 3.6.5 - * @return boolean true if WordPress-5.8 compatibility enabled, False if not. - */ - public static function is_block_editor_support_enabled() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['support-block-editor'] = ( isset( $astra_settings['support-block-editor'] ) && false === $astra_settings['support-block-editor'] ) ? false : true; - return apply_filters( 'astra_has_block_editor_support', $astra_settings['support-block-editor'] ); - } - - /** - * For existing users, do not provide Elementor Default Color Typo settings compatibility by default. - * - * @since 2.3.3 - * @return boolean true if elementor default color and typo setting should work with theme, False if not. - */ - public static function is_elementor_default_color_font_comp() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['ele-default-color-typo-setting-comp'] = ( isset( $astra_settings['ele-default-color-typo-setting-comp'] ) && false === $astra_settings['ele-default-color-typo-setting-comp'] ) ? false : true; - return apply_filters( 'astra_elementor_default_color_font_comp', $astra_settings['ele-default-color-typo-setting-comp'] ); - } - - /** - * For existing users, do not provide list vertical spacing. - * - * @since 4.1.6 - * @return boolean true for new users, false for old users. - */ - public static function astra_list_block_vertical_spacing() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['list-block-vertical-spacing'] = isset( $astra_settings['list-block-vertical-spacing'] ) ? false : true; - return apply_filters( 'astra_list_block_vertical_spacing', $astra_settings['list-block-vertical-spacing'] ); - } - - /** - * For existing users, do not load the wide/full width image CSS by default. - * - * @since 2.4.4 - * @return boolean false if it is an existing user , true if not. - */ - public static function gtn_image_group_css_comp() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['gtn-full-wide-image-grp-css'] = isset( $astra_settings['gtn-full-wide-image-grp-css'] ) ? false : true; - return apply_filters( 'astra_gutenberg_image_group_style_support', $astra_settings['gtn-full-wide-image-grp-css'] ); - } - - /** - * Do not apply new wide/full Group and Cover block CSS for existing users. - * - * @since 2.5.0 - * @return boolean false if it is an existing user , true if not. - */ - public static function gtn_group_cover_css_comp() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['gtn-full-wide-grp-cover-css'] = isset( $astra_settings['gtn-full-wide-grp-cover-css'] ) ? false : true; - return apply_filters( 'astra_gtn_group_cover_css_comp', $astra_settings['gtn-full-wide-grp-cover-css'] ); - } - - /** - * Do not apply new Group, Column and Media & Text block CSS for existing users. - * - * @since 2.6.0 - * @return boolean false if it is an existing user , true if not. - */ - public static function gutenberg_core_blocks_css_comp() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['guntenberg-core-blocks-comp-css'] = isset( $astra_settings['guntenberg-core-blocks-comp-css'] ) ? false : true; - return apply_filters( 'astra_gutenberg_core_blocks_design_compatibility', $astra_settings['guntenberg-core-blocks-comp-css'] ); - } - - /** - * Do not apply new Group, Column and Media & Text block CSS for existing users. - * - * CSS for adding spacing|padding support to Gutenberg Media-&-Text Block - * - * @since 2.6.1 - * @return boolean false if it is an existing user , true if not. - */ - public static function gutenberg_media_text_block_css_compat() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['guntenberg-media-text-block-padding-css'] = isset( $astra_settings['guntenberg-media-text-block-padding-css'] ) ? false : true; - return apply_filters( 'astra_gutenberg_media_text_block_spacing_compatibility', $astra_settings['guntenberg-media-text-block-padding-css'] ); - } - - /** - * Gutenberg pattern compatibility changes. - * - * @since 3.3.0 - * @return boolean false if it is an existing user , true if not. - */ - public static function gutenberg_core_patterns_compat() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['guntenberg-button-pattern-compat-css'] = isset( $astra_settings['guntenberg-button-pattern-compat-css'] ) ? false : true; - return apply_filters( 'astra_gutenberg_patterns_compatibility', $astra_settings['guntenberg-button-pattern-compat-css'] ); - } - - /** - * Font CSS support for widget-title heading fonts & fonts which are not working in editor. - * - * 1. Adding Font-weight support to widget titles. - * 2. Customizer font CSS not supporting in editor. - * - * @since 3.6.0 - * @return boolean false if it is an existing user, true if not. - */ - public static function support_font_css_to_widget_and_in_editor() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['can-support-widget-and-editor-fonts'] = isset( $astra_settings['can-support-widget-and-editor-fonts'] ) ? false : true; - return apply_filters( 'astra_heading_fonts_typo_support', $astra_settings['can-support-widget-and-editor-fonts'] ); - } - - /** - * Whether to remove or not following CSS which restricts logo size on responsive devices. - * - * @see https://github.com/brainstormforce/astra/commit/d09f63336b73d58c8f8951726edbc90671d7f419 - * - * @since 3.6.0 - * @return boolean false if it is an existing user, true if not. - */ - public static function remove_logo_max_width_mobile_static_css() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['can-remove-logo-max-width-css'] = isset( $astra_settings['can-remove-logo-max-width-css'] ) ? false : true; - return apply_filters( 'astra_remove_logo_max_width_css', $astra_settings['can-remove-logo-max-width-css'] ); - } - - /** - * Remove text-decoration: underline; CSS for builder specific elements to maintain their UI/UX better. - * - * 1. UAG : Marketing Button, Info Box CTA, MultiButtons, Tabs. - * 2. UABB : Button, Slide Box CTA, Flip box CTA, Info Banner, Posts, Info Circle, Call to Action, Subscribe Form. - * - * @since 3.6.9 - */ - public static function unset_builder_elements_underline() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $unset_builder_elements_underline = isset( $astra_settings['unset-builder-elements-underline'] ) ? false : true; - return apply_filters( 'astra_unset_builder_elements_underline', $unset_builder_elements_underline ); - } - - /** - * Block editor experience improvements css introduced with v4.0.0. - * - * @since 4.0.0 - * @return boolean false if it is an existing user , true if not. - */ - public static function v4_block_editor_compat() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['v4-block-editor-compat'] = isset( $astra_settings['v4-block-editor-compat'] ) ? false : true; - return apply_filters( 'astra_v4_block_editor_compat', $astra_settings['v4-block-editor-compat'] ); - } - - /** - * Load sidebar static CSS when it is enabled. - * - * @since 3.0.0 - */ - public static function load_sidebar_static_css() { - - $update_customizer_strctural_defaults = astra_check_is_structural_setup(); - $secondary_li_bottom_spacing = ( true === $update_customizer_strctural_defaults ) ? '0.75em' : '0.25em'; - $is_site_rtl = is_rtl() ? true : false; - $ltr_left = $is_site_rtl ? esc_attr( 'right' ) : esc_attr( 'left' ); - $ltr_right = $is_site_rtl ? esc_attr( 'left' ) : esc_attr( 'right' ); - - $sidebar_static_css = ' - #secondary { - margin: 4em 0 2.5em; - word-break: break-word; - line-height: 2; - } - #secondary li { - margin-bottom: ' . esc_attr( $secondary_li_bottom_spacing ) . '; - } - #secondary li:last-child { - margin-bottom: 0; - } - @media (max-width: 768px) { - .js_active .ast-plain-container.ast-single-post #secondary { - margin-top: 1.5em; - } - } - .ast-separate-container.ast-two-container #secondary .widget { - background-color: #fff; - padding: 2em; - margin-bottom: 2em; - } - '; - - if ( defined( 'CFVSW_VER' ) ) { - $sidebar_static_css .= ' - #secondary .cfvsw-filters li{ - margin-bottom: 0; - margin-top: 0; - } - '; - } - - $sidebar_static_css .= ' - @media (min-width: 993px) { - .ast-left-sidebar #secondary { - padding-' . $ltr_right . ': 60px; - } - .ast-right-sidebar #secondary { - padding-' . $ltr_left . ': 60px; - } - } - @media (max-width: 993px) { - .ast-right-sidebar #secondary { - padding-' . $ltr_left . ': 30px; - } - .ast-left-sidebar #secondary { - padding-' . $ltr_right . ': 30px; - } - } - '; - - if ( $update_customizer_strctural_defaults ) { - $sidebar_static_css .= ' - @media (min-width: 993px) { - .ast-page-builder-template.ast-left-sidebar #secondary { - padding-' . $ltr_left . ': 60px; - } - .ast-page-builder-template.ast-right-sidebar #secondary { - padding-' . $ltr_right . ': 60px; - } - } - @media (max-width: 993px) { - .ast-page-builder-template.ast-right-sidebar #secondary { - padding-' . $ltr_right . ': 30px; - } - .ast-page-builder-template.ast-left-sidebar #secondary { - padding-' . $ltr_left . ': 30px; - } - - } - '; - } - - return $sidebar_static_css; - } - - /** - * Astra Spectra Gutenberg Compatibility CSS. - * - * @since 3.9.4 - * @return boolean false if it is an existing user , true if not. - */ - public static function spectra_gutenberg_compat_css() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['spectra-gutenberg-compat-css'] = isset( $astra_settings['spectra-gutenberg-compat-css'] ) ? false : true; - return apply_filters( 'astra_spectra_gutenberg_compat_css', $astra_settings['spectra-gutenberg-compat-css'] ); - } - - /** - * Load static card(EDD/Woo) CSS. - * - * @since 3.0.0 - * @return string static css for Woocommerce and EDD card. - */ - public static function load_cart_static_css() { - - $theme_color = astra_get_option( 'theme-color' ); - $btn_border_color = astra_get_option( 'theme-button-border-group-border-color' ); - $btn_bg_color = astra_get_option( 'button-bg-color', $theme_color ); - $btn_border_h_color = astra_get_option( 'theme-button-border-group-border-h-color' ); - $link_h_color = astra_get_option( 'link-h-color' ); - $btn_bg_h_color = astra_get_option( 'button-bg-h-color', '', $link_h_color ); - - $normal_border_color = $btn_border_color ? $btn_border_color : $btn_bg_color; - $hover_border_color = $btn_border_h_color ? $btn_border_h_color : $btn_bg_h_color; - $is_site_rtl = is_rtl(); - $ltr_left = $is_site_rtl ? 'right' : 'left'; - $ltr_right = $is_site_rtl ? 'left' : 'right'; - - $cart_static_css = ' - .ast-site-header-cart .cart-container, - .ast-edd-site-header-cart .ast-edd-cart-container { - transition: all 0.2s linear; - } - - .ast-site-header-cart .ast-woo-header-cart-info-wrap, - .ast-edd-site-header-cart .ast-edd-header-cart-info-wrap { - padding: 0 6px 0 2px; - font-weight: 600; - line-height: 2.7; - display: inline-block; - } - - .ast-site-header-cart i.astra-icon { - font-size: 20px; - font-size: 1.3em; - font-style: normal; - font-weight: normal; - position: relative; - padding: 0 2px; - } - - .ast-site-header-cart i.astra-icon.no-cart-total:after, - .ast-header-break-point.ast-header-custom-item-outside .ast-edd-header-cart-info-wrap, - .ast-header-break-point.ast-header-custom-item-outside .ast-woo-header-cart-info-wrap { - display: none; - } - - .ast-site-header-cart.ast-menu-cart-fill i.astra-icon, - .ast-edd-site-header-cart.ast-edd-menu-cart-fill span.astra-icon { - font-size: 1.1em; - } - - .astra-cart-drawer { - position: fixed; - display: block; - visibility: hidden; - overflow: auto; - -webkit-overflow-scrolling: touch; - z-index: 10000; - background-color: var(--ast-global-color-5); - transform: translate3d(0, 0, 0); - opacity: 0; - will-change: transform; - transition: 0.25s ease; - } - - .woocommerce-mini-cart { - position: relative; - } - - .woocommerce-mini-cart::before { - content: ""; - transition: .3s; - } - - .woocommerce-mini-cart.ajax-mini-cart-qty-loading::before { - position: absolute; - top: 0; - left: 0; - right: 0; - width: 100%; - height: 100%; - z-index: 5; - background-color: var(--ast-global-color-5); - opacity: .5; - } - - .astra-cart-drawer { - width: 460px; - height: 100%; - ' . $ltr_left . ': 100%; - top: 0px; - opacity: 1; - transform: translate3d(0%, 0, 0); - } - - .astra-cart-drawer .astra-cart-drawer-header { - position: absolute; - width: 100%; - text-align: ' . $ltr_left . '; - text-transform: inherit; - font-weight: 500; - border-bottom: 1px solid var(--ast-border-color); - padding: 1.34em; - line-height: 1; - z-index: 1; - max-height: 3.5em; - } - - .astra-cart-drawer .astra-cart-drawer-header .astra-cart-drawer-title { - color: var(--ast-global-color-2); - } - - .astra-cart-drawer .astra-cart-drawer-close .ast-close-svg { - width: 22px; - height: 22px; - } - - .astra-cart-drawer .astra-cart-drawer-content, - .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart, - .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content { - height: 100%; - } - - .astra-cart-drawer .astra-cart-drawer-content { - padding-top: 3.5em; - } - - .astra-cart-drawer .ast-mini-cart-price-wrap .multiply-symbol{ - padding: 0 0.5em; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .ast-mini-cart-price-wrap { - float: ' . $ltr_right . '; - margin-top: 0.5em; - max-width: 50%; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation { - margin-top: 0.5em; - margin-bottom: 0.5em; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation dt { - font-weight: 500; - } - - .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content { - display: flex; - flex-direction: column; - overflow: hidden; - } - - .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content ul li { - min-height: 60px; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total { - display: flex; - justify-content: space-between; - padding: 0.7em 1.34em; - margin-bottom: 0; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong, - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount { - width: 50%; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart { - padding: 1.3em; - flex: 1; - overflow: auto; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart a.remove { - width: 20px; - height: 20px; - line-height: 16px; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total { - padding: 1em 1.5em; - margin: 0; - text-align: center; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons { - padding: 1.34em; - text-align: center; - margin-bottom: 0; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button.checkout { - margin-' . $ltr_right . ': 0; - } - - .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a{ - width: 100%; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a:nth-last-child(1) { - margin-bottom: 0; - } - - .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item { - padding: .5em 2.6em .5em 1.5em; - } - - .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart::after { - width: 20px; - height: 20px; - line-height: 16px; - } - - .astra-cart-drawer .astra-cart-drawer-content .edd-cart-number-of-items { - padding: 1em 1.5em 1em 1.5em; - margin-bottom: 0; - text-align: center; - } - - .astra-cart-drawer .astra-cart-drawer-content .edd_total { - padding: .5em 1.5em; - margin: 0; - text-align: center; - } - - .astra-cart-drawer .astra-cart-drawer-content .cart_item.edd_checkout { - padding: 1em 1.5em 0; - text-align: center; - margin-top: 0; - } - .astra-cart-drawer .widget_shopping_cart_content > .woocommerce-mini-cart__empty-message { - display: none; - } - .astra-cart-drawer .woocommerce-mini-cart__empty-message, - .astra-cart-drawer .cart_item.empty { - text-align: center; - margin-top: 10px; - } - - body.admin-bar .astra-cart-drawer { - padding-top: 32px; - } - @media (max-width: 782px) { - body.admin-bar .astra-cart-drawer { - padding-top: 46px; - } - } - - .ast-mobile-cart-active body.ast-hfb-header { - overflow: hidden; - } - - .ast-mobile-cart-active .astra-mobile-cart-overlay { - opacity: 1; - cursor: pointer; - visibility: visible; - z-index: 999; - } - - .ast-mini-cart-empty-wrap { - display: flex; - flex-wrap: wrap; - height: 100%; - align-items: flex-end; - } - - .ast-mini-cart-empty-wrap > * { - width: 100%; - } - - .astra-cart-drawer-content .ast-mini-cart-empty { - height: 100%; - display: flex; - flex-direction: column; - justify-content: space-between; - text-align: center; - } - - .astra-cart-drawer-content .ast-mini-cart-empty .ast-mini-cart-message { - display: flex; - align-items: center; - justify-content: center; - height: 100%; - padding: 1.34em; - } - - @media (min-width: 546px) { - .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons { - display: flex; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons a, - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons a.checkout { - margin-top: 0; - margin-bottom: 0; - } - } - - .ast-site-header-cart .cart-container:focus-visible { - display: inline-block; - } - '; - if ( is_rtl() ) { - $cart_static_css .= ' - .ast-site-header-cart i.astra-icon:after { - content: attr(data-cart-total); - position: absolute; - font-family: ' . astra_get_font_family( astra_body_font_family() ) . '; - font-style: normal; - top: -10px; - left: -12px; - font-weight: bold; - box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3); - font-size: 11px; - padding-right: 0px; - padding-left: 2px; - line-height: 17px; - letter-spacing: -.5px; - height: 18px; - min-width: 18px; - border-radius: 99px; - text-align: center; - z-index: 3; - } - li.woocommerce-custom-menu-item .ast-site-header-cart i.astra-icon:after, - li.edd-custom-menu-item .ast-edd-site-header-cart span.astra-icon:after { - padding-right: 2px; - } - .astra-cart-drawer .astra-cart-drawer-close { - position: absolute; - top: 0.5em; - left: 0; - border: none; - margin: 0; - padding: .6em 1em .4em; - color: var(--ast-global-color-2); - background-color: transparent; - } - .astra-mobile-cart-overlay { - background-color: rgba(0, 0, 0, 0.4); - position: fixed; - top: 0; - left: 0; - bottom: 0; - right: 0; - visibility: hidden; - opacity: 0; - transition: opacity 0.2s ease-in-out; - } - .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart { - left: 1.2em; - } - .ast-header-break-point.ast-woocommerce-cart-menu.ast-hfb-header .ast-cart-menu-wrap, .ast-header-break-point.ast-hfb-header .ast-cart-menu-wrap, - .ast-header-break-point .ast-edd-site-header-cart-wrap .ast-edd-cart-menu-wrap { - width: auto; - height: 2em; - font-size: 1.4em; - line-height: 2; - vertical-align: middle; - text-align: left; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping) { - margin-left: 10px; - background-color: transparent; - border: 2px solid var( --ast-global-color-0 ); - color: var( --ast-global-color-0 ); - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover { - border-color: var( --ast-global-color-1 ); - color: var( --ast-global-color-1 ); - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout { - margin-right: 0; - margin-top: 10px; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong{ - padding-left: .5em; - text-align: right; - font-weight: 500; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount{ - text-align: left; - } - - .astra-cart-drawer.active { - transform: translate3d(100%, 0, 0); - visibility: visible; - } - - '; - - - } else { - $cart_static_css .= ' - .ast-site-header-cart i.astra-icon:after { - content: attr(data-cart-total); - position: absolute; - font-family: ' . astra_get_font_family( astra_body_font_family() ) . '; - font-style: normal; - top: -10px; - right: -12px; - font-weight: bold; - box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3); - font-size: 11px; - padding-left: 0px; - padding-right: 2px; - line-height: 17px; - letter-spacing: -.5px; - height: 18px; - min-width: 18px; - border-radius: 99px; - text-align: center; - z-index: 3; - } - li.woocommerce-custom-menu-item .ast-site-header-cart i.astra-icon:after, - li.edd-custom-menu-item .ast-edd-site-header-cart span.astra-icon:after { - padding-left: 2px; - } - .astra-cart-drawer .astra-cart-drawer-close { - position: absolute; - top: 0.5em; - right: 0; - border: none; - margin: 0; - padding: .6em 1em .4em; - color: var(--ast-global-color-2); - background-color: transparent; - } - .astra-mobile-cart-overlay { - background-color: rgba(0, 0, 0, 0.4); - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - visibility: hidden; - opacity: 0; - transition: opacity 0.2s ease-in-out; - } - .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart { - right: 1.2em; - } - .ast-header-break-point.ast-woocommerce-cart-menu.ast-hfb-header .ast-cart-menu-wrap, .ast-header-break-point.ast-hfb-header .ast-cart-menu-wrap, - .ast-header-break-point .ast-edd-site-header-cart-wrap .ast-edd-cart-menu-wrap { - width: auto; - height: 2em; - font-size: 1.4em; - line-height: 2; - vertical-align: middle; - text-align: right; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping) { - margin-right: 10px; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), - .ast-site-header-cart .widget_shopping_cart .buttons .button:not(.checkout), - .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button { - background-color: transparent; - border-style: solid; - border-width: 1px; - border-color: ' . $normal_border_color . '; - color: ' . esc_attr( $normal_border_color ) . '; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, - .ast-site-header-cart .widget_shopping_cart .buttons .button:not(.checkout):hover { - border-color: ' . $hover_border_color . '; - color: ' . esc_attr( $hover_border_color ) . '; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout { - margin-left: 0; - margin-top: 10px; - border-style: solid; - border-width: 2px; - border-color: ' . $normal_border_color . '; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover { - border-color: ' . $hover_border_color . '; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong{ - padding-right: .5em; - text-align: left; - font-weight: 500; - } - - .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount{ - text-align: right; - } - - .astra-cart-drawer.active { - transform: translate3d(-100%, 0, 0); - visibility: visible; - } - - '; - } - - $cart_static_css .= ' - .ast-site-header-cart.ast-menu-cart-outline .ast-cart-menu-wrap, .ast-site-header-cart.ast-menu-cart-fill .ast-cart-menu-wrap, - .ast-edd-site-header-cart.ast-edd-menu-cart-outline .ast-edd-cart-menu-wrap, .ast-edd-site-header-cart.ast-edd-menu-cart-fill .ast-edd-cart-menu-wrap { - line-height: 1.8; - }'; - // This CSS requires in case of :before Astra icons. But in case of SVGs this loads twice that's why removed this from static & loading conditionally. - if ( false === Astra_Icons::is_svg_icons() ) { - $cart_static_css .= ' - .ast-site-header-cart .cart-container *, - .ast-edd-site-header-cart .ast-edd-cart-container * { - transition: all 0s linear; - } - '; - } - return $cart_static_css; - } - - /** - * Check is new structural things are updated. - * - * @return bool true|false. - * @since 4.0.0 - */ - public static function astra_check_default_color_typo() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_get_option_update_default_color_typo', isset( $astra_settings['update-default-color-typo'] ) ? false : true ); - } - - /** - * Check is new structural things are updated. - * - * @return bool true|false. - * @since 4.1.0 - */ - public static function astra_woo_support_global_settings() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_get_option_woo_support_global_settings', isset( $astra_settings['woo_support_global_settings'] ) ? false : true ); - } - - /** - * Dynamic CSS to make Sidebar Sticky. - * - * @return string Sticky Sidebar CSS. - * @since 4.4.0 - */ - public static function astra_sticky_sidebar_css() { - $css = ''; - if ( astra_get_option( 'site-sticky-sidebar', false ) ) { - $sidebar_sticky_css = array( - '.ast-sticky-sidebar .sidebar-main' => array( - 'top' => '50px', - 'position' => 'sticky', - 'overflow-y' => 'auto', - ), - ); - $sidebar_webkit_sticky_css = array( - '.ast-sticky-sidebar .sidebar-main' => array( - 'position' => '-webkit-sticky', - ), - ); - - $css .= astra_parse_css( - $sidebar_sticky_css, - astra_get_tablet_breakpoint( '', 1 ) - ); - - $css .= astra_parse_css( - $sidebar_webkit_sticky_css, - astra_get_tablet_breakpoint( '', 1 ) - ); - } - return $css; - } - - /** - * Check if fullwidth layout with sidebar is supported. - * Old users - yes - * New users - no - * - * @return bool true|false. - * @since 4.2.0 - */ - public static function astra_fullwidth_sidebar_support() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_get_option_fullwidth_sidebar_support', isset( $astra_settings['fullwidth_sidebar_support'] ) ? false : true ); - } - - /** - * Core Comment & Search Button Styling Compatibility. - * Old Users - Will not reflect directly. - * New Users - Direct reflection - * - * @return bool true|false. - * @since 4.2.2 - */ - public static function astra_core_form_btns_styling() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_core_form_btns_styling', isset( $astra_settings['v4-2-2-core-form-btns-styling'] ) ? false : true ); - } - - /** - * Improve full screen search Submit button style. - * - * @since 4.4.0 - * @return boolean false if it is an existing user, true if not. - */ - public static function astra_4_4_0_compatibility() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['v4-4-0-backward-option'] = isset( $astra_settings['v4-4-0-backward-option'] ) ? false : true; - return apply_filters( 'astra_addon_upgrade_fullscreen_search_submit_style', $astra_settings['v4-4-0-backward-option'] ); - } - } -} + astra_responsive_font( $heading_h4_font_size, 'desktop' ), + 'line-height' => esc_attr( $headings_line_height ), + ); + + $h5_properties = array( + 'font-size' => astra_responsive_font( $heading_h5_font_size, 'desktop' ), + 'line-height' => esc_attr( $headings_line_height ), + ); + + $h6_properties = array( + 'font-size' => astra_responsive_font( $heading_h6_font_size, 'desktop' ), + 'line-height' => esc_attr( $headings_line_height ), + ); + + if ( astra_has_gcp_typo_preset_compatibility() ) { + $h4_font_properties = array( + 'font-weight' => astra_get_css_value( $h4_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h4_font_family, 'font' ), + 'text-transform' => esc_attr( $h4_text_transform ), + 'line-height' => esc_attr( $h4_line_height ), + 'text-decoration' => esc_attr( $h4_text_decoration ), + 'letter-spacing' => esc_attr( $h4_letter_spacing ), + + ); + + $h4_properties = array_merge( $h4_properties, $h4_font_properties ); + + $h5_font_properties = array( + 'font-weight' => astra_get_css_value( $h5_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h5_font_family, 'font' ), + 'text-transform' => esc_attr( $h5_text_transform ), + 'line-height' => esc_attr( $h5_line_height ), + 'text-decoration' => esc_attr( $h5_text_decoration ), + 'letter-spacing' => esc_attr( $h5_letter_spacing ), + ); + + $h5_properties = array_merge( $h5_properties, $h5_font_properties ); + + $h6_font_properties = array( + 'font-weight' => astra_get_css_value( $h6_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h6_font_family, 'font' ), + 'text-transform' => esc_attr( $h6_text_transform ), + 'line-height' => esc_attr( $h6_line_height ), + 'text-decoration' => esc_attr( $h6_text_decoration ), + 'letter-spacing' => esc_attr( $h6_letter_spacing ), + ); + + $h6_properties = array_merge( $h6_properties, $h6_font_properties ); + } + + $link_selector = ( true === $update_customizer_strctural_defaults ) ? 'a' : 'a, .page-title'; + $transparent_search_box_bg_color = astra_get_option( 'transparent-header-search-box-background-color', '#fff' ); + + $css_output = array( + + ':root' => array( + '--ast-container-default-xlg-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '6.67em', + '--ast-container-default-lg-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '5.67em', + '--ast-container-default-slg-padding' => ( true === $update_customizer_strctural_defaults ) ? '2em' : '4.34em', + '--ast-container-default-md-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '3.34em', + '--ast-container-default-sm-padding' => ( true === $update_customizer_strctural_defaults ) ? '3em' : '6.67em', + '--ast-container-default-xs-padding' => ( true === $update_customizer_strctural_defaults ) ? '2.4em' : '2.4em', + '--ast-container-default-xxs-padding' => ( true === $update_customizer_strctural_defaults ) ? '1.8em' : '1.4em', + '--ast-code-block-background' => ( true === self::astra_check_default_color_typo() ) ? '#ECEFF3' : '#EEEEEE', + '--ast-comment-inputs-background' => ( true === self::astra_check_default_color_typo() ) ? '#F9FAFB' : '#FAFAFA', + ), + + // HTML. + 'html' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 6.25, '%' ), + ), + $link_selector => array( + 'color' => esc_attr( $link_color ), + ), + 'a:hover, a:focus' => array( + 'color' => esc_attr( $link_hover_color ), + ), + 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( + 'font-family' => astra_get_font_family( $body_font_family ), + 'font-weight' => esc_attr( $body_font_weight ), + 'font-size' => astra_responsive_font( $body_font_size, 'desktop' ), + 'line-height' => esc_attr( $body_line_height ), + 'text-transform' => esc_attr( $body_text_transform ), + 'text-decoration' => esc_attr( $body_text_decoration ), + 'letter-spacing' => esc_attr( $body_letter_spacing ), + ), + 'blockquote' => array( + 'border-color' => astra_hex_to_rgba( $link_color, 0.15 ), + ), + 'p, .entry-content p' => array( + 'margin-bottom' => astra_get_css_value( $para_margin_bottom, 'em' ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h1, .entry-content h1, .entry-content h1 a, h2, .entry-content h2, .entry-content h2 a, h3, .entry-content h3, .entry-content h3 a, h4, .entry-content h4, .entry-content h4 a, h5, .entry-content h5, .entry-content h5 a, h6, .entry-content h6, .entry-content h6 a, .site-title, .site-title a', + 'h1, .entry-content h1, h2, .entry-content h2, h3, .entry-content h3, h4, .entry-content h4, h5, .entry-content h5, h6, .entry-content h6, .site-title, .site-title a' + ) => astra_get_font_array_css( astra_get_option( 'headings-font-family' ), astra_get_option( 'headings-font-weight' ), array(), 'headings-font-extras' ), + + '.ast-site-identity .site-title a' => array( + 'color' => esc_attr( $title_color ), + ), + '.ast-site-identity .site-title a:hover' => array( + 'color' => esc_attr( $title_hover_color ), + ), + '.ast-site-identity .site-description' => array( + 'color' => esc_attr( $tagline_color ), + ), + '.site-title' => array( + 'font-size' => astra_responsive_font( $site_title_font_size, 'desktop' ), + 'display' => esc_attr( $desktop_title_visibility ), + ), + 'header .custom-logo-link img' => array( + 'max-width' => astra_get_css_value( $header_logo_width['desktop'], 'px' ), + ), + '.astra-logo-svg' => array( + 'width' => astra_get_css_value( $header_logo_width['desktop'], 'px' ), + ), + + '.site-header .site-description' => array( + 'font-size' => astra_responsive_font( $site_tagline_font_size, 'desktop' ), + 'display' => esc_attr( $desktop_tagline_visibility ), + ), + '.entry-title' => array( + 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'desktop' ), + ), + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h1, .entry-content h1, .entry-content h1 a', + 'h1, .entry-content h1' + ) => array( + 'font-size' => astra_responsive_font( $heading_h1_font_size, 'desktop' ), + 'font-weight' => astra_get_css_value( $h1_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h1_font_family, 'font' ), + 'line-height' => esc_attr( $h1_line_height ), + 'text-transform' => esc_attr( $h1_text_transform ), + 'text-decoration' => esc_attr( $h1_text_decoration ), + 'letter-spacing' => esc_attr( $h1_letter_spacing ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h2, .entry-content h2, .entry-content h2 a', + 'h2, .entry-content h2' + ) => array( + 'font-size' => astra_responsive_font( $heading_h2_font_size, 'desktop' ), + 'font-weight' => astra_get_css_value( $h2_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h2_font_family, 'font' ), + 'line-height' => esc_attr( $h2_line_height ), + 'text-transform' => esc_attr( $h2_text_transform ), + 'text-decoration' => esc_attr( $h2_text_decoration ), + 'letter-spacing' => esc_attr( $h2_letter_spacing ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h3, .entry-content h3, .entry-content h3 a', + 'h3, .entry-content h3' + ) => array( + 'font-size' => astra_responsive_font( $heading_h3_font_size, 'desktop' ), + 'font-weight' => astra_get_css_value( $h3_font_weight, 'font' ), + 'font-family' => astra_get_css_value( $h3_font_family, 'font' ), + 'line-height' => esc_attr( $h3_line_height ), + 'text-transform' => esc_attr( $h3_text_transform ), + 'text-decoration' => esc_attr( $h3_text_decoration ), + 'letter-spacing' => esc_attr( $h3_letter_spacing ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h4, .entry-content h4, .entry-content h4 a', + 'h4, .entry-content h4' + ) => $h4_properties, + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h5, .entry-content h5, .entry-content h5 a', + 'h5, .entry-content h5' + ) => $h5_properties, + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h6, .entry-content h6, .entry-content h6 a', + 'h6, .entry-content h6' + ) => $h6_properties, + + // Global CSS. + '::selection' => array( + 'background-color' => esc_attr( $theme_color ), + 'color' => esc_attr( $selection_text_color ), + ), + + // Conditionally select selectors with annchors or withour anchors for text color. + self::conditional_headings_css_selectors( + 'body, h1, .entry-title a, .entry-content h1, .entry-content h1 a, h2, .entry-content h2, .entry-content h2 a, h3, .entry-content h3, .entry-content h3 a, h4, .entry-content h4, .entry-content h4 a, h5, .entry-content h5, .entry-content h5 a, h6, .entry-content h6, .entry-content h6 a', + 'body, h1, .entry-title a, .entry-content h1, h2, .entry-content h2, h3, .entry-content h3, h4, .entry-content h4, h5, .entry-content h5, h6, .entry-content h6' + ) => array( + 'color' => esc_attr( $text_color ), + ), + + // Typography. + '.tagcloud a:hover, .tagcloud a:focus, .tagcloud a.current-item' => array( + 'color' => astra_get_foreground_color( $link_color ), + 'border-color' => esc_attr( $link_color ), + 'background-color' => esc_attr( $link_color ), + ), + + // Input tags. + 'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="search"]:focus, textarea:focus' => array( + 'border-color' => esc_attr( $link_color ), + ), + 'input[type="radio"]:checked, input[type=reset], input[type="checkbox"]:checked, input[type="checkbox"]:hover:checked, input[type="checkbox"]:focus:checked, input[type=range]::-webkit-slider-thumb' => array( + 'border-color' => esc_attr( $link_color ), + 'background-color' => esc_attr( $link_color ), + 'box-shadow' => 'none', + ), + + // Small Footer. + '.site-footer a:hover + .post-count, .site-footer a:focus + .post-count' => array( + 'background' => esc_attr( $link_color ), + 'border-color' => esc_attr( $link_color ), + ), + + '.single .nav-links .nav-previous, .single .nav-links .nav-next' => array( + 'color' => esc_attr( $link_color ), + ), + + // Blog Post Meta Typography. + '.entry-meta, .entry-meta *' => array( + 'line-height' => '1.45', + 'color' => esc_attr( $link_color ), + ), + '.entry-meta a:hover, .entry-meta a:hover *, .entry-meta a:focus, .entry-meta a:focus *, .page-links > .page-link, .page-links .page-link:hover, .post-navigation a:hover' => array( + 'color' => esc_attr( $link_hover_color ), + ), + + // Blockquote Text Color. + 'blockquote' => array( + 'color' => astra_adjust_brightness( $text_color, 75, 'darken' ), + ), + + '#cat option, .secondary .calendar_wrap thead a, .secondary .calendar_wrap thead a:visited' => array( + 'color' => esc_attr( $link_color ), + ), + '.secondary .calendar_wrap #today, .ast-progress-val span' => array( + 'background' => esc_attr( $link_color ), + ), + '.secondary a:hover + .post-count, .secondary a:focus + .post-count' => array( + 'background' => esc_attr( $link_color ), + 'border-color' => esc_attr( $link_color ), + ), + '.calendar_wrap #today > a' => array( + 'color' => astra_get_foreground_color( $link_color ), + ), + + // Pagination. + '.page-links .page-link, .single .post-navigation a' => array( + 'color' => esc_attr( $link_color ), + ), + + // Menu Toggle Border Radius. + '.ast-header-break-point .main-header-bar .ast-button-wrap .menu-toggle' => array( + 'border-radius' => ( '' !== $mobile_header_toggle_btn_border_radius ) ? esc_attr( $mobile_header_toggle_btn_border_radius ) . 'px' : '', + ), + + // Search. + '.ast-search-menu-icon .search-form button.search-submit' => array( + 'padding' => '0 4px', + ), + '.ast-search-menu-icon form.search-form' => array( + 'padding-right' => '0', + ), + '.ast-search-menu-icon.slide-search input.search-field' => array( + 'width' => '0', + ), + '.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-form, .ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-field:focus' => array( + 'border-color' => 'var(--ast-global-color-0)', + 'transition' => 'all 0.2s', + ), + '.search-form input.search-field:focus' => array( + 'outline' => 'none', // Making highlight by border that's why making outline none. + ), + ); + + if ( self::astra_4_4_0_compatibility() ) { + $css_output['.ast-search-menu-icon .search-form button.search-submit:focus, .ast-theme-transparent-header .ast-header-search .ast-dropdown-active .ast-icon, .ast-theme-transparent-header .ast-inline-search .search-field:focus .ast-icon'] = array( + 'color' => 'var(--ast-global-color-1)', + ); + $css_output['.ast-header-search .slide-search .search-form'] = array( + 'border' => '2px solid var(--ast-global-color-0)', + ); + + // Reduced specificity so that it does not override customizer background color option. + $css_output['.ast-header-search .slide-search .search-field'] = array( + 'background-color' => '#fff', // Referred by main.css. + ); + } + + /* This is a fix issue with logo height for normal and transparent logo so that they are the same */ + if ( ! apply_filters( 'astra_site_svg_logo_equal_height', astra_get_option( 'astra-site-svg-logo-equal-height', true ) ) ) { + $css_output['.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)'] = array( + 'height' => astra_get_css_value( ( ! empty( $header_logo_width['desktop-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['desktop-svg-height'] : '', 'px' ), + ); + } + + /* Compatibility with cost calculator plugin range slider*/ + if ( defined( 'CALC_VERSION' ) ) { + $css_output['.calc-range-slider input::-webkit-slider-runnable-track'] = array( + 'height' => 'auto', + 'box-shadow' => 'none', + 'background' => 'transparent', + 'border-radius' => 'none', + 'border' => 'none', + ); + + $css_output['.calc-range-slider input::-moz-range-track'] = array( + 'height' => 'auto', + 'box-shadow' => 'none', + 'background' => 'transparent', + 'border-radius' => 'none', + 'border' => 'none', + ); + + $css_output['.calc-range-slider input::-webkit-slider-thumb'] = array( + 'margin-top' => 'auto', + ); + } + + if ( astra_has_global_color_format_support() ) { + $css_output['.ast-archive-title'] = array( + 'color' => esc_attr( $heading_base_color ), + ); + } + + if ( ! $block_editor_legacy_setup && false === $update_customizer_strctural_defaults ) { + $css_output['.wp-block-latest-posts > li > a'] = array( + 'color' => esc_attr( $heading_base_color ), + ); + } + + // Default widget title color. + $css_output['.widget-title, .widget .wp-block-heading'] = array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 1.428571429 ), + 'color' => astra_has_global_color_format_support() ? esc_attr( $heading_base_color ) : esc_attr( $text_color ), + ); + + // Remove this condition after 2-3 updates of add-on. + if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '3.0.1', '>=' ) ) { + $css_output['.single .ast-author-details .author-title'] = array( + 'color' => esc_attr( $link_hover_color ), + ); + } + + if ( 'no-sidebar' !== astra_page_layout() ) { + $css_output['#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea'] = array( + 'font-size' => astra_responsive_font( $body_font_size, 'desktop' ), + ); + } + + // Add underline to every link in content area. + $content_links_underline = astra_get_option( 'underline-content-links' ); + + if ( $content_links_underline ) { + $css_output['.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a)'] = array( + 'text-decoration' => 'underline', + ); + + $reset_underline_from_anchors = self::unset_builder_elements_underline(); + + $excluding_anchor_selectors = $reset_underline_from_anchors ? '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-button-wrapper .elementor-button, .ast-single-post .entry-content .uagb-tab a, .ast-single-post .entry-content .uagb-ifb-cta a, .ast-single-post .entry-content .wp-block-uagb-buttons a, .ast-single-post .entry-content .uabb-module-content a, .ast-single-post .entry-content .uagb-post-grid a, .ast-single-post .entry-content .uagb-timeline a, .ast-single-post .entry-content .uagb-toc__wrap a, .ast-single-post .entry-content .uagb-taxomony-box a, .ast-single-post .entry-content .woocommerce a, .entry-content .wp-block-latest-posts > li > a, .ast-single-post .entry-content .wp-block-file__button, li.ast-post-filter-single, .ast-single-post .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link' : '.ast-single-post .wp-block-button .wp-block-button__link, .ast-single-post .elementor-button-wrapper .elementor-button, li.ast-post-filter-single, .ast-single-post .wp-block-button.is-style-outline .wp-block-button__link, div.ast-custom-button'; + + $excluding_anchor_selectors = apply_filters( 'astra_remove_underline_anchor_links', $excluding_anchor_selectors ); + + $css_output[ $excluding_anchor_selectors ] = array( + 'text-decoration' => 'none', + ); + } + + // Accessibility options. + $enable_site_accessibility = astra_get_option( 'site-accessibility-toggle', false ); + $html_selectors_focus_visible = 'a:focus-visible, .ast-menu-toggle:focus-visible, .site .skip-link:focus-visible, .wp-block-loginout input:focus-visible, .wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper, .ast-header-navigation-arrow:focus-visible, .woocommerce .wc-proceed-to-checkout > .checkout-button:focus-visible, .woocommerce .woocommerce-MyAccount-navigation ul li a:focus-visible, .ast-orders-table__row .ast-orders-table__cell:focus-visible, .woocommerce .woocommerce-order-details .order-again > .button:focus-visible, .woocommerce .woocommerce-message a.button.wc-forward:focus-visible, .woocommerce #minus_qty:focus-visible, .woocommerce #plus_qty:focus-visible, a#ast-apply-coupon:focus-visible, .woocommerce .woocommerce-info a:focus-visible, .woocommerce .astra-shop-summary-wrap a:focus-visible, .woocommerce a.wc-forward:focus-visible, #ast-apply-coupon:focus-visible, .woocommerce-js .woocommerce-mini-cart-item a.remove:focus-visible'; + $html_selectors_focus_only_inputs = 'input:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="reset"]:focus, input[type="number"]:focus, textarea:focus, .wp-block-search__input:focus, [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, .ast-mobile-popup-drawer.active .menu-toggle-close:focus, .woocommerce-ordering select.orderby:focus, #ast-scroll-top:focus, #coupon_code:focus, .woocommerce-page #comment:focus, .woocommerce #reviews #respond input#submit:focus, .woocommerce a.add_to_cart_button:focus, .woocommerce .button.single_add_to_cart_button:focus, .woocommerce .woocommerce-cart-form button:focus, .woocommerce .woocommerce-cart-form__cart-item .quantity .qty:focus, .woocommerce .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce #order_comments:focus, .woocommerce #place_order:focus, .woocommerce .woocommerce-address-fields .woocommerce-address-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus, .woocommerce .woocommerce-MyAccount-content form button:focus, .woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-form-row .woocommerce-Input.input-text:focus, .woocommerce .ast-woocommerce-container .woocommerce-pagination ul.page-numbers li a:focus, body #content .woocommerce form .form-row .select2-container--default .select2-selection--single:focus, #ast-coupon-code:focus, .woocommerce.woocommerce-js .quantity input[type=number]:focus, .woocommerce-js .woocommerce-mini-cart-item .quantity input[type=number]:focus, .woocommerce p#ast-coupon-trigger:focus'; + + if ( $enable_site_accessibility ) { + $outline_style = astra_get_option( 'site-accessibility-highlight-type' ); + $outline_color = astra_get_option( 'site-accessibility-highlight-color' ); + + $outline_input_style = astra_get_option( 'site-accessibility-highlight-input-type' ); + $outline_input_color = astra_get_option( 'site-accessibility-highlight-input-color' ); + + $css_output[ $html_selectors_focus_visible ] = array( + 'outline-style' => $outline_style ? $outline_style : 'inherit', + 'outline-color' => $outline_color ? $outline_color : 'inherit', + 'outline-width' => 'thin', + 'border-color' => 'transparent', + ); + + if ( 'disable' !== $outline_input_style ) { + $css_output[ $html_selectors_focus_only_inputs ] = array( + 'border-style' => $outline_input_style ? $outline_input_style : 'inherit', + 'border-color' => $outline_input_color ? $outline_input_color : 'inherit', + 'border-width' => 'thin', + 'outline-color' => 'transparent', + ); + } else { + $css_output[ $html_selectors_focus_only_inputs ] = array( + 'border-style' => $outline_style ? $outline_style : 'inherit', + 'border-color' => $outline_color ? $outline_color : 'inherit', + 'border-width' => 'thin', + 'outline-color' => 'transparent', + ); + } + } + + if ( false === $enable_site_accessibility ) { + $css_output[ $html_selectors_focus_only_inputs . ', ' . $html_selectors_focus_visible ] = array( + 'outline-style' => 'none', + ); + } + + + + /** + * Loaded the following CSS conditionally because of following scenarios - + * + * 1. $text_color is applying to menu-link anchors as well though $link_color should apply over there. + * 2. $link_color applying in old header as hover color for menu-anchors. + * + * @since 3.0.0 + */ + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + // Header - Main Header CSS. + $css_output['.main-header-menu .menu-link, .ast-header-custom-item a'] = array( + 'color' => esc_attr( $text_color ), + ); + // Main - Menu Items. + $css_output['.main-header-menu .menu-item:hover > .menu-link, .main-header-menu .menu-item:hover > .ast-menu-toggle, .main-header-menu .ast-masthead-custom-menu-items a:hover, .main-header-menu .menu-item.focus > .menu-link, .main-header-menu .menu-item.focus > .ast-menu-toggle, .main-header-menu .current-menu-item > .menu-link, .main-header-menu .current-menu-ancestor > .menu-link, .main-header-menu .current-menu-item > .ast-menu-toggle, .main-header-menu .current-menu-ancestor > .ast-menu-toggle'] = array( + 'color' => esc_attr( $link_color ), + ); + $css_output['.header-main-layout-3 .ast-main-header-bar-alignment'] = array( + 'margin-right' => 'auto', + ); + if ( $is_site_rtl ) { + $css_output['.header-main-layout-2 .site-header-section-left .ast-site-identity'] = array( + 'text-align' => 'right', + ); + } else { + $css_output['.header-main-layout-2 .site-header-section-left .ast-site-identity'] = array( + 'text-align' => 'left', + ); + } + } + + $page_header_logo = ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'advanced-headers' ) && Astra_Ext_Advanced_Headers_Loader::astra_advanced_headers_design_option( 'logo-url' ) ) ? true : false; + + if ( astra_get_option( 'logo-title-inline' ) ) { + $css_output['.ast-logo-title-inline .site-logo-img'] = array( + 'padding-right' => '1em', + ); + } + + if ( get_theme_mod( 'custom_logo' ) + || astra_get_option( 'transparent-header-logo' ) + || astra_get_option( 'sticky-header-logo' ) + || $page_header_logo + || is_customize_preview() ) { + + $css_output['.site-logo-img img'] = array( + ' transition' => 'all 0.2s linear', + ); + + if ( astra_get_option( 'header-logo-color' ) ) { + $css_output['.site-logo-img img'] = array( + 'filter' => 'url(#ast-img-color-filter)', + ' transition' => 'all 0.2s linear', + ); + } + + if ( astra_get_option( 'transparent-header-logo-color' ) ) { + $css_output['.site-logo-img .transparent-custom-logo img, .ast-theme-transparent-header .site-logo-img img'] = array( + 'filter' => 'url(#ast-img-color-filter-2)', + ); + } + } + + $parse_css = ''; + if ( $block_editor_legacy_setup ) { + $parse_css .= ' + .ast-no-sidebar .entry-content .alignfull { + margin-left: calc( -50vw + 50%); + margin-right: calc( -50vw + 50%); + max-width: 100vw; + width: 100vw; + } + .ast-no-sidebar .entry-content .alignwide { + margin-left: calc(-41vw + 50%); + margin-right: calc(-41vw + 50%); + max-width: unset; + width: unset; + } + .ast-no-sidebar .entry-content .alignfull .alignfull, .ast-no-sidebar .entry-content .alignfull .alignwide, .ast-no-sidebar .entry-content .alignwide .alignfull, .ast-no-sidebar .entry-content .alignwide .alignwide, + .ast-no-sidebar .entry-content .wp-block-column .alignfull, .ast-no-sidebar .entry-content .wp-block-column .alignwide{ + width: 100%; + margin-left: auto; + margin-right: auto; + } + .wp-block-gallery, + .blocks-gallery-grid { + margin: 0; + } + .wp-block-separator { + max-width: 100px; + } + .wp-block-separator.is-style-wide, .wp-block-separator.is-style-dots { + max-width: none; + } + .entry-content .has-2-columns .wp-block-column:first-child { + padding-right: 10px; + } + .entry-content .has-2-columns .wp-block-column:last-child { + padding-left: 10px; + } + @media (max-width: 782px) { + .entry-content .wp-block-columns .wp-block-column { + flex-basis: 100%; + } + .entry-content .has-2-columns .wp-block-column:first-child { + padding-right: 0; + } + .entry-content .has-2-columns .wp-block-column:last-child { + padding-left: 0; + } + } + body .entry-content .wp-block-latest-posts { + margin-left: 0; + } + body .entry-content .wp-block-latest-posts li { + list-style: none; + } + .ast-no-sidebar .ast-container .entry-content .wp-block-latest-posts { + margin-left: 0; + } + .ast-header-break-point .entry-content .alignwide { + margin-left: auto; + margin-right: auto; + } + .entry-content .blocks-gallery-item img { + margin-bottom: auto; + } + .wp-block-pullquote { + border-top: 4px solid #555d66; + border-bottom: 4px solid #555d66; + color: #40464d; + } + '; + } + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $css_output ); + + if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { + + $old_header_mobile_toggle = array( + // toggle style + // Menu Toggle Minimal. + '.ast-header-break-point .ast-mobile-menu-buttons-minimal.menu-toggle' => array( + 'background' => 'transparent', + 'color' => esc_attr( $mobile_header_toggle_btn_style_color ), + ), + + // Menu Toggle Outline. + '.ast-header-break-point .ast-mobile-menu-buttons-outline.menu-toggle' => array( + 'background' => 'transparent', + 'border' => '1px solid ' . $mobile_header_toggle_btn_style_color, + 'color' => esc_attr( $mobile_header_toggle_btn_style_color ), + ), + + // Menu Toggle Fill. + '.ast-header-break-point .ast-mobile-menu-buttons-fill.menu-toggle' => array( + 'background' => esc_attr( $mobile_header_toggle_btn_style_color ), + 'color' => $menu_btn_color, + ), + ); + + $parse_css .= astra_parse_css( $old_header_mobile_toggle ); + } + + $parse_css .= astra_container_layout_css(); + + if ( 'no-sidebar' !== astra_page_layout() ) { + $parse_css .= Astra_Enqueue_Scripts::trim_css( self::load_sidebar_static_css() ); + $parse_css .= self::astra_sticky_sidebar_css(); + } + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + $parse_css .= astra_parse_css( + array( + '#ast-desktop-header' => array( + 'display' => 'none', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + + $parse_css .= astra_parse_css( + array( + '#ast-mobile-header' => array( + 'display' => 'none', + ), + ), + astra_get_tablet_breakpoint( '', 1 ) + ); + } + + // Comments CSS. + if ( ! Astra_Builder_Helper::apply_flex_based_css() ) { + require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } else { + require_once ASTRA_THEME_DIR . 'inc/dynamic-css/comments-flex.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + $live_search_enabled = astra_get_option( 'live-search', false ); + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active && Astra_Builder_Helper::is_component_loaded( 'search', 'header' ) && $live_search_enabled ) { + // Live search CSS. + require_once ASTRA_THEME_DIR . 'inc/dynamic-css/live-search.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + if ( Astra_Builder_Helper::is_component_loaded( 'woo-cart', 'header' ) || Astra_Builder_Helper::is_component_loaded( 'edd-cart', 'header' ) ) { + $parse_css .= Astra_Enqueue_Scripts::trim_css( self::load_cart_static_css() ); + + $parse_css .= astra_parse_css( + array( + '.astra-cart-drawer.active' => array( + 'width' => '80%', + ), + ), + '', + astra_get_tablet_breakpoint() + ); + + $parse_css .= astra_parse_css( + array( + '.astra-cart-drawer.active' => array( + 'width' => '100%', + ), + ), + '', + astra_get_mobile_breakpoint() + ); + } + + if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { + $footer_css_output = array( + '.ast-small-footer' => array( + 'color' => esc_attr( $footer_color ), + ), + '.ast-small-footer > .ast-footer-overlay' => astra_get_background_obj( $footer_bg_obj ), + + '.ast-small-footer a' => array( + 'color' => esc_attr( $footer_link_color ), + ), + '.ast-small-footer a:hover' => array( + 'color' => esc_attr( $footer_link_h_color ), + ), + + // Advanced Footer colors/fonts. + '.footer-adv .footer-adv-overlay' => array( + 'border-top-style' => 'solid', + 'border-top-width' => astra_get_css_value( $footer_adv_border_width, 'px' ), + 'border-top-color' => esc_attr( $footer_adv_border_color ), + ), + '.footer-adv .widget-title,.footer-adv .widget-title a' => array( + 'color' => esc_attr( $footer_adv_widget_title_color ), + ), + + '.footer-adv' => array( + 'color' => esc_attr( $footer_adv_text_color ), + ), + + '.footer-adv a' => array( + 'color' => esc_attr( $footer_adv_link_color ), + ), + + '.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array( + 'border-color' => esc_attr( $footer_adv_link_color ), + 'background-color' => esc_attr( $footer_adv_link_color ), + ), + + '.footer-adv a:hover, .footer-adv .no-widget-text a:hover, .footer-adv a:focus, .footer-adv .no-widget-text a:focus' => array( + 'color' => esc_attr( $footer_adv_link_h_color ), + ), + + '.footer-adv .calendar_wrap #today, .footer-adv a:hover + .post-count' => array( + 'background-color' => esc_attr( $footer_adv_link_color ), + ), + + '.footer-adv-overlay' => astra_get_background_obj( $footer_adv_bg_obj ), + + ); + + $parse_css .= astra_parse_css( $footer_css_output ); + } + + // Paginaiton CSS. + require_once ASTRA_THEME_DIR . 'inc/dynamic-css/pagination.php'; // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + // Related Posts Dynamic CSS. + + /** + * + * Fix button aligment issue comming from the gutenberg plugin (v9.3.0). + */ + $gtn_plugin_button_center_alignment = array( + '.wp-block-buttons.aligncenter' => array( + 'justify-content' => 'center', + ), + ); + $parse_css .= astra_parse_css( $gtn_plugin_button_center_alignment ); + + $ast_container_layout = astra_get_content_layout(); + $is_boxed = astra_is_content_style_boxed(); + $is_sidebar_boxed = astra_is_sidebar_style_boxed(); + $ast_container_layout = astra_apply_boxed_layouts( $ast_container_layout, $is_boxed, $is_sidebar_boxed ); + + /** + * If transparent header is activated then it adds top 1.5em padding space, so this CSS will fix this issue. + * This issue is only visible on responsive devices. + * + * @since 2.6.0 + */ + if ( self::gutenberg_core_blocks_css_comp() && is_singular() ) { + $trans_header_responsive_top_space_css_fix = array( + '.ast-theme-transparent-header #primary, .ast-theme-transparent-header #secondary' => array( + 'padding' => 0, + ), + ); + + /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $trans_header_responsive_top_space_css_fix, '', astra_get_tablet_breakpoint() ); + } + + /** + * Remove #primary padding on mobile devices which compromises deigned layout. + * + * @since 2.6.1 + */ + if ( self::gutenberg_media_text_block_css_compat() && is_singular() ) { + $remove_primary_padding_on_mobile_css = array( + '.ast-plain-container.ast-no-sidebar #primary' => array( + 'padding' => 0, + ), + ); + + /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $remove_primary_padding_on_mobile_css, '', astra_get_tablet_breakpoint() ); + } + + /** + * Remove margin top when Primary Header is not set and No Sidebar is added in Full-Width / Contained Layout. + * + * @since 2.5.0 + */ + if ( self::gtn_group_cover_css_comp() && is_singular() ) { + $display_header = get_post_meta( get_the_ID(), 'ast-main-header-display', true ); + if ( 'disabled' === $display_header && apply_filters( 'astra_content_margin_full_width_contained', true ) || ( Astra_Ext_Transparent_Header_Markup::is_transparent_header() ) || ( self::gutenberg_core_blocks_css_comp() ) ) { + $gtn_margin_top = array( + '.ast-plain-container.ast-no-sidebar #primary' => array( + 'margin-top' => '0', + 'margin-bottom' => '0', + ), + ); + $parse_css .= astra_parse_css( $gtn_margin_top ); + } + /** + * Re-add margin top when FullWidth Contained layout is set. + * + * @since 3.8.3 + */ + if ( true === $update_customizer_strctural_defaults ) { + $display_title = get_post_meta( get_the_ID(), 'site-post-title', true ); + if ( 'disabled' !== $display_title && ! Astra_Ext_Transparent_Header_Markup::is_transparent_header() && apply_filters( 'astra_contained_layout_primary_spacing', true ) ) { + $gtn_margin_top = array( + '.ast-plain-container.ast-no-sidebar #primary' => array( + 'margin-top' => '60px', + 'margin-bottom' => '60px', + ), + ); + /* Parse CSS from array() -> min-width: (1200)px CSS */ + $parse_css .= astra_parse_css( $gtn_margin_top, '1200' ); + } + } + } + + $single_post_outside_spacing = astra_get_option( 'single-post-outside-spacing' ); + + $single_post_outside_spacing_css_desktop = array( + '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'desktop' ), + 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'desktop' ), + ), + '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'desktop' ), + ), + ); + + $parse_css .= astra_parse_css( $single_post_outside_spacing_css_desktop ); + + $single_post_outside_spacing_css_tablet = array( + '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container #primary, .ast-narrow-container #primary' => array( + 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'tablet' ), + 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'tablet' ), + ), + '.ast-left-sidebar #primary, .ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container #primary, .ast-narrow-container #primary' => array( + 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'tablet' ), + ), + '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'tablet' ), + 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'tablet' ), + ), + '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'tablet' ), + ), + ); + + $parse_css .= astra_parse_css( $single_post_outside_spacing_css_tablet, '', astra_get_tablet_breakpoint() ); + + $single_post_outside_spacing_css_mobile = array( + '.ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-plain-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'margin-top' => astra_responsive_spacing( $single_post_outside_spacing, 'top', 'mobile' ), + 'margin-bottom' => astra_responsive_spacing( $single_post_outside_spacing, 'bottom', 'mobile' ), + ), + '.ast-left-sidebar.ast-single-post #primary, .ast-right-sidebar.ast-single-post #primary, .ast-separate-container.ast-single-post.ast-right-sidebar #primary, .ast-separate-container.ast-single-post.ast-left-sidebar #primary, .ast-separate-container.ast-single-post #primary, .ast-narrow-container.ast-single-post #primary' => array( + 'padding-left' => astra_responsive_spacing( $single_post_outside_spacing, 'left', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $single_post_outside_spacing, 'right', 'mobile' ), + ), + ); + + $parse_css .= astra_parse_css( $single_post_outside_spacing_css_mobile, '', astra_get_mobile_breakpoint() ); + + /** + * Single Post Outer spacing + */ + // To apply Container Outside Spacing we need to remove default top padding given from the theme. + $remove_single_post_top_padding_container = array( + '.ast-separate-container #primary, .ast-narrow-container #primary' => array( + 'padding-top' => astra_get_css_value( 0, 'px' ), + ), + ); + + // To apply Container Outside Spacing we need to remove default bottom padding given from the theme. + $remove_single_post_bottom_padding_container = array( + '.ast-separate-container #primary, .ast-narrow-container #primary' => array( + 'padding-bottom' => astra_get_css_value( 0, 'px' ), + ), + ); + + if ( isset( $single_post_outside_spacing['desktop']['top'] ) && '' != $single_post_outside_spacing['desktop']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_top_padding_container ); + } + if ( isset( $single_post_outside_spacing['tablet']['top'] ) && '' != $single_post_outside_spacing['tablet']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_top_padding_container, '', astra_get_tablet_breakpoint() ); + } + if ( isset( $single_post_outside_spacing['mobile']['top'] ) && '' != $single_post_outside_spacing['mobile']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_top_padding_container, '', astra_get_mobile_breakpoint() ); + } + + if ( isset( $single_post_outside_spacing['desktop']['top'] ) && '' != $single_post_outside_spacing['desktop']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container ); + } + if ( isset( $single_post_outside_spacing['tablet']['top'] ) && '' != $single_post_outside_spacing['tablet']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container, '', astra_get_tablet_breakpoint() ); + } + if ( isset( $single_post_outside_spacing['mobile']['top'] ) && '' != $single_post_outside_spacing['mobile']['top'] ) { + $parse_css .= astra_parse_css( $remove_single_post_bottom_padding_container, '', astra_get_mobile_breakpoint() ); + } + + if ( $block_editor_legacy_setup ) { + /* + * Fix the wide width issue in gutenberg + * check if the current user is existing user or new user. + * if new user load the CSS bty default if existing provide a filter + */ + if ( self::gtn_image_group_css_comp() ) { + + if ( false === $improve_gb_ui && ( 'content-boxed-container' == $ast_container_layout || 'boxed-container' == $ast_container_layout ) ) { + $parse_css .= astra_parse_css( + array( + '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignfull,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array( + 'margin-left' => '-6.67em', + 'margin-right' => '-6.67em', + 'max-width' => 'unset', + 'width' => 'unset', + ), + '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-image.alignwide,.ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide,.ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array( + 'margin-left' => '-20px', + 'margin-right' => '-20px', + 'max-width' => 'unset', + 'width' => 'unset', + ), + ), + '1200' + ); + } + + $gtn_full_wide_image_css = array( + '.wp-block-group .has-background' => array( + 'padding' => '20px', + ), + ); + $parse_css .= astra_parse_css( $gtn_full_wide_image_css, '1200' ); + + } else { + + $gtn_tablet_column_css = array( + '.entry-content .wp-block-columns .wp-block-column' => array( + 'margin-left' => '0px', + ), + ); + + $parse_css .= astra_parse_css( $gtn_tablet_column_css, '', '782' ); + } + + if ( self::gtn_group_cover_css_comp() ) { + + if ( 'no-sidebar' !== astra_page_layout() ) { + + switch ( $ast_container_layout ) { + case 'content-boxed-container': + case 'boxed-container': + if ( true === $improve_gb_ui ) { + break; + } + $parse_css .= astra_parse_css( + array( + // With container - Sidebar. + '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignwide' => array( + 'margin-left' => '-20px', + 'margin-right' => '-20px', + 'padding-left' => '20px', + 'padding-right' => '20px', + ), + '.ast-separate-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-group.alignfull, .ast-separate-container.ast-right-sidebar .entry-content .wp-block-cover.alignfull, .ast-separate-container.ast-left-sidebar .entry-content .wp-block-cover.alignfull' => array( + 'margin-left' => '-6.67em', + 'margin-right' => '-6.67em', + 'padding-left' => '6.67em', + 'padding-right' => '6.67em', + ), + ), + '1200' + ); + break; + + case 'plain-container': + $parse_css .= astra_parse_css( + array( + // Without container - Sidebar. + '.ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignwide, .ast-plain-container.ast-right-sidebar .entry-content .wp-block-group.alignfull, .ast-plain-container.ast-left-sidebar .entry-content .wp-block-group.alignfull' => array( + 'padding-left' => '20px', + 'padding-right' => '20px', + ), + ), + '1200' + ); + break; + + case 'page-builder': + $parse_css .= astra_parse_css( + array( + '.ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-left-sidebar .entry-content .wp-block-cover.alignfull, .ast-page-builder-template.ast-right-sidebar .entry-content .wp-block-cover.alignful' => array( + 'padding-right' => '0', + 'padding-left' => '0', + ), + ), + '1200' + ); + break; + } + } else { + + switch ( $container_layout ) { + case 'content-boxed-container': + case 'boxed-container': + if ( true === $improve_gb_ui ) { + break; + } + + $parse_css .= astra_parse_css( + array( + // With container - No Sidebar. + '.ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignwide, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignwide' => array( + 'margin-left' => '-20px', + 'margin-right' => '-20px', + 'padding-left' => '20px', + 'padding-right' => '20px', + ), + '.ast-no-sidebar.ast-separate-container .entry-content .wp-block-cover.alignfull, .ast-no-sidebar.ast-separate-container .entry-content .wp-block-group.alignfull' => array( + 'margin-left' => '-6.67em', + 'margin-right' => '-6.67em', + 'padding-left' => '6.67em', + 'padding-right' => '6.67em', + ), + ), + '1200' + ); + break; + + case 'plain-container': + $parse_css .= astra_parse_css( + array( + // Without container - No Sidebar. + '.ast-plain-container.ast-no-sidebar .entry-content .alignwide .wp-block-cover__inner-container, .ast-plain-container.ast-no-sidebar .entry-content .alignfull .wp-block-cover__inner-container' => array( + 'width' => astra_get_css_value( $site_content_width + 40, 'px' ), + ), + ), + '1200' + ); + break; + + case 'page-builder': + $parse_css .= astra_parse_css( + array( + '.ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignwide, .ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-cover.alignfull' => array( + 'padding-right' => '0', + 'padding-left' => '0', + ), + ), + '1200' + ); + break; + } + } + + $parse_css .= astra_parse_css( + array( + '.wp-block-cover-image.alignwide .wp-block-cover__inner-container, .wp-block-cover.alignwide .wp-block-cover__inner-container, .wp-block-cover-image.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull .wp-block-cover__inner-container' => array( + 'width' => '100%', + ), + ), + '1200' + ); + } + + if ( self::gutenberg_core_blocks_css_comp() ) { + $desktop_screen_gb_css = array( + // Group block, Columns block, Gallery block, Table block & has-text-align-center selector compatibility Desktop CSS. + '.wp-block-columns' => array( + 'margin-bottom' => 'unset', + ), + '.wp-block-image.size-full' => array( + 'margin' => '2rem 0', + ), + '.wp-block-separator.has-background' => array( + 'padding' => '0', + ), + '.wp-block-gallery' => array( + 'margin-bottom' => '1.6em', + ), + '.wp-block-group' => array( + 'padding-top' => '4em', + 'padding-bottom' => '4em', + ), + '.wp-block-group__inner-container .wp-block-columns:last-child, .wp-block-group__inner-container :last-child, .wp-block-table table' => array( + 'margin-bottom' => '0', + ), + '.blocks-gallery-grid' => array( + 'width' => '100%', + ), + '.wp-block-navigation-link__content' => array( + 'padding' => '5px 0', + ), + '.wp-block-group .wp-block-group .has-text-align-center, .wp-block-group .wp-block-column .has-text-align-center' => array( + 'max-width' => '100%', + ), + '.has-text-align-center' => array( + 'margin' => '0 auto', + ), + ); + + /* Parse CSS from array() -> Desktop CSS */ + $parse_css .= astra_parse_css( $desktop_screen_gb_css ); + + if ( false === $improve_gb_ui ) { + $middle_screen_min_gb_css = array( + // Group & Column block > align compatibility (min-width:1200px) CSS. + '.wp-block-cover__inner-container, .alignwide .wp-block-group__inner-container, .alignfull .wp-block-group__inner-container' => array( + 'max-width' => '1200px', + 'margin' => '0 auto', + ), + '.wp-block-group.alignnone, .wp-block-group.aligncenter, .wp-block-group.alignleft, .wp-block-group.alignright, .wp-block-group.alignwide, .wp-block-columns.alignwide' => array( + 'margin' => '2rem 0 1rem 0', + ), + ); + /* Parse CSS from array() -> min-width: (1200)px CSS */ + $parse_css .= astra_parse_css( $middle_screen_min_gb_css, '1200' ); + } + + $middle_screen_max_gb_css = array( + // Group & Column block (max-width:1200px) CSS. + '.wp-block-group' => array( + 'padding' => '3em', + ), + '.wp-block-group .wp-block-group' => array( + 'padding' => '1.5em', + ), + '.wp-block-columns, .wp-block-column' => array( + 'margin' => '1rem 0', + ), + ); + + /* Parse CSS from array() -> max-width: (1200)px CSS */ + $parse_css .= astra_parse_css( $middle_screen_max_gb_css, '', '1200' ); + + $tablet_screen_min_gb_css = array( + // Columns inside Group block compatibility (min-width: tablet-breakpoint) CSS. + '.wp-block-columns .wp-block-group' => array( + 'padding' => '2em', + ), + ); + + /* Parse CSS from array() -> min-width: (tablet-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $tablet_screen_min_gb_css, astra_get_tablet_breakpoint() ); + + $mobile_screen_max_gb_css = array( + // Content | image | video inside Media & Text block, Cover block, Image inside cover block compatibility (max-width: mobile-breakpoint) CSS. + '.wp-block-cover-image .wp-block-cover__inner-container, .wp-block-cover .wp-block-cover__inner-container' => array( + 'width' => 'unset', + ), + '.wp-block-cover, .wp-block-cover-image' => array( + 'padding' => '2em 0', + ), + '.wp-block-group, .wp-block-cover' => array( + 'padding' => '2em', + ), + '.wp-block-media-text__media img, .wp-block-media-text__media video' => array( + 'width' => 'unset', + 'max-width' => '100%', + ), + '.wp-block-media-text.has-background .wp-block-media-text__content' => array( + 'padding' => '1em', + ), + ); + + if ( ! self::gutenberg_media_text_block_css_compat() ) { + // Added this [! self::gutenberg_media_text_block_css_compat()] condition as we update the same selector CSS in gutenberg_media_text_block_css_compat() function with new padding: 8% 0; CSS for max-width: (mobile-breakpoint). + $mobile_screen_max_gb_css['.wp-block-media-text .wp-block-media-text__content'] = array( + 'padding' => '3em 2em', + ); + } + + /* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $mobile_screen_max_gb_css, '', astra_get_mobile_breakpoint() ); + } + + $is_legacy_setup = ( 'legacy' === astra_get_option( 'wp-blocks-ui' ) ) ? true : false; + + if ( $is_legacy_setup && astra_wp_version_compare( '6.0', '>=' ) ) { + // Image block align center CSS. + $image_block_center_align = array( + '.wp-block-image.aligncenter' => array( + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + ); + $parse_css .= astra_parse_css( $image_block_center_align ); + } + + if ( $is_legacy_setup ) { + // Table block align center CSS. + $table_block_center_align = array( + '.wp-block-table.aligncenter' => array( + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + ); + $parse_css .= astra_parse_css( $table_block_center_align ); + } + + if ( self::gutenberg_media_text_block_css_compat() ) { + $media_text_block_padding_css = array( + // Media & Text block CSS compatibility (min-width: mobile-breakpoint) CSS. + '.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content' => array( + 'padding' => '0 8% 0 0', + ), + '.entry-content .wp-block-media-text .wp-block-media-text__content' => array( + 'padding' => '0 0 0 8%', + ), + '.ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-bottom-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-left > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-top-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-right > *, .ast-plain-container .site-content .entry-content .has-custom-content-position.is-position-center-left > *' => array( + 'margin' => 0, + ), + ); + + /* Parse CSS from array() -> min-width: (mobile-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $media_text_block_padding_css, astra_get_mobile_breakpoint() ); + + $mobile_screen_media_text_block_css = array( + // Media & Text block padding CSS for (max-width: mobile-breakpoint) CSS. + '.entry-content .wp-block-media-text .wp-block-media-text__content' => array( + 'padding' => '8% 0', + ), + '.wp-block-media-text .wp-block-media-text__media img' => array( + 'width' => 'auto', + 'max-width' => '100%', + ), + ); + + /* Parse CSS from array() -> max-width: (mobile-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $mobile_screen_media_text_block_css, '', astra_get_mobile_breakpoint() ); + } + } + + /** + * When supporting GB button outline patterns in v3.3.0 we have given 2px as default border for GB outline button, where we restrict button border for flat type buttons. + * But now while reverting this change there is no need of default border because whatever customizer border will set it should behave accordingly. Although it is empty ('') WP applying 2px as default border for outline buttons. + * + * @since 3.6.3 + */ + $default_border_size = '2px'; + if ( astra_button_default_padding_updated() ) { + $default_border_size = ''; + } + + // Outline Gutenberg button compatibility CSS. + $theme_btn_top_border = ( isset( $global_custom_button_border_size['top'] ) && ( '' !== $global_custom_button_border_size['top'] && '0' !== $global_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : $default_border_size; + $theme_btn_right_border = ( isset( $global_custom_button_border_size['right'] ) && ( '' !== $global_custom_button_border_size['right'] && '0' !== $global_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : $default_border_size; + $theme_btn_left_border = ( isset( $global_custom_button_border_size['left'] ) && ( '' !== $global_custom_button_border_size['left'] && '0' !== $global_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : $default_border_size; + $theme_btn_bottom_border = ( isset( $global_custom_button_border_size['bottom'] ) && ( '' !== $global_custom_button_border_size['bottom'] && '0' !== $global_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : $default_border_size; + + if ( self::gutenberg_core_patterns_compat() ) { + + $outline_button_css = array( + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'border-top-width' => esc_attr( $theme_btn_top_border ), + 'border-right-width' => esc_attr( $theme_btn_right_border ), + 'border-bottom-width' => esc_attr( $theme_btn_bottom_border ), + 'border-left-width' => esc_attr( $theme_btn_left_border ), + ), + 'div.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), div.wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color)' => array( + 'color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + ), + '.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover' => array( + 'color' => esc_attr( $btn_text_hover_color ), + 'background-color' => esc_attr( $btn_bg_hover_color ), + 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), + ), + // Adding CSS to highlight current paginated number. + '.post-page-numbers.current .page-link, .ast-pagination .page-numbers.current' => array( + 'color' => astra_get_foreground_color( $theme_color ), + 'border-color' => esc_attr( $theme_color ), + 'background-color' => esc_attr( $theme_color ), + 'border-radius' => '2px', + ), + ); + + /* Parse CSS from array() -> All media CSS */ + $parse_css .= astra_parse_css( $outline_button_css ); + + if ( $block_editor_legacy_setup ) { + + if ( ! astra_button_default_padding_updated() ) { + // Tablet CSS. + $outline_button_tablet_css = array( + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', + 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', + 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', + 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', + ), + ); + + $parse_css .= astra_parse_css( $outline_button_tablet_css, '', astra_get_tablet_breakpoint() ); + + // Mobile CSS. + $outline_button_mobile_css = array( + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', + 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', + 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', + 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', + ), + ); + + $parse_css .= astra_parse_css( $outline_button_mobile_css, '', astra_get_mobile_breakpoint() ); + } + + if ( $is_site_rtl ) { + $gb_patterns_min_mobile_css = array( + '.entry-content > .alignleft' => array( + 'margin-left' => '20px', + ), + '.entry-content > .alignright' => array( + 'margin-right' => '20px', + ), + ); + } else { + $gb_patterns_min_mobile_css = array( + '.entry-content > .alignleft' => array( + 'margin-right' => '20px', + ), + '.entry-content > .alignright' => array( + 'margin-left' => '20px', + ), + ); + } + + if ( ! astra_button_default_padding_updated() ) { + $gb_patterns_min_mobile_css['.wp-block-group.has-background'] = array( + 'padding' => '20px', + ); + } + + /* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */ + $parse_css .= astra_parse_css( $gb_patterns_min_mobile_css, astra_get_mobile_breakpoint() ); + } + } + + if ( astra_button_default_padding_updated() ) { + $outline_button_css = array( + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'border-top-width' => esc_attr( $theme_btn_top_border ), + 'border-right-width' => esc_attr( $theme_btn_right_border ), + 'border-bottom-width' => esc_attr( $theme_btn_bottom_border ), + 'border-left-width' => esc_attr( $theme_btn_left_border ), + ), + ); + + /* Parse CSS from array() -> All media CSS */ + $parse_css .= astra_parse_css( $outline_button_css ); + } + + /** + * Secondary button styles. + */ + $scndry_btn_text_color = astra_get_option( 'secondary-button-color' ); + $scndry_btn_border_color = astra_get_option( 'secondary-theme-button-border-group-border-color' ); + $scndry_btn_border_h_color = astra_get_option( 'secondary-theme-button-border-group-border-h-color' ); + $global_scndry_custom_button_border_size = astra_get_option( 'secondary-theme-button-border-group-border-size' ); + $scndry_theme_btn_top_border = ( isset( $global_scndry_custom_button_border_size['top'] ) && ( '' !== $global_scndry_custom_button_border_size['top'] && '0' !== $global_scndry_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['top'], 'px' ) : $default_border_size; + $scndry_theme_btn_right_border = ( isset( $global_scndry_custom_button_border_size['right'] ) && ( '' !== $global_scndry_custom_button_border_size['right'] && '0' !== $global_scndry_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['right'], 'px' ) : $default_border_size; + $scndry_theme_btn_left_border = ( isset( $global_scndry_custom_button_border_size['left'] ) && ( '' !== $global_scndry_custom_button_border_size['left'] && '0' !== $global_scndry_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['left'], 'px' ) : $default_border_size; + $scndry_theme_btn_bottom_border = ( isset( $global_scndry_custom_button_border_size['bottom'] ) && ( '' !== $global_scndry_custom_button_border_size['bottom'] && '0' !== $global_scndry_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_scndry_custom_button_border_size['bottom'], 'px' ) : $default_border_size; + $scndry_theme_btn_font_family = astra_get_option( 'secondary-font-family-button' ); + $scndry_theme_btn_font_size = astra_get_option( 'secondary-font-size-button' ); + $scndry_theme_btn_font_weight = astra_get_option( 'secondary-font-weight-button' ); + $scndry_theme_btn_text_transform = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'text-transform' ); + $scndry_theme_btn_line_height = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'line-height', 'line-height-unit' ); + $scndry_theme_btn_letter_spacing = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'letter-spacing', 'letter-spacing-unit' ); + $scndry_theme_btn_text_decoration = astra_get_font_extras( astra_get_option( 'secondary-font-extras-button' ), 'text-decoration' ); + $scndry_theme_btn_padding = astra_get_option( 'secondary-theme-button-padding' ); + $scndry_btn_border_radius_fields = astra_get_option( 'secondary-button-radius-fields' ); + $scndry_btn_bg_color = astra_get_option( 'secondary-button-bg-color' ); + $scndry_btn_bg_hover_color = astra_get_option( 'secondary-button-bg-h-color' ); + $scndry_btn_text_hover_color = astra_get_option( 'secondary-button-h-color' ); + $outline_button_selector = '.wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; + $padding_top = astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'desktop' ); + $padding_right = astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'desktop' ); + $padding_bottom = astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'desktop' ); + $padding_left = astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'desktop' ); + $border_top_val = ''; + $border_right_val = ''; + $border_bottom_val = ''; + $border_left_val = ''; + $gutenberg_core_patterns_compat = self::gutenberg_core_patterns_compat(); + + // Secondary color. + if ( empty( $scndry_btn_text_color ) && $gutenberg_core_patterns_compat ) { + $btn_color_val = empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ); + } else { + $btn_color_val = $scndry_btn_text_color; + } + + // Secondary border color. + if ( empty( $scndry_btn_border_color ) && empty( $scndry_btn_bg_color ) && $gutenberg_core_patterns_compat ) { + $btn_border_color_val = empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ); + } else { + $btn_border_color_val = empty( $scndry_btn_border_color ) ? esc_attr( $scndry_btn_bg_color ) : esc_attr( $scndry_btn_border_color ); + } + + // Secondary border hover color. + if ( empty( $scndry_btn_border_h_color ) && $gutenberg_core_patterns_compat ) { + $btn_border_h_color_val = empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ); + } else { + $btn_border_h_color_val = $scndry_btn_border_h_color; + } + + // Secondary button border size. + if ( $scndry_theme_btn_top_border || $scndry_theme_btn_right_border || $scndry_theme_btn_left_border || $scndry_theme_btn_bottom_border ) { + $border_top_val = $scndry_theme_btn_top_border; + $border_right_val = $scndry_theme_btn_right_border; + $border_bottom_val = $scndry_theme_btn_bottom_border; + $border_left_val = $scndry_theme_btn_left_border; + $outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; + } + + // Secondary button padding. + if ( $padding_top || $padding_right || $padding_bottom || $padding_left ) { + $outline_button_selector = '.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, .ast-outline-button'; + } + + $outline_button_css_desktop = array( + $outline_button_selector => array( + 'border-color' => esc_attr( $btn_border_color_val ), + 'border-top-width' => esc_attr( $border_top_val ), + 'border-right-width' => esc_attr( $border_right_val ), + 'border-bottom-width' => esc_attr( $border_bottom_val ), + 'border-left-width' => esc_attr( $border_left_val ), + 'font-family' => astra_get_font_family( $scndry_theme_btn_font_family ), + 'font-weight' => esc_attr( $scndry_theme_btn_font_weight ), + 'font-size' => isset( $scndry_theme_btn_font_size['desktop'] ) && isset( $scndry_theme_btn_font_size['desktop-unit'] ) && is_array( $scndry_theme_btn_font_size ) ? astra_get_font_css_value( $scndry_theme_btn_font_size['desktop'], $scndry_theme_btn_font_size['desktop-unit'] ) : '', + 'line-height' => esc_attr( $scndry_theme_btn_line_height ), + 'text-transform' => esc_attr( $scndry_theme_btn_text_transform ), + 'text-decoration' => esc_attr( $scndry_theme_btn_text_decoration ), + 'letter-spacing' => esc_attr( $scndry_theme_btn_letter_spacing ), + 'padding-top' => $padding_top, + 'padding-right' => $padding_right, + 'padding-bottom' => $padding_bottom, + 'padding-left' => $padding_left, + 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'desktop' ), + 'background-color' => 'transparent', + ), + '.wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color), .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color), .ast-outline-button' => array( + 'color' => esc_attr( $btn_color_val ), + ), + '.wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover, .wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover, .ast-outline-button:hover, .ast-outline-button:focus' => array( + 'color' => empty( $scndry_btn_text_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr( $btn_text_hover_color ) : esc_attr( $scndry_btn_text_hover_color ), + 'background-color' => empty( $scndry_btn_bg_hover_color ) && $gutenberg_core_patterns_compat ? esc_attr( $btn_bg_hover_color ) : esc_attr( $scndry_btn_bg_hover_color ), + 'border-color' => esc_attr( $btn_border_h_color_val ), + ), + ); + + $outline_button_css_tablet = array( + $outline_button_selector => array( + 'font-size' => astra_responsive_font( $scndry_theme_btn_font_size, 'tablet' ), + 'padding-top' => astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'tablet' ), + 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'tablet' ), + 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'tablet' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'tablet' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'tablet' ), + ), + ); + + $outline_button_css_mobile = array( + $outline_button_selector => array( + 'font-size' => astra_responsive_font( $scndry_theme_btn_font_size, 'mobile' ), + 'padding-top' => astra_responsive_spacing( $scndry_theme_btn_padding, 'top', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $scndry_theme_btn_padding, 'right', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $scndry_theme_btn_padding, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $scndry_theme_btn_padding, 'left', 'mobile' ), + 'border-top-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'top', 'mobile' ), + 'border-top-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'right', 'mobile' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'bottom', 'mobile' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $scndry_btn_border_radius_fields, 'left', 'mobile' ), + ), + ); + + // Secondary button preset compatibility. + $btn_preset_style = astra_get_option( 'secondary-button-preset-style' ); + + if ( 'button_01' === $btn_preset_style || 'button_02' === $btn_preset_style || 'button_03' === $btn_preset_style ) { + if ( empty( $scndry_btn_text_color ) ) { + $scndry_btn_text_color = astra_get_foreground_color( $theme_color ); + } + $outline_button_css_desktop['.wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background), .wp-block-buttons .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)'] = array( + 'background-color' => empty( $scndry_btn_bg_color ) ? esc_attr( $theme_color ) : esc_attr( $scndry_btn_bg_color ), + 'color' => esc_attr( $scndry_btn_text_color ), + ); + } + + /* Parse CSS from array() -> Desktop */ + $parse_css .= astra_parse_css( $outline_button_css_desktop ); + + /* Parse CSS from array() -> Tablet */ + $parse_css .= astra_parse_css( $outline_button_css_tablet, '', astra_get_tablet_breakpoint() ); + + /* Parse CSS from array() -> Mobile */ + $parse_css .= astra_parse_css( $outline_button_css_mobile, '', astra_get_mobile_breakpoint() ); + + /** + * Add margin-bottom to the figure element conditionally for WordPress 6.3 or above. + * + * @since 4.4.0 + */ + if ( astra_wp_version_compare( '6.3', '>=' ) ) { + $figure_margin_bottom = array( + '.entry-content[ast-blocks-layout] > figure' => array( + 'margin-bottom' => '1em', + ), + ); + + /* Parse CSS from array() -> All media CSS */ + $parse_css .= astra_parse_css( $figure_margin_bottom ); + } + + if ( $is_widget_title_support_font_weight ) { + $widget_title_font_weight_support = array( + 'h1.widget-title' => array( + 'font-weight' => esc_attr( $h1_font_weight ), + ), + 'h2.widget-title' => array( + 'font-weight' => esc_attr( $h2_font_weight ), + ), + 'h3.widget-title' => array( + 'font-weight' => esc_attr( $h3_font_weight ), + ), + ); + + /* Parse CSS from array() -> All media CSS */ + $parse_css .= astra_parse_css( $widget_title_font_weight_support ); + } + + $static_layout_css = array( + '.ast-separate-container #primary, .ast-separate-container #secondary' => array( + 'padding' => '1.5em 0', + ), + '#primary, #secondary' => array( + 'padding' => '1.5em 0', + 'margin' => 0, + ), + '.ast-left-sidebar #content > .ast-container' => array( + 'display' => 'flex', + 'flex-direction' => 'column-reverse', + 'width' => '100%', + ), + ); + + if ( true === $update_customizer_strctural_defaults ) { + $is_site_rtl = is_rtl() ? true : false; + $ltr_left = $is_site_rtl ? esc_attr( 'right' ) : esc_attr( 'left' ); + $ltr_right = $is_site_rtl ? esc_attr( 'left' ) : esc_attr( 'right' ); + $default_layout_update_css = array( + '#page' => array( + 'display' => 'flex', + 'flex-direction' => 'column', + 'min-height' => '100vh', + ), + '.ast-404-layout-1 h1.page-title' => array( + 'color' => 'var(--ast-global-color-2)', + ), + '.single .post-navigation a' => array( + 'line-height' => '1em', + 'height' => 'inherit', + ), + '.error-404 .page-sub-title' => array( + 'font-size' => '1.5rem', + 'font-weight' => 'inherit', + ), + '.search .site-content .content-area .search-form' => array( + 'margin-bottom' => '0', + ), + '#page .site-content' => array( + 'flex-grow' => '1', + ), + '.widget' => array( + 'margin-bottom' => '1.25em', + ), + '#secondary li' => array( + 'line-height' => '1.5em', + ), + '#secondary .wp-block-group h2' => array( + 'margin-bottom' => '0.7em', + ), + '#secondary h2' => array( + 'font-size' => '1.7rem', + ), + '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .ast-comment-list li.depth-1, .ast-separate-container .comment-respond' => array( + 'padding' => '3em', + ), + + '.ast-separate-container .ast-article-single .ast-article-single' => array( + 'padding' => '0', + ), + + '.ast-article-single .wp-block-post-template-is-layout-grid' => array( + 'padding-' . $ltr_left => '0', + ), + + '.ast-separate-container .ast-comment-list li.depth-1, .hentry' => array( + 'margin-bottom' => '2em', + ), + '.ast-separate-container .ast-archive-description, .ast-separate-container .ast-author-box' => array( + 'border-bottom' => '1px solid var(--ast-border-color)', + ), + '.ast-separate-container .comments-title' => array( + 'padding' => '2em 2em 0 2em', + ), + '.ast-page-builder-template .comment-form-textarea, .ast-comment-formwrap .ast-grid-common-col' => array( + 'padding' => '0', + ), + '.ast-comment-formwrap' => array( + 'padding' => '0', + 'display' => 'inline-flex', + 'column-gap' => '20px', + 'width' => '100%', + 'margin-left' => '0', + 'margin-right' => '0', + ), + '.comments-area textarea#comment:focus, .comments-area textarea#comment:active, .comments-area .ast-comment-formwrap input[type="text"]:focus, .comments-area .ast-comment-formwrap input[type="text"]:active ' => array( + 'box-shadow' => 'none', + 'outline' => 'none', + ), + '.archive.ast-page-builder-template .entry-header' => array( + 'margin-top' => '2em', + ), + '.ast-page-builder-template .ast-comment-formwrap' => array( + 'width' => '100%', + ), + '.entry-title' => array( + 'margin-bottom' => '0.5em', + ), + '.ast-archive-description p' => array( + 'font-size' => 'inherit', + 'font-weight' => 'inherit', + 'line-height' => 'inherit', + ), + ); + /* Parse CSS from array() -> Desktop CSS */ + $parse_css .= astra_parse_css( $default_layout_update_css ); + + $default_tablet_layout_css = array( + '.ast-left-sidebar.ast-page-builder-template #secondary, .archive.ast-right-sidebar.ast-page-builder-template .site-main' => array( + 'padding-' . $ltr_left => '20px', + 'padding-' . $ltr_right => '20px', + ), + ); + + /* Parse CSS from array() -> min-width: tablet-breakpoint CSS */ + $parse_css .= astra_parse_css( $default_tablet_layout_css, astra_get_tablet_breakpoint() ); + + $default_mobile_layout_css = array( + '.ast-comment-formwrap.ast-row' => array( + 'column-gap' => '10px', + 'display' => 'inline-block', + ), + '#ast-commentform .ast-grid-common-col' => array( + 'position' => 'relative', + 'width' => '100%', + ), + ); + + /* Parse CSS from array() -> max-width: mobile-breakpoint CSS */ + $parse_css .= astra_parse_css( $default_mobile_layout_css, '', astra_get_mobile_breakpoint() ); + + if ( is_user_logged_in() ) { + $admin_bar_specific_page_css = array( + '.admin-bar #page' => array( + 'min-height' => 'calc(100vh - 32px)', + ), + ); + $parse_css .= astra_parse_css( $admin_bar_specific_page_css ); + + $admin_bar_responsive_page_css = array( + '.admin-bar #page' => array( + 'min-height' => 'calc(100vh - 46px)', + ), + ); + $parse_css .= astra_parse_css( $admin_bar_responsive_page_css, '', '782' ); + } + + $default_medium_layout_css = array( + '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .ast-author-box, .ast-separate-container .ast-404-layout-1, .ast-separate-container .no-results' => array( + 'padding' => '3em', + ), + ); + + /* Parse CSS from array() -> min-width: 1201px CSS */ + $parse_css .= astra_parse_css( $default_medium_layout_css, '1201' ); + + if ( is_author() ) { + $default_author_css = array( + '.ast-author-box img.avatar' => array( + 'margin' => '0', + ), + ); + /* Parse CSS from array() -> Desktop CSS */ + $parse_css .= astra_parse_css( $default_author_css ); + $default_tablet_min_author_css = array( + '.ast-author-box img.avatar' => array( + 'width' => '100px', + 'height' => '100px', + ), + '.ast-author-box' => array( + 'column-gap' => '50px', + ), + ); + /* Parse CSS from array() -> min-width: (tablet-breakpoint) CSS */ + $parse_css .= astra_parse_css( $default_tablet_min_author_css, astra_get_tablet_breakpoint() ); + $default_max_tablet_author_css = array( + '.ast-author-avatar' => array( + 'margin-top' => '20px', + ), + ); + /* Parse CSS from array() -> max-width: (tablet-breakpoint) CSS */ + $parse_css .= astra_parse_css( $default_max_tablet_author_css, '', astra_get_tablet_breakpoint() ); + $default_tablet_min_extra_px_author_css = array( + '.ast-author-box' => array( + 'align-items' => 'center', + ), + ); + /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1) CSS */ + $parse_css .= astra_parse_css( $default_tablet_min_extra_px_author_css, astra_get_tablet_breakpoint( '', 1 ) ); + } + } else { + $static_layout_css['.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single'] = array( + 'padding' => '1.5em 2.14em', + ); + $static_layout_css['.ast-author-box img.avatar'] = array( + 'margin' => '20px 0 0 0', + ); + } + + /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $static_layout_css, '', astra_get_tablet_breakpoint() ); + + if ( is_author() && false === $update_customizer_strctural_defaults ) { + $parse_css .= astra_parse_css( + array( + '.ast-author-box img.avatar' => array( + 'margin' => '20px 0 0 0', + ), + ), + astra_get_tablet_breakpoint() + ); + } + + if ( 'no-sidebar' !== astra_page_layout() ) { + $static_secondary_layout_css = array( + '#secondary.secondary' => array( + 'padding-top' => 0, + ), + '.ast-separate-container.ast-right-sidebar #secondary' => array( + 'padding-left' => '1em', + 'padding-right' => '1em', + ), + '.ast-separate-container.ast-two-container #secondary' => array( + 'padding-left' => 0, + 'padding-right' => 0, + ), + '.ast-page-builder-template .entry-header #secondary, .ast-page-builder-template #secondary' => array( + 'margin-top' => '1.5em', + ), + ); + $parse_css .= astra_parse_css( $static_secondary_layout_css, '', astra_get_tablet_breakpoint() ); + } + + if ( 'no-sidebar' !== astra_page_layout() ) { + if ( $is_site_rtl ) { + $static_layout_lang_direction_css = array( + '.ast-right-sidebar #primary' => array( + 'padding-left' => 0, + ), + '.ast-page-builder-template.ast-left-sidebar #secondary, ast-page-builder-template.ast-right-sidebar #secondary' => array( + 'padding-left' => '20px', + 'padding-right' => '20px', + ), + '.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array( + 'padding-right' => 0, + ), + '.ast-left-sidebar #secondary' => array( + 'padding-left' => 0, + ), + ); + } else { + $static_layout_lang_direction_css = array( + '.ast-right-sidebar #primary' => array( + 'padding-right' => 0, + ), + '.ast-page-builder-template.ast-left-sidebar #secondary, .ast-page-builder-template.ast-right-sidebar #secondary' => array( + 'padding-right' => '20px', + 'padding-left' => '20px', + ), + '.ast-right-sidebar #secondary, .ast-left-sidebar #primary' => array( + 'padding-left' => 0, + ), + '.ast-left-sidebar #secondary' => array( + 'padding-right' => 0, + ), + ); + } + /* Parse CSS from array() -> max-width: (tablet-breakpoint)px CSS */ + $parse_css .= astra_parse_css( $static_layout_lang_direction_css, '', astra_get_tablet_breakpoint() ); + } + + $static_layout_css_min = array( + '.ast-separate-container.ast-right-sidebar #primary, .ast-separate-container.ast-left-sidebar #primary' => array( + 'border' => 0, + ), + '.search-no-results.ast-separate-container #primary' => array( + 'margin-bottom' => '4em', + ), + ); + + if ( is_author() ) { + $author_table_css = array( + '.ast-author-box' => array( + '-js-display' => 'flex', + 'display' => 'flex', + ), + '.ast-author-bio' => array( + 'flex' => '1', + ), + ); + $static_layout_css_min = array_merge( $static_layout_css_min, $author_table_css ); + } + + /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */ + $parse_css .= astra_parse_css( $static_layout_css_min, astra_get_tablet_breakpoint( '', '1' ) ); + + // 404 Page. + if ( is_404() ) { + + $page_404 = array( + '.ast-404-layout-1 .ast-404-text' => array( + 'font-size' => astra_get_font_css_value( '200' ), + ), + ); + $parse_css .= astra_parse_css( $page_404 ); + + $parse_css .= astra_parse_css( + array( + '.error404.ast-separate-container #primary' => array( + 'margin-bottom' => '4em', + ), + ), + astra_get_tablet_breakpoint( '', '1' ) + ); + + $parse_css .= astra_parse_css( + array( + '.ast-404-layout-1 .ast-404-text' => array( + 'font-size' => astra_get_font_css_value( 100 ), + ), + ), + '', + '920' + ); + } + + if ( 'no-sidebar' !== astra_page_layout() ) { + + if ( $is_site_rtl ) { + $static_layout_min_lang_direction_css = array( + '.ast-right-sidebar #primary' => array( + 'border-left' => '1px solid var(--ast-border-color)', + ), + '.ast-right-sidebar #secondary' => array( + 'border-right' => '1px solid var(--ast-border-color)', + 'margin-right' => '-1px', + ), + '.ast-left-sidebar #primary' => array( + 'border-right' => '1px solid var(--ast-border-color)', + ), + '.ast-left-sidebar #secondary' => array( + 'border-left' => '1px solid var(--ast-border-color)', + 'margin-left' => '-1px', + ), + '.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array( + 'padding-right' => '30px', + 'padding-left' => 0, + ), + '.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array( + 'padding-left' => '30px', + 'padding-right' => 0, + ), + '.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array( + 'border' => 0, + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + '.ast-separate-container.ast-two-container #secondary .widget:last-child' => array( + 'margin-bottom' => 0, + ), + ); + } else { + $static_layout_min_lang_direction_css = array( + '.ast-right-sidebar #primary' => array( + 'border-right' => '1px solid var(--ast-border-color)', + ), + '.ast-left-sidebar #primary' => array( + 'border-left' => '1px solid var(--ast-border-color)', + ), + '.ast-right-sidebar #secondary' => array( + 'border-left' => '1px solid var(--ast-border-color)', + 'margin-left' => '-1px', + ), + '.ast-left-sidebar #secondary' => array( + 'border-right' => '1px solid var(--ast-border-color)', + 'margin-right' => '-1px', + ), + '.ast-separate-container.ast-two-container.ast-right-sidebar #secondary' => array( + 'padding-left' => '30px', + 'padding-right' => 0, + ), + '.ast-separate-container.ast-two-container.ast-left-sidebar #secondary' => array( + 'padding-right' => '30px', + 'padding-left' => 0, + ), + '.ast-separate-container.ast-right-sidebar #secondary, .ast-separate-container.ast-left-sidebar #secondary' => array( + 'border' => 0, + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + '.ast-separate-container.ast-two-container #secondary .widget:last-child' => array( + 'margin-bottom' => 0, + ), + ); + } + + /* Parse CSS from array() -> min-width: (tablet-breakpoint + 1)px CSS */ + $parse_css .= astra_parse_css( $static_layout_min_lang_direction_css, astra_get_tablet_breakpoint( '', '1' ) ); + } + + /** + * Elementor & Gutenberg button backward compatibility for default styling. + */ + if ( self::page_builder_button_style_css() ) { + + $search_button_selector = ( ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ) ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : ''; + $search_button_hover_selector = ( ! $block_editor_legacy_setup || $is_wp_5_8_support_enabled ) ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : ''; + + $file_block_button_selector = ( ! $block_editor_legacy_setup || $improve_gb_ui ) ? ', body .wp-block-file .wp-block-file__button' : ''; + $file_block_button_hover_selector = ( ! $block_editor_legacy_setup || $improve_gb_ui ) ? ', body .wp-block-file .wp-block-file__button:hover, body .wp-block-file .wp-block-file__button:focus' : ''; + $search_page_btn_selector = ( true === $update_customizer_strctural_defaults ) ? ', .search .search-submit' : ''; + $woo_btns_selector = ( true === self::astra_woo_support_global_settings() ) ? ', .woocommerce-js a.button, .woocommerce button.button, .woocommerce .woocommerce-message a.button, .woocommerce #respond input#submit.alt, .woocommerce input.button.alt, .woocommerce input.button,.woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled], .woocommerce input.button:disabled:hover, .woocommerce input.button:disabled[disabled]:hover, .woocommerce #respond input#submit, .woocommerce button.button.alt.disabled, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link, .wc-block-grid__product-onsale, [CLASS*="wc-block"] button, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout, .woocommerce button.button.alt.disabled.wc-variation-selection-needed' : ''; + $woo_btns_hover_selector = ( true === self::astra_woo_support_global_settings() ) ? ', .woocommerce-js a.button:hover, .woocommerce button.button:hover, .woocommerce .woocommerce-message a.button:hover,.woocommerce #respond input#submit:hover,.woocommerce #respond input#submit.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce button.button.alt.disabled:hover, .wc-block-grid__products .wc-block-grid__product .wp-block-button__link:hover, [CLASS*="wc-block"] button:hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover, .woocommerce button.button.alt.disabled.wc-variation-selection-needed:hover' : ''; + $v4_2_2_core_form_btns_styling_selector = ( true === self::astra_core_form_btns_styling() ) ? ', #comments .submit, .search .search-submit' : ''; + + /** + * Global button CSS - Desktop. + */ + $global_button_desktop = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( + 'border-style' => 'solid', + 'border-top-width' => ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '0', + 'border-right-width' => ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '0', + 'border-left-width' => ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '0', + 'border-bottom-width' => ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '0', + 'color' => esc_attr( $btn_text_color ), + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'background-color' => esc_attr( $btn_bg_color ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), + 'font-family' => astra_get_font_family( $theme_btn_font_family ), + 'font-weight' => esc_attr( $theme_btn_font_weight ), + 'font-size' => astra_get_font_css_value( $theme_btn_font_size['desktop'], $theme_btn_font_size['desktop-unit'] ), + 'line-height' => esc_attr( $theme_btn_line_height ), + 'text-transform' => esc_attr( $theme_btn_text_transform ), + 'text-decoration' => esc_attr( $theme_btn_text_decoration ), + 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + ), + 'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover , input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector . $file_block_button_hover_selector . $woo_btns_hover_selector => array( + 'color' => esc_attr( $btn_text_hover_color ), + 'background-color' => esc_attr( $btn_bg_hover_color ), + 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), + + ), + ); + + /** + * Global button CSS - Tablet. + */ + $global_button_tablet = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), + ), + ); + + /** + * Global button CSS - Mobile. + */ + $global_button_mobile = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $v4_2_2_core_form_btns_styling_selector . $search_button_selector . $file_block_button_selector . $search_page_btn_selector . $woo_btns_selector => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), + ), + ); + + $btn_text_color_selectors = '.wp-block-button .wp-block-button__link'; + + if ( 'color-typo' === self::elementor_default_color_font_setting() || 'color' === self::elementor_default_color_font_setting() || 'typo' === self::elementor_default_color_font_setting() ) { + $ele_btn_default_desktop = array( + '.elementor-button-wrapper .elementor-button' => array( + 'border-style' => 'solid', + 'text-decoration' => 'none', + 'border-top-width' => ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '0', + 'border-right-width' => ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '0', + 'border-left-width' => ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '0', + 'border-bottom-width' => ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '0', + ), + 'body .elementor-button.elementor-size-sm, body .elementor-button.elementor-size-xs, body .elementor-button.elementor-size-md, body .elementor-button.elementor-size-lg, body .elementor-button.elementor-size-xl, body .elementor-button' => array( + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $ele_btn_default_desktop ); + + $ele_btn_default_tablet = array( + '.elementor-button-wrapper .elementor-button.elementor-size-sm, .elementor-button-wrapper .elementor-button.elementor-size-xs, .elementor-button-wrapper .elementor-button.elementor-size-md, .elementor-button-wrapper .elementor-button.elementor-size-lg, .elementor-button-wrapper .elementor-button.elementor-size-xl, .elementor-button-wrapper .elementor-button' => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $ele_btn_default_tablet, '', astra_get_tablet_breakpoint() ); + + $ele_btn_default_mobile = array( + '.elementor-button-wrapper .elementor-button.elementor-size-sm, .elementor-button-wrapper .elementor-button.elementor-size-xs, .elementor-button-wrapper .elementor-button.elementor-size-md, .elementor-button-wrapper .elementor-button.elementor-size-lg, .elementor-button-wrapper .elementor-button.elementor-size-xl, .elementor-button-wrapper .elementor-button' => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $ele_btn_default_mobile, '', astra_get_mobile_breakpoint() ); + } + + if ( 'color-typo' === self::elementor_default_color_font_setting() || 'color' === self::elementor_default_color_font_setting() ) { + // Check if Global Elementor - Theme Style - button color is set. If yes then remove ( :visited ) CSS for the compatibility. + if ( false === self::is_elementor_kit_button_color_set() ) { + $btn_text_color_selectors .= ' , .elementor-button-wrapper .elementor-button, .elementor-button-wrapper .elementor-button:visited'; + } else { + $btn_text_color_selectors .= ' , .elementor-button-wrapper .elementor-button'; + } + + $ele_btn_color_builder_desktop = array( + '.elementor-button-wrapper .elementor-button' => array( + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'background-color' => esc_attr( $btn_bg_color ), + ), + '.elementor-button-wrapper .elementor-button:hover, .elementor-button-wrapper .elementor-button:focus' => array( + 'color' => esc_attr( $btn_text_hover_color ), + 'background-color' => esc_attr( $btn_bg_hover_color ), + 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), + + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $ele_btn_color_builder_desktop ); + } + + $global_button_page_builder_text_color_desktop = array( + $btn_text_color_selectors => array( + 'color' => esc_attr( $btn_text_color ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $global_button_page_builder_text_color_desktop ); + + if ( 'color-typo' === self::elementor_default_color_font_setting() || 'typo' === self::elementor_default_color_font_setting() ) { + $ele_btn_typo_builder_desktop = array( + '.elementor-button-wrapper .elementor-button' => astra_get_font_array_css( astra_get_option( 'font-family-button' ), astra_get_option( 'font-weight-button' ), $theme_btn_font_size, 'font-extras-button' ), + 'body .elementor-button.elementor-size-sm, body .elementor-button.elementor-size-xs, body .elementor-button.elementor-size-md, body .elementor-button.elementor-size-lg, body .elementor-button.elementor-size-xl, body .elementor-button' => array( + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $ele_btn_typo_builder_desktop ); + } + + $global_button_page_builder_desktop = array( + '.wp-block-button .wp-block-button__link:hover, .wp-block-button .wp-block-button__link:focus' => array( + 'color' => esc_attr( $btn_text_hover_color ), + 'background-color' => esc_attr( $btn_bg_hover_color ), + 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), + ), + '.elementor-widget-heading h1.elementor-heading-title' => array( + 'line-height' => esc_attr( $h1_line_height ), + ), + '.elementor-widget-heading h2.elementor-heading-title' => array( + 'line-height' => esc_attr( $h2_line_height ), + ), + '.elementor-widget-heading h3.elementor-heading-title' => array( + 'line-height' => esc_attr( $h3_line_height ), + ), + '.elementor-widget-heading h4.elementor-heading-title' => array( + 'line-height' => esc_attr( $h4_line_height ), + ), + '.elementor-widget-heading h5.elementor-heading-title' => array( + 'line-height' => esc_attr( $h5_line_height ), + ), + '.elementor-widget-heading h6.elementor-heading-title' => array( + 'line-height' => esc_attr( $h6_line_height ), + ), + ); + + if ( $block_editor_legacy_setup && self::gutenberg_core_patterns_compat() && ! astra_button_default_padding_updated() ) { + $theme_outline_gb_btn_top_border = ( isset( $global_custom_button_border_size['top'] ) && ( '' !== $global_custom_button_border_size['top'] && '0' !== $global_custom_button_border_size['top'] ) ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : '2px'; + $theme_outline_gb_btn_right_border = ( isset( $global_custom_button_border_size['right'] ) && ( '' !== $global_custom_button_border_size['right'] && '0' !== $global_custom_button_border_size['right'] ) ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : '2px'; + $theme_outline_gb_btn_bottom_border = ( isset( $global_custom_button_border_size['bottom'] ) && ( '' !== $global_custom_button_border_size['bottom'] && '0' !== $global_custom_button_border_size['bottom'] ) ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : '2px'; + $theme_outline_gb_btn_left_border = ( isset( $global_custom_button_border_size['left'] ) && ( '' !== $global_custom_button_border_size['left'] && '0' !== $global_custom_button_border_size['left'] ) ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : '2px'; + + $global_button_page_builder_desktop['.wp-block-button .wp-block-button__link'] = array( + 'border' => 'none', + 'background-color' => esc_attr( $btn_bg_color ), + 'color' => esc_attr( $btn_text_color ), + 'font-family' => astra_get_font_family( $theme_btn_font_family ), + 'font-weight' => esc_attr( $theme_btn_font_weight ), + 'line-height' => esc_attr( $theme_btn_line_height ), + 'text-transform' => esc_attr( $theme_btn_text_transform ), + 'text-decoration' => esc_attr( $theme_btn_text_decoration ), + 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), + 'padding' => '15px 30px', + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + ); + $global_button_page_builder_desktop['.wp-block-button.is-style-outline .wp-block-button__link'] = array( + 'border-style' => 'solid', + 'border-top-width' => esc_attr( $theme_outline_gb_btn_top_border ), + 'border-right-width' => esc_attr( $theme_outline_gb_btn_right_border ), + 'border-left-width' => esc_attr( $theme_outline_gb_btn_left_border ), + 'border-bottom-width' => esc_attr( $theme_outline_gb_btn_bottom_border ), + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'padding-top' => 'calc(15px - ' . (int) $theme_outline_gb_btn_top_border . 'px)', + 'padding-right' => 'calc(30px - ' . (int) $theme_outline_gb_btn_right_border . 'px)', + 'padding-bottom' => 'calc(15px - ' . (int) $theme_outline_gb_btn_bottom_border . 'px)', + 'padding-left' => 'calc(30px - ' . (int) $theme_outline_gb_btn_left_border . 'px)', + ); + + $global_button_page_builder_tablet = array( + '.wp-block-button .wp-block-button__link' => array( + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), + 'border' => 'none', + 'padding' => '15px 30px', + ), + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', + 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', + 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', + 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', + ), + ); + + $global_button_page_builder_mobile = array( + '.wp-block-button .wp-block-button__link' => array( + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), + 'border' => 'none', + 'padding' => '15px 30px', + ), + '.wp-block-button.is-style-outline .wp-block-button__link' => array( + 'padding-top' => 'calc(15px - ' . (int) $theme_btn_top_border . 'px)', + 'padding-right' => 'calc(30px - ' . (int) $theme_btn_right_border . 'px)', + 'padding-bottom' => 'calc(15px - ' . (int) $theme_btn_bottom_border . 'px)', + 'padding-left' => 'calc(30px - ' . (int) $theme_btn_left_border . 'px)', + ), + ); + } else { + + $default_border_size = '0'; + if ( astra_button_default_padding_updated() || ! $block_editor_legacy_setup ) { + $default_border_size = ''; + } + + $selector = '.wp-block-button .wp-block-button__link'; + if ( ! $block_editor_legacy_setup ) { + $selector = $selector . ', .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button'; + } + + $btn_top_border_size = ( isset( $global_custom_button_border_size['top'] ) && '' !== $global_custom_button_border_size['top'] ) ? astra_get_css_value( $global_custom_button_border_size['top'], 'px' ) : $default_border_size; + $btn_bottom_border_size = ( isset( $global_custom_button_border_size['bottom'] ) && '' !== $global_custom_button_border_size['bottom'] ) ? astra_get_css_value( $global_custom_button_border_size['bottom'], 'px' ) : $default_border_size; + $btn_right_border_size = ( isset( $global_custom_button_border_size['right'] ) && '' !== $global_custom_button_border_size['right'] ) ? astra_get_css_value( $global_custom_button_border_size['right'], 'px' ) : $default_border_size; + $btn_left_border_size = ( isset( $global_custom_button_border_size['left'] ) && '' !== $global_custom_button_border_size['left'] ) ? astra_get_css_value( $global_custom_button_border_size['left'], 'px' ) : $default_border_size; + + $global_button_page_builder_desktop[ $selector ] = array( + 'border-style' => ( $btn_top_border_size || $btn_right_border_size || $btn_left_border_size || $btn_bottom_border_size ) ? 'solid' : '', + 'border-top-width' => $btn_top_border_size, + 'border-right-width' => $btn_right_border_size, + 'border-left-width' => $btn_left_border_size, + 'border-bottom-width' => $btn_bottom_border_size, + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'background-color' => esc_attr( $btn_bg_color ), + 'color' => esc_attr( $btn_text_color ), + 'font-family' => astra_get_font_family( $theme_btn_font_family ), + 'font-weight' => esc_attr( $theme_btn_font_weight ), + 'line-height' => esc_attr( $theme_btn_line_height ), + 'text-transform' => esc_attr( $theme_btn_text_transform ), + 'text-decoration' => esc_attr( $theme_btn_text_decoration ), + 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'desktop' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), + ); + + $global_button_page_builder_tablet = array( + $selector => array( + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), + ), + ); + + $global_button_page_builder_mobile = array( + $selector => array( + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), + ), + ); + } + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $global_button_page_builder_desktop ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $global_button_page_builder_tablet, '', astra_get_tablet_breakpoint() ); + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $global_button_page_builder_mobile, '', astra_get_mobile_breakpoint() ); + + } else { + + $search_button_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button' : ''; + $search_button_hover_selector = $is_wp_5_8_support_enabled ? ', form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover, form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus' : ''; + + /** + * Global button CSS - Desktop. + */ + $global_button_desktop = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( + 'color' => esc_attr( $btn_text_color ), + 'border-color' => empty( $btn_border_color ) ? esc_attr( $btn_bg_color ) : esc_attr( $btn_border_color ), + 'background-color' => esc_attr( $btn_bg_color ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ), + 'font-family' => astra_get_font_family( $theme_btn_font_family ), + 'font-weight' => esc_attr( $theme_btn_font_weight ), + 'font-size' => astra_get_font_css_value( $theme_btn_font_size['desktop'], $theme_btn_font_size['desktop-unit'] ), + 'text-transform' => esc_attr( $theme_btn_text_transform ), + 'text-decoration' => esc_attr( $theme_btn_text_decoration ), + 'letter-spacing' => esc_attr( $theme_btn_letter_spacing ), + ), + 'button:focus, .menu-toggle:hover, button:hover, .ast-button:hover, .ast-custom-button:hover .button:hover, .ast-custom-button:hover, input[type=reset]:hover, input[type=reset]:focus, input#submit:hover, input#submit:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus' . $search_button_hover_selector => array( + 'color' => esc_attr( $btn_text_hover_color ), + 'background-color' => esc_attr( $btn_bg_hover_color ), + 'border-color' => empty( $btn_border_h_color ) ? esc_attr( $btn_bg_hover_color ) : esc_attr( $btn_border_h_color ), + ), + ); + + /** + * Global button CSS - Tablet. + */ + $global_button_tablet = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'tablet' ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'tablet' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'tablet' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'tablet' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'tablet' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'tablet' ), + ), + ); + + /** + * Global button CSS - Mobile. + */ + $global_button_mobile = array( + '.menu-toggle, button, .ast-button, .ast-custom-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' . $search_button_selector => array( + 'padding-top' => astra_responsive_spacing( $theme_btn_padding, 'top', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $theme_btn_padding, 'right', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $theme_btn_padding, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $theme_btn_padding, 'left', 'mobile' ), + 'font-size' => astra_responsive_font( $theme_btn_font_size, 'mobile' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'mobile' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'mobile' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'mobile' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'mobile' ), + ), + ); + } + + if ( true === $update_customizer_strctural_defaults ) { + $global_button_desktop['form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button.has-icon'] = array( + 'padding-top' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'top', 'desktop' ) . ' - 3px)', + 'padding-right' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'right', 'desktop' ) . ' - 3px)', + 'padding-bottom' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'bottom', 'desktop' ) . ' - 3px)', + 'padding-left' => 'calc(' . astra_responsive_spacing( $theme_btn_padding, 'left', 'desktop' ) . ' - 3px)', + ); + } + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $global_button_desktop ); + + $parse_css .= astra_parse_css( $global_button_tablet, '', astra_get_tablet_breakpoint() ); + + $parse_css .= astra_parse_css( $global_button_mobile, '', astra_get_mobile_breakpoint() ); + + /* Parse CSS from array() -> min-width: (tablet-breakpoint) px CSS */ + if ( empty( $site_content_width ) ) { + $container_min_tablet_css = array( + '.ast-container' => array( + 'max-width' => '100%', + ), + ); + $parse_css .= astra_parse_css( $container_min_tablet_css, astra_get_tablet_breakpoint() ); + } + + $container_min_mobile_css = array( + '.ast-container' => array( + 'max-width' => '100%', + ), + ); + + /** + * Global button CSS - -> max-width: (tablet-breakpoint) px. + */ + $global_button_tablet = array( + '.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array( + 'font-size' => astra_get_font_css_value( $theme_btn_font_size['tablet'], $theme_btn_font_size['tablet-unit'] ), + ), + '.ast-mobile-header-stack .main-header-bar .ast-search-menu-icon' => array( + 'display' => 'inline-block', + ), + '.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-stack .main-header-bar .ast-search-icon' => array( + 'margin' => '0', + ), + '.ast-comment-avatar-wrap img' => array( + 'max-width' => '2.5em', + ), + '.ast-separate-container .ast-comment-list li.depth-1' => array( + 'padding' => '1.5em 2.14em', + ), + '.ast-separate-container .comment-respond' => array( + 'padding' => '2em 2.14em', + ), + '.ast-comment-meta' => array( + 'padding' => '0 1.8888em 1.3333em', + ), + ); + + /* Parse CSS from array() -> max-width: (tablet-breakpoint) px CSS */ + $parse_css .= astra_parse_css( $global_button_tablet, '', astra_get_tablet_breakpoint() ); + + /* Parse CSS from array() -> min-width: (mobile-breakpoint) px CSS */ + $parse_css .= astra_parse_css( $container_min_mobile_css, astra_get_mobile_breakpoint() ); + + $global_button_mobile = array( + '.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comments-title, .ast-separate-container .ast-archive-description' => array( + 'padding' => '1.5em 1em', + ), + '.ast-separate-container #content .ast-container' => array( + 'padding-left' => '0.54em', + 'padding-right' => '0.54em', + ), + '.ast-separate-container .ast-comment-list li.depth-1' => array( + 'padding' => '1.5em 1em', + 'margin-bottom' => '1.5em', + ), + '.ast-separate-container .ast-comment-list .bypostauthor' => array( + 'padding' => '.5em', + ), + '.ast-search-menu-icon.ast-dropdown-active .search-field' => array( + 'width' => '170px', + ), + '.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]' => array( + 'font-size' => astra_get_font_css_value( $theme_btn_font_size['mobile'], $theme_btn_font_size['mobile-unit'] ), + ), + ); + + if ( 'no-sidebar' !== astra_page_layout() ) { + $global_button_mobile['.ast-separate-container #secondary'] = array( + 'padding-top' => 0, + ); + $global_button_mobile['.ast-separate-container.ast-two-container #secondary .widget'] = array( + 'margin-bottom' => '1.5em', + 'padding-left' => '1em', + 'padding-right' => '1em', + ); + } + + // Add/Remove logo max-width: 100%; CSS for logo in old header layout. + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && false === self::remove_logo_max_width_mobile_static_css() ) { + $global_button_mobile['.site-branding img, .site-header .site-logo-img .custom-logo-link img'] = array( + 'max-width' => '100%', + ); + } + + /* Parse CSS from array() -> max-width: (mobile-breakpoint) px */ + $parse_css .= astra_parse_css( $global_button_mobile, '', astra_get_mobile_breakpoint() ); + + + if ( Astra_Builder_Helper::is_component_loaded( 'search', 'header', 'mobile' ) ) { + + if ( $is_site_rtl ) { + $global_button_tablet_lang_direction_css = array( + '.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array( + 'left' => '0', + ), + '.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array( + 'left' => '-1em', + ), + ); + } else { + $global_button_tablet_lang_direction_css = array( + '.ast-header-break-point .ast-search-menu-icon.slide-search .search-form' => array( + 'right' => '0', + ), + '.ast-header-break-point .ast-mobile-header-stack .ast-search-menu-icon.slide-search .search-form' => array( + 'right' => '-1em', + ), + ); + } + + $parse_css .= astra_parse_css( $global_button_tablet_lang_direction_css, '', astra_get_tablet_breakpoint() ); + } + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'custom-button' === $header_custom_button_style ) { + $css_output = array( + + // Header button typography stylings. + '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button, .ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'font-family' => astra_get_font_family( $header_custom_btn_font_family ), + 'font-weight' => esc_attr( $header_custom_btn_font_weight ), + 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'desktop' ), + 'line-height' => esc_attr( $header_custom_btn_line_height ), + 'text-transform' => esc_attr( $header_custom_btn_text_transform ), + 'letter-spacing' => astra_get_css_value( $header_custom_btn_letter_spacing, 'px' ), + ), + + // Custom menu item button - Default. + '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'color' => esc_attr( $header_custom_button_text_color ), + 'background-color' => esc_attr( $header_custom_button_back_color ), + 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'desktop' ), + 'border-top-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'top', 'desktop' ), + 'border-top-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'right', 'desktop' ), + 'border-bottom-right-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'bottom', 'desktop' ), + 'border-bottom-left-radius' => astra_responsive_spacing( $btn_border_radius_fields, 'left', 'desktop' ), + 'border-style' => 'solid', + 'border-color' => esc_attr( $header_custom_button_border_color ), + 'border-top-width' => ( isset( $header_custom_button_border_size['top'] ) && '' !== $header_custom_button_border_size['top'] ) ? astra_get_css_value( $header_custom_button_border_size['top'], 'px' ) : '0px', + 'border-right-width' => ( isset( $header_custom_button_border_size['right'] ) && '' !== $header_custom_button_border_size['right'] ) ? astra_get_css_value( $header_custom_button_border_size['right'], 'px' ) : '0px', + 'border-left-width' => ( isset( $header_custom_button_border_size['left'] ) && '' !== $header_custom_button_border_size['left'] ) ? astra_get_css_value( $header_custom_button_border_size['left'], 'px' ) : '0px', + 'border-bottom-width' => ( isset( $header_custom_button_border_size['bottom'] ) && '' !== $header_custom_button_border_size['bottom'] ) ? astra_get_css_value( $header_custom_button_border_size['bottom'], 'px' ) : '0px', + ), + '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array( + 'color' => esc_attr( $header_custom_button_text_h_color ), + 'background-color' => esc_attr( $header_custom_button_back_h_color ), + 'border-color' => esc_attr( $header_custom_button_border_h_color ), + ), + + // Custom menu item button - Transparent. + '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'color' => esc_attr( $header_custom_trans_button_text_color ), + 'background-color' => esc_attr( $header_custom_trans_button_back_color ), + 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'desktop' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'desktop' ), + 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'desktop' ), + 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'desktop' ), + 'border-radius' => astra_get_css_value( $header_custom_trans_button_radius, 'px' ), + 'border-style' => 'solid', + 'border-color' => esc_attr( $header_custom_trans_button_border_color ), + 'border-top-width' => ( isset( $header_custom_trans_button_border_size['top'] ) && '' !== $header_custom_trans_button_border_size['top'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['top'], 'px' ) : '', + 'border-right-width' => ( isset( $header_custom_trans_button_border_size['right'] ) && '' !== $header_custom_trans_button_border_size['right'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['right'], 'px' ) : '', + 'border-left-width' => ( isset( $header_custom_trans_button_border_size['left'] ) && '' !== $header_custom_trans_button_border_size['left'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['left'], 'px' ) : '', + 'border-bottom-width' => ( isset( $header_custom_trans_button_border_size['bottom'] ) && '' !== $header_custom_trans_button_border_size['bottom'] ) ? astra_get_css_value( $header_custom_trans_button_border_size['bottom'], 'px' ) : '', + ), + '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button:hover' => array( + 'color' => esc_attr( $header_custom_trans_button_text_h_color ), + 'background-color' => esc_attr( $header_custom_trans_button_back_h_color ), + 'border-color' => esc_attr( $header_custom_trans_button_border_h_color ), + ), + ); + + /* Parse CSS from array() */ + $parse_css .= astra_parse_css( $css_output ); + + /* Parse CSS from array()*/ + + /* Custom Menu Item Button */ + $custom_button_css = array( + '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'tablet' ), + 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'tablet' ), + ), + ); + + $custom_trans_button_css = array( + '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'tablet' ), + 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'tablet' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'tablet' ), + 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'tablet' ), + 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'tablet' ), + ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( array_merge( $custom_button_css, $custom_trans_button_css ), '', astra_get_tablet_breakpoint() ); + + /* Custom Menu Item Button */ + $custom_button = array( + '.main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'mobile' ), + 'padding-top' => astra_responsive_spacing( $header_custom_button_spacing, 'top', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_button_spacing, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $header_custom_button_spacing, 'left', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $header_custom_button_spacing, 'right', 'mobile' ), + ), + ); + + $custom_trans_button = array( + '.ast-theme-transparent-header .main-header-bar .button-custom-menu-item .ast-custom-button-link .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $header_custom_btn_font_size, 'mobile' ), + 'padding-top' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'top', 'mobile' ), + 'padding-bottom' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'bottom', 'mobile' ), + 'padding-left' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'left', 'mobile' ), + 'padding-right' => astra_responsive_spacing( $header_custom_trans_button_spacing, 'right', 'mobile' ), + ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( array_merge( $custom_button, $custom_trans_button ), '', astra_get_mobile_breakpoint() ); + } + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + // Foreground color. + if ( ! empty( $footer_adv_link_color ) ) { + $footer_adv_tagcloud = array( + '.footer-adv .tagcloud a:hover, .footer-adv .tagcloud a.current-item' => array( + 'color' => astra_get_foreground_color( $footer_adv_link_color ), + ), + '.footer-adv .calendar_wrap #today' => array( + 'color' => astra_get_foreground_color( $footer_adv_link_color ), + ), + ); + $parse_css .= astra_parse_css( $footer_adv_tagcloud ); + } + } + + /* Width for Footer */ + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'content' != $astra_footer_width ) { + $genral_global_responsive = array( + '.ast-small-footer .ast-container' => array( + 'max-width' => '100%', + 'padding-left' => '35px', + 'padding-right' => '35px', + ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( $genral_global_responsive, astra_get_tablet_breakpoint( '', 1 ) ); + } + + /* Width for Comments for Full Width / Stretched Template */ + if ( 'page-builder' == $container_layout ) { + $page_builder_comment = array( + '.ast-page-builder-template .comments-area, .single.ast-page-builder-template .entry-header, .single.ast-page-builder-template .post-navigation, .single.ast-page-builder-template .ast-single-related-posts-container' => array( + 'max-width' => astra_get_css_value( $site_content_width + 40, 'px' ), + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + ); + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( $page_builder_comment, astra_get_mobile_breakpoint( '', 1 ) ); + + } + + $astra_spearate_container_selector = 'body, .ast-separate-container'; + if ( astra_has_gcp_typo_preset_compatibility() && true === astra_apply_content_background_fullwidth_layouts() ) { + $astra_spearate_container_selector = '.ast-separate-container'; + } + + $separate_container_css = array( + $astra_spearate_container_selector => astra_get_responsive_background_obj( $box_bg_obj, 'desktop' ), + ); + $parse_css .= astra_parse_css( $separate_container_css ); + + if ( $block_editor_legacy_setup ) { + /** + * Added new compatibility & layout designs for core block layouts. + * - Compatibility for alignwide, alignfull, default width. + * + * @since 3.7.4 + */ + $entry_content_selector = '.entry-content'; + if ( true === $improve_gb_ui ) { + $entry_content_selector = '.entry-content >'; + $core_blocks_width_desktop_ui_css = array( + '.entry-content > .wp-block-group, .entry-content > .wp-block-media-text, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns' => array( + 'max-width' => '58em', + 'width' => 'calc(100% - 4em)', + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + '.entry-content [class*="__inner-container"] > .alignfull' => array( + 'max-width' => '100%', + 'margin-left' => 0, + 'margin-right' => 0, + ), + '.entry-content [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright)' => array( + 'margin-left' => 'auto', + 'margin-right' => 'auto', + ), + '.entry-content [class*="__inner-container"] > *:not(.alignwide):not(p):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(iframe)' => array( + 'max-width' => '50rem', + 'width' => '100%', + ), + ); + + /* Parse CSS from array -> Desktop CSS. */ + $parse_css .= astra_parse_css( $core_blocks_width_desktop_ui_css ); + + $core_blocks_min_width_tablet_ui_css = array( + '.entry-content > .wp-block-group.alignwide.has-background, .entry-content > .wp-block-group.alignfull.has-background, .entry-content > .wp-block-cover.alignwide, .entry-content > .wp-block-cover.alignfull, .entry-content > .wp-block-columns.has-background.alignwide, .entry-content > .wp-block-columns.has-background.alignfull' => array( + 'margin-top' => '0', + 'margin-bottom' => '0', + 'padding' => '6em 4em', + ), + '.entry-content > .wp-block-columns.has-background' => array( + 'margin-bottom' => '0', + ), + ); + + /* Parse CSS from array -> min-width(tablet-breakpoint) */ + $parse_css .= astra_parse_css( $core_blocks_min_width_tablet_ui_css, astra_get_tablet_breakpoint() ); + + $core_blocks_min_width_1200_ui_css = array( + '.entry-content .alignfull p' => array( + 'max-width' => astra_get_css_value( $site_content_width, 'px' ), + ), + '.entry-content .alignfull' => array( + 'max-width' => '100%', + 'width' => '100%', + ), + '.ast-page-builder-template .entry-content .alignwide, .entry-content [class*="__inner-container"] > .alignwide' => array( + 'max-width' => astra_get_css_value( $site_content_width, 'px' ), + 'margin-left' => '0', + 'margin-right' => '0', + ), + '.entry-content .alignfull [class*="__inner-container"] > .alignwide' => array( + 'max-width' => '80rem', + ), + ); + + /* Parse CSS from array -> min-width( 1200px ) */ + $parse_css .= astra_parse_css( $core_blocks_min_width_1200_ui_css, '1200' ); + + $core_blocks_min_width_mobile_ui_css = array( + '.site-main .entry-content > .alignwide' => array( + 'margin' => '0 auto', + ), + '.wp-block-group.has-background, .entry-content > .wp-block-cover, .entry-content > .wp-block-columns.has-background' => array( + 'padding' => '4em', + 'margin-top' => '0', + 'margin-bottom' => '0', + ), + '.entry-content .wp-block-media-text.alignfull .wp-block-media-text__content, .entry-content .wp-block-media-text.has-background .wp-block-media-text__content' => array( + 'padding' => '0 8%', + ), + ); + + /* Parse CSS from array -> min-width(mobile-breakpoint + 1) */ + $parse_css .= astra_parse_css( $core_blocks_min_width_mobile_ui_css, astra_get_mobile_breakpoint( '', 1 ) ); + } else { + $astra_no_sidebar_layout_css = + '.ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { + margin-left: -6.67em; + margin-right: -6.67em; + width: auto; + } + @media (max-width: 1200px) { + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { + margin-left: -2.4em; + margin-right: -2.4em; + } + } + @media (max-width: 768px) { + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { + margin-left: -2.14em; + margin-right: -2.14em; + } + } + @media (max-width: 544px) { + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignfull { + margin-left: -1em; + margin-right: -1em; + } + } + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .alignwide { + margin-left: -20px; + margin-right: -20px; + } + + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .wp-block-column .alignfull, + .ast-no-sidebar.ast-separate-container ' . $entry_content_selector . ' .wp-block-column .alignwide { + margin-left: auto; + margin-right: auto; + width: 100%; + } + '; + + $parse_css .= Astra_Enqueue_Scripts::trim_css( $astra_no_sidebar_layout_css ); + } + } + + $tablet_typo = array(); + + if ( isset( $body_font_size['tablet'] ) && '' != $body_font_size['tablet'] ) { + + $tablet_typo = array( + // Widget Title. + '.widget-title' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size['tablet'] * 1.428571429, 'px', 'tablet' ), + ), + ); + } + + /* Tablet Typography */ + $tablet_typography = array( + 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $body_font_size, 'tablet' ), + ), + '#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array( + 'font-size' => astra_responsive_font( $body_font_size, 'tablet' ), + ), + '.site-title' => array( + 'font-size' => astra_responsive_font( $site_title_font_size, 'tablet' ), + 'display' => esc_attr( $tablet_title_visibility ), + ), + '.site-header .site-description' => array( + 'font-size' => astra_responsive_font( $site_tagline_font_size, 'tablet' ), + 'display' => esc_attr( $tablet_tagline_visibility ), + ), + '.entry-title' => array( + 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'tablet', 30 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h1, .entry-content h1, .entry-content h1 a', + 'h1, .entry-content h1' + ) => array( + 'font-size' => astra_responsive_font( $heading_h1_font_size, 'tablet', 30 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h2, .entry-content h2, .entry-content h2 a', + 'h2, .entry-content h2' + ) => array( + 'font-size' => astra_responsive_font( $heading_h2_font_size, 'tablet', 25 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h3, .entry-content h3, .entry-content h3 a', + 'h3, .entry-content h3' + ) => array( + 'font-size' => astra_responsive_font( $heading_h3_font_size, 'tablet', 20 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h4, .entry-content h4, .entry-content h4 a', + 'h4, .entry-content h4' + ) => array( + 'font-size' => astra_responsive_font( $heading_h4_font_size, 'tablet' ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h5, .entry-content h5, .entry-content h5 a', + 'h5, .entry-content h5' + ) => array( + 'font-size' => astra_responsive_font( $heading_h5_font_size, 'tablet' ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h6, .entry-content h6, .entry-content h6 a', + 'h6, .entry-content h6' + ) => array( + 'font-size' => astra_responsive_font( $heading_h6_font_size, 'tablet' ), + ), + '.astra-logo-svg' => array( + 'width' => astra_get_css_value( $header_logo_width['tablet'], 'px' ), + ), + '.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array( + 'height' => astra_get_css_value( ( ! empty( $header_logo_width['tablet-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['tablet-svg-height'] : '', 'px' ), + ), + 'header .custom-logo-link img, .ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array( + 'max-width' => astra_get_css_value( $header_logo_width['tablet'], 'px' ), + ), + 'body, .ast-separate-container' => astra_get_responsive_background_obj( $box_bg_obj, 'tablet' ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( array_merge( $tablet_typo, $tablet_typography ), '', astra_get_tablet_breakpoint() ); + + $mobile_typo = array(); + if ( isset( $body_font_size['mobile'] ) && '' != $body_font_size['mobile'] ) { + $mobile_typo = array( + // Widget Title. + '.widget-title' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size['mobile'] * 1.428571429, 'px', 'mobile' ), + ), + ); + } + + /* Mobile Typography */ + $mobile_typography = array( + 'body, button, input, select, textarea, .ast-button, .ast-custom-button' => array( + 'font-size' => astra_responsive_font( $body_font_size, 'mobile' ), + ), + '#secondary, #secondary button, #secondary input, #secondary select, #secondary textarea' => array( + 'font-size' => astra_responsive_font( $body_font_size, 'mobile' ), + ), + '.site-title' => array( + 'font-size' => astra_responsive_font( $site_title_font_size, 'mobile' ), + 'display' => esc_attr( $mobile_title_visibility ), + ), + '.site-header .site-description' => array( + 'font-size' => astra_responsive_font( $site_tagline_font_size, 'mobile' ), + 'display' => esc_attr( $mobile_tagline_visibility ), + ), + '.entry-title' => array( + 'font-size' => astra_responsive_font( $archive_post_title_font_size, 'mobile', 30 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h1, .entry-content h1, .entry-content h1 a', + 'h1, .entry-content h1' + ) => array( + 'font-size' => astra_responsive_font( $heading_h1_font_size, 'mobile', 30 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h2, .entry-content h2, .entry-content h2 a', + 'h2, .entry-content h2' + ) => array( + 'font-size' => astra_responsive_font( $heading_h2_font_size, 'mobile', 25 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h3, .entry-content h3, .entry-content h3 a', + 'h3, .entry-content h3' + ) => array( + 'font-size' => astra_responsive_font( $heading_h3_font_size, 'mobile', 20 ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h4, .entry-content h4, .entry-content h4 a', + 'h4, .entry-content h4' + ) => array( + 'font-size' => astra_responsive_font( $heading_h4_font_size, 'mobile' ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h5, .entry-content h5, .entry-content h5 a', + 'h5, .entry-content h5' + ) => array( + 'font-size' => astra_responsive_font( $heading_h5_font_size, 'mobile' ), + ), + + // Conditionally select the css selectors with or without achors. + self::conditional_headings_css_selectors( + 'h6, .entry-content h6, .entry-content h6 a', + 'h6, .entry-content h6' + ) => array( + 'font-size' => astra_responsive_font( $heading_h6_font_size, 'mobile' ), + ), + 'header .custom-logo-link img, .ast-header-break-point .site-branding img, .ast-header-break-point .custom-logo-link img' => array( + 'max-width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), + ), + '.astra-logo-svg' => array( + 'width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), + ), + '.astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg, .transparent-custom-logo .astra-logo-svg, .advanced-header-logo .astra-logo-svg)' => array( + 'height' => astra_get_css_value( ( ! empty( $header_logo_width['mobile-svg-height'] ) && ! is_customize_preview() ) ? $header_logo_width['mobile-svg-height'] : '', 'px' ), + ), + '.ast-header-break-point .site-logo-img .custom-mobile-logo-link img' => array( + 'max-width' => astra_get_css_value( $header_logo_width['mobile'], 'px' ), + ), + 'body, .ast-separate-container' => astra_get_responsive_background_obj( $box_bg_obj, 'mobile' ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( array_merge( $mobile_typo, $mobile_typography ), '', astra_get_mobile_breakpoint() ); + + /* + * Responsive Font Size for Tablet & Mobile to the root HTML element + */ + + // Tablet Font Size for HTML tag. + if ( '' == $body_font_size['tablet'] ) { + $html_tablet_typography = array( + 'html' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 5.7, '%' ), + ), + ); + $parse_css .= astra_parse_css( $html_tablet_typography, '', astra_get_tablet_breakpoint() ); + } + // Mobile Font Size for HTML tag. + if ( '' == $body_font_size['mobile'] ) { + $html_mobile_typography = array( + 'html' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 5.7, '%' ), + ), + ); + } else { + $html_mobile_typography = array( + 'html' => array( + 'font-size' => astra_get_font_css_value( (int) $body_font_size_desktop * 6.25, '%' ), + ), + ); + } + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( $html_mobile_typography, '', astra_get_mobile_breakpoint() ); + + /* Site width Responsive */ + $site_width = array( + '.ast-container' => array( + 'max-width' => astra_get_css_value( $site_content_width + 40, 'px' ), + ), + ); + + /* Parse CSS from array()*/ + $parse_css .= astra_parse_css( $site_width, astra_get_tablet_breakpoint( '', 1 ) ); + + /* Narrow width container layout dynamic css */ + $parse_css .= astra_narrow_container_width( astra_get_content_layout(), $narrow_container_max_width ); + + // Page Meta. + $parse_css .= astra_narrow_container_width( astra_get_content_layout(), $narrow_container_max_width ); + + if ( Astra_Builder_Helper::apply_flex_based_css() ) { + $max_site_container_css = array( + '.site-content .ast-container' => array( + 'display' => 'flex', + ), + ); + $parse_css .= astra_parse_css( $max_site_container_css, astra_get_tablet_breakpoint( '', 1 ) ); + + $min_site_container_css = array( + '.site-content .ast-container' => array( + 'flex-direction' => 'column', + ), + ); + $parse_css .= astra_parse_css( $min_site_container_css, '', astra_get_tablet_breakpoint() ); + } + + /** + * Astra Fonts + */ + if ( apply_filters( 'astra_enable_default_fonts', true ) ) { + $astra_fonts = '@font-face {'; + $astra_fonts .= 'font-family: "Astra";'; + $astra_fonts .= 'src: url(' . ASTRA_THEME_URI . 'assets/fonts/astra.woff) format("woff"),'; + $astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.ttf) format("truetype"),'; + $astra_fonts .= 'url(' . ASTRA_THEME_URI . 'assets/fonts/astra.svg#astra) format("svg");'; + $astra_fonts .= 'font-weight: normal;'; + $astra_fonts .= 'font-style: normal;'; + $astra_fonts .= 'font-display: ' . astra_get_fonts_display_property() . ';'; + $astra_fonts .= '}'; + $parse_css .= $astra_fonts; + } + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + /** + * Hide the default naviagtion markup for responsive devices. + * Once class .ast-header-break-point is added to the body below CSS will be override by the + * .ast-header-break-point class + */ + $astra_navigation = '@media (max-width:' . $header_break_point . 'px) {'; + $astra_navigation .= '.main-header-bar .main-header-bar-navigation{'; + $astra_navigation .= 'display:none;'; + $astra_navigation .= '}'; + $astra_navigation .= '}'; + $parse_css .= $astra_navigation; + } + + /* Blog */ + if ( 'custom' === $blog_width ) : + + /* Site width Responsive */ + $blog_css = array( + '.blog .site-content > .ast-container, .archive .site-content > .ast-container, .search .site-content > .ast-container' => array( + 'max-width' => astra_get_css_value( $blog_max_width, 'px' ), + ), + ); + $parse_css .= astra_parse_css( $blog_css, astra_get_tablet_breakpoint( '', 1 ) ); + endif; + + /* Single Blog */ + if ( 'custom' === $single_post_max ) : + + /* Site width Responsive */ + $single_blog_css = array( + '.single-post .site-content > .ast-container' => array( + 'max-width' => astra_get_css_value( $single_post_max_width, 'px' ), + ), + ); + $parse_css .= astra_parse_css( $single_blog_css, astra_get_tablet_breakpoint( '', 1 ) ); + endif; + + // Primary Submenu Border Width & Color. + $submenu_border_style = array( + '.ast-desktop .main-header-menu.submenu-with-border .sub-menu, .ast-desktop .main-header-menu.submenu-with-border .astra-full-megamenu-wrapper' => array( + 'border-color' => esc_attr( $primary_submenu_b_color ), + ), + + '.ast-desktop .main-header-menu.submenu-with-border .sub-menu' => array( + 'border-top-width' => astra_get_css_value( $submenu_border['top'], 'px' ), + 'border-right-width' => astra_get_css_value( $submenu_border['right'], 'px' ), + 'border-left-width' => astra_get_css_value( $submenu_border['left'], 'px' ), + 'border-bottom-width' => astra_get_css_value( $submenu_border['bottom'], 'px' ), + 'border-style' => 'solid', + ), + '.ast-desktop .main-header-menu.submenu-with-border .sub-menu .sub-menu' => array( + 'top' => ( isset( $submenu_border['top'] ) && '' != $submenu_border['top'] ) ? astra_get_css_value( '-' . $submenu_border['top'], 'px' ) : '', + ), + '.ast-desktop .main-header-menu.submenu-with-border .sub-menu .menu-link, .ast-desktop .main-header-menu.submenu-with-border .children .menu-link' => array( + 'border-bottom-width' => ( $primary_submenu_item_border ) ? '1px' : '0px', + 'border-style' => 'solid', + 'border-color' => esc_attr( $primary_submenu_item_b_color ), + ), + ); + + // Submenu items goes outside? + $submenu_border_for_left_align_menu = array( + '.main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu:hover > .sub-menu, .main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu.focus > .sub-menu' => array( + 'margin-left' => ( ( isset( $submenu_border['left'] ) && '' != $submenu_border['left'] ) || isset( $submenu_border['right'] ) && '' != $submenu_border['right'] ) ? astra_get_css_value( '-' . ( (int) $submenu_border['left'] + (int) $submenu_border['right'] ), 'px' ) : '', + ), + ); + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $parse_css .= astra_parse_css( $submenu_border_style ); + } + + // Submenu items goes outside? + $parse_css .= astra_parse_css( $submenu_border_for_left_align_menu, astra_get_tablet_breakpoint( '', 1 ) ); + + /* Small Footer CSS */ + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active && 'disabled' != $small_footer_layout ) : + $sml_footer_css = array( + '.ast-small-footer' => array( + 'border-top-style' => 'solid', + 'border-top-width' => astra_get_css_value( $small_footer_divider, 'px' ), + 'border-top-color' => esc_attr( $small_footer_divider_color ), + ), + ); + $parse_css .= astra_parse_css( $sml_footer_css ); + + if ( 'footer-sml-layout-2' != $small_footer_layout ) { + $sml_footer_css = array( + '.ast-small-footer-wrap' => array( + 'text-align' => 'center', + ), + ); + $parse_css .= astra_parse_css( $sml_footer_css ); + } + endif; + + /* Transparent Header - Comonent header specific CSS compatibility */ + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active && Astra_Ext_Transparent_Header_Markup::is_transparent_header() ) { + + $html_text_color = astra_get_option( 'transparent-header-html-text-color' ); + $html_link_color = astra_get_option( 'transparent-header-html-link-color' ); + $html_link_h_color = astra_get_option( 'transparent-header-html-link-h-color' ); + + $search_icon_color = astra_get_option( 'transparent-header-search-icon-color' ); + $search_text_color = astra_get_option( 'transparent-header-search-box-placeholder-color' ); + + $search_box_bg_color = astra_get_option( 'transparent-header-search-box-background-color' ); + + $social_color = astra_get_option( 'transparent-header-social-icons-color' ); + $social_hover_color = astra_get_option( 'transparent-header-social-icons-h-color' ); + $social_bg_color = astra_get_option( 'transparent-header-social-icons-bg-color' ); + $social_bg_hover_color = astra_get_option( 'transparent-header-social-icons-bg-h-color' ); + + $button_color = astra_get_option( 'transparent-header-button-text-color' ); + $button_h_color = astra_get_option( 'transparent-header-button-text-h-color' ); + $button_bg_color = astra_get_option( 'transparent-header-button-bg-color' ); + $button_bg_h_color = astra_get_option( 'transparent-header-button-bg-h-color' ); + + $divider_color = astra_get_option( 'transparent-header-divider-color' ); + $account_icon_color = astra_get_option( 'transparent-account-icon-color' ); + $account_loggedout_text_color = astra_get_option( 'transparent-account-type-text-color' ); + + // Menu colors. + $account_menu_color = astra_get_option( 'transparent-account-menu-color' ); + $account_menu_bg_color = astra_get_option( 'transparent-account-menu-bg-obj' ); + $account_menu_color_hover = astra_get_option( 'transparent-account-menu-h-color' ); + $account_menu_bg_color_hover = astra_get_option( 'transparent-account-menu-h-bg-color' ); + $account_menu_color_active = astra_get_option( 'transparent-account-menu-a-color' ); + $account_menu_bg_color_active = astra_get_option( 'transparent-account-menu-a-bg-color' ); + + $transparent_header_builder_desktop_css = array( + '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element' => array( + 'color' => esc_attr( $html_text_color ), + ), + '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a' => array( + 'color' => esc_attr( $html_link_color ), + ), + '.ast-theme-transparent-header [CLASS*="ast-header-html-"] .ast-builder-html-element a:hover' => array( + 'color' => esc_attr( $html_link_h_color ), + ), + '.ast-theme-transparent-header .ast-header-search .astra-search-icon, .ast-theme-transparent-header .ast-header-search .search-field::placeholder, .ast-theme-transparent-header .ast-header-search .ast-icon' => array( + 'color' => esc_attr( $search_icon_color ), + ), + '.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field::placeholder' => array( + 'color' => esc_attr( $search_text_color ), + ), + '.ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-field, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-form, .ast-theme-transparent-header .ast-header-search .ast-search-menu-icon .search-submit' => array( + 'background-color' => esc_attr( $search_box_bg_color ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( + 'background' => esc_attr( $social_bg_color['desktop'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( + 'fill' => esc_attr( $social_color['desktop'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( + 'background' => esc_attr( $social_bg_hover_color['desktop'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( + 'fill' => esc_attr( $social_hover_color['desktop'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( + 'color' => esc_attr( $social_color['desktop'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( + 'color' => esc_attr( $social_hover_color['desktop'] ), + ), + '.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button' => array( + 'color' => esc_attr( $button_color ), + 'background' => esc_attr( $button_bg_color ), + ), + '.ast-theme-transparent-header [CLASS*="ast-header-button-"] .ast-custom-button:hover' => array( + 'color' => esc_attr( $button_h_color ), + 'background' => esc_attr( $button_bg_h_color ), + ), + '.ast-theme-transparent-header .ast-header-divider-element .ast-divider-wrapper' => array( + 'border-color' => esc_attr( $divider_color ), + ), + '.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg path:not(.ast-hf-account-unfill), .ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-type-icon .ahfb-svg-iconset svg circle' => array( + 'fill' => esc_attr( $account_icon_color ), + ), + '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item .menu-link' => array( + 'color' => esc_attr( $account_menu_color ), + ), + '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item:hover > .menu-link' => array( + 'color' => $account_menu_color_hover, + 'background' => $account_menu_bg_color_hover, + ), + '.ast-theme-transparent-header .ast-header-account-wrap .ast-account-nav-menu .menu-item.current-menu-item > .menu-link' => array( + 'color' => $account_menu_color_active, + 'background' => $account_menu_bg_color_active, + ), + '.ast-theme-transparent-header .ast-header-account-wrap .account-main-navigation ul' => array( + 'background' => $account_menu_bg_color, + ), + '.ast-theme-transparent-header .ast-header-account-wrap .ast-header-account-text' => array( + 'color' => $account_loggedout_text_color, + ), + ); + + + $widget_title_color = astra_get_option( 'transparent-header-widget-title-color' ); + $widget_content_color = astra_get_option( 'transparent-header-widget-content-color' ); + $widget_link_color = astra_get_option( 'transparent-header-widget-link-color' ); + $widget_link_hover_color = astra_get_option( 'transparent-header-widget-link-h-color' ); + + $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .widget-title'] = array( + 'color' => esc_attr( $widget_title_color ), + ); + $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner'] = array( + 'color' => esc_attr( $widget_content_color ), + ); + $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a'] = array( + 'color' => esc_attr( $widget_link_color ), + ); + $transparent_header_builder_desktop_css['.ast-theme-transparent-header .widget-area.header-widget-area .header-widget-area-inner a:hover'] = array( + 'color' => esc_attr( $widget_link_hover_color ), + ); + + if ( Astra_Builder_Helper::apply_flex_based_css() ) { + $transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area.header-widget-area-inner'; + } else { + $transparent_header_widget_selector = '.ast-theme-transparent-header .widget-area.header-widget-area. header-widget-area-inner'; + } + + $transparent_header_builder_desktop_css[ $transparent_header_widget_selector ] = array( + 'color' => esc_attr( $widget_content_color ), + ); + $transparent_header_builder_desktop_css[ $transparent_header_widget_selector . ' a' ] = array( + 'color' => esc_attr( $widget_link_color ), + ); + $transparent_header_builder_desktop_css[ $transparent_header_widget_selector . ' a:hover' ] = array( + 'color' => esc_attr( $widget_link_hover_color ), + ); + + if ( Astra_Builder_Helper::is_component_loaded( 'mobile-trigger', 'header', 'mobile' ) ) { + + $transparent_toggle_selector = '.ast-theme-transparent-header [data-section="section-header-mobile-trigger"]'; + + $trigger_bg = astra_get_option( 'transparent-header-toggle-btn-bg-color' ); + $trigger_border_color = astra_get_option( 'transparent-header-toggle-border-color', $trigger_bg ); + $style = astra_get_option( 'mobile-header-toggle-btn-style' ); + $default = '#ffffff'; + + if ( 'fill' !== $style ) { + $default = $theme_color; + } + + $icon_color = astra_get_option( 'transparent-header-toggle-btn-color' ); + + /** + * Off-Canvas CSS. + */ + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg' ] = array( + 'fill' => $icon_color, + ); + + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .mobile-menu-wrap .mobile-menu' ] = array( + // Color. + 'color' => $icon_color, + ); + + if ( 'fill' === $style ) { + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill' ] = array( + 'background' => esc_attr( $trigger_bg ), + ); + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-fill, ' . $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array( + // Color & Border. + 'color' => esc_attr( $icon_color ), + 'border' => 'none', + ); + } elseif ( 'outline' === $style ) { + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-outline' ] = array( + // Background. + 'background' => 'transparent', + 'color' => esc_attr( $icon_color ), + 'border-color' => $trigger_border_color, + ); + } else { + $transparent_header_builder_desktop_css[ $transparent_toggle_selector . ' .ast-button-wrap .ast-mobile-menu-trigger-minimal' ] = array( + 'background' => 'transparent', + ); + } + } + + $parse_css .= astra_parse_css( $transparent_header_builder_desktop_css ); + + /** + * Max-width: Tablet Breakpoint CSS. + */ + $transparent_header_builder_tablet_css = array( + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( + 'background' => esc_attr( $social_bg_color['tablet'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( + 'fill' => esc_attr( $social_color['tablet'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( + 'background' => esc_attr( $social_bg_hover_color['tablet'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( + 'fill' => esc_attr( $social_hover_color['tablet'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( + 'color' => esc_attr( $social_color['tablet'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( + 'color' => esc_attr( $social_hover_color['tablet'] ), + ), + ); + + $parse_css .= astra_parse_css( $transparent_header_builder_tablet_css, '', astra_get_tablet_breakpoint() ); + + /** + * Max-width: Mobile Breakpoint CSS. + */ + $transparent_header_builder_mobile_css = array( + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element' => array( + 'background' => esc_attr( $social_bg_color['mobile'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg' => array( + 'fill' => esc_attr( $social_color['mobile'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover' => array( + 'background' => esc_attr( $social_bg_hover_color['mobile'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg' => array( + 'fill' => esc_attr( $social_hover_color['mobile'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element .social-item-label' => array( + 'color' => esc_attr( $social_color['mobile'] ), + ), + '.ast-theme-transparent-header .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element:hover .social-item-label' => array( + 'color' => esc_attr( $social_hover_color['mobile'] ), + ), + ); + + $parse_css .= astra_parse_css( $transparent_header_builder_mobile_css, '', astra_get_mobile_breakpoint() ); + } + + if ( self::astra_list_block_vertical_spacing() ) { + $list_spacing_css = array( + '.entry-content li > p' => array( + 'margin-bottom' => 0, + ), + ); + $parse_css .= astra_parse_css( $list_spacing_css ); + } + + if ( self::astra_fullwidth_sidebar_support() ) { + if ( 'page-builder' == $ast_container_layout ) { + add_filter( + 'astra_page_layout', + function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found + return 'no-sidebar'; + } + ); + } + } + + $parse_css .= $dynamic_css; + $custom_css = astra_get_option( 'custom-css' ); + + if ( '' != $custom_css ) { + $parse_css .= $custom_css; + } + + // trim white space for faster page loading. + $parse_css = Astra_Enqueue_Scripts::trim_css( $parse_css ); + + return apply_filters( 'astra_theme_dynamic_css', $parse_css ); + + } + + /** + * Return post meta CSS + * + * @param string $dynamic_css Astra Dynamic CSS. + * @param string $dynamic_css_filtered Astra Dynamic CSS Filters. + * @return mixed Return the CSS. + */ + public static function return_meta_output( $dynamic_css, $dynamic_css_filtered = '' ) { + + /** + * - Page Layout + * + * - Sidebar Positions CSS + */ + $secondary_width = absint( astra_get_option( 'site-sidebar-width' ) ); + $primary_width = absint( 100 - $secondary_width ); + $meta_style = ''; + + // Header Separator. + $header_separator = astra_get_option( 'header-main-sep' ); + $header_separator_color = astra_get_option( 'header-main-sep-color' ); + + $meta_style = array( + '.ast-header-break-point .main-header-bar' => array( + 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), + 'border-bottom-color' => esc_attr( $header_separator_color ), + ), + ); + + $parse_css = astra_parse_css( $meta_style ); + + $meta_style = array( + '.main-header-bar' => array( + 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), + 'border-bottom-color' => esc_attr( $header_separator_color ), + ), + ); + + $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); + + if ( 'no-sidebar' !== astra_page_layout() ) : + + $meta_style = array( + '#primary' => array( + 'width' => astra_get_css_value( $primary_width, '%' ), + ), + '#secondary' => array( + 'width' => astra_get_css_value( strval( $secondary_width ), '%' ), + ), + ); + + $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); + + endif; + + if ( false === self::astra_submenu_below_header_fix() ) : + // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. + // Also restore the padding to class `main-header-bar`. + $submenu_below_header = array( + '.ast-flex' => array( + '-webkit-align-content' => 'center', + '-ms-flex-line-pack' => 'center', + 'align-content' => 'center', + '-webkit-box-align' => 'center', + '-webkit-align-items' => 'center', + '-moz-box-align' => 'center', + '-ms-flex-align' => 'center', + 'align-items' => 'center', + ), + '.main-header-bar' => array( + 'padding' => '1em 0', + ), + '.ast-site-identity' => array( + 'padding' => '0', + ), + // CSS to open submenu just below menu. + '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( + '-webkit-align-content' => 'center', + '-ms-flex-line-pack' => 'center', + 'align-content' => 'center', + '-webkit-box-align' => 'center', + '-webkit-align-items' => 'center', + '-moz-box-align' => 'center', + '-ms-flex-align' => 'center', + 'align-items' => 'center', + ), + ); + + $parse_css .= astra_parse_css( $submenu_below_header ); + + else : + // `.menu-item` required display:flex, although weight of this css increases because of which custom CSS added from child themes to be not working. + // Hence this is added to dynamic CSS which will be applied only if this filter `astra_submenu_below_header_fix` is enabled. + // @see https://github.com/brainstormforce/astra/pull/828 + $submenu_below_header = array( + '.main-header-menu .menu-item, #astra-footer-menu .menu-item, .main-header-bar .ast-masthead-custom-menu-items' => array( + '-js-display' => 'flex', + 'display' => '-webkit-box', + 'display' => '-webkit-flex', + 'display' => '-moz-box', + 'display' => '-ms-flexbox', + 'display' => 'flex', + '-webkit-box-pack' => 'center', + '-webkit-justify-content' => 'center', + '-moz-box-pack' => 'center', + '-ms-flex-pack' => 'center', + 'justify-content' => 'center', + '-webkit-box-orient' => 'vertical', + '-webkit-box-direction' => 'normal', + '-webkit-flex-direction' => 'column', + '-moz-box-orient' => 'vertical', + '-moz-box-direction' => 'normal', + '-ms-flex-direction' => 'column', + 'flex-direction' => 'column', + ), + '.main-header-menu > .menu-item > .menu-link, #astra-footer-menu > .menu-item > .menu-link' => array( + 'height' => '100%', + '-webkit-box-align' => 'center', + '-webkit-align-items' => 'center', + '-moz-box-align' => 'center', + '-ms-flex-align' => 'center', + 'align-items' => 'center', + '-js-display' => 'flex', + 'display' => '-webkit-box', + 'display' => '-webkit-flex', + 'display' => '-moz-box', + 'display' => '-ms-flexbox', + 'display' => 'flex', + ), + ); + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $submenu_below_header['.ast-primary-menu-disabled .main-header-bar .ast-masthead-custom-menu-items'] = array( + 'flex' => 'unset', + ); + } + + $parse_css .= astra_parse_css( $submenu_below_header ); + + endif; + + if ( false === self::astra_submenu_open_below_header_fix() ) { + // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. + // Also restore the padding to class `main-header-bar`. + $submenu_below_header = array( + // CSS to open submenu just below menu. + '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( + '-webkit-align-content' => 'center', + '-ms-flex-line-pack' => 'center', + 'align-content' => 'center', + '-webkit-box-align' => 'center', + '-webkit-align-items' => 'center', + '-moz-box-align' => 'center', + '-ms-flex-align' => 'center', + 'align-items' => 'center', + ), + ); + + $parse_css .= astra_parse_css( $submenu_below_header ); + } + + $submenu_toggle = ''; + $is_site_rtl = is_rtl(); + + if ( false === Astra_Icons::is_svg_icons() ) { + // Update styles depend on RTL sites. + $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; + $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; + $default_left_rtl_right = 'left'; + $default_right_rtl_left = 'right'; + if ( $is_site_rtl ) { + $transform_svg_style = 'translate(0,-50%) rotate(90deg)'; + $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; + $default_left_rtl_right = 'right'; + $default_right_rtl_left = 'left'; + } + $submenu_toggle = array( + // HFB / Old Header Footer - CSS compatibility when SVGs are disabled. + '.main-header-menu .sub-menu .menu-item.menu-item-has-children > .menu-link:after' => array( + 'position' => 'absolute', + $default_right_rtl_left => '1em', + 'top' => '50%', + 'transform' => $transform_svg_style, + ), + '.ast-header-break-point .main-header-bar .main-header-bar-navigation .page_item_has_children > .ast-menu-toggle::before, .ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before, .ast-mobile-popup-drawer .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle::before, .ast-header-break-point .ast-mobile-header-wrap .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before' => array( + 'font-weight' => 'bold', + 'content' => '"\e900"', + 'font-family' => 'Astra', + 'text-decoration' => 'inherit', + 'display' => 'inline-block', + ), + '.ast-header-break-point .main-navigation ul.sub-menu .menu-item .menu-link:before' => array( + 'content' => '"\e900"', + 'font-family' => 'Astra', + 'font-size' => '.65em', + 'text-decoration' => 'inherit', + 'display' => 'inline-block', + 'transform' => $transform_nested_svg_transform, + 'margin-' . $default_right_rtl_left => '5px', + ), + '.widget_search .search-form:after' => array( + 'font-family' => 'Astra', + 'font-size' => '1.2em', + 'font-weight' => 'normal', + 'content' => '"\e8b6"', + 'position' => 'absolute', + 'top' => '50%', + $default_right_rtl_left => '15px', + 'transform' => 'translate(0, -50%)', + ), + '.astra-search-icon::before' => array( + 'content' => '"\e8b6"', + 'font-family' => 'Astra', + 'font-style' => 'normal', + 'font-weight' => 'normal', + 'text-decoration' => 'inherit', + 'text-align' => 'center', + '-webkit-font-smoothing' => 'antialiased', + '-moz-osx-font-smoothing' => 'grayscale', + 'z-index' => '3', + ), + '.main-header-bar .main-header-bar-navigation .page_item_has_children > a:after, .main-header-bar .main-header-bar-navigation .menu-item-has-children > a:after, .menu-item-has-children .ast-header-navigation-arrow:after' => array( + 'content' => '"\e900"', + 'display' => 'inline-block', + 'font-family' => 'Astra', + 'font-size' => '9px', + 'font-size' => '.6rem', + 'font-weight' => 'bold', + 'text-rendering' => 'auto', + '-webkit-font-smoothing' => 'antialiased', + '-moz-osx-font-smoothing' => 'grayscale', + 'margin-' . $default_left_rtl_right => '10px', + 'line-height' => 'normal', + ), + + '.menu-item-has-children .sub-menu .ast-header-navigation-arrow:after' => array( + 'margin-left' => '0', + ), + + '.ast-mobile-popup-drawer .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before' => array( + 'transform' => 'rotateX(180deg)', + ), + '.ast-header-break-point .main-header-bar-navigation .menu-item-has-children > .menu-link:after' => array( + 'display' => 'none', + ), + ); + } else { + if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { + // Update styles depend on RTL sites. + $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; + $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; + $default_left_rtl_right = 'left'; + $default_right_rtl_left = 'right'; + if ( $is_site_rtl ) { + $transform_svg_style = 'translate(0,-50%) rotate(900deg)'; + $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; + $default_left_rtl_right = 'right'; + $default_right_rtl_left = 'left'; + } + $submenu_toggle = array( + // Old Header Footer - SVG Support. + '.ast-desktop .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow svg' => array( + 'position' => 'absolute', + $default_right_rtl_left => '.6em', + 'top' => '50%', + 'transform' => $transform_svg_style, + ), + '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( + $default_left_rtl_right => '.1em', + 'top' => '.1em', + 'transform' => $transform_nested_svg_transform, + ), + ); + } else { + $transform_svg_style = 'translate(0, -2px) rotateZ(270deg)'; + $default_left_rtl_right = 'left'; + if ( $is_site_rtl ) { + $transform_svg_style = 'translate(0, -2px) rotateZ(90deg)'; + $default_left_rtl_right = 'right'; + } + $submenu_toggle = array( + // New Header Footer - SVG Support. + '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( + 'top' => '.2em', + 'margin-top' => '0px', + 'margin-' . $default_left_rtl_right => '0px', + 'width' => '.65em', + 'transform' => $transform_svg_style, + ), + '.ast-mobile-popup-content .ast-submenu-expanded > .ast-menu-toggle' => array( + 'transform' => 'rotateX(180deg)', + 'overflow-y' => 'auto', + ), + ); + } + } + + $parse_css .= astra_parse_css( $submenu_toggle ); + + $dynamic_css .= $parse_css; + + return $dynamic_css; + } + + /** + * Conditionally iclude CSS Selectors with anchors in the typography settings. + * + * Historically Astra adds Colors/Typography CSS for headings and anchors for headings but this causes irregularities with the expected output. + * For eg Link color does not work for the links inside headings. + * + * If filter `astra_include_achors_in_headings_typography` is set to true or Astra Option `include-headings-in-typography` is set to true, This will return selectors with anchors. Else This will return selectors without anchors. + * + * @access Private. + * + * @since 1.4.9 + * @param String $selectors_with_achors CSS Selectors with anchors. + * @param String $selectors_without_achors CSS Selectors withour annchors. + * + * @return String CSS Selectors based on the condition of filters. + */ + private static function conditional_headings_css_selectors( $selectors_with_achors, $selectors_without_achors ) { + + if ( true === self::anchors_in_css_selectors_heading() ) { + return $selectors_with_achors; + } else { + return $selectors_without_achors; + } + + } + + /** + * Check if CSS selectors in Headings should use anchors. + * + * @since 1.4.9 + * @return boolean true if it should include anchors, False if not. + */ + public static function anchors_in_css_selectors_heading() { + + if ( true === astra_get_option( 'include-headings-in-typography' ) && + true === apply_filters( + 'astra_include_achors_in_headings_typography', + true + ) ) { + + return true; + } + + return false; + } + + /** + * Check backwards compatibility CSS for loading submenu below the header needs to be added. + * + * @since 1.5.0 + * @return boolean true if CSS should be included, False if not. + */ + public static function astra_submenu_below_header_fix() { + + if ( false === astra_get_option( 'submenu-below-header', true ) && + false === apply_filters( + 'astra_submenu_below_header_fix', + false + ) ) { + + return false; + } + return true; + } + + /** + * Check backwards compatibility CSS for loading submenu below the header needs to be added. + * + * @since 2.1.3 + * @return boolean true if submenu below header fix is to be loaded, False if not. + */ + public static function astra_submenu_open_below_header_fix() { + + if ( false === astra_get_option( 'submenu-open-below-header', true ) && + false === apply_filters( + 'astra_submenu_open_below_header_fix', + false + ) ) { + + return false; + } + return true; + } + + /** + * Check backwards compatibility to not load default CSS for the button styling of Page Builders. + * + * @since 2.2.0 + * @return boolean true if button style CSS should be loaded, False if not. + */ + public static function page_builder_button_style_css() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['pb-button-color-compatibility'] = ( isset( $astra_settings['pb-button-color-compatibility'] ) && false === $astra_settings['pb-button-color-compatibility'] ) ? false : true; + return apply_filters( 'astra_page_builder_button_style_css', $astra_settings['pb-button-color-compatibility'] ); + } + + /** + * Elementor Theme Style - Button Text Color compatibility. This should be looked in the future for proper solution. + * + * Reference: https://github.com/elementor/elementor/issues/10733 + * Reference: https://github.com/elementor/elementor/issues/10739 + * + * @since 2.3.3 + * + * @return mixed + */ + public static function is_elementor_kit_button_color_set() { + $ele_btn_global_text_color = false; + $ele_kit_id = get_option( 'elementor_active_kit', false ); + if ( false !== $ele_kit_id ) { + $ele_global_btn_data = get_post_meta( $ele_kit_id, '_elementor_page_settings' ); + // Elementor Global theme style button text color fetch value from database. + $ele_btn_global_text_color = isset( $ele_global_btn_data[0]['button_text_color'] ) ? $ele_global_btn_data[0]['button_text_color'] : $ele_btn_global_text_color; + } + return $ele_btn_global_text_color; + } + + /** + * Check if Elementor - Disable Default Colors or Disable Default Fonts checked or unchecked. + * + * @since 2.3.3 + * + * @return mixed String if any of the settings are enabled. False if no settings are enabled. + */ + public static function elementor_default_color_font_setting() { + $ele_default_color_setting = get_option( 'elementor_disable_color_schemes' ); + $ele_default_typo_setting = get_option( 'elementor_disable_typography_schemes' ); + + if ( ( 'yes' === $ele_default_color_setting && 'yes' === $ele_default_typo_setting ) || ( false === self::is_elementor_default_color_font_comp() ) ) { + return 'color-typo'; + } + + if ( 'yes' === $ele_default_color_setting ) { + return 'color'; + } + + if ( 'yes' === $ele_default_typo_setting ) { + return 'typo'; + } + + return false; + + } + + /** + * For existing users, do not reflect direct change. + * + * @since 3.6.5 + * @return boolean true if WordPress-5.8 compatibility enabled, False if not. + */ + public static function is_block_editor_support_enabled() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['support-block-editor'] = ( isset( $astra_settings['support-block-editor'] ) && false === $astra_settings['support-block-editor'] ) ? false : true; + return apply_filters( 'astra_has_block_editor_support', $astra_settings['support-block-editor'] ); + } + + /** + * For existing users, do not provide Elementor Default Color Typo settings compatibility by default. + * + * @since 2.3.3 + * @return boolean true if elementor default color and typo setting should work with theme, False if not. + */ + public static function is_elementor_default_color_font_comp() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['ele-default-color-typo-setting-comp'] = ( isset( $astra_settings['ele-default-color-typo-setting-comp'] ) && false === $astra_settings['ele-default-color-typo-setting-comp'] ) ? false : true; + return apply_filters( 'astra_elementor_default_color_font_comp', $astra_settings['ele-default-color-typo-setting-comp'] ); + } + + /** + * For existing users, do not provide list vertical spacing. + * + * @since 4.1.6 + * @return boolean true for new users, false for old users. + */ + public static function astra_list_block_vertical_spacing() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['list-block-vertical-spacing'] = isset( $astra_settings['list-block-vertical-spacing'] ) ? false : true; + return apply_filters( 'astra_list_block_vertical_spacing', $astra_settings['list-block-vertical-spacing'] ); + } + + /** + * For existing users, do not load the wide/full width image CSS by default. + * + * @since 2.4.4 + * @return boolean false if it is an existing user , true if not. + */ + public static function gtn_image_group_css_comp() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['gtn-full-wide-image-grp-css'] = isset( $astra_settings['gtn-full-wide-image-grp-css'] ) ? false : true; + return apply_filters( 'astra_gutenberg_image_group_style_support', $astra_settings['gtn-full-wide-image-grp-css'] ); + } + + /** + * Do not apply new wide/full Group and Cover block CSS for existing users. + * + * @since 2.5.0 + * @return boolean false if it is an existing user , true if not. + */ + public static function gtn_group_cover_css_comp() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['gtn-full-wide-grp-cover-css'] = isset( $astra_settings['gtn-full-wide-grp-cover-css'] ) ? false : true; + return apply_filters( 'astra_gtn_group_cover_css_comp', $astra_settings['gtn-full-wide-grp-cover-css'] ); + } + + /** + * Do not apply new Group, Column and Media & Text block CSS for existing users. + * + * @since 2.6.0 + * @return boolean false if it is an existing user , true if not. + */ + public static function gutenberg_core_blocks_css_comp() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['guntenberg-core-blocks-comp-css'] = isset( $astra_settings['guntenberg-core-blocks-comp-css'] ) ? false : true; + return apply_filters( 'astra_gutenberg_core_blocks_design_compatibility', $astra_settings['guntenberg-core-blocks-comp-css'] ); + } + + /** + * Do not apply new Group, Column and Media & Text block CSS for existing users. + * + * CSS for adding spacing|padding support to Gutenberg Media-&-Text Block + * + * @since 2.6.1 + * @return boolean false if it is an existing user , true if not. + */ + public static function gutenberg_media_text_block_css_compat() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['guntenberg-media-text-block-padding-css'] = isset( $astra_settings['guntenberg-media-text-block-padding-css'] ) ? false : true; + return apply_filters( 'astra_gutenberg_media_text_block_spacing_compatibility', $astra_settings['guntenberg-media-text-block-padding-css'] ); + } + + /** + * Gutenberg pattern compatibility changes. + * + * @since 3.3.0 + * @return boolean false if it is an existing user , true if not. + */ + public static function gutenberg_core_patterns_compat() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['guntenberg-button-pattern-compat-css'] = isset( $astra_settings['guntenberg-button-pattern-compat-css'] ) ? false : true; + return apply_filters( 'astra_gutenberg_patterns_compatibility', $astra_settings['guntenberg-button-pattern-compat-css'] ); + } + + /** + * Font CSS support for widget-title heading fonts & fonts which are not working in editor. + * + * 1. Adding Font-weight support to widget titles. + * 2. Customizer font CSS not supporting in editor. + * + * @since 3.6.0 + * @return boolean false if it is an existing user, true if not. + */ + public static function support_font_css_to_widget_and_in_editor() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['can-support-widget-and-editor-fonts'] = isset( $astra_settings['can-support-widget-and-editor-fonts'] ) ? false : true; + return apply_filters( 'astra_heading_fonts_typo_support', $astra_settings['can-support-widget-and-editor-fonts'] ); + } + + /** + * Whether to remove or not following CSS which restricts logo size on responsive devices. + * + * @see https://github.com/brainstormforce/astra/commit/d09f63336b73d58c8f8951726edbc90671d7f419 + * + * @since 3.6.0 + * @return boolean false if it is an existing user, true if not. + */ + public static function remove_logo_max_width_mobile_static_css() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['can-remove-logo-max-width-css'] = isset( $astra_settings['can-remove-logo-max-width-css'] ) ? false : true; + return apply_filters( 'astra_remove_logo_max_width_css', $astra_settings['can-remove-logo-max-width-css'] ); + } + + /** + * Remove text-decoration: underline; CSS for builder specific elements to maintain their UI/UX better. + * + * 1. UAG : Marketing Button, Info Box CTA, MultiButtons, Tabs. + * 2. UABB : Button, Slide Box CTA, Flip box CTA, Info Banner, Posts, Info Circle, Call to Action, Subscribe Form. + * + * @since 3.6.9 + */ + public static function unset_builder_elements_underline() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $unset_builder_elements_underline = isset( $astra_settings['unset-builder-elements-underline'] ) ? false : true; + return apply_filters( 'astra_unset_builder_elements_underline', $unset_builder_elements_underline ); + } + + /** + * Block editor experience improvements css introduced with v4.0.0. + * + * @since 4.0.0 + * @return boolean false if it is an existing user , true if not. + */ + public static function v4_block_editor_compat() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['v4-block-editor-compat'] = isset( $astra_settings['v4-block-editor-compat'] ) ? false : true; + return apply_filters( 'astra_v4_block_editor_compat', $astra_settings['v4-block-editor-compat'] ); + } + + /** + * Load sidebar static CSS when it is enabled. + * + * @since 3.0.0 + */ + public static function load_sidebar_static_css() { + + $update_customizer_strctural_defaults = astra_check_is_structural_setup(); + $secondary_li_bottom_spacing = ( true === $update_customizer_strctural_defaults ) ? '0.75em' : '0.25em'; + $is_site_rtl = is_rtl() ? true : false; + $ltr_left = $is_site_rtl ? esc_attr( 'right' ) : esc_attr( 'left' ); + $ltr_right = $is_site_rtl ? esc_attr( 'left' ) : esc_attr( 'right' ); + + $sidebar_static_css = ' + #secondary { + margin: 4em 0 2.5em; + word-break: break-word; + line-height: 2; + } + #secondary li { + margin-bottom: ' . esc_attr( $secondary_li_bottom_spacing ) . '; + } + #secondary li:last-child { + margin-bottom: 0; + } + @media (max-width: 768px) { + .js_active .ast-plain-container.ast-single-post #secondary { + margin-top: 1.5em; + } + } + .ast-separate-container.ast-two-container #secondary .widget { + background-color: #fff; + padding: 2em; + margin-bottom: 2em; + } + '; + + if ( defined( 'CFVSW_VER' ) ) { + $sidebar_static_css .= ' + #secondary .cfvsw-filters li{ + margin-bottom: 0; + margin-top: 0; + } + '; + } + + $sidebar_static_css .= ' + @media (min-width: 993px) { + .ast-left-sidebar #secondary { + padding-' . $ltr_right . ': 60px; + } + .ast-right-sidebar #secondary { + padding-' . $ltr_left . ': 60px; + } + } + @media (max-width: 993px) { + .ast-right-sidebar #secondary { + padding-' . $ltr_left . ': 30px; + } + .ast-left-sidebar #secondary { + padding-' . $ltr_right . ': 30px; + } + } + '; + + if ( $update_customizer_strctural_defaults ) { + $sidebar_static_css .= ' + @media (min-width: 993px) { + .ast-page-builder-template.ast-left-sidebar #secondary { + padding-' . $ltr_left . ': 60px; + } + .ast-page-builder-template.ast-right-sidebar #secondary { + padding-' . $ltr_right . ': 60px; + } + } + @media (max-width: 993px) { + .ast-page-builder-template.ast-right-sidebar #secondary { + padding-' . $ltr_right . ': 30px; + } + .ast-page-builder-template.ast-left-sidebar #secondary { + padding-' . $ltr_left . ': 30px; + } + + } + '; + } + + return $sidebar_static_css; + } + + /** + * Astra Spectra Gutenberg Compatibility CSS. + * + * @since 3.9.4 + * @return boolean false if it is an existing user , true if not. + */ + public static function spectra_gutenberg_compat_css() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['spectra-gutenberg-compat-css'] = isset( $astra_settings['spectra-gutenberg-compat-css'] ) ? false : true; + return apply_filters( 'astra_spectra_gutenberg_compat_css', $astra_settings['spectra-gutenberg-compat-css'] ); + } + + /** + * Load static card(EDD/Woo) CSS. + * + * @since 3.0.0 + * @return string static css for Woocommerce and EDD card. + */ + public static function load_cart_static_css() { + + $theme_color = astra_get_option( 'theme-color' ); + $btn_border_color = astra_get_option( 'theme-button-border-group-border-color' ); + $btn_bg_color = astra_get_option( 'button-bg-color', $theme_color ); + $btn_border_h_color = astra_get_option( 'theme-button-border-group-border-h-color' ); + $link_h_color = astra_get_option( 'link-h-color' ); + $btn_bg_h_color = astra_get_option( 'button-bg-h-color', '', $link_h_color ); + + $normal_border_color = $btn_border_color ? $btn_border_color : $btn_bg_color; + $hover_border_color = $btn_border_h_color ? $btn_border_h_color : $btn_bg_h_color; + $is_site_rtl = is_rtl(); + $ltr_left = $is_site_rtl ? 'right' : 'left'; + $ltr_right = $is_site_rtl ? 'left' : 'right'; + + $cart_static_css = ' + .ast-site-header-cart .cart-container, + .ast-edd-site-header-cart .ast-edd-cart-container { + transition: all 0.2s linear; + } + + .ast-site-header-cart .ast-woo-header-cart-info-wrap, + .ast-edd-site-header-cart .ast-edd-header-cart-info-wrap { + padding: 0 6px 0 2px; + font-weight: 600; + line-height: 2.7; + display: inline-block; + } + + .ast-site-header-cart i.astra-icon { + font-size: 20px; + font-size: 1.3em; + font-style: normal; + font-weight: normal; + position: relative; + padding: 0 2px; + } + + .ast-site-header-cart i.astra-icon.no-cart-total:after, + .ast-header-break-point.ast-header-custom-item-outside .ast-edd-header-cart-info-wrap, + .ast-header-break-point.ast-header-custom-item-outside .ast-woo-header-cart-info-wrap { + display: none; + } + + .ast-site-header-cart.ast-menu-cart-fill i.astra-icon, + .ast-edd-site-header-cart.ast-edd-menu-cart-fill span.astra-icon { + font-size: 1.1em; + } + + .astra-cart-drawer { + position: fixed; + display: block; + visibility: hidden; + overflow: auto; + -webkit-overflow-scrolling: touch; + z-index: 10000; + background-color: var(--ast-global-color-5); + transform: translate3d(0, 0, 0); + opacity: 0; + will-change: transform; + transition: 0.25s ease; + } + + .woocommerce-mini-cart { + position: relative; + } + + .woocommerce-mini-cart::before { + content: ""; + transition: .3s; + } + + .woocommerce-mini-cart.ajax-mini-cart-qty-loading::before { + position: absolute; + top: 0; + left: 0; + right: 0; + width: 100%; + height: 100%; + z-index: 5; + background-color: var(--ast-global-color-5); + opacity: .5; + } + + .astra-cart-drawer { + width: 460px; + height: 100%; + ' . $ltr_left . ': 100%; + top: 0px; + opacity: 1; + transform: translate3d(0%, 0, 0); + } + + .astra-cart-drawer .astra-cart-drawer-header { + position: absolute; + width: 100%; + text-align: ' . $ltr_left . '; + text-transform: inherit; + font-weight: 500; + border-bottom: 1px solid var(--ast-border-color); + padding: 1.34em; + line-height: 1; + z-index: 1; + max-height: 3.5em; + } + + .astra-cart-drawer .astra-cart-drawer-header .astra-cart-drawer-title { + color: var(--ast-global-color-2); + } + + .astra-cart-drawer .astra-cart-drawer-close .ast-close-svg { + width: 22px; + height: 22px; + } + + .astra-cart-drawer .astra-cart-drawer-content, + .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart, + .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content { + height: 100%; + } + + .astra-cart-drawer .astra-cart-drawer-content { + padding-top: 3.5em; + } + + .astra-cart-drawer .ast-mini-cart-price-wrap .multiply-symbol{ + padding: 0 0.5em; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .ast-mini-cart-price-wrap { + float: ' . $ltr_right . '; + margin-top: 0.5em; + max-width: 50%; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart-item .variation dt { + font-weight: 500; + } + + .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content { + display: flex; + flex-direction: column; + overflow: hidden; + } + + .astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content ul li { + min-height: 60px; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total { + display: flex; + justify-content: space-between; + padding: 0.7em 1.34em; + margin-bottom: 0; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong, + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount { + width: 50%; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart { + padding: 1.3em; + flex: 1; + overflow: auto; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart a.remove { + width: 20px; + height: 20px; + line-height: 16px; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total { + padding: 1em 1.5em; + margin: 0; + text-align: center; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons { + padding: 1.34em; + text-align: center; + margin-bottom: 0; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button.checkout { + margin-' . $ltr_right . ': 0; + } + + .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a{ + width: 100%; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a:nth-last-child(1) { + margin-bottom: 0; + } + + .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item { + padding: .5em 2.6em .5em 1.5em; + } + + .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart::after { + width: 20px; + height: 20px; + line-height: 16px; + } + + .astra-cart-drawer .astra-cart-drawer-content .edd-cart-number-of-items { + padding: 1em 1.5em 1em 1.5em; + margin-bottom: 0; + text-align: center; + } + + .astra-cart-drawer .astra-cart-drawer-content .edd_total { + padding: .5em 1.5em; + margin: 0; + text-align: center; + } + + .astra-cart-drawer .astra-cart-drawer-content .cart_item.edd_checkout { + padding: 1em 1.5em 0; + text-align: center; + margin-top: 0; + } + .astra-cart-drawer .widget_shopping_cart_content > .woocommerce-mini-cart__empty-message { + display: none; + } + .astra-cart-drawer .woocommerce-mini-cart__empty-message, + .astra-cart-drawer .cart_item.empty { + text-align: center; + margin-top: 10px; + } + + body.admin-bar .astra-cart-drawer { + padding-top: 32px; + } + @media (max-width: 782px) { + body.admin-bar .astra-cart-drawer { + padding-top: 46px; + } + } + + .ast-mobile-cart-active body.ast-hfb-header { + overflow: hidden; + } + + .ast-mobile-cart-active .astra-mobile-cart-overlay { + opacity: 1; + cursor: pointer; + visibility: visible; + z-index: 999; + } + + .ast-mini-cart-empty-wrap { + display: flex; + flex-wrap: wrap; + height: 100%; + align-items: flex-end; + } + + .ast-mini-cart-empty-wrap > * { + width: 100%; + } + + .astra-cart-drawer-content .ast-mini-cart-empty { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + text-align: center; + } + + .astra-cart-drawer-content .ast-mini-cart-empty .ast-mini-cart-message { + display: flex; + align-items: center; + justify-content: center; + height: 100%; + padding: 1.34em; + } + + @media (min-width: 546px) { + .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons { + display: flex; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons a, + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content.ast-large-view .woocommerce-mini-cart__buttons a.checkout { + margin-top: 0; + margin-bottom: 0; + } + } + + .ast-site-header-cart .cart-container:focus-visible { + display: inline-block; + } + '; + if ( is_rtl() ) { + $cart_static_css .= ' + .ast-site-header-cart i.astra-icon:after { + content: attr(data-cart-total); + position: absolute; + font-family: ' . astra_get_font_family( astra_body_font_family() ) . '; + font-style: normal; + top: -10px; + left: -12px; + font-weight: bold; + box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3); + font-size: 11px; + padding-right: 0px; + padding-left: 2px; + line-height: 17px; + letter-spacing: -.5px; + height: 18px; + min-width: 18px; + border-radius: 99px; + text-align: center; + z-index: 3; + } + li.woocommerce-custom-menu-item .ast-site-header-cart i.astra-icon:after, + li.edd-custom-menu-item .ast-edd-site-header-cart span.astra-icon:after { + padding-right: 2px; + } + .astra-cart-drawer .astra-cart-drawer-close { + position: absolute; + top: 0.5em; + left: 0; + border: none; + margin: 0; + padding: .6em 1em .4em; + color: var(--ast-global-color-2); + background-color: transparent; + } + .astra-mobile-cart-overlay { + background-color: rgba(0, 0, 0, 0.4); + position: fixed; + top: 0; + left: 0; + bottom: 0; + right: 0; + visibility: hidden; + opacity: 0; + transition: opacity 0.2s ease-in-out; + } + .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart { + left: 1.2em; + } + .ast-header-break-point.ast-woocommerce-cart-menu.ast-hfb-header .ast-cart-menu-wrap, .ast-header-break-point.ast-hfb-header .ast-cart-menu-wrap, + .ast-header-break-point .ast-edd-site-header-cart-wrap .ast-edd-cart-menu-wrap { + width: auto; + height: 2em; + font-size: 1.4em; + line-height: 2; + vertical-align: middle; + text-align: left; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping) { + margin-left: 10px; + background-color: transparent; + border: 2px solid var( --ast-global-color-0 ); + color: var( --ast-global-color-0 ); + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover { + border-color: var( --ast-global-color-1 ); + color: var( --ast-global-color-1 ); + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout { + margin-right: 0; + margin-top: 10px; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong{ + padding-left: .5em; + text-align: right; + font-weight: 500; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount{ + text-align: left; + } + + .astra-cart-drawer.active { + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + '; + + + } else { + $cart_static_css .= ' + .ast-site-header-cart i.astra-icon:after { + content: attr(data-cart-total); + position: absolute; + font-family: ' . astra_get_font_family( astra_body_font_family() ) . '; + font-style: normal; + top: -10px; + right: -12px; + font-weight: bold; + box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3); + font-size: 11px; + padding-left: 0px; + padding-right: 2px; + line-height: 17px; + letter-spacing: -.5px; + height: 18px; + min-width: 18px; + border-radius: 99px; + text-align: center; + z-index: 3; + } + li.woocommerce-custom-menu-item .ast-site-header-cart i.astra-icon:after, + li.edd-custom-menu-item .ast-edd-site-header-cart span.astra-icon:after { + padding-left: 2px; + } + .astra-cart-drawer .astra-cart-drawer-close { + position: absolute; + top: 0.5em; + right: 0; + border: none; + margin: 0; + padding: .6em 1em .4em; + color: var(--ast-global-color-2); + background-color: transparent; + } + .astra-mobile-cart-overlay { + background-color: rgba(0, 0, 0, 0.4); + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + visibility: hidden; + opacity: 0; + transition: opacity 0.2s ease-in-out; + } + .astra-cart-drawer .astra-cart-drawer-content .edd-cart-item .edd-remove-from-cart { + right: 1.2em; + } + .ast-header-break-point.ast-woocommerce-cart-menu.ast-hfb-header .ast-cart-menu-wrap, .ast-header-break-point.ast-hfb-header .ast-cart-menu-wrap, + .ast-header-break-point .ast-edd-site-header-cart-wrap .ast-edd-cart-menu-wrap { + width: auto; + height: 2em; + font-size: 1.4em; + line-height: 2; + vertical-align: middle; + text-align: right; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping) { + margin-right: 10px; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping), + .ast-site-header-cart .widget_shopping_cart .buttons .button:not(.checkout), + .ast-site-header-cart .ast-site-header-cart-data .ast-mini-cart-empty .woocommerce-mini-cart__buttons a.button { + background-color: transparent; + border-style: solid; + border-width: 1px; + border-color: ' . $normal_border_color . '; + color: ' . esc_attr( $normal_border_color ) . '; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons .button:not(.checkout):not(.ast-continue-shopping):hover, + .ast-site-header-cart .widget_shopping_cart .buttons .button:not(.checkout):hover { + border-color: ' . $hover_border_color . '; + color: ' . esc_attr( $hover_border_color ) . '; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout { + margin-left: 0; + margin-top: 10px; + border-style: solid; + border-width: 2px; + border-color: ' . $normal_border_color . '; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__buttons a.checkout:hover { + border-color: ' . $hover_border_color . '; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total strong{ + padding-right: .5em; + text-align: left; + font-weight: 500; + } + + .woocommerce-js .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total .amount{ + text-align: right; + } + + .astra-cart-drawer.active { + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + '; + } + + $cart_static_css .= ' + .ast-site-header-cart.ast-menu-cart-outline .ast-cart-menu-wrap, .ast-site-header-cart.ast-menu-cart-fill .ast-cart-menu-wrap, + .ast-edd-site-header-cart.ast-edd-menu-cart-outline .ast-edd-cart-menu-wrap, .ast-edd-site-header-cart.ast-edd-menu-cart-fill .ast-edd-cart-menu-wrap { + line-height: 1.8; + }'; + // This CSS requires in case of :before Astra icons. But in case of SVGs this loads twice that's why removed this from static & loading conditionally. + if ( false === Astra_Icons::is_svg_icons() ) { + $cart_static_css .= ' + .ast-site-header-cart .cart-container *, + .ast-edd-site-header-cart .ast-edd-cart-container * { + transition: all 0s linear; + } + '; + } + return $cart_static_css; + } + + /** + * Check is new structural things are updated. + * + * @return bool true|false. + * @since 4.0.0 + */ + public static function astra_check_default_color_typo() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_get_option_update_default_color_typo', isset( $astra_settings['update-default-color-typo'] ) ? false : true ); + } + + /** + * Check is new structural things are updated. + * + * @return bool true|false. + * @since 4.1.0 + */ + public static function astra_woo_support_global_settings() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_get_option_woo_support_global_settings', isset( $astra_settings['woo_support_global_settings'] ) ? false : true ); + } + + /** + * Dynamic CSS to make Sidebar Sticky. + * + * @return string Sticky Sidebar CSS. + * @since 4.4.0 + */ + public static function astra_sticky_sidebar_css() { + $css = ''; + if ( astra_get_option( 'site-sticky-sidebar', false ) ) { + $sidebar_sticky_css = array( + '.ast-sticky-sidebar .sidebar-main' => array( + 'top' => '50px', + 'position' => 'sticky', + 'overflow-y' => 'auto', + ), + ); + $sidebar_webkit_sticky_css = array( + '.ast-sticky-sidebar .sidebar-main' => array( + 'position' => '-webkit-sticky', + ), + ); + + $css .= astra_parse_css( + $sidebar_sticky_css, + astra_get_tablet_breakpoint( '', 1 ) + ); + + $css .= astra_parse_css( + $sidebar_webkit_sticky_css, + astra_get_tablet_breakpoint( '', 1 ) + ); + } + return $css; + } + + /** + * Check if fullwidth layout with sidebar is supported. + * Old users - yes + * New users - no + * + * @return bool true|false. + * @since 4.2.0 + */ + public static function astra_fullwidth_sidebar_support() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_get_option_fullwidth_sidebar_support', isset( $astra_settings['fullwidth_sidebar_support'] ) ? false : true ); + } + + /** + * Core Comment & Search Button Styling Compatibility. + * Old Users - Will not reflect directly. + * New Users - Direct reflection + * + * @return bool true|false. + * @since 4.2.2 + */ + public static function astra_core_form_btns_styling() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_core_form_btns_styling', isset( $astra_settings['v4-2-2-core-form-btns-styling'] ) ? false : true ); + } + + /** + * Improve full screen search Submit button style. + * + * @since 4.4.0 + * @return boolean false if it is an existing user, true if not. + */ + public static function astra_4_4_0_compatibility() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['v4-4-0-backward-option'] = isset( $astra_settings['v4-4-0-backward-option'] ) ? false : true; + return apply_filters( 'astra_addon_upgrade_fullscreen_search_submit_style', $astra_settings['v4-4-0-backward-option'] ); + } + } +} diff --git a/wp-content/themes/astra/inc/compatibility/class-astra-elementor.php b/wp-content/themes/astra/inc/compatibility/class-astra-elementor.php index 4151de150..726b5e470 100644 --- a/wp-content/themes/astra/inc/compatibility/class-astra-elementor.php +++ b/wp-content/themes/astra/inc/compatibility/class-astra-elementor.php @@ -1,544 +1,544 @@ -is_elementor_activated( $id ) ) { - - $elementor_heading_margin_comp = array( - '.elementor-widget-heading .elementor-heading-title' => array( - 'margin' => '0', - ), - '.elementor-page .ast-menu-toggle' => array( - 'color' => 'unset !important', - 'background' => 'unset !important', - ), - ); - - /* Parse CSS from array() */ - $parse_css = astra_parse_css( $elementor_heading_margin_comp ); - - $elementor_base_css = array( - '.elementor-post.elementor-grid-item.hentry' => array( - 'margin-bottom' => '0', - ), - '.woocommerce div.product .elementor-element.elementor-products-grid .related.products ul.products li.product, .elementor-element .elementor-wc-products .woocommerce[class*=\'columns-\'] ul.products li.product' => array( - 'width' => 'auto', - 'margin' => '0', - 'float' => 'none', - ), - ); - - if ( astra_can_remove_elementor_toc_margin_space() ) { - $elementor_base_css['.elementor-toc__list-wrapper'] = array( - 'margin' => 0, - ); - } - - if ( astra_can_add_styling_for_hr() ) { - $elementor_base_css['body .elementor hr'] = array( - 'background-color' => '#ccc', - 'margin' => '0', - ); - } - - // Load base static CSS when Elmentor is activated. - $parse_css .= astra_parse_css( $elementor_base_css ); - - if ( is_rtl() ) { - $elementor_rtl_support_css = array( - '.ast-left-sidebar .elementor-section.elementor-section-stretched,.ast-right-sidebar .elementor-section.elementor-section-stretched' => array( - 'max-width' => '100%', - 'right' => '0 !important', - ), - ); - } else { - $elementor_rtl_support_css = array( - '.ast-left-sidebar .elementor-section.elementor-section-stretched,.ast-right-sidebar .elementor-section.elementor-section-stretched' => array( - 'max-width' => '100%', - 'left' => '0 !important', - ), - ); - } - $parse_css .= astra_parse_css( $elementor_rtl_support_css ); - - - $dynamic_css .= $parse_css; - } - - $elementor_archive_page_css = array( - '.elementor-template-full-width .ast-container' => array( - 'display' => 'block', - ), - '.elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible' => array( - 'top' => '0 !important', - ), - ); - $dynamic_css .= astra_parse_css( $elementor_archive_page_css ); - - $dynamic_css .= astra_parse_css( - array( - '.elementor-element .elementor-wc-products .woocommerce[class*="columns-"] ul.products li.product' => array( - 'width' => 'auto', - 'margin' => '0', - ), - '.elementor-element .woocommerce .woocommerce-result-count' => array( - 'float' => 'none', - ), - ), - '', - astra_get_mobile_breakpoint() - ); - - return $dynamic_css; - } - - /** - * Elementor Content layout set as Page Builder - * - * @return void - * @since 1.0.2 - */ - public function elementor_default_setting() { - - if ( false === astra_enable_page_builder_compatibility() || 'post' == get_post_type() ) { - return; - } - - // don't modify post meta settings if we are not on Elementor's edit page. - if ( ! $this->is_elementor_editor() ) { - return; - } - - global $post; - $id = astra_get_post_id(); - - $page_builder_flag = get_post_meta( $id, '_astra_content_layout_flag', true ); - if ( isset( $post ) && empty( $page_builder_flag ) && ( is_admin() || is_singular() ) ) { - - if ( empty( $post->post_content ) && $this->is_elementor_activated( $id ) ) { - - update_post_meta( $id, '_astra_content_layout_flag', 'disabled' ); - update_post_meta( $id, 'site-post-title', 'disabled' ); - update_post_meta( $id, 'ast-title-bar-display', 'disabled' ); - update_post_meta( $id, 'ast-featured-img', 'disabled' ); - - // Compatibility with revamped layouts to update default layout to page builder. - $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); - if ( $migrated_user ) { - $content_layout = get_post_meta( $id, 'site-content-layout', true ); - } else { - $content_layout = get_post_meta( $id, 'ast-site-content-layout', true ); - } - - if ( empty( $content_layout ) || 'default' == $content_layout ) { - if ( $migrated_user ) { - update_post_meta( $id, 'site-content-layout', 'page-builder' ); - } - update_post_meta( $id, 'ast-site-content-layout', 'full-width-container' ); - } - - $sidebar_layout = get_post_meta( $id, 'site-sidebar-layout', true ); - if ( empty( $sidebar_layout ) || 'default' == $sidebar_layout ) { - update_post_meta( $id, 'site-sidebar-layout', 'no-sidebar' ); - } - - // In the preview mode, Apply the layouts using filters for Elementor Template Library. - add_filter( - 'astra_page_layout', - function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found - return 'no-sidebar'; - } - ); - - add_filter( - 'astra_get_content_layout', - function () { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found - return 'page-builder'; - } - ); - - add_filter( 'astra_the_post_title_enabled', '__return_false' ); - add_filter( 'astra_featured_image_enabled', '__return_false' ); - } - } - } - - /** - * Add z-index CSS for elementor's drag drop - * - * @return void - * @since 1.4.0 - */ - public function elementor_overlay_zindex() { - - // return if we are not on Elementor's edit page. - if ( ! $this->is_elementor_editor() ) { - return; - } - - ?> - - - db->get_edit_mode( $id ) ); - } else { - $document = Plugin::$instance->documents->get( $id ); - if ( $document ) { - return $document->is_built_with_elementor(); - } else { - return false; - } - } - } - - /** - * Check if Elementor Editor is open. - * - * @since 1.2.7 - * - * @return boolean True IF Elementor Editor is loaded, False If Elementor Editor is not loaded. - */ - private function is_elementor_editor() { - if ( ( isset( $_REQUEST['action'] ) && 'elementor' == $_REQUEST['action'] ) || isset( $_REQUEST['elementor-preview'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended - return true; - } - - return false; - } - - /** - * Display theme global colors to Elementor Global colors - * - * @since 3.7.0 - * @param object $response rest request response. - * @param array $handler Route handler used for the request. - * @param WP_REST_Request $request Request used to generate the response. - * @return object - */ - public function elementor_add_theme_colors( $response, $handler, $request ) { - - $route = $request->get_route(); - - if ( astra_maybe_disable_global_color_in_elementor() ) { - return $response; - } - - if ( '/elementor/v1/globals' != $route ) { - return $response; - } - - $global_palette = astra_get_option( 'global-color-palette' ); - $data = $response->get_data(); - $slugs = Astra_Global_Palette::get_palette_slugs(); - $labels = Astra_Global_Palette::get_palette_labels(); - - foreach ( $global_palette['palette'] as $key => $color ) { - - $slug = $slugs[ $key ]; - // Remove hyphens from slug. - $no_hyphens = str_replace( '-', '', $slug ); - - $data['colors'][ $no_hyphens ] = array( - 'id' => esc_attr( $no_hyphens ), - 'title' => 'Theme ' . $labels[ $key ], - 'value' => $color, - ); - } - - $response->set_data( $data ); - return $response; - } - - /** - * Display global paltte colors on Elementor front end Page. - * - * @since 3.7.0 - * @param object $response rest request response. - * @param array $handler Route handler used for the request. - * @param WP_REST_Request $request Request used to generate the response. - * @return object - */ - public function display_global_colors_front_end( $response, $handler, $request ) { - if ( astra_maybe_disable_global_color_in_elementor() ) { - return $response; - } - - $route = $request->get_route(); - - if ( 0 !== strpos( $route, '/elementor/v1/globals' ) ) { - return $response; - } - - $slug_map = array(); - $palette_slugs = Astra_Global_Palette::get_palette_slugs(); - - foreach ( $palette_slugs as $key => $slug ) { - // Remove hyphens as hyphens do not work with Elementor global styles. - $no_hyphens = str_replace( '-', '', $slug ); - $slug_map[ $no_hyphens ] = $key; - } - - $rest_id = substr( $route, strrpos( $route, '/' ) + 1 ); - - if ( ! in_array( $rest_id, array_keys( $slug_map ), true ) ) { - return $response; - } - - $colors = astra_get_option( 'global-color-palette' ); - $response = rest_ensure_response( - array( - 'id' => esc_attr( $rest_id ), - 'title' => Astra_Global_Palette::get_css_variable_prefix() . esc_html( $slug_map[ $rest_id ] ), - 'value' => $colors['palette'][ $slug_map[ $rest_id ] ], - ) - ); - return $response; - } - - /** - * Generate CSS variable style for Elementor. - * - * @since 3.7.0 - * @param string $dynamic_css Dynamic CSS. - * @return object - */ - public function generate_global_elementor_style( $dynamic_css ) { - if ( astra_maybe_disable_global_color_in_elementor() ) { - return $dynamic_css; - } - - $global_palette = astra_get_option( 'global-color-palette' ); - $palette_style = array(); - $slugs = Astra_Global_Palette::get_palette_slugs(); - $style = array(); - - if ( isset( $global_palette['palette'] ) ) { - foreach ( $global_palette['palette'] as $color_index => $color ) { - $variable_key = '--e-global-color-' . str_replace( '-', '', $slugs[ $color_index ] ); - $style[ $variable_key ] = $color; - } - - $palette_style[':root'] = $style; - $dynamic_css .= astra_parse_css( $palette_style ); - } - - // Apply Astra Mini Cart CSS if Elementor Mini Cart Template is disabled. - $is_site_rtl = is_rtl(); - $ltr_left = $is_site_rtl ? 'right' : 'left'; - $ltr_right = $is_site_rtl ? 'left' : 'right'; - if ( defined( 'ELEMENTOR_PRO_VERSION' ) && 'no' === get_option( 'elementor_' . 'use_mini_cart_template' ) ) { - $mini_cart_template_css = array( - '.woocommerce-js .woocommerce-mini-cart' => array( - 'margin-inline-start' => '0', - 'list-style' => 'none', - 'padding' => '1.3em', - 'flex' => '1', - 'overflow' => 'auto', - 'position' => 'relative', - ), - '.woocommerce-js .widget_shopping_cart_content ul li.mini_cart_item' => array( - 'min-height' => '60px', - 'padding-top' => '1.2em', - 'padding-bottom' => '1.2em', - 'padding-' . $ltr_left => '5em', - 'padding-' . $ltr_right => '0', - ), - '.woocommerce-js .woocommerce-mini-cart-item .ast-mini-cart-price-wrap' => array( - 'float' => 'right', - 'margin-top' => '0.5em', - 'position' => 'absolute', - $ltr_left => 'auto', - $ltr_right => '0', - 'top' => '3.5em', - ), - '.woocommerce-js .widget_shopping_cart_content a.remove' => array( - 'position' => 'absolute', - $ltr_left => 'auto', - $ltr_right => '0', - ), - '.woocommerce-js .woocommerce-mini-cart__total' => array( - 'display' => 'flex', - 'justify-content' => 'space-between', - 'padding' => '0.7em 0', - 'margin-bottom' => '0', - 'font-size' => '16px', - 'border-top' => '1px solid var(--ast-border-color)', - 'border-bottom' => '1px solid var(--ast-border-color)', - ), - '.woocommerce-mini-cart__buttons' => array( - 'display' => 'flex', - 'flex-direction' => 'column', - 'gap' => '20px', - 'padding-top' => '1.34em', - ), - '.woocommerce-mini-cart__buttons .button' => array( - 'text-align' => 'center', - 'font-weight' => '500', - 'font-size' => '16px', - ), - '.woocommerce-js ul.product_list_widget li a img' => array( - 'top' => '52%', - ), - '.ast-mini-cart-empty .ast-mini-cart-message' => array( - 'display' => 'none', - ), - ); - $dynamic_css .= astra_parse_css( $mini_cart_template_css ); - } - return $dynamic_css; - } - - /** - * Load style inside Elementor editor. - * - * @since 3.7.0 - * @return void - */ - public function elementor_add_scripts() { - - $editor_preferences = SettingsManager::get_settings_managers( 'editorPreferences' ); - $theme = $editor_preferences->get_model()->get_settings( 'ui_theme' ); - $style = 'dark' == $theme ? '-dark' : ''; - - wp_enqueue_style( 'astra-elementor-editor-style', ASTRA_THEME_URI . 'inc/assets/css/ast-elementor-editor' . $style . '.css', array(), ASTRA_THEME_VERSION ); - } - } - -endif; - -/** - * Kicking this off by calling 'get_instance()' method - */ -Astra_Elementor::get_instance(); +is_elementor_activated( $id ) ) { + + $elementor_heading_margin_comp = array( + '.elementor-widget-heading .elementor-heading-title' => array( + 'margin' => '0', + ), + '.elementor-page .ast-menu-toggle' => array( + 'color' => 'unset !important', + 'background' => 'unset !important', + ), + ); + + /* Parse CSS from array() */ + $parse_css = astra_parse_css( $elementor_heading_margin_comp ); + + $elementor_base_css = array( + '.elementor-post.elementor-grid-item.hentry' => array( + 'margin-bottom' => '0', + ), + '.woocommerce div.product .elementor-element.elementor-products-grid .related.products ul.products li.product, .elementor-element .elementor-wc-products .woocommerce[class*=\'columns-\'] ul.products li.product' => array( + 'width' => 'auto', + 'margin' => '0', + 'float' => 'none', + ), + ); + + if ( astra_can_remove_elementor_toc_margin_space() ) { + $elementor_base_css['.elementor-toc__list-wrapper'] = array( + 'margin' => 0, + ); + } + + if ( astra_can_add_styling_for_hr() ) { + $elementor_base_css['body .elementor hr'] = array( + 'background-color' => '#ccc', + 'margin' => '0', + ); + } + + // Load base static CSS when Elmentor is activated. + $parse_css .= astra_parse_css( $elementor_base_css ); + + if ( is_rtl() ) { + $elementor_rtl_support_css = array( + '.ast-left-sidebar .elementor-section.elementor-section-stretched,.ast-right-sidebar .elementor-section.elementor-section-stretched' => array( + 'max-width' => '100%', + 'right' => '0 !important', + ), + ); + } else { + $elementor_rtl_support_css = array( + '.ast-left-sidebar .elementor-section.elementor-section-stretched,.ast-right-sidebar .elementor-section.elementor-section-stretched' => array( + 'max-width' => '100%', + 'left' => '0 !important', + ), + ); + } + $parse_css .= astra_parse_css( $elementor_rtl_support_css ); + + + $dynamic_css .= $parse_css; + } + + $elementor_archive_page_css = array( + '.elementor-template-full-width .ast-container' => array( + 'display' => 'block', + ), + '.elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible' => array( + 'top' => '0 !important', + ), + ); + $dynamic_css .= astra_parse_css( $elementor_archive_page_css ); + + $dynamic_css .= astra_parse_css( + array( + '.elementor-element .elementor-wc-products .woocommerce[class*="columns-"] ul.products li.product' => array( + 'width' => 'auto', + 'margin' => '0', + ), + '.elementor-element .woocommerce .woocommerce-result-count' => array( + 'float' => 'none', + ), + ), + '', + astra_get_mobile_breakpoint() + ); + + return $dynamic_css; + } + + /** + * Elementor Content layout set as Page Builder + * + * @return void + * @since 1.0.2 + */ + public function elementor_default_setting() { + + if ( false === astra_enable_page_builder_compatibility() || 'post' == get_post_type() ) { + return; + } + + // don't modify post meta settings if we are not on Elementor's edit page. + if ( ! $this->is_elementor_editor() ) { + return; + } + + global $post; + $id = astra_get_post_id(); + + $page_builder_flag = get_post_meta( $id, '_astra_content_layout_flag', true ); + if ( isset( $post ) && empty( $page_builder_flag ) && ( is_admin() || is_singular() ) ) { + + if ( empty( $post->post_content ) && $this->is_elementor_activated( $id ) ) { + + update_post_meta( $id, '_astra_content_layout_flag', 'disabled' ); + update_post_meta( $id, 'site-post-title', 'disabled' ); + update_post_meta( $id, 'ast-title-bar-display', 'disabled' ); + update_post_meta( $id, 'ast-featured-img', 'disabled' ); + + // Compatibility with revamped layouts to update default layout to page builder. + $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); + if ( $migrated_user ) { + $content_layout = get_post_meta( $id, 'site-content-layout', true ); + } else { + $content_layout = get_post_meta( $id, 'ast-site-content-layout', true ); + } + + if ( empty( $content_layout ) || 'default' == $content_layout ) { + if ( $migrated_user ) { + update_post_meta( $id, 'site-content-layout', 'page-builder' ); + } + update_post_meta( $id, 'ast-site-content-layout', 'full-width-container' ); + } + + $sidebar_layout = get_post_meta( $id, 'site-sidebar-layout', true ); + if ( empty( $sidebar_layout ) || 'default' == $sidebar_layout ) { + update_post_meta( $id, 'site-sidebar-layout', 'no-sidebar' ); + } + + // In the preview mode, Apply the layouts using filters for Elementor Template Library. + add_filter( + 'astra_page_layout', + function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found + return 'no-sidebar'; + } + ); + + add_filter( + 'astra_get_content_layout', + function () { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found + return 'page-builder'; + } + ); + + add_filter( 'astra_the_post_title_enabled', '__return_false' ); + add_filter( 'astra_featured_image_enabled', '__return_false' ); + } + } + } + + /** + * Add z-index CSS for elementor's drag drop + * + * @return void + * @since 1.4.0 + */ + public function elementor_overlay_zindex() { + + // return if we are not on Elementor's edit page. + if ( ! $this->is_elementor_editor() ) { + return; + } + + ?> + + + db->get_edit_mode( $id ) ); + } else { + $document = Plugin::$instance->documents->get( $id ); + if ( $document ) { + return $document->is_built_with_elementor(); + } else { + return false; + } + } + } + + /** + * Check if Elementor Editor is open. + * + * @since 1.2.7 + * + * @return boolean True IF Elementor Editor is loaded, False If Elementor Editor is not loaded. + */ + private function is_elementor_editor() { + if ( ( isset( $_REQUEST['action'] ) && 'elementor' == $_REQUEST['action'] ) || isset( $_REQUEST['elementor-preview'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended + return true; + } + + return false; + } + + /** + * Display theme global colors to Elementor Global colors + * + * @since 3.7.0 + * @param object $response rest request response. + * @param array $handler Route handler used for the request. + * @param WP_REST_Request $request Request used to generate the response. + * @return object + */ + public function elementor_add_theme_colors( $response, $handler, $request ) { + + $route = $request->get_route(); + + if ( astra_maybe_disable_global_color_in_elementor() ) { + return $response; + } + + if ( '/elementor/v1/globals' != $route ) { + return $response; + } + + $global_palette = astra_get_option( 'global-color-palette' ); + $data = $response->get_data(); + $slugs = Astra_Global_Palette::get_palette_slugs(); + $labels = Astra_Global_Palette::get_palette_labels(); + + foreach ( $global_palette['palette'] as $key => $color ) { + + $slug = $slugs[ $key ]; + // Remove hyphens from slug. + $no_hyphens = str_replace( '-', '', $slug ); + + $data['colors'][ $no_hyphens ] = array( + 'id' => esc_attr( $no_hyphens ), + 'title' => 'Theme ' . $labels[ $key ], + 'value' => $color, + ); + } + + $response->set_data( $data ); + return $response; + } + + /** + * Display global paltte colors on Elementor front end Page. + * + * @since 3.7.0 + * @param object $response rest request response. + * @param array $handler Route handler used for the request. + * @param WP_REST_Request $request Request used to generate the response. + * @return object + */ + public function display_global_colors_front_end( $response, $handler, $request ) { + if ( astra_maybe_disable_global_color_in_elementor() ) { + return $response; + } + + $route = $request->get_route(); + + if ( 0 !== strpos( $route, '/elementor/v1/globals' ) ) { + return $response; + } + + $slug_map = array(); + $palette_slugs = Astra_Global_Palette::get_palette_slugs(); + + foreach ( $palette_slugs as $key => $slug ) { + // Remove hyphens as hyphens do not work with Elementor global styles. + $no_hyphens = str_replace( '-', '', $slug ); + $slug_map[ $no_hyphens ] = $key; + } + + $rest_id = substr( $route, strrpos( $route, '/' ) + 1 ); + + if ( ! in_array( $rest_id, array_keys( $slug_map ), true ) ) { + return $response; + } + + $colors = astra_get_option( 'global-color-palette' ); + $response = rest_ensure_response( + array( + 'id' => esc_attr( $rest_id ), + 'title' => Astra_Global_Palette::get_css_variable_prefix() . esc_html( $slug_map[ $rest_id ] ), + 'value' => $colors['palette'][ $slug_map[ $rest_id ] ], + ) + ); + return $response; + } + + /** + * Generate CSS variable style for Elementor. + * + * @since 3.7.0 + * @param string $dynamic_css Dynamic CSS. + * @return object + */ + public function generate_global_elementor_style( $dynamic_css ) { + if ( astra_maybe_disable_global_color_in_elementor() ) { + return $dynamic_css; + } + + $global_palette = astra_get_option( 'global-color-palette' ); + $palette_style = array(); + $slugs = Astra_Global_Palette::get_palette_slugs(); + $style = array(); + + if ( isset( $global_palette['palette'] ) ) { + foreach ( $global_palette['palette'] as $color_index => $color ) { + $variable_key = '--e-global-color-' . str_replace( '-', '', $slugs[ $color_index ] ); + $style[ $variable_key ] = $color; + } + + $palette_style[':root'] = $style; + $dynamic_css .= astra_parse_css( $palette_style ); + } + + // Apply Astra Mini Cart CSS if Elementor Mini Cart Template is disabled. + $is_site_rtl = is_rtl(); + $ltr_left = $is_site_rtl ? 'right' : 'left'; + $ltr_right = $is_site_rtl ? 'left' : 'right'; + if ( defined( 'ELEMENTOR_PRO_VERSION' ) && 'no' === get_option( 'elementor_' . 'use_mini_cart_template' ) ) { + $mini_cart_template_css = array( + '.woocommerce-js .woocommerce-mini-cart' => array( + 'margin-inline-start' => '0', + 'list-style' => 'none', + 'padding' => '1.3em', + 'flex' => '1', + 'overflow' => 'auto', + 'position' => 'relative', + ), + '.woocommerce-js .widget_shopping_cart_content ul li.mini_cart_item' => array( + 'min-height' => '60px', + 'padding-top' => '1.2em', + 'padding-bottom' => '1.2em', + 'padding-' . $ltr_left => '5em', + 'padding-' . $ltr_right => '0', + ), + '.woocommerce-js .woocommerce-mini-cart-item .ast-mini-cart-price-wrap' => array( + 'float' => 'right', + 'margin-top' => '0.5em', + 'position' => 'absolute', + $ltr_left => 'auto', + $ltr_right => '0', + 'top' => '3.5em', + ), + '.woocommerce-js .widget_shopping_cart_content a.remove' => array( + 'position' => 'absolute', + $ltr_left => 'auto', + $ltr_right => '0', + ), + '.woocommerce-js .woocommerce-mini-cart__total' => array( + 'display' => 'flex', + 'justify-content' => 'space-between', + 'padding' => '0.7em 0', + 'margin-bottom' => '0', + 'font-size' => '16px', + 'border-top' => '1px solid var(--ast-border-color)', + 'border-bottom' => '1px solid var(--ast-border-color)', + ), + '.woocommerce-mini-cart__buttons' => array( + 'display' => 'flex', + 'flex-direction' => 'column', + 'gap' => '20px', + 'padding-top' => '1.34em', + ), + '.woocommerce-mini-cart__buttons .button' => array( + 'text-align' => 'center', + 'font-weight' => '500', + 'font-size' => '16px', + ), + '.woocommerce-js ul.product_list_widget li a img' => array( + 'top' => '52%', + ), + '.ast-mini-cart-empty .ast-mini-cart-message' => array( + 'display' => 'none', + ), + ); + $dynamic_css .= astra_parse_css( $mini_cart_template_css ); + } + return $dynamic_css; + } + + /** + * Load style inside Elementor editor. + * + * @since 3.7.0 + * @return void + */ + public function elementor_add_scripts() { + + $editor_preferences = SettingsManager::get_settings_managers( 'editorPreferences' ); + $theme = $editor_preferences->get_model()->get_settings( 'ui_theme' ); + $style = 'dark' == $theme ? '-dark' : ''; + + wp_enqueue_style( 'astra-elementor-editor-style', ASTRA_THEME_URI . 'inc/assets/css/ast-elementor-editor' . $style . '.css', array(), ASTRA_THEME_VERSION ); + } + } + +endif; + +/** + * Kicking this off by calling 'get_instance()' method + */ +Astra_Elementor::get_instance(); diff --git a/wp-content/themes/astra/inc/compatibility/class-astra-starter-content.php b/wp-content/themes/astra/inc/compatibility/class-astra-starter-content.php index 0a0c94240..7f699161e 100644 --- a/wp-content/themes/astra/inc/compatibility/class-astra-starter-content.php +++ b/wp-content/themes/astra/inc/compatibility/class-astra-starter-content.php @@ -26,7 +26,7 @@ public function __construct() { if ( ! $is_fresh_site ) { return; } - + // Adding post meta and inserting post. add_action( 'wp_insert_post', @@ -45,8 +45,8 @@ public function __construct() { $this, 'save_astra_settings', ), - 10, - 3 + 10, + 3 ); if ( ! is_customize_preview() ) { @@ -100,7 +100,7 @@ public function starter_meta( $value, $post_id, $meta_key ) { * @param bool $update Is update. */ public function register_listener( $post_ID, $post, $update ) { - + if ( $update ) { return; } @@ -137,7 +137,7 @@ public function get_customizer_json() { if ( is_wp_error( $request ) ) { return false; // Bail early. } - + // @codingStandardsIgnoreStart /** * @psalm-suppress PossiblyNullReference @@ -156,7 +156,7 @@ public function get_customizer_json() { * @since 4.0.0 */ public function save_astra_settings() { - + $settings = self::get_customizer_json(); // Delete existing dynamic CSS cache. @@ -204,12 +204,12 @@ public function theme_color_palettes_defaults( $defaults ) { return $json ? $json : $defaults; } - + /** * Return starter content definition. * - * @return mixed|void + * @return mixed|void * @since 4.0.0 */ public function get() { diff --git a/wp-content/themes/astra/inc/compatibility/starter-content/astra-settings-export.json b/wp-content/themes/astra/inc/compatibility/starter-content/astra-settings-export.json index 0751ebdbc..dc4c8849b 100644 --- a/wp-content/themes/astra/inc/compatibility/starter-content/astra-settings-export.json +++ b/wp-content/themes/astra/inc/compatibility/starter-content/astra-settings-export.json @@ -1 +1 @@ -{"customizer-settings":{"astra-settings":{"blog-single-post-structure":["single-image","single-title-meta"],"blog-single-width":"default","blog-single-max-width":1200,"blog-single-meta":["comments","category","author"],"blog-post-structure":["image","title-meta"],"blog-width":"default","blog-max-width":1200,"blog-post-content":"excerpt","blog-meta":["comments","category","author"],"text-color":"var(--ast-global-color-3)","link-color":"var(--ast-global-color-0)","theme-color":"var(--ast-global-color-0)","link-h-color":"var(--ast-global-color-1)","heading-base-color":"var(--ast-global-color-2)","border-color":"var(--ast-global-color-6)","footer-bg-obj":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":""},"footer-color":"","footer-link-color":"","footer-link-h-color":"","footer-adv-bg-obj":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":""},"footer-adv-text-color":"","footer-adv-link-color":"","footer-adv-link-h-color":"","footer-adv-wgt-title-color":"","button-color":"var(--ast-global-color-2)","secondary-button-color":"var(--ast-global-color-2)","button-h-color":"var(--ast-global-color-2)","secondary-button-h-color":"var(--ast-global-color-2)","button-bg-color":"var(--ast-global-color-7)","secondary-button-bg-color":"var(--ast-global-color-7)","button-bg-h-color":"var(--ast-global-color-7)","secondary-button-bg-h-color":"var(--ast-global-color-7)","theme-button-padding":{"desktop":{"top":"20","right":"40","bottom":"20","left":"40"},"tablet":{"top":"18","right":"32","bottom":"18","left":"32"},"mobile":{"top":"15","right":"28","bottom":"15","left":"28"},"desktop-unit":"px","tablet-unit":"px","mobile-unit":"px"},"secondary-theme-button-padding":{"desktop":{"top":"20","right":"40","bottom":"20","left":"40"},"tablet":{"top":"18","right":"32","bottom":"18","left":"32"},"mobile":{"top":"15","right":"28","bottom":"15","left":"28"},"desktop-unit":"px","tablet-unit":"px","mobile-unit":"px"},"button-radius":50,"theme-button-border-group-border-size":{"top":"0","right":"0","bottom":"0","left":"0"},"secondary-theme-button-border-group-border-size":{"top":"0","right":"0","bottom":"0","left":"0"},"footer-sml-layout":"footer-sml-layout-1","footer-sml-section-1":"custom","footer-sml-section-1-credit":"Copyright © [current_year] [site_title] | Powered by [theme_author]","footer-sml-section-2":"","footer-sml-section-2-credit":"Copyright © [current_year] [site_title] | Powered by [theme_author]","footer-sml-dist-equal-align":true,"footer-sml-divider":1,"footer-sml-divider-color":"#7a7a7a","footer-layout-width":"content","ast-header-retina-logo":"","ast-header-logo-width":"","ast-header-responsive-logo-width":{"desktop":"","tablet":"","mobile":""},"header-color-site-title":"","header-color-h-site-title":"","header-color-site-tagline":"","display-site-title-responsive":{"desktop":false,"tablet":false,"mobile":false},"display-site-tagline-responsive":{"desktop":false,"tablet":0,"mobile":0},"logo-title-inline":false,"disable-primary-nav":false,"header-layouts":"header-main-layout-1","header-main-rt-section":"none","header-display-outside-menu":false,"header-main-rt-section-html":" - - - -

- admin_url( 'admin-ajax.php' ), - 'astraSitesLink' => admin_url( 'themes.php?page=starter-templates' ), - 'recommendedPluiginActivatingText' => __( 'Activating', 'astra' ) . '…', - 'recommendedPluiginDeactivatingText' => __( 'Deactivating', 'astra' ) . '…', - 'recommendedPluiginActivateText' => __( 'Activate', 'astra' ), - 'recommendedPluiginDeactivateText' => __( 'Deactivate', 'astra' ), - 'recommendedPluiginSettingsText' => __( 'Settings', 'astra' ), - 'astraPluginManagerNonce' => wp_create_nonce( 'astra_plugin_manager_nonce' ), - ); - wp_localize_script( 'astra-admin-settings', 'astra', apply_filters( 'astra_theme_js_localize', $localize ) ); - - // Script. - wp_enqueue_script( 'astra-admin-settings' ); - } - - /** - * Ask Theme Rating - * - * @since 1.4.0 - */ - public static function register_notices() { - // Return if white labeled. - if ( astra_is_white_labelled() || false === apply_filters( 'astra_showcase_starter_templates_notice', true ) ) { - return; - } - - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $current_slug = isset( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - // Force Astra welcome notice on theme activation. - if ( current_user_can( 'install_plugins' ) && ! defined( 'ASTRA_SITES_NAME' ) && '1' == get_option( 'fresh_site' ) && ! in_array( $current_slug, array( 'astra-advanced-hook', 'astra_adv_header' ), true ) ) { - - // Do not display admin welcome banner notice on theme upload page. - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - global $pagenow; - /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - if ( isset( $pagenow ) && 'update.php' === $pagenow ) { - return; - } - - $image_path = ASTRA_THEME_URI . 'inc/assets/images/astra-banner.png'; - $ast_sites_notice_btn = self::astra_sites_notice_button(); - - if ( file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { - $ast_sites_notice_btn['button_text'] = __( 'Activate Starter Templates', 'astra' ); - $ast_sites_notice_btn['class'] .= ' button button-primary'; - } elseif ( ! file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { - $ast_sites_notice_btn['button_text'] = __( 'Install Starter Templates', 'astra' ); - $ast_sites_notice_btn['class'] .= ' button button-primary'; - // Astra Premium Sites - Active. - } else { - $ast_sites_notice_btn['class'] = ' button button-primary astra-notice-close'; - } - - $astra_sites_notice_args = array( - 'id' => 'astra-sites-on-active', - 'type' => 'info', - 'message' => sprintf( - '
-
-

%1$s

-

%2$s

-

%3$s

-
- -
-
-
- Starter Templates -
-
', - __( 'Thanks for installing the Astra theme 🎉', 'astra' ), - __( 'Get Started with Ready-Made Templates', 'astra' ), - __( 'Building a website doesn\'t have to be hard. With Astra\'s Starter Templates, you can easily import ready-made designs and start building your dream website in just a few minutes.', 'astra' ), - esc_attr( $ast_sites_notice_btn['class'] ), - 'href="' . astra_get_prop( $ast_sites_notice_btn, 'link', '' ) . '"', - 'data-slug="' . astra_get_prop( $ast_sites_notice_btn, 'data_slug', '' ) . '"', - 'data-init="' . astra_get_prop( $ast_sites_notice_btn, 'data_init', '' ) . '"', - 'data-settings-link-text="' . astra_get_prop( $ast_sites_notice_btn, 'data_settings_link_text', '' ) . '"', - 'data-settings-link="' . astra_get_prop( $ast_sites_notice_btn, 'data_settings_link', '' ) . '"', - 'data-activating-text="' . astra_get_prop( $ast_sites_notice_btn, 'activating_text', '' ) . '"', - esc_html( $ast_sites_notice_btn['button_text'] ), - $image_path - ), - 'priority' => 5, - 'display-with-other-notices' => false, - 'show_if' => class_exists( 'Astra_Ext_White_Label_Markup' ) ? Astra_Ext_White_Label_Markup::show_branding() : true, - ); - - Astra_Notices::add_notice( - $astra_sites_notice_args - ); - } - } - - /** - * Upgrade to Pro notice for Astra on WooCommerce pages. - * - * @since 3.9.4 - */ - public static function upgrade_to_pro_wc_notice() { - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $current_slug = isset( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended - /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - if ( '' !== $current_slug && function_exists( 'WC' ) && in_array( $current_slug, array( 'wc-admin', 'wc-reports', 'wc-status', 'wc-addons', 'wc-settings' ), true ) ) { - - $image_path = ASTRA_THEME_URI . 'inc/assets/images/astra-logo.svg'; - - $astra_sites_notice_args = array( - 'id' => 'astra-upgrade-pro-wc', - 'type' => 'info', - 'message' => sprintf( - '
-
-
-

- %2$s -

-

%3$s

-
- %6$s -
-
', - $image_path, - __( 'Astra Works Seamlessly with WooCommerce!', 'astra' ), - __( 'Use every tool at your disposal to optimize your online store for conversion. All the advantages you need to make more profit!', 'astra' ), - esc_attr( 'button button-primary' ), - 'href="' . ASTRA_PRO_UPGRADE_URL . '" target="_blank"', - __( 'Upgrade Now', 'astra' ) - ), - 'priority' => 5, - 'show_if' => is_admin() ? true : false, - 'display-with-other-notices' => false, - ); - - Astra_Notices::add_notice( - $astra_sites_notice_args - ); - } - } - - /** - * Display notice for minimun version for Astra addon. - * - * @since 2.0.0 - */ - public static function minimum_addon_version_notice() { - - if ( ! defined( 'ASTRA_EXT_VER' ) ) { - return; - } - - if ( version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) < 0 ) { - - $message = sprintf( - /* translators: %1$1s: Theme Name, %2$2s: Minimum Required version of the addon */ - __( 'Please update the %1$1s to version %2$2s or higher. Ignore if already updated.', 'astra' ), - astra_get_addon_name(), - ASTRA_EXT_MIN_VER - ); - - $min_version = get_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', true ); - - if ( ! $min_version ) { - update_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', ASTRA_EXT_MIN_VER ); - } - - if ( version_compare( $min_version, ASTRA_EXT_MIN_VER, '!=' ) ) { - delete_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice' ); - update_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', ASTRA_EXT_MIN_VER ); - } - - $notice_args = array( - 'id' => 'ast-minimum-addon-version-notice', - 'type' => 'warning', - 'message' => $message, - 'show_if' => true, - 'repeat-notice-after' => false, - 'priority' => 18, - 'display-with-other-notices' => true, - ); - - Astra_Notices::add_notice( $notice_args ); - } - } - - /** - * Get minimum supported version for Astra addon. - * This function will be used to inform the user about incompatible version of Astra addon. - * - * @param string $input_version Input version of the addon. - * - * @since 4.3.0 - */ - public static function get_astra_addon_min_supported_version( $input_version ) { - if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) < 0 ) { - return ASTRA_EXT_MIN_VER; - } - - $supported_version = ''; - - // First, check if the exact version is supported - if ( isset( self::$astra_addon_supported_version_map[ $input_version ] ) ) { - $supported_version = self::$astra_addon_supported_version_map[ $input_version ]; - } else { - foreach ( self::$astra_addon_supported_version_map as $index => $supported ) { - /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( '' !== $supported_version || version_compare( $input_version, $index ) > 0 ) { - /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $supported_version = $supported; - break; - } - } - } - - return $supported_version; - } - - /** - * This constant will be used to inform the user about incompatible version of Astra addon. - * - * @since 4.3.0 - */ - public static function minimum_addon_supported_version_notice() { - - if ( ! defined( 'ASTRA_EXT_VER' ) ) { - return; - } - - // ASTRA_EXT_MIN_VER < ASTRA_EXT_VER && ASTRA_EXT_VER < 4.0.0. - if ( version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) >= 0 || version_compare( '4.0.0', ASTRA_EXT_VER ) < 0 ) { - return; - } - - $astra_addon_supported_version = self::get_astra_addon_min_supported_version( ASTRA_EXT_VER ); - $message = sprintf( - /* translators: %1$s: Plugin Name, %2$s: Theme name, %3$s: Supported required version of the addon */ - 'Your current version of %1$s plugin is incompatible with %2$s theme. Please update to at least version %3$s for optimal functionality.', - astra_get_addon_name(), - astra_get_theme_name(), - $astra_addon_supported_version - ); - - $ext_min_supported_version = get_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', true ); - - if ( ! $ext_min_supported_version ) { - update_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', $astra_addon_supported_version ); - } - - if ( version_compare( $ext_min_supported_version, $astra_addon_supported_version, '!=' ) ) { - delete_user_meta( get_current_user_id(), 'ast-addon-minimum-supported-version-notice' ); - update_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', $astra_addon_supported_version ); - } - - $notice_args = array( - 'id' => 'ast-addon-minimum-supported-version-notice', - 'type' => 'warning', - 'message' => $message, - 'show_if' => true, - 'repeat-notice-after' => false, - 'priority' => 20, - 'display-with-other-notices' => false, - ); - - Astra_Notices::add_notice( $notice_args ); - } - - /** - * Enqueue Astra Notices CSS. - * - * @since 2.0.0 - * - * @return void - */ - public static function notice_assets() { - if ( is_rtl() ) { - wp_enqueue_style( 'astra-custom-notices-rtl', ASTRA_THEME_URI . 'inc/assets/css/astra-notices-rtl.css', array(), ASTRA_THEME_VERSION ); - } else { - wp_enqueue_style( 'astra-custom-notices', ASTRA_THEME_URI . 'inc/assets/css/astra-notices.css', array(), ASTRA_THEME_VERSION ); - } - } - - /** - * Render button for Astra Site notices - * - * @since 1.6.5 - * @return array $ast_sites_notice_btn Rendered button - */ - public static function astra_sites_notice_button() { - - $ast_sites_notice_btn = array(); - - // Any of the Starter Templtes plugin - Active. - if ( is_plugin_active( 'astra-pro-sites/astra-pro-sites.php' ) || is_plugin_active( 'astra-sites/astra-sites.php' ) ) { - $ast_sites_notice_btn['class'] = 'active'; - $ast_sites_notice_btn['button_text'] = __( 'See Library »', 'astra' ); - $ast_sites_notice_btn['link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); - - return $ast_sites_notice_btn; - } - - // Starter Templates PRO Plugin - Installed but Inactive. - if ( file_exists( WP_PLUGIN_DIR . '/astra-pro-sites/astra-pro-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { - $ast_sites_notice_btn['class'] = 'astra-activate-recommended-plugin'; - $ast_sites_notice_btn['button_text'] = __( 'Activate Importer Plugin', 'astra' ); - $ast_sites_notice_btn['data_slug'] = 'astra-pro-sites'; - $ast_sites_notice_btn['data_init'] = '/astra-pro-sites/astra-pro-sites.php'; - $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); - $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); - $ast_sites_notice_btn['activating_text'] = __( 'Activating Importer Plugin ', 'astra' ) . '…'; - - return $ast_sites_notice_btn; - } - - // Starter Templates FREE Plugin - Installed but Inactive. - if ( file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-sites/astra-sites.php' ) ) { - $ast_sites_notice_btn['class'] = 'astra-activate-recommended-plugin'; - $ast_sites_notice_btn['button_text'] = __( 'Activate Importer Plugin', 'astra' ); - $ast_sites_notice_btn['data_slug'] = 'astra-sites'; - $ast_sites_notice_btn['data_init'] = '/astra-sites/astra-sites.php'; - $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); - $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); - $ast_sites_notice_btn['activating_text'] = __( 'Activating Importer Plugin ', 'astra' ) . '…'; - - return $ast_sites_notice_btn; - } - - // Any of the Starter Templates plugin not available. - if ( ! file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) || ! file_exists( WP_PLUGIN_DIR . '/astra-pro-sites/astra-pro-sites.php' ) ) { - $ast_sites_notice_btn['class'] = 'astra-install-recommended-plugin'; - $ast_sites_notice_btn['button_text'] = __( 'Install Importer Plugin', 'astra' ); - $ast_sites_notice_btn['data_slug'] = 'astra-sites'; - $ast_sites_notice_btn['data_init'] = '/astra-sites/astra-sites.php'; - $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); - $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); - $ast_sites_notice_btn['detail_link_class'] = 'plugin-detail thickbox open-plugin-details-modal astra-starter-sites-detail-link'; - $ast_sites_notice_btn['detail_link'] = network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=astra-sites&TB_iframe=true&width=772&height=400' ); - $ast_sites_notice_btn['detail_link_text'] = __( 'Details »', 'astra' ); - - return $ast_sites_notice_btn; - } - - $ast_sites_notice_btn['class'] = 'active'; - $ast_sites_notice_btn['button_text'] = __( 'See Library »', 'astra' ); - $ast_sites_notice_btn['link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); - - return $ast_sites_notice_btn; - } - - /** - * Check if installed Starter Sites plugin is new. - * - * @since 2.3.2 - */ - public static function get_starter_templates_slug() { - - if ( defined( 'ASTRA_PRO_SITES_VER' ) && version_compare( ASTRA_PRO_SITES_VER, '2.0.0', '>=' ) ) { - self::$starter_templates_slug = 'starter-templates'; - } - - if ( defined( 'ASTRA_SITES_VER' ) && version_compare( ASTRA_SITES_VER, '2.0.0', '>=' ) ) { - self::$starter_templates_slug = 'starter-templates'; - } - } - - /** - * Load the scripts and styles in the customizer controls. - * - * @since 1.2.1 - */ - public static function customizer_scripts() { - $color_palettes = wp_json_encode( astra_color_palette() ); - wp_add_inline_script( 'wp-color-picker', 'jQuery.wp.wpColorPicker.prototype.options.palettes = ' . $color_palettes . ';' ); - } - - /** - * Register admin scripts. - * - * @param String $hook Screen name where the hook is fired. - * @return void - */ - public static function register_scripts( $hook ) { - - if ( in_array( $hook, array( 'post.php', 'post-new.php' ) ) ) { - $post_types = get_post_types( array( 'public' => true ) ); - $screen = get_current_screen(); - $post_type = $screen->id; - - if ( in_array( $post_type, (array) $post_types ) ) { - - echo ''; - - /** - * Register admin script for missing Layout option from nested Column Blocks inside Group/Cover blocks. - * - * @see https://github.com/WordPress/gutenberg/issues/33374 & https://gist.github.com/Luehrsen/c4aad3b33435058c19ea80f5f1c268e8 - Remove this once the issue is fixed. - * - * @since 3.7.9 - */ - wp_enqueue_script( 'astra-column-block-comp-js', ASTRA_THEME_URI . 'inc/assets/js/column-block-compatibility.js', array( 'wp-util', 'wp-hooks', 'wp-blocks' ), ASTRA_THEME_VERSION, false ); - } - } - } - - /** - * Get and return page URL - * - * @param string $menu_slug Menu name. - * @since 1.0 - * @return string page url - */ - public static function get_page_url( $menu_slug ) { - - $parent_page = 'themes.php'; - - /** @psalm-suppress InvalidLiteralArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( strpos( $parent_page, '?' ) !== false ) { - /** @psalm-suppress InvalidLiteralArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $query_var = '&page=' . Astra_Menu::get_theme_page_slug(); - } else { - $query_var = '?page=' . Astra_Menu::get_theme_page_slug(); - } - - $parent_page_url = admin_url( $parent_page . $query_var ); - - $url = $parent_page_url . '&action=' . $menu_slug; - - return esc_url( $url ); - } - } - - new Astra_Admin_Settings(); -} + '4.1.0', + '4.0.2' => '4.0.0', + '3.9.4' => '3.9.2', + '3.9.1' => '3.9.0', + '3.8.5' => '3.6.11', + '3.8.4' => '3.6.10', + '3.8.2' => '3.6.3', + '3.7.4' => '3.6.2', + '3.7.3' => '3.6.0', + '3.6.9' => '3.5.8', + '3.6.7' => '3.5.5', + '3.6.4' => '3.5.0', + '3.4.8' => '3.4.2', + '3.4.2' => '3.4.0', + '3.3.3' => '3.3.2', + '3.3.2' => '3.3.1', + '3.3.1' => '3.3.0', + '3.2.0' => '3.1.0', + '3.0.3' => '3.0.0', + ); + + /** + * Constructor + */ + public function __construct() { + + if ( ! is_admin() ) { + return; + } + + self::get_starter_templates_slug(); + + add_action( 'after_setup_theme', __CLASS__ . '::init_admin_settings', 99 ); + } + + /** + * Admin settings init + */ + public static function init_admin_settings() { + + add_action( 'admin_enqueue_scripts', __CLASS__ . '::register_scripts' ); + + add_action( 'customize_controls_enqueue_scripts', __CLASS__ . '::customizer_scripts' ); + + add_action( 'astra_notice_before_markup_astra-sites-on-active', __CLASS__ . '::load_astra_admin_script' ); + + add_action( 'admin_init', __CLASS__ . '::register_notices' ); + add_action( 'astra_notice_before_markup', __CLASS__ . '::notice_assets' ); + + add_action( 'admin_init', __CLASS__ . '::minimum_addon_version_notice' ); + add_action( 'admin_init', __CLASS__ . '::minimum_addon_supported_version_notice' ); + + if ( astra_showcase_upgrade_notices() ) { + add_action( 'admin_init', __CLASS__ . '::upgrade_to_pro_wc_notice' ); + add_action( 'wp_nav_menu_item_custom_fields', __CLASS__ . '::add_custom_fields', 10, 4 ); + } + } + + /** + * Add custom megamenu fields data to the menu. + * + * @access public + * @param int $id menu item id. + * @param object $item A single menu item. + * @param int $depth menu item depth. + * @param array $args menu item arguments. + * @return void + * + * @since 3.9.4 + */ + public static function add_custom_fields( $id, $item, $depth, $args ) { + ?> +

+ + + + +

+ admin_url( 'admin-ajax.php' ), + 'astraSitesLink' => admin_url( 'themes.php?page=starter-templates' ), + 'recommendedPluiginActivatingText' => __( 'Activating', 'astra' ) . '…', + 'recommendedPluiginDeactivatingText' => __( 'Deactivating', 'astra' ) . '…', + 'recommendedPluiginActivateText' => __( 'Activate', 'astra' ), + 'recommendedPluiginDeactivateText' => __( 'Deactivate', 'astra' ), + 'recommendedPluiginSettingsText' => __( 'Settings', 'astra' ), + 'astraPluginManagerNonce' => wp_create_nonce( 'astra_plugin_manager_nonce' ), + ); + wp_localize_script( 'astra-admin-settings', 'astra', apply_filters( 'astra_theme_js_localize', $localize ) ); + + // Script. + wp_enqueue_script( 'astra-admin-settings' ); + } + + /** + * Ask Theme Rating + * + * @since 1.4.0 + */ + public static function register_notices() { + // Return if white labeled. + if ( astra_is_white_labelled() || false === apply_filters( 'astra_showcase_starter_templates_notice', true ) ) { + return; + } + + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $current_slug = isset( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + // Force Astra welcome notice on theme activation. + if ( current_user_can( 'install_plugins' ) && ! defined( 'ASTRA_SITES_NAME' ) && '1' == get_option( 'fresh_site' ) && ! in_array( $current_slug, array( 'astra-advanced-hook', 'astra_adv_header' ), true ) ) { + + // Do not display admin welcome banner notice on theme upload page. + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + global $pagenow; + /** @psalm-suppress InvalidGlobal */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + if ( isset( $pagenow ) && 'update.php' === $pagenow ) { + return; + } + + $image_path = ASTRA_THEME_URI . 'inc/assets/images/astra-banner.png'; + $ast_sites_notice_btn = self::astra_sites_notice_button(); + + if ( file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { + $ast_sites_notice_btn['button_text'] = __( 'Activate Starter Templates', 'astra' ); + $ast_sites_notice_btn['class'] .= ' button button-primary'; + } elseif ( ! file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { + $ast_sites_notice_btn['button_text'] = __( 'Install Starter Templates', 'astra' ); + $ast_sites_notice_btn['class'] .= ' button button-primary'; + // Astra Premium Sites - Active. + } else { + $ast_sites_notice_btn['class'] = ' button button-primary astra-notice-close'; + } + + $astra_sites_notice_args = array( + 'id' => 'astra-sites-on-active', + 'type' => 'info', + 'message' => sprintf( + '
+
+

%1$s

+

%2$s

+

%3$s

+
+ +
+
+
+ Starter Templates +
+
', + __( 'Thanks for installing the Astra theme 🎉', 'astra' ), + __( 'Get Started with Ready-Made Templates', 'astra' ), + __( 'Building a website doesn\'t have to be hard. With Astra\'s Starter Templates, you can easily import ready-made designs and start building your dream website in just a few minutes.', 'astra' ), + esc_attr( $ast_sites_notice_btn['class'] ), + 'href="' . astra_get_prop( $ast_sites_notice_btn, 'link', '' ) . '"', + 'data-slug="' . astra_get_prop( $ast_sites_notice_btn, 'data_slug', '' ) . '"', + 'data-init="' . astra_get_prop( $ast_sites_notice_btn, 'data_init', '' ) . '"', + 'data-settings-link-text="' . astra_get_prop( $ast_sites_notice_btn, 'data_settings_link_text', '' ) . '"', + 'data-settings-link="' . astra_get_prop( $ast_sites_notice_btn, 'data_settings_link', '' ) . '"', + 'data-activating-text="' . astra_get_prop( $ast_sites_notice_btn, 'activating_text', '' ) . '"', + esc_html( $ast_sites_notice_btn['button_text'] ), + $image_path + ), + 'priority' => 5, + 'display-with-other-notices' => false, + 'show_if' => class_exists( 'Astra_Ext_White_Label_Markup' ) ? Astra_Ext_White_Label_Markup::show_branding() : true, + ); + + Astra_Notices::add_notice( + $astra_sites_notice_args + ); + } + } + + /** + * Upgrade to Pro notice for Astra on WooCommerce pages. + * + * @since 3.9.4 + */ + public static function upgrade_to_pro_wc_notice() { + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $current_slug = isset( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + /** @psalm-suppress PossiblyInvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + if ( '' !== $current_slug && function_exists( 'WC' ) && in_array( $current_slug, array( 'wc-admin', 'wc-reports', 'wc-status', 'wc-addons', 'wc-settings' ), true ) ) { + + $image_path = ASTRA_THEME_URI . 'inc/assets/images/astra-logo.svg'; + + $astra_sites_notice_args = array( + 'id' => 'astra-upgrade-pro-wc', + 'type' => 'info', + 'message' => sprintf( + '
+
+
+

+ %2$s +

+

%3$s

+
+ %6$s +
+
', + $image_path, + __( 'Astra Works Seamlessly with WooCommerce!', 'astra' ), + __( 'Use every tool at your disposal to optimize your online store for conversion. All the advantages you need to make more profit!', 'astra' ), + esc_attr( 'button button-primary' ), + 'href="' . ASTRA_PRO_UPGRADE_URL . '" target="_blank"', + __( 'Upgrade Now', 'astra' ) + ), + 'priority' => 5, + 'show_if' => is_admin() ? true : false, + 'display-with-other-notices' => false, + ); + + Astra_Notices::add_notice( + $astra_sites_notice_args + ); + } + } + + /** + * Display notice for minimun version for Astra addon. + * + * @since 2.0.0 + */ + public static function minimum_addon_version_notice() { + + if ( ! defined( 'ASTRA_EXT_VER' ) ) { + return; + } + + if ( version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) < 0 ) { + + $message = sprintf( + /* translators: %1$1s: Theme Name, %2$2s: Minimum Required version of the addon */ + __( 'Please update the %1$1s to version %2$2s or higher. Ignore if already updated.', 'astra' ), + astra_get_addon_name(), + ASTRA_EXT_MIN_VER + ); + + $min_version = get_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', true ); + + if ( ! $min_version ) { + update_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', ASTRA_EXT_MIN_VER ); + } + + if ( version_compare( $min_version, ASTRA_EXT_MIN_VER, '!=' ) ) { + delete_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice' ); + update_user_meta( get_current_user_id(), 'ast-minimum-addon-version-notice-min-ver', ASTRA_EXT_MIN_VER ); + } + + $notice_args = array( + 'id' => 'ast-minimum-addon-version-notice', + 'type' => 'warning', + 'message' => $message, + 'show_if' => true, + 'repeat-notice-after' => false, + 'priority' => 18, + 'display-with-other-notices' => true, + ); + + Astra_Notices::add_notice( $notice_args ); + } + } + + /** + * Get minimum supported version for Astra addon. + * This function will be used to inform the user about incompatible version of Astra addon. + * + * @param string $input_version Input version of the addon. + * + * @since 4.3.0 + */ + public static function get_astra_addon_min_supported_version( $input_version ) { + if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) < 0 ) { + return ASTRA_EXT_MIN_VER; + } + + $supported_version = ''; + + // First, check if the exact version is supported + if ( isset( self::$astra_addon_supported_version_map[ $input_version ] ) ) { + $supported_version = self::$astra_addon_supported_version_map[ $input_version ]; + } else { + foreach ( self::$astra_addon_supported_version_map as $index => $supported ) { + /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( '' !== $supported_version || version_compare( $input_version, $index ) > 0 ) { + /** @psalm-suppress TypeDoesNotContainType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $supported_version = $supported; + break; + } + } + } + + return $supported_version; + } + + /** + * This constant will be used to inform the user about incompatible version of Astra addon. + * + * @since 4.3.0 + */ + public static function minimum_addon_supported_version_notice() { + + if ( ! defined( 'ASTRA_EXT_VER' ) ) { + return; + } + + // ASTRA_EXT_MIN_VER < ASTRA_EXT_VER && ASTRA_EXT_VER < 4.0.0. + if ( version_compare( ASTRA_EXT_VER, ASTRA_EXT_MIN_VER ) >= 0 || version_compare( '4.0.0', ASTRA_EXT_VER ) < 0 ) { + return; + } + + $astra_addon_supported_version = self::get_astra_addon_min_supported_version( ASTRA_EXT_VER ); + $message = sprintf( + /* translators: %1$s: Plugin Name, %2$s: Theme name, %3$s: Supported required version of the addon */ + 'Your current version of %1$s plugin is incompatible with %2$s theme. Please update to at least version %3$s for optimal functionality.', + astra_get_addon_name(), + astra_get_theme_name(), + $astra_addon_supported_version + ); + + $ext_min_supported_version = get_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', true ); + + if ( ! $ext_min_supported_version ) { + update_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', $astra_addon_supported_version ); + } + + if ( version_compare( $ext_min_supported_version, $astra_addon_supported_version, '!=' ) ) { + delete_user_meta( get_current_user_id(), 'ast-addon-minimum-supported-version-notice' ); + update_user_meta( get_current_user_id(), 'ast-addon-supported-version-notice', $astra_addon_supported_version ); + } + + $notice_args = array( + 'id' => 'ast-addon-minimum-supported-version-notice', + 'type' => 'warning', + 'message' => $message, + 'show_if' => true, + 'repeat-notice-after' => false, + 'priority' => 20, + 'display-with-other-notices' => false, + ); + + Astra_Notices::add_notice( $notice_args ); + } + + /** + * Enqueue Astra Notices CSS. + * + * @since 2.0.0 + * + * @return void + */ + public static function notice_assets() { + if ( is_rtl() ) { + wp_enqueue_style( 'astra-custom-notices-rtl', ASTRA_THEME_URI . 'inc/assets/css/astra-notices-rtl.css', array(), ASTRA_THEME_VERSION ); + } else { + wp_enqueue_style( 'astra-custom-notices', ASTRA_THEME_URI . 'inc/assets/css/astra-notices.css', array(), ASTRA_THEME_VERSION ); + } + } + + /** + * Render button for Astra Site notices + * + * @since 1.6.5 + * @return array $ast_sites_notice_btn Rendered button + */ + public static function astra_sites_notice_button() { + + $ast_sites_notice_btn = array(); + + // Any of the Starter Templtes plugin - Active. + if ( is_plugin_active( 'astra-pro-sites/astra-pro-sites.php' ) || is_plugin_active( 'astra-sites/astra-sites.php' ) ) { + $ast_sites_notice_btn['class'] = 'active'; + $ast_sites_notice_btn['button_text'] = __( 'See Library »', 'astra' ); + $ast_sites_notice_btn['link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); + + return $ast_sites_notice_btn; + } + + // Starter Templates PRO Plugin - Installed but Inactive. + if ( file_exists( WP_PLUGIN_DIR . '/astra-pro-sites/astra-pro-sites.php' ) && is_plugin_inactive( 'astra-pro-sites/astra-pro-sites.php' ) ) { + $ast_sites_notice_btn['class'] = 'astra-activate-recommended-plugin'; + $ast_sites_notice_btn['button_text'] = __( 'Activate Importer Plugin', 'astra' ); + $ast_sites_notice_btn['data_slug'] = 'astra-pro-sites'; + $ast_sites_notice_btn['data_init'] = '/astra-pro-sites/astra-pro-sites.php'; + $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); + $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); + $ast_sites_notice_btn['activating_text'] = __( 'Activating Importer Plugin ', 'astra' ) . '…'; + + return $ast_sites_notice_btn; + } + + // Starter Templates FREE Plugin - Installed but Inactive. + if ( file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) && is_plugin_inactive( 'astra-sites/astra-sites.php' ) ) { + $ast_sites_notice_btn['class'] = 'astra-activate-recommended-plugin'; + $ast_sites_notice_btn['button_text'] = __( 'Activate Importer Plugin', 'astra' ); + $ast_sites_notice_btn['data_slug'] = 'astra-sites'; + $ast_sites_notice_btn['data_init'] = '/astra-sites/astra-sites.php'; + $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); + $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); + $ast_sites_notice_btn['activating_text'] = __( 'Activating Importer Plugin ', 'astra' ) . '…'; + + return $ast_sites_notice_btn; + } + + // Any of the Starter Templates plugin not available. + if ( ! file_exists( WP_PLUGIN_DIR . '/astra-sites/astra-sites.php' ) || ! file_exists( WP_PLUGIN_DIR . '/astra-pro-sites/astra-pro-sites.php' ) ) { + $ast_sites_notice_btn['class'] = 'astra-install-recommended-plugin'; + $ast_sites_notice_btn['button_text'] = __( 'Install Importer Plugin', 'astra' ); + $ast_sites_notice_btn['data_slug'] = 'astra-sites'; + $ast_sites_notice_btn['data_init'] = '/astra-sites/astra-sites.php'; + $ast_sites_notice_btn['data_settings_link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); + $ast_sites_notice_btn['data_settings_link_text'] = __( 'See Library »', 'astra' ); + $ast_sites_notice_btn['detail_link_class'] = 'plugin-detail thickbox open-plugin-details-modal astra-starter-sites-detail-link'; + $ast_sites_notice_btn['detail_link'] = network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=astra-sites&TB_iframe=true&width=772&height=400' ); + $ast_sites_notice_btn['detail_link_text'] = __( 'Details »', 'astra' ); + + return $ast_sites_notice_btn; + } + + $ast_sites_notice_btn['class'] = 'active'; + $ast_sites_notice_btn['button_text'] = __( 'See Library »', 'astra' ); + $ast_sites_notice_btn['link'] = admin_url( 'themes.php?page=' . self::$starter_templates_slug ); + + return $ast_sites_notice_btn; + } + + /** + * Check if installed Starter Sites plugin is new. + * + * @since 2.3.2 + */ + public static function get_starter_templates_slug() { + + if ( defined( 'ASTRA_PRO_SITES_VER' ) && version_compare( ASTRA_PRO_SITES_VER, '2.0.0', '>=' ) ) { + self::$starter_templates_slug = 'starter-templates'; + } + + if ( defined( 'ASTRA_SITES_VER' ) && version_compare( ASTRA_SITES_VER, '2.0.0', '>=' ) ) { + self::$starter_templates_slug = 'starter-templates'; + } + } + + /** + * Load the scripts and styles in the customizer controls. + * + * @since 1.2.1 + */ + public static function customizer_scripts() { + $color_palettes = wp_json_encode( astra_color_palette() ); + wp_add_inline_script( 'wp-color-picker', 'jQuery.wp.wpColorPicker.prototype.options.palettes = ' . $color_palettes . ';' ); + } + + /** + * Register admin scripts. + * + * @param String $hook Screen name where the hook is fired. + * @return void + */ + public static function register_scripts( $hook ) { + + if ( in_array( $hook, array( 'post.php', 'post-new.php' ) ) ) { + $post_types = get_post_types( array( 'public' => true ) ); + $screen = get_current_screen(); + $post_type = $screen->id; + + if ( in_array( $post_type, (array) $post_types ) ) { + + echo ''; + + /** + * Register admin script for missing Layout option from nested Column Blocks inside Group/Cover blocks. + * + * @see https://github.com/WordPress/gutenberg/issues/33374 & https://gist.github.com/Luehrsen/c4aad3b33435058c19ea80f5f1c268e8 - Remove this once the issue is fixed. + * + * @since 3.7.9 + */ + wp_enqueue_script( 'astra-column-block-comp-js', ASTRA_THEME_URI . 'inc/assets/js/column-block-compatibility.js', array( 'wp-util', 'wp-hooks', 'wp-blocks' ), ASTRA_THEME_VERSION, false ); + } + } + } + + /** + * Get and return page URL + * + * @param string $menu_slug Menu name. + * @since 1.0 + * @return string page url + */ + public static function get_page_url( $menu_slug ) { + + $parent_page = 'themes.php'; + + /** @psalm-suppress InvalidLiteralArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( strpos( $parent_page, '?' ) !== false ) { + /** @psalm-suppress InvalidLiteralArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $query_var = '&page=' . Astra_Menu::get_theme_page_slug(); + } else { + $query_var = '?page=' . Astra_Menu::get_theme_page_slug(); + } + + $parent_page_url = admin_url( $parent_page . $query_var ); + + $url = $parent_page_url . '&action=' . $menu_slug; + + return esc_url( $url ); + } + } + + new Astra_Admin_Settings(); +} diff --git a/wp-content/themes/astra/inc/core/class-astra-enqueue-scripts.php b/wp-content/themes/astra/inc/core/class-astra-enqueue-scripts.php index 85701b1d7..2f51df1ed 100644 --- a/wp-content/themes/astra/inc/core/class-astra-enqueue-scripts.php +++ b/wp-content/themes/astra/inc/core/class-astra-enqueue-scripts.php @@ -404,22 +404,28 @@ public function enqueue_scripts() { wp_localize_script( 'astra-mobile-cart', 'astra_cart', apply_filters( 'astra_cart_js_localize', $astra_cart_localize_data ) ); if ( true === Astra_Builder_Helper::$is_header_footer_builder_active && Astra_Builder_Helper::is_component_loaded( 'search', 'header' ) && astra_get_option( 'live-search', false ) ) { - $search_post_types = array(); - $search_within_val = astra_get_option( 'live-search-post-types' ); + $search_post_types = array(); + $search_post_type_label = array(); + $search_within_val = astra_get_option( 'live-search-post-types' ); if ( ! empty( $search_within_val ) && is_array( $search_within_val ) ) { foreach ( $search_within_val as $post_type => $value ) { if ( $value && post_type_exists( $post_type ) ) { $search_post_types[] = $post_type; + /** @psalm-suppress PossiblyNullPropertyFetch */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $post_type_object = get_post_type_object( $post_type ); + $search_post_type_label[ $post_type ] = is_object( $post_type_object ) && isset( $post_type_object->labels->name ) ? esc_html( $post_type_object->labels->name ) : $post_type; + /** @psalm-suppress PossiblyNullPropertyFetch */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort } } } $astra_live_search_localize_data = array( - 'rest_api_url' => get_rest_url(), - 'search_posts_per_page' => 5, - 'search_post_types' => $search_post_types, - 'search_language' => astra_get_current_language_slug(), - 'no_live_results_found' => __( 'No results found', 'astra' ), + 'rest_api_url' => get_rest_url(), + 'search_posts_per_page' => 5, + 'search_post_types' => $search_post_types, + 'search_post_types_labels' => $search_post_type_label, + 'search_language' => astra_get_current_language_slug(), + 'no_live_results_found' => __( 'No results found', 'astra' ), ); wp_localize_script( 'astra-live-search', 'astra_search', apply_filters( 'astra_search_js_localize', $astra_live_search_localize_data ) ); @@ -500,21 +506,26 @@ public function gutenberg_assets() { $content_bg_obj = astra_get_option( 'content-bg-obj-responsive' ); $site_bg_obj = astra_get_option( 'site-layout-outside-bg-obj-responsive' ); + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $is_astra_pro_colors_activated = ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'colors-and-background' ) ); + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $astra_global_palette_instance = new Astra_Global_Palette(); $astra_colors = array( - 'var(--ast-global-color-0)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-0)' ), - 'var(--ast-global-color-1)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-1)' ), - 'var(--ast-global-color-2)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-2)' ), - 'var(--ast-global-color-3)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-3)' ), - 'var(--ast-global-color-4)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-4)' ), - 'var(--ast-global-color-5)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-5)' ), - 'var(--ast-global-color-6)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-6)' ), - 'var(--ast-global-color-7)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-7)' ), - 'var(--ast-global-color-8)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-8)' ), - 'ast_wp_version_higher_6_3' => astra_wp_version_compare( '6.2.99', '>' ), - 'apply_content_bg_fullwidth' => astra_apply_content_background_fullwidth_layouts(), - 'customizer_content_bg_obj' => $content_bg_obj, - 'customizer_site_bg_obj' => $site_bg_obj, + 'var(--ast-global-color-0)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-0)' ), + 'var(--ast-global-color-1)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-1)' ), + 'var(--ast-global-color-2)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-2)' ), + 'var(--ast-global-color-3)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-3)' ), + 'var(--ast-global-color-4)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-4)' ), + 'var(--ast-global-color-5)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-5)' ), + 'var(--ast-global-color-6)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-6)' ), + 'var(--ast-global-color-7)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-7)' ), + 'var(--ast-global-color-8)' => $astra_global_palette_instance->get_color_by_palette_variable( 'var(--ast-global-color-8)' ), + 'ast_wp_version_higher_6_3' => astra_wp_version_compare( '6.2.99', '>' ), + 'apply_content_bg_fullwidth' => astra_apply_content_background_fullwidth_layouts(), + 'customizer_content_bg_obj' => $content_bg_obj, + 'customizer_site_bg_obj' => $site_bg_obj, + 'is_astra_pro_colors_activated' => $is_astra_pro_colors_activated, ); wp_localize_script( 'astra-block-editor-script', 'astraColors', apply_filters( 'astra_theme_root_colors', $astra_colors ) ); diff --git a/wp-content/themes/astra/inc/core/class-astra-theme-options.php b/wp-content/themes/astra/inc/core/class-astra-theme-options.php index 8a70670d8..9ae111a96 100644 --- a/wp-content/themes/astra/inc/core/class-astra-theme-options.php +++ b/wp-content/themes/astra/inc/core/class-astra-theme-options.php @@ -1,750 +1,750 @@ - 'default', - 'blog-single-max-width' => 1200, - - // Blog. - 'blog-post-structure' => array( - 'image', - 'title-meta', - ), - 'blog-width' => 'default', - 'blog-meta-date-type' => 'published', - 'blog-meta-date-format' => '', - 'blog-max-width' => 1200, - 'blog-post-content' => 'excerpt', - 'blog-meta' => array( - 'comments', - 'category', - 'author', - ), - // Colors. - 'text-color' => 'var(' . $palette_css_var_prefix . '3)', - 'link-color' => 'var(' . $palette_css_var_prefix . '0)', - 'theme-color' => 'var(' . $palette_css_var_prefix . '0)', - 'link-h-color' => 'var(' . $palette_css_var_prefix . '1)', - 'heading-base-color' => 'var(' . $palette_css_var_prefix . '2)', - 'border-color' => 'var(' . $palette_css_var_prefix . '6)', - - // Footer Bar Background. - 'footer-bg-obj' => array( - 'background-color' => '', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'footer-color' => '', - 'footer-link-color' => '', - 'footer-link-h-color' => '', - - // Footer Widgets Background. - 'footer-adv-bg-obj' => array( - 'background-color' => '', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'footer-adv-text-color' => '', - 'footer-adv-link-color' => '', - 'footer-adv-link-h-color' => '', - 'footer-adv-wgt-title-color' => '', - - // Buttons. - 'button-color' => '', - 'button-h-color' => '', - 'button-bg-color' => '', - 'button-bg-h-color' => '', - 'secondary-button-bg-h-color' => '', - 'secondary-button-bg-color' => '', - 'secondary-button-color' => '', - 'secondary-button-h-color' => '', - 'theme-button-padding' => array( - 'desktop' => array( - 'top' => $apply_new_default_values ? 15 : 10, - 'right' => $apply_new_default_values ? 30 : 40, - 'bottom' => $apply_new_default_values ? 15 : 10, - 'left' => $apply_new_default_values ? 30 : 40, - ), - 'tablet' => array( - 'top' => $apply_new_default_values ? 14 : '', - 'right' => $apply_new_default_values ? 28 : '', - 'bottom' => $apply_new_default_values ? 14 : '', - 'left' => $apply_new_default_values ? 28 : '', - ), - 'mobile' => array( - 'top' => $apply_new_default_values ? 12 : '', - 'right' => $apply_new_default_values ? 24 : '', - 'bottom' => $apply_new_default_values ? 12 : '', - 'left' => $apply_new_default_values ? 24 : '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'secondary-theme-button-padding' => array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'right' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'bottom' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'left' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'secondary-button-radius-fields' => array( - 'desktop' => array( - 'top' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'right' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'bottom' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - 'left' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'theme-button-border-group-border-size' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'secondary-theme-button-border-group-border-size' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - - // Footer - Small. - 'footer-sml-layout' => 'footer-sml-layout-1', - 'footer-sml-section-1' => 'custom', - 'footer-sml-section-1-credit' => __( 'Copyright © [current_year] [site_title] | Powered by [theme_author]', 'astra' ), - 'footer-sml-section-2' => '', - 'footer-sml-section-2-credit' => __( 'Copyright © [current_year] [site_title] | Powered by [theme_author]', 'astra' ), - 'footer-sml-dist-equal-align' => true, - 'footer-sml-divider' => 1, - 'footer-sml-divider-color' => '#7a7a7a', - 'footer-layout-width' => 'content', - // General. - 'ast-header-retina-logo' => '', - 'ast-header-logo-width' => '', - 'ast-header-responsive-logo-width' => array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - ), - 'header-color-site-title' => '', - 'header-color-h-site-title' => '', - 'header-color-site-tagline' => '', - 'display-site-title-responsive' => array( - 'desktop' => 1, - 'tablet' => 1, - 'mobile' => 1, - ), - 'display-site-tagline-responsive' => array( - 'desktop' => 0, - 'tablet' => 0, - 'mobile' => 0, - ), - 'logo-title-inline' => 1, - // Header - Primary. - 'disable-primary-nav' => false, - 'header-layouts' => 'header-main-layout-1', - 'header-main-rt-section' => 'none', - 'header-display-outside-menu' => false, - 'header-main-rt-section-html' => '', - 'header-main-rt-section-button-text' => __( 'Button', 'astra' ), - 'header-main-rt-section-button-link' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ), - 'header-main-rt-section-button-link-option' => array( - 'url' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ), - 'new_tab' => false, - 'link_rel' => '', - ), - 'header-main-rt-section-button-style' => 'theme-button', - 'header-main-rt-section-button-text-color' => '', - 'header-main-rt-section-button-back-color' => '', - 'header-main-rt-section-button-text-h-color' => '', - 'header-main-rt-section-button-back-h-color' => '', - 'header-main-rt-section-button-padding' => array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - ), - 'header-main-rt-section-button-border-size' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'header-main-sep' => 1, - 'header-main-sep-color' => '', - 'header-main-layout-width' => 'content', - // Header - Sub menu Border. - 'primary-submenu-border' => array( - 'top' => '2', - 'right' => '0', - 'bottom' => '0', - 'left' => '0', - ), - 'primary-submenu-item-border' => false, - 'primary-submenu-b-color' => '', - 'primary-submenu-item-b-color' => '', - - // Primary header button typo options. - 'primary-header-button-font-family' => 'inherit', - 'primary-header-button-font-weight' => 'inherit', - 'primary-header-button-font-size' => array( - 'desktop' => '', - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'primary-header-button-text-transform' => '', - 'primary-header-button-line-height' => 1, - 'primary-header-button-letter-spacing' => '', - - 'header-main-menu-label' => '', - 'header-main-menu-align' => 'inline', - 'header-main-submenu-container-animation' => '', - 'mobile-header-breakpoint' => '', - 'mobile-header-logo' => '', - 'mobile-header-logo-width' => '', - // Site Layout. - 'site-layout' => 'ast-full-width-layout', - 'site-content-width' => 1200, - 'narrow-container-max-width' => 750, - 'site-layout-outside-bg-obj-responsive' => array( - 'desktop' => array( - 'background-color' => $apply_new_default_values ? 'var(--ast-global-color-4)' : '', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'tablet' => array( - 'background-color' => '', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'mobile' => array( - 'background-color' => '', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - ), - 'content-bg-obj-responsive' => array( - 'desktop' => array( - 'background-color' => 'var(' . $palette_css_var_prefix . '5)', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'tablet' => array( - 'background-color' => 'var(' . $palette_css_var_prefix . '5)', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - 'mobile' => array( - 'background-color' => 'var(' . $palette_css_var_prefix . '5)', - 'background-image' => '', - 'background-repeat' => 'repeat', - 'background-position' => 'center center', - 'background-size' => 'auto', - 'background-attachment' => 'scroll', - 'background-type' => '', - 'background-media' => '', - 'overlay-type' => '', - 'overlay-color' => '', - 'overlay-gradient' => '', - ), - ), - // Entry Content. - 'wp-blocks-ui' => false === astra_check_is_structural_setup() ? 'custom' : 'comfort', - 'wp-blocks-global-padding' => array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'em', - 'tablet-unit' => 'em', - 'mobile-unit' => 'em', - ), - - // Container. - 'single-page-ast-content-layout' => false === astra_check_is_structural_setup() ? 'default' : 'normal-width-container', - 'single-page-content-style' => false === astra_check_is_structural_setup() ? 'default' : 'unboxed', - 'single-post-ast-content-layout' => 'default', - 'single-post-content-style' => 'default', - 'archive-post-ast-content-layout' => 'default', - 'ast-site-content-layout' => 'normal-width-container', - 'site-content-style' => 'boxed', - - // Typography. - 'body-font-family' => 'inherit', - 'body-font-variant' => '', - 'body-font-weight' => $apply_new_default_color_typo_values ? '400' : 'inherit', - 'font-size-body' => array( - 'desktop' => $apply_new_default_color_typo_values ? 16 : 15, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'body-font-extras' => array( - 'line-height' => ! isset( $astra_options['body-font-extras'] ) && isset( $astra_options['body-line-height'] ) ? $astra_options['body-line-height'] : '1.6', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['body-font-extras'] ) && isset( $astra_options['body-text-transform'] ) ? $astra_options['body-text-transform'] : '', - 'text-decoration' => '', - ), - 'headings-font-height-settings' => array( - 'line-height' => ! isset( $astra_options['headings-font-extras'] ) && isset( $astra_options['headings-line-height'] ) ? $astra_options['headings-line-height'] : '', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => ! isset( $astra_options['headings-font-extras'] ) && isset( $astra_options['headings-text-transform'] ) ? $astra_options['headings-text-transform'] : '', - 'text-decoration' => '', - ), - 'para-margin-bottom' => '', - 'underline-content-links' => true, - 'site-accessibility-toggle' => true, - 'site-accessibility-highlight-type' => 'dotted', - 'site-accessibility-highlight-input-type' => 'disable', - 'body-text-transform' => '', - 'headings-font-family' => 'inherit', - 'headings-font-weight' => $apply_new_default_values ? '600' : 'inherit', - 'font-size-site-title' => array( - 'desktop' => $apply_new_default_color_typo_values ? 26 : 35, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-site-tagline' => array( - 'desktop' => 15, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'single-post-outside-spacing' => array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-page-title' => array( - 'desktop' => $apply_new_default_color_typo_values ? 26 : 30, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h1' => array( - 'desktop' => $apply_new_default_color_typo_values ? 40 : 40, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h2' => array( - 'desktop' => $apply_new_default_color_typo_values ? 32 : 30, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h3' => array( - 'desktop' => $apply_new_default_color_typo_values ? 26 : 25, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h4' => array( - 'desktop' => $apply_new_default_color_typo_values ? 24 : 20, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h5' => array( - 'desktop' => $apply_new_default_color_typo_values ? 20 : 18, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'font-size-h6' => array( - 'desktop' => $apply_new_default_color_typo_values ? 16 : 15, - 'tablet' => '', - 'mobile' => '', - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - - // Sidebar. - 'site-sidebar-layout' => false === astra_check_old_sidebar_user() ? 'right-sidebar' : 'no-sidebar', - 'site-sidebar-width' => 30, - 'single-page-sidebar-layout' => false === astra_check_is_structural_setup() ? 'default' : 'no-sidebar', - 'single-post-sidebar-layout' => 'default', - 'archive-post-sidebar-layout' => 'default', - 'site-sticky-sidebar' => false, - 'site-sidebar-style' => 'unboxed', - 'single-page-sidebar-style' => 'unboxed', - 'single-post-sidebar-style' => 'default', - 'archive-post-sidebar-style' => 'default', - - // Sidebar. - 'footer-adv' => 'disabled', - 'footer-adv-border-width' => '', - 'footer-adv-border-color' => '#7a7a7a', - - // toogle menu style. - 'mobile-header-toggle-btn-style' => 'minimal', - 'hide-custom-menu-mobile' => 1, - - // toogle menu target. - 'mobile-header-toggle-target' => 'icon', - - // Misc. - 'enable-scroll-to-id' => true, - ) - ); - - return self::$defaults; - } - - /** - * Get astra-options DB values. - * - * @return array Return array of theme options from database. - * - * @since 4.0.0 - */ - public static function get_astra_options() { - if ( is_null( self::$astra_options ) || is_customize_preview() ) { - self::$astra_options = get_option( ASTRA_THEME_SETTINGS ); - } - return self::$astra_options; - } - - /** - * Get theme options from static array() - * - * @return array Return array of theme options. - */ - public static function get_options() { - return self::$db_options; - } - - /** - * Update theme static option array. - */ - public static function refresh() { - self::$db_options = wp_parse_args( - self::get_db_options(), - self::defaults() - ); - } - - /** - * Get theme options from static array() from database - * - * @return array Return array of theme options from database. - */ - public static function get_db_options() { - self::$db_options_no_defaults = self::get_astra_options(); - return self::$db_options_no_defaults; - } - } -} -/** - * Kicking this off by calling 'get_instance()' method - */ -Astra_Theme_Options::get_instance(); + 'default', + 'blog-single-max-width' => 1200, + + // Blog. + 'blog-post-structure' => array( + 'image', + 'title-meta', + ), + 'blog-width' => 'default', + 'blog-meta-date-type' => 'published', + 'blog-meta-date-format' => '', + 'blog-max-width' => 1200, + 'blog-post-content' => 'excerpt', + 'blog-meta' => array( + 'comments', + 'category', + 'author', + ), + // Colors. + 'text-color' => 'var(' . $palette_css_var_prefix . '3)', + 'link-color' => 'var(' . $palette_css_var_prefix . '0)', + 'theme-color' => 'var(' . $palette_css_var_prefix . '0)', + 'link-h-color' => 'var(' . $palette_css_var_prefix . '1)', + 'heading-base-color' => 'var(' . $palette_css_var_prefix . '2)', + 'border-color' => 'var(' . $palette_css_var_prefix . '6)', + + // Footer Bar Background. + 'footer-bg-obj' => array( + 'background-color' => '', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'footer-color' => '', + 'footer-link-color' => '', + 'footer-link-h-color' => '', + + // Footer Widgets Background. + 'footer-adv-bg-obj' => array( + 'background-color' => '', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'footer-adv-text-color' => '', + 'footer-adv-link-color' => '', + 'footer-adv-link-h-color' => '', + 'footer-adv-wgt-title-color' => '', + + // Buttons. + 'button-color' => '', + 'button-h-color' => '', + 'button-bg-color' => '', + 'button-bg-h-color' => '', + 'secondary-button-bg-h-color' => '', + 'secondary-button-bg-color' => '', + 'secondary-button-color' => '', + 'secondary-button-h-color' => '', + 'theme-button-padding' => array( + 'desktop' => array( + 'top' => $apply_new_default_values ? 15 : 10, + 'right' => $apply_new_default_values ? 30 : 40, + 'bottom' => $apply_new_default_values ? 15 : 10, + 'left' => $apply_new_default_values ? 30 : 40, + ), + 'tablet' => array( + 'top' => $apply_new_default_values ? 14 : '', + 'right' => $apply_new_default_values ? 28 : '', + 'bottom' => $apply_new_default_values ? 14 : '', + 'left' => $apply_new_default_values ? 28 : '', + ), + 'mobile' => array( + 'top' => $apply_new_default_values ? 12 : '', + 'right' => $apply_new_default_values ? 24 : '', + 'bottom' => $apply_new_default_values ? 12 : '', + 'left' => $apply_new_default_values ? 24 : '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'secondary-theme-button-padding' => array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'right' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'bottom' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'left' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'secondary-button-radius-fields' => array( + 'desktop' => array( + 'top' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'right' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'bottom' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + 'left' => ! isset( $astra_options['button-radius'] ) ? '' : $astra_options['button-radius'], + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'theme-button-border-group-border-size' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'secondary-theme-button-border-group-border-size' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + + // Footer - Small. + 'footer-sml-layout' => 'footer-sml-layout-1', + 'footer-sml-section-1' => 'custom', + 'footer-sml-section-1-credit' => __( 'Copyright © [current_year] [site_title] | Powered by [theme_author]', 'astra' ), + 'footer-sml-section-2' => '', + 'footer-sml-section-2-credit' => __( 'Copyright © [current_year] [site_title] | Powered by [theme_author]', 'astra' ), + 'footer-sml-dist-equal-align' => true, + 'footer-sml-divider' => 1, + 'footer-sml-divider-color' => '#7a7a7a', + 'footer-layout-width' => 'content', + // General. + 'ast-header-retina-logo' => '', + 'ast-header-logo-width' => '', + 'ast-header-responsive-logo-width' => array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + ), + 'header-color-site-title' => '', + 'header-color-h-site-title' => '', + 'header-color-site-tagline' => '', + 'display-site-title-responsive' => array( + 'desktop' => 1, + 'tablet' => 1, + 'mobile' => 1, + ), + 'display-site-tagline-responsive' => array( + 'desktop' => 0, + 'tablet' => 0, + 'mobile' => 0, + ), + 'logo-title-inline' => 1, + // Header - Primary. + 'disable-primary-nav' => false, + 'header-layouts' => 'header-main-layout-1', + 'header-main-rt-section' => 'none', + 'header-display-outside-menu' => false, + 'header-main-rt-section-html' => '', + 'header-main-rt-section-button-text' => __( 'Button', 'astra' ), + 'header-main-rt-section-button-link' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ), + 'header-main-rt-section-button-link-option' => array( + 'url' => apply_filters( 'astra_site_url', 'https://www.wpastra.com' ), + 'new_tab' => false, + 'link_rel' => '', + ), + 'header-main-rt-section-button-style' => 'theme-button', + 'header-main-rt-section-button-text-color' => '', + 'header-main-rt-section-button-back-color' => '', + 'header-main-rt-section-button-text-h-color' => '', + 'header-main-rt-section-button-back-h-color' => '', + 'header-main-rt-section-button-padding' => array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + ), + 'header-main-rt-section-button-border-size' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'header-main-sep' => 1, + 'header-main-sep-color' => '', + 'header-main-layout-width' => 'content', + // Header - Sub menu Border. + 'primary-submenu-border' => array( + 'top' => '2', + 'right' => '0', + 'bottom' => '0', + 'left' => '0', + ), + 'primary-submenu-item-border' => false, + 'primary-submenu-b-color' => '', + 'primary-submenu-item-b-color' => '', + + // Primary header button typo options. + 'primary-header-button-font-family' => 'inherit', + 'primary-header-button-font-weight' => 'inherit', + 'primary-header-button-font-size' => array( + 'desktop' => '', + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'primary-header-button-text-transform' => '', + 'primary-header-button-line-height' => 1, + 'primary-header-button-letter-spacing' => '', + + 'header-main-menu-label' => '', + 'header-main-menu-align' => 'inline', + 'header-main-submenu-container-animation' => '', + 'mobile-header-breakpoint' => '', + 'mobile-header-logo' => '', + 'mobile-header-logo-width' => '', + // Site Layout. + 'site-layout' => 'ast-full-width-layout', + 'site-content-width' => 1200, + 'narrow-container-max-width' => 750, + 'site-layout-outside-bg-obj-responsive' => array( + 'desktop' => array( + 'background-color' => $apply_new_default_values ? 'var(--ast-global-color-4)' : '', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'tablet' => array( + 'background-color' => '', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'mobile' => array( + 'background-color' => '', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + ), + 'content-bg-obj-responsive' => array( + 'desktop' => array( + 'background-color' => 'var(' . $palette_css_var_prefix . '5)', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'tablet' => array( + 'background-color' => 'var(' . $palette_css_var_prefix . '5)', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + 'mobile' => array( + 'background-color' => 'var(' . $palette_css_var_prefix . '5)', + 'background-image' => '', + 'background-repeat' => 'repeat', + 'background-position' => 'center center', + 'background-size' => 'auto', + 'background-attachment' => 'scroll', + 'background-type' => '', + 'background-media' => '', + 'overlay-type' => '', + 'overlay-color' => '', + 'overlay-gradient' => '', + ), + ), + // Entry Content. + 'wp-blocks-ui' => false === astra_check_is_structural_setup() ? 'custom' : 'comfort', + 'wp-blocks-global-padding' => array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'em', + 'tablet-unit' => 'em', + 'mobile-unit' => 'em', + ), + + // Container. + 'single-page-ast-content-layout' => false === astra_check_is_structural_setup() ? 'default' : 'normal-width-container', + 'single-page-content-style' => false === astra_check_is_structural_setup() ? 'default' : 'unboxed', + 'single-post-ast-content-layout' => 'default', + 'single-post-content-style' => 'default', + 'archive-post-ast-content-layout' => 'default', + 'ast-site-content-layout' => 'normal-width-container', + 'site-content-style' => 'boxed', + + // Typography. + 'body-font-family' => 'inherit', + 'body-font-variant' => '', + 'body-font-weight' => $apply_new_default_color_typo_values ? '400' : 'inherit', + 'font-size-body' => array( + 'desktop' => $apply_new_default_color_typo_values ? 16 : 15, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'body-font-extras' => array( + 'line-height' => ! isset( $astra_options['body-font-extras'] ) && isset( $astra_options['body-line-height'] ) ? $astra_options['body-line-height'] : '1.6', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['body-font-extras'] ) && isset( $astra_options['body-text-transform'] ) ? $astra_options['body-text-transform'] : '', + 'text-decoration' => '', + ), + 'headings-font-height-settings' => array( + 'line-height' => ! isset( $astra_options['headings-font-extras'] ) && isset( $astra_options['headings-line-height'] ) ? $astra_options['headings-line-height'] : '', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => ! isset( $astra_options['headings-font-extras'] ) && isset( $astra_options['headings-text-transform'] ) ? $astra_options['headings-text-transform'] : '', + 'text-decoration' => '', + ), + 'para-margin-bottom' => '', + 'underline-content-links' => true, + 'site-accessibility-toggle' => true, + 'site-accessibility-highlight-type' => 'dotted', + 'site-accessibility-highlight-input-type' => 'disable', + 'body-text-transform' => '', + 'headings-font-family' => 'inherit', + 'headings-font-weight' => $apply_new_default_values ? '600' : 'inherit', + 'font-size-site-title' => array( + 'desktop' => $apply_new_default_color_typo_values ? 26 : 35, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-site-tagline' => array( + 'desktop' => 15, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'single-post-outside-spacing' => array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-page-title' => array( + 'desktop' => $apply_new_default_color_typo_values ? 26 : 30, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h1' => array( + 'desktop' => $apply_new_default_color_typo_values ? 40 : 40, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h2' => array( + 'desktop' => $apply_new_default_color_typo_values ? 32 : 30, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h3' => array( + 'desktop' => $apply_new_default_color_typo_values ? 26 : 25, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h4' => array( + 'desktop' => $apply_new_default_color_typo_values ? 24 : 20, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h5' => array( + 'desktop' => $apply_new_default_color_typo_values ? 20 : 18, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'font-size-h6' => array( + 'desktop' => $apply_new_default_color_typo_values ? 16 : 15, + 'tablet' => '', + 'mobile' => '', + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + + // Sidebar. + 'site-sidebar-layout' => false === astra_check_old_sidebar_user() ? 'right-sidebar' : 'no-sidebar', + 'site-sidebar-width' => 30, + 'single-page-sidebar-layout' => false === astra_check_is_structural_setup() ? 'default' : 'no-sidebar', + 'single-post-sidebar-layout' => 'default', + 'archive-post-sidebar-layout' => 'default', + 'site-sticky-sidebar' => false, + 'site-sidebar-style' => 'unboxed', + 'single-page-sidebar-style' => 'unboxed', + 'single-post-sidebar-style' => 'default', + 'archive-post-sidebar-style' => 'default', + + // Sidebar. + 'footer-adv' => 'disabled', + 'footer-adv-border-width' => '', + 'footer-adv-border-color' => '#7a7a7a', + + // toogle menu style. + 'mobile-header-toggle-btn-style' => 'minimal', + 'hide-custom-menu-mobile' => 1, + + // toogle menu target. + 'mobile-header-toggle-target' => 'icon', + + // Misc. + 'enable-scroll-to-id' => true, + ) + ); + + return self::$defaults; + } + + /** + * Get astra-options DB values. + * + * @return array Return array of theme options from database. + * + * @since 4.0.0 + */ + public static function get_astra_options() { + if ( is_null( self::$astra_options ) || is_customize_preview() ) { + self::$astra_options = get_option( ASTRA_THEME_SETTINGS ); + } + return self::$astra_options; + } + + /** + * Get theme options from static array() + * + * @return array Return array of theme options. + */ + public static function get_options() { + return self::$db_options; + } + + /** + * Update theme static option array. + */ + public static function refresh() { + self::$db_options = wp_parse_args( + self::get_db_options(), + self::defaults() + ); + } + + /** + * Get theme options from static array() from database + * + * @return array Return array of theme options from database. + */ + public static function get_db_options() { + self::$db_options_no_defaults = self::get_astra_options(); + return self::$db_options_no_defaults; + } + } +} +/** + * Kicking this off by calling 'get_instance()' method + */ +Astra_Theme_Options::get_instance(); diff --git a/wp-content/themes/astra/inc/core/class-theme-strings.php b/wp-content/themes/astra/inc/core/class-theme-strings.php index 681a90900..c4f9eb2bc 100644 --- a/wp-content/themes/astra/inc/core/class-theme-strings.php +++ b/wp-content/themes/astra/inc/core/class-theme-strings.php @@ -1,109 +1,109 @@ - __( 'Skip to content', 'astra' ), - - // 404 Page Strings. - 'string-404-sub-title' => __( 'It looks like the link pointing here was faulty. Maybe try searching?', 'astra' ), - - // Search Page Strings. - 'string-search-nothing-found' => __( 'Nothing Found', 'astra' ), - 'string-search-nothing-found-message' => __( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'astra' ), - 'string-full-width-search-message' => __( 'Start typing and press enter to search', 'astra' ), - 'string-full-width-search-placeholder' => __( 'Search...', 'astra' ), - 'string-header-cover-search-placeholder' => __( 'Search...', 'astra' ), - 'string-search-input-placeholder' => __( 'Search...', 'astra' ), - - // Comment Template Strings. - 'string-comment-reply-link' => __( 'Reply', 'astra' ), - 'string-comment-edit-link' => __( 'Edit', 'astra' ), - 'string-comment-awaiting-moderation' => __( 'Your comment is awaiting moderation.', 'astra' ), - 'string-comment-title-reply' => __( 'Leave a Comment', 'astra' ), - 'string-comment-cancel-reply-link' => __( 'Cancel Reply', 'astra' ), - 'string-comment-label-submit' => $post_comment_dynamic_string, - 'string-comment-label-message' => __( 'Type here..', 'astra' ), - 'string-comment-label-name' => __( 'Name*', 'astra' ), - 'string-comment-label-email' => __( 'Email*', 'astra' ), - 'string-comment-label-website' => __( 'Website', 'astra' ), - 'string-comment-closed' => __( 'Comments are closed.', 'astra' ), - 'string-comment-navigation-title' => __( 'Comment navigation', 'astra' ), - 'string-comment-navigation-next' => __( 'Newer Comments', 'astra' ), - 'string-comment-navigation-previous' => __( 'Older Comments', 'astra' ), - - // Blog Default Strings. - 'string-blog-page-links-before' => __( 'Pages:', 'astra' ), - 'string-blog-meta-author-by' => __( 'By ', 'astra' ), - 'string-blog-meta-leave-a-comment' => __( 'Leave a Comment', 'astra' ), - 'string-blog-meta-one-comment' => __( '1 Comment', 'astra' ), - 'string-blog-meta-multiple-comment' => __( '% Comments', 'astra' ), - 'string-blog-navigation-next' => __( 'Next Page', 'astra' ) . ' ', - 'string-blog-navigation-previous' => ' ' . __( 'Previous Page', 'astra' ), - - // Single Post Default Strings. - 'string-single-page-links-before' => __( 'Pages:', 'astra' ), - /* translators: 1: Post type label */ - 'string-single-navigation-next' => __( 'Next %s', 'astra' ) . ' ', - /* translators: 1: Post type label */ - 'string-single-navigation-previous' => ' ' . __( 'Previous %s', 'astra' ), - - // Content None. - 'string-content-nothing-found-message' => __( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'astra' ), - - ) - ); - - if ( is_rtl() ) { - $defaults['string-blog-navigation-next'] = __( 'Next Page', 'astra' ) . ' '; - $defaults['string-blog-navigation-previous'] = ' ' . __( 'Previous Page', 'astra' ); - - /* translators: 1: Post type label */ - $defaults['string-single-navigation-next'] = __( 'Next %s', 'astra' ) . ' '; - /* translators: 1: Post type label */ - $defaults['string-single-navigation-previous'] = ' ' . __( 'Previous %s', 'astra' ); - } - - $output = isset( $defaults[ $key ] ) ? $defaults[ $key ] : ''; - - /** - * Print or return - */ - if ( $echo ) { - echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $output; - } - } -} + __( 'Skip to content', 'astra' ), + + // 404 Page Strings. + 'string-404-sub-title' => __( 'It looks like the link pointing here was faulty. Maybe try searching?', 'astra' ), + + // Search Page Strings. + 'string-search-nothing-found' => __( 'Nothing Found', 'astra' ), + 'string-search-nothing-found-message' => __( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'astra' ), + 'string-full-width-search-message' => __( 'Start typing and press enter to search', 'astra' ), + 'string-full-width-search-placeholder' => __( 'Search...', 'astra' ), + 'string-header-cover-search-placeholder' => __( 'Search...', 'astra' ), + 'string-search-input-placeholder' => __( 'Search...', 'astra' ), + + // Comment Template Strings. + 'string-comment-reply-link' => __( 'Reply', 'astra' ), + 'string-comment-edit-link' => __( 'Edit', 'astra' ), + 'string-comment-awaiting-moderation' => __( 'Your comment is awaiting moderation.', 'astra' ), + 'string-comment-title-reply' => __( 'Leave a Comment', 'astra' ), + 'string-comment-cancel-reply-link' => __( 'Cancel Reply', 'astra' ), + 'string-comment-label-submit' => $post_comment_dynamic_string, + 'string-comment-label-message' => __( 'Type here..', 'astra' ), + 'string-comment-label-name' => __( 'Name*', 'astra' ), + 'string-comment-label-email' => __( 'Email*', 'astra' ), + 'string-comment-label-website' => __( 'Website', 'astra' ), + 'string-comment-closed' => __( 'Comments are closed.', 'astra' ), + 'string-comment-navigation-title' => __( 'Comment navigation', 'astra' ), + 'string-comment-navigation-next' => __( 'Newer Comments', 'astra' ), + 'string-comment-navigation-previous' => __( 'Older Comments', 'astra' ), + + // Blog Default Strings. + 'string-blog-page-links-before' => __( 'Pages:', 'astra' ), + 'string-blog-meta-author-by' => __( 'By ', 'astra' ), + 'string-blog-meta-leave-a-comment' => __( 'Leave a Comment', 'astra' ), + 'string-blog-meta-one-comment' => __( '1 Comment', 'astra' ), + 'string-blog-meta-multiple-comment' => __( '% Comments', 'astra' ), + 'string-blog-navigation-next' => __( 'Next Page', 'astra' ) . ' ', + 'string-blog-navigation-previous' => ' ' . __( 'Previous Page', 'astra' ), + + // Single Post Default Strings. + 'string-single-page-links-before' => __( 'Pages:', 'astra' ), + /* translators: 1: Post type label */ + 'string-single-navigation-next' => __( 'Next %s', 'astra' ) . ' ', + /* translators: 1: Post type label */ + 'string-single-navigation-previous' => ' ' . __( 'Previous %s', 'astra' ), + + // Content None. + 'string-content-nothing-found-message' => __( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'astra' ), + + ) + ); + + if ( is_rtl() ) { + $defaults['string-blog-navigation-next'] = __( 'Next Page', 'astra' ) . ' '; + $defaults['string-blog-navigation-previous'] = ' ' . __( 'Previous Page', 'astra' ); + + /* translators: 1: Post type label */ + $defaults['string-single-navigation-next'] = __( 'Next %s', 'astra' ) . ' '; + /* translators: 1: Post type label */ + $defaults['string-single-navigation-previous'] = ' ' . __( 'Previous %s', 'astra' ); + } + + $output = isset( $defaults[ $key ] ) ? $defaults[ $key ] : ''; + + /** + * Print or return + */ + if ( $echo ) { + echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $output; + } + } +} diff --git a/wp-content/themes/astra/inc/core/common-functions.php b/wp-content/themes/astra/inc/core/common-functions.php index 1b35ac2a5..445bb4f9a 100644 --- a/wp-content/themes/astra/inc/core/common-functions.php +++ b/wp-content/themes/astra/inc/core/common-functions.php @@ -1,1840 +1,1840 @@ - 0 ) { - - foreach ( $css_output as $selector => $properties ) { - - if ( null === $properties ) { - break; - } - - if ( ! count( $properties ) ) { - continue; - } - - $temp_parse_css = $selector . '{'; - $properties_added = 0; - - foreach ( $properties as $property => $value ) { - - if ( '' == $value && 0 !== $value ) { - continue; - } - - $properties_added++; - $temp_parse_css .= $property . ':' . $value . ';'; - } - - $temp_parse_css .= '}'; - - if ( $properties_added > 0 ) { - $parse_css .= $temp_parse_css; - } - } - - if ( '' != $parse_css && ( '' !== $min_media || '' !== $max_media ) ) { - - $media_css = '@media '; - $min_media_css = ''; - $max_media_css = ''; - $media_separator = ''; - - if ( '' !== $min_media ) { - $min_media_css = '(min-width:' . $min_media . 'px)'; - } - if ( '' !== $max_media ) { - $max_media_css = '(max-width:' . $max_media . 'px)'; - } - if ( '' !== $min_media && '' !== $max_media ) { - $media_separator = ' and '; - } - - $media_css .= $min_media_css . $media_separator . $max_media_css . '{' . $parse_css . '}'; - - return $media_css; - } - } - - return $parse_css; - } -} - -/** - * Return Theme options. - */ -if ( ! function_exists( 'astra_get_option' ) ) { - - /** - * Return Theme options. - * - * @param string $option Option key. - * @param mixed $default Option default value. - * @param string $deprecated Option default value. - * @return mixed Return option value. - */ - function astra_get_option( $option, $default = '', $deprecated = '' ) { - - if ( '' != $deprecated ) { - $default = $deprecated; - } - - $theme_options = Astra_Theme_Options::get_options(); - - /** - * Filter the options array for Astra Settings. - * - * @since 1.0.20 - * @var Array - */ - $theme_options = apply_filters( 'astra_get_option_array', $theme_options, $option, $default ); - - $value = ( isset( $theme_options[ $option ] ) && '' !== $theme_options[ $option ] ) ? $theme_options[ $option ] : $default; - - /** - * Dynamic filter astra_get_option_$option. - * $option is the name of the Astra Setting, Refer Astra_Theme_Options::defaults() for option names from the theme. - * - * @since 1.0.20 - * @var Mixed. - */ - return apply_filters( "astra_get_option_{$option}", $value, $option, $default ); - } -} - -if ( ! function_exists( 'astra_update_option' ) ) { - - /** - * Update Theme options. - * - * @param string $option option key. - * @param Mixed $value option value. - * @return void - */ - function astra_update_option( $option, $value ) { - - do_action( "astra_before_update_option_{$option}", $value, $option ); - - // Get all customizer options. - $theme_options = get_option( ASTRA_THEME_SETTINGS ); - - // Update value in options array. - if ( ! is_array( $theme_options ) ) { - $theme_options = array(); - } - $theme_options[ $option ] = $value; - - update_option( ASTRA_THEME_SETTINGS, $theme_options ); - - do_action( "astra_after_update_option_{$option}", $value, $option ); - } -} - -if ( ! function_exists( 'astra_delete_option' ) ) { - - /** - * Update Theme options. - * - * @param string $option option key. - * @return void - */ - function astra_delete_option( $option ) { - - do_action( "astra_before_delete_option_{$option}", $option ); - - // Get all customizer options. - $theme_options = get_option( ASTRA_THEME_SETTINGS ); - - // Update value in options array. - unset( $theme_options[ $option ] ); - - update_option( ASTRA_THEME_SETTINGS, $theme_options ); - - do_action( "astra_after_delete_option_{$option}", $option ); - } -} - -/** - * Return Theme options from postmeta. - */ -if ( ! function_exists( 'astra_get_option_meta' ) ) { - - /** - * Return Theme options from postmeta. - * - * @param string $option_id Option ID. - * @param string $default Option default value. - * @param boolean $only_meta Get only meta value. - * @param string $extension Is value from extension. - * @param string $post_id Get value from specific post by post ID. - * @return Mixed Return option value. - */ - function astra_get_option_meta( $option_id, $default = '', $only_meta = false, $extension = '', $post_id = '' ) { - - $post_id = ( '' != $post_id ) ? $post_id : astra_get_post_id(); - - $value = astra_get_option( $option_id, $default ); - - // Get value from option 'post-meta'. - if ( is_singular() || ( is_home() && ! is_front_page() ) ) { - - $value = get_post_meta( $post_id, $option_id, true ); - - if ( empty( $value ) || 'default' == $value ) { - - if ( true === $only_meta ) { - return false; - } - - $value = astra_get_option( $option_id, $default ); - } - } - - /** - * Dynamic filter astra_get_option_meta_$option. - * $option_id is the name of the Astra Meta Setting. - * - * @since 1.0.20 - * @var Mixed. - */ - return apply_filters( "astra_get_option_meta_{$option_id}", $value, $default, $default ); - } -} - -/** - * Helper function to get the current post id. - */ -if ( ! function_exists( 'astra_get_post_id' ) ) { - - /** - * Get post ID. - * - * @param string $post_id_override Get override post ID. - * @return number Post ID. - */ - function astra_get_post_id( $post_id_override = '' ) { - - if ( null == Astra_Theme_Options::$post_id ) { - global $post; - - $post_id = 0; - - if ( is_home() ) { - $post_id = get_option( 'page_for_posts' ); - } elseif ( is_archive() ) { - global $wp_query; - $post_id = $wp_query->get_queried_object_id(); - } elseif ( isset( $post->ID ) && ! is_search() && ! is_category() ) { - $post_id = $post->ID; - } - - Astra_Theme_Options::$post_id = $post_id; - } - - return apply_filters( 'astra_get_post_id', Astra_Theme_Options::$post_id, $post_id_override ); - } -} - - -/** - * Display classes for primary div - */ -if ( ! function_exists( 'astra_primary_class' ) ) { - - /** - * Display classes for primary div - * - * @param string|array $class One or more classes to add to the class list. - * @return void Echo classes. - */ - function astra_primary_class( $class = '' ) { - - // Separates classes with a single space, collates classes for body element. - echo 'class="' . esc_attr( join( ' ', astra_get_primary_class( $class ) ) ) . '"'; - } -} - -/** - * Retrieve the classes for the primary element as an array. - */ -if ( ! function_exists( 'astra_get_primary_class' ) ) { - - /** - * Retrieve the classes for the primary element as an array. - * - * @param string|array $class One or more classes to add to the class list. - * @return array Return array of classes. - */ - function astra_get_primary_class( $class = '' ) { - - // array of class names. - $classes = array(); - - // default class for content area. - $classes[] = 'content-area'; - - // primary base class. - $classes[] = 'primary'; - - if ( ! empty( $class ) ) { - if ( ! is_array( $class ) ) { - $class = preg_split( '#\s+#', $class ); - } - $classes = array_merge( $classes, $class ); - } else { - - // Ensure that we always coerce class to being an array. - $class = array(); - } - - // Filter primary div class names. - $classes = apply_filters( 'astra_primary_class', $classes, $class ); - - $classes = array_map( 'sanitize_html_class', $classes ); - - return array_unique( $classes ); - } -} - -/** - * Display classes for secondary div - */ -if ( ! function_exists( 'astra_secondary_class' ) ) { - - /** - * Retrieve the classes for the secondary element as an array. - * - * @param string|array $class One or more classes to add to the class list. - * @return void echo classes. - */ - function astra_secondary_class( $class = '' ) { - - // Separates classes with a single space, collates classes for body element. - echo 'class="' . esc_attr( join( ' ', astra_get_secondary_class( $class ) ) ) . '"'; - } -} - -/** - * Retrieve the classes for the secondary element as an array. - */ -if ( ! function_exists( 'astra_get_secondary_class' ) ) { - - /** - * Retrieve the classes for the secondary element as an array. - * - * @param string|array $class One or more classes to add to the class list. - * @return array Return array of classes. - */ - function astra_get_secondary_class( $class = '' ) { - - // array of class names. - $classes = array(); - - // default class from widget area. - $classes[] = 'widget-area'; - - // secondary base class. - $classes[] = 'secondary'; - - if ( ! empty( $class ) ) { - if ( ! is_array( $class ) ) { - $class = preg_split( '#\s+#', $class ); - } - $classes = array_merge( $classes, $class ); - } else { - - // Ensure that we always coerce class to being an array. - $class = array(); - } - - // Filter secondary div class names. - $classes = apply_filters( 'astra_secondary_class', $classes, $class ); - - $classes = array_map( 'sanitize_html_class', $classes ); - - return array_unique( $classes ); - } -} - -/** - * Get post format - */ -if ( ! function_exists( 'astra_get_post_format' ) ) { - - /** - * Get post format - * - * @param string $post_format_override Override post formate. - * @return string Return post format. - */ - function astra_get_post_format( $post_format_override = '' ) { - - if ( ( is_home() ) || is_archive() ) { - $post_format = 'blog'; - } else { - $post_format = get_post_format(); - } - - return apply_filters( 'astra_get_post_format', $post_format, $post_format_override ); - } -} - -/** - * Wrapper function for get_the_title() for blog post. - */ -if ( ! function_exists( 'astra_the_post_title' ) ) { - - /** - * Wrapper function for get_the_title() for blog post. - * - * Displays title only if the page title bar is disabled. - * - * @since 1.0.15 - * @param string $before Optional. Content to prepend to the title. - * @param string $after Optional. Content to append to the title. - * @param int $post_id Optional, default to 0. Post id. - * @param bool $echo Optional, default to true.Whether to display or return. - * @return string|void String if $echo parameter is false. - */ - function astra_the_post_title( $before = '', $after = '', $post_id = 0, $echo = true ) { - - $enabled = apply_filters( 'astra_the_post_title_enabled', true ); - if ( $enabled ) { - - $title = astra_get_the_title( $post_id ); - $before = apply_filters( 'astra_the_post_title_before', $before ); - $after = apply_filters( 'astra_the_post_title_after', $after ); - - // This will work same as `the_title` function but with Custom Title if exits. - if ( $echo ) { - echo $before . $title . $after; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $before . $title . $after; - } - } - } -} - -/** - * Wrapper function for the_title() - */ -if ( ! function_exists( 'astra_the_title' ) ) { - - /** - * Wrapper function for the_title() - * - * Displays title only if the page title bar is disabled. - * - * @param string $before Optional. Content to prepend to the title. - * @param string $after Optional. Content to append to the title. - * @param int $post_id Optional, default to 0. Post id. - * @param bool $echo Optional, default to true.Whether to display or return. - * @return string|void String if $echo parameter is false. - */ - function astra_the_title( $before = '', $after = '', $post_id = 0, $echo = true ) { - - $title = ''; - $post_type = strval( get_post_type() ); - $blog_post_title = astra_get_option( 'ast-dynamic-archive-' . $post_type . '-structure', array( 'ast-dynamic-archive-' . $post_type . '-title', 'ast-dynamic-archive-' . $post_type . '-description' ) ); - $single_post_title = astra_get_option( 'ast-dynamic-single-' . $post_type . '-structure', 'page' === $post_type ? array( 'ast-dynamic-single-' . $post_type . '-image', 'ast-dynamic-single-' . $post_type . '-title' ) : array( 'ast-dynamic-single-' . $post_type . '-title', 'ast-dynamic-single-' . $post_type . '-meta' ) ); - - if ( ( ! is_singular() && ( in_array( 'ast-dynamic-archive-' . $post_type . '-title', $blog_post_title ) || in_array( 'ast-dynamic-archive-' . $post_type . '-meta', $blog_post_title ) ) ) - || ( is_singular() && ( in_array( 'ast-dynamic-single-' . $post_type . '-title', $single_post_title ) || in_array( 'ast-dynamic-single-' . $post_type . '-meta', $single_post_title ) ) ) - ) { - if ( apply_filters( 'astra_the_title_enabled', true ) ) { - - $title = astra_get_the_title( $post_id ); - $before = apply_filters( 'astra_the_title_before', $before ); - $after = apply_filters( 'astra_the_title_after', $after ); - - $title = $before . $title . $after; - } - } - - // This will work same as `the_title` function but with Custom Title if exits. - if ( $echo ) { - echo $title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $title; - } - } -} - -/** - * Wrapper function for get_the_title() - */ -if ( ! function_exists( 'astra_get_the_title' ) ) { - - /** - * Wrapper function for get_the_title() - * - * Return title for Title Bar and Normal Title. - * - * @param int $post_id Optional, default to 0. Post id. - * @param bool $echo Optional, default to false. Whether to display or return. - * @return string|void String if $echo parameter is false. - */ - function astra_get_the_title( $post_id = 0, $echo = false ) { - - $title = ''; - if ( $post_id || is_singular() ) { - $title = get_the_title( $post_id ); - } else { - if ( is_front_page() && is_home() ) { - // Default homepage. - $title = apply_filters( 'astra_the_default_home_page_title', esc_html__( 'Home', 'astra' ) ); - } elseif ( is_home() ) { - // blog page. - $title = apply_filters( 'astra_the_blog_home_page_title', get_the_title( get_option( 'page_for_posts', true ) ) ); - } elseif ( is_404() ) { - // for 404 page - title always display. - $title = apply_filters( 'astra_the_404_page_title', esc_html__( 'This page doesn\'t seem to exist.', 'astra' ) ); - - // for search page - title always display. - } elseif ( is_search() ) { - - /* translators: 1: search string */ - $title = apply_filters( 'astra_the_search_page_title', sprintf( __( 'Search Results for: %s', 'astra' ), '' . get_search_query() . '' ) ); - - } elseif ( class_exists( 'WooCommerce' ) && is_shop() ) { - - $title = woocommerce_page_title( false ); - - } elseif ( is_archive() ) { - - $title = get_the_archive_title(); - - } - } - - $title = apply_filters( 'astra_the_title', $title, $post_id ); - - // This will work same as `get_the_title` function but with Custom Title if exits. - if ( $echo ) { - echo $title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $title; - } - } -} - -/** - * Don't apply direct new layouts to legacy users. - * - * @since 4.0.0 - * @return boolean false if it is an existing user , true if not. - */ -function astra_use_dynamic_blog_layouts() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['dynamic-blog-layouts'] = isset( $astra_settings['dynamic-blog-layouts'] ) ? $astra_settings['dynamic-blog-layouts'] : true; - return apply_filters( 'astra_get_option_dynamic_blog_layouts', $astra_settings['dynamic-blog-layouts'] ); -} - -/** - * Get taxonomy archive banner for layout 1. - * - * @since 4.0.0 - */ -function astra_get_taxonomy_banner_legacy_layout() { - ?> -
- ', '' ); - remove_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); - do_action( 'astra_after_archive_title' ); - break; - case 'archive-breadcrumb': - if ( ! is_author() ) { - do_action( 'astra_before_archive_breadcrumb' ); - echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - do_action( 'astra_after_archive_breadcrumb' ); - } - break; - case 'archive-description': - do_action( 'astra_before_archive_description' ); - echo wp_kses_post( wpautop( get_the_archive_description() ) ); - do_action( 'astra_after_archive_description' ); - break; - } - } - ?> -
- - -
-
- -

- -

- -
-
- -
-
- - - -
- - ' . get_search_query() . '' ) ); - ?> -

- -
- - hexdec( substr( $hex, 0, 2 ) ), - 'g' => hexdec( substr( $hex, 2, 2 ) ), - 'b' => hexdec( substr( $hex, 4, 2 ) ), - ); - - // Should we darken the color? - if ( 'reverse' == $type && $shortcode_atts['r'] + $shortcode_atts['g'] + $shortcode_atts['b'] > 382 ) { - $steps = -$steps; - } elseif ( 'darken' == $type ) { - $steps = -$steps; - } - - // Build the new color. - $steps = max( -255, min( 255, $steps ) ); - - $shortcode_atts['r'] = max( 0, min( 255, $shortcode_atts['r'] + $steps ) ); - $shortcode_atts['g'] = max( 0, min( 255, $shortcode_atts['g'] + $steps ) ); - $shortcode_atts['b'] = max( 0, min( 255, $shortcode_atts['b'] + $steps ) ); - - $r_hex = str_pad( dechex( $shortcode_atts['r'] ), 2, '0', STR_PAD_LEFT ); - $g_hex = str_pad( dechex( $shortcode_atts['g'] ), 2, '0', STR_PAD_LEFT ); - $b_hex = str_pad( dechex( $shortcode_atts['b'] ), 2, '0', STR_PAD_LEFT ); - - return '#' . $r_hex . $g_hex . $b_hex; - } -} // End if. - -/** - * Convert colors from HEX to RGBA - */ -if ( ! function_exists( 'astra_hex_to_rgba' ) ) : - - /** - * Convert colors from HEX to RGBA - * - * @param string $color Color code in HEX. - * @param boolean $opacity Color code opacity. - * @return string Color code in RGB or RGBA. - */ - function astra_hex_to_rgba( $color, $opacity = false ) { - - $default = 'rgb(0,0,0)'; - - // Return default if no color provided. - if ( empty( $color ) ) { - return $default; - } - - // Sanitize $color if "#" is provided. - if ( '#' == $color[0] ) { - $color = substr( $color, 1 ); - } - - // Check if color has 6 or 3 characters and get values. - if ( 6 == strlen( $color ) ) { - $hex = array( $color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5] ); - } elseif ( 3 == strlen( $color ) ) { - $hex = array( $color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2] ); - } else { - return $default; - } - - // Convert HEX to RGB. - $rgb = array_map( 'hexdec', $hex ); - - // Check if opacity is set(RGBA or RGB). - if ( $opacity ) { - if ( 1 < abs( $opacity ) ) { - $opacity = 1.0; - } - $output = 'rgba(' . implode( ',', $rgb ) . ',' . $opacity . ')'; - } else { - $output = 'rgb(' . implode( ',', $rgb ) . ')'; - } - - // Return RGB(a) color string. - return $output; - } - -endif; - - -if ( ! function_exists( 'astra_enable_page_builder_compatibility' ) ) : - - /** - * Allow filter to enable/disable page builder compatibility. - * - * @see https://wpastra.com/docs/recommended-settings-beaver-builder-astra/ - * @see https://wpastra.com/docs/recommended-settings-for-elementor/ - * - * @since 1.2.2 - * @return bool True - If the page builder compatibility is enabled. False - IF the page builder compatibility is disabled. - */ - function astra_enable_page_builder_compatibility() { - return apply_filters( 'astra_enable_page_builder_compatibility', true ); - } - -endif; - - -if ( ! function_exists( 'astra_get_pro_url' ) ) : - /** - * Returns an URL with utm tags - * the admin settings page. - * - * @param string $url URL fo the site. - * @param string $source utm source. - * @param string $medium utm medium. - * @param string $campaign utm campaign. - * @return mixed - */ - function astra_get_pro_url( $url, $source = '', $medium = '', $campaign = '' ) { - - $astra_pro_url = trailingslashit( $url ); - - // Set up our URL if we have a source. - if ( ! empty( $source ) ) { - $astra_pro_url = add_query_arg( 'utm_source', sanitize_text_field( $source ), $url ); - } - // Set up our URL if we have a medium. - if ( ! empty( $medium ) ) { - $astra_pro_url = add_query_arg( 'utm_medium', sanitize_text_field( $medium ), $astra_pro_url ); - } - // Set up our URL if we have a campaign. - if ( ! empty( $campaign ) ) { - $astra_pro_url = add_query_arg( 'utm_campaign', sanitize_text_field( $campaign ), $astra_pro_url ); - } - - $astra_pro_url = apply_filters( 'astra_get_pro_url', $astra_pro_url, $url ); - $astra_pro_url = remove_query_arg( 'bsf', $astra_pro_url ); - - $ref = get_option( 'astra_partner_url_param', '' ); - if ( ! empty( $ref ) ) { - $astra_pro_url = add_query_arg( 'bsf', sanitize_text_field( $ref ), $astra_pro_url ); - } - - return $astra_pro_url; - } - -endif; - - -/** - * Search Form - */ -if ( ! function_exists( 'astra_get_search_form' ) ) : - /** - * Display search form. - * - * @param bool $echo Default to echo and not return the form. - * @return string|void String when $echo is false. - */ - function astra_get_search_form( $echo = true ) { - - $form = get_search_form( - array( - 'input_placeholder' => apply_filters( 'astra_search_field_placeholder', esc_attr_x( 'Search...', 'placeholder', 'astra' ) ), - 'data_attributes' => apply_filters( 'astra_search_field_toggle_data_attrs', '' ), - 'input_value' => get_search_query(), - 'show_input_submit' => false, - ) - ); - - /** - * Filters the HTML output of the search form. - * - * @param string $form The search form HTML output. - */ - $result = apply_filters( 'astra_get_search_form', $form ); - - if ( null === $result ) { - $result = $form; - } - - if ( $echo ) { - echo $result; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $result; - } - } - -endif; - -/** - * Check if we're being delivered AMP - * - * @return bool - */ -function astra_is_amp_endpoint() { - return function_exists( 'is_amp_endpoint' ) && is_amp_endpoint(); -} - -/* - * Get Responsive Spacing - */ -if ( ! function_exists( 'astra_responsive_spacing' ) ) { - - /** - * Get Spacing value - * - * @param array $option CSS value. - * @param string $side top | bottom | left | right. - * @param string $device CSS device. - * @param string $default Default value. - * @param string $prefix Prefix value. - * @return mixed - */ - function astra_responsive_spacing( $option, $side = '', $device = 'desktop', $default = '', $prefix = '' ) { - - if ( isset( $option[ $device ][ $side ] ) && isset( $option[ $device . '-unit' ] ) ) { - $spacing = astra_get_css_value( $option[ $device ][ $side ], $option[ $device . '-unit' ], $default ); - } elseif ( is_numeric( $option ) ) { - $spacing = astra_get_css_value( $option ); - } else { - $spacing = ( ! is_array( $option ) ) ? $option : ''; - } - - if ( '' !== $prefix && '' !== $spacing ) { - return $prefix . $spacing; - } - return $spacing; - } -} - -/** - * Get the tablet breakpoint value. - * - * @param mixed $min min. - * @param mixed $max max. - * - * @since 2.4.0 - * - * @return number $breakpoint. - */ -function astra_get_tablet_breakpoint( $min = '', $max = '' ) { - - $update_breakpoint = astra_get_option( 'can-update-theme-tablet-breakpoint', true ); - - // Change default for new users. - $default = ( true === $update_breakpoint ) ? 921 : 768; - - $header_breakpoint = apply_filters( 'astra_tablet_breakpoint', $default ); - - if ( '' !== $min ) { - $header_breakpoint = $header_breakpoint - $min; - } elseif ( '' !== $max ) { - $header_breakpoint = $header_breakpoint + $max; - } - - return absint( $header_breakpoint ); -} - -/** - * Get the mobile breakpoint value. - * - * @param string $min min. - * @param string $max max. - * - * @since 2.4.0 - * - * @return number header_breakpoint. - */ -function astra_get_mobile_breakpoint( $min = '', $max = '' ) { - - $header_breakpoint = apply_filters( 'astra_mobile_breakpoint', 544 ); - - if ( '' !== $min ) { - $header_breakpoint = $header_breakpoint - $min; - } elseif ( '' !== $max ) { - $header_breakpoint = $header_breakpoint + $max; - } - - return absint( $header_breakpoint ); -} - -/* - * Apply CSS for the element - */ -if ( ! function_exists( 'astra_color_responsive_css' ) ) { - - /** - * Astra Responsive Colors - * - * @param array $setting Responsive colors. - * @param string $css_property CSS property. - * @param string $selector CSS selector. - * @return string Dynamic responsive CSS. - */ - function astra_color_responsive_css( $setting, $css_property, $selector ) { - $css = ''; - if ( isset( $setting['desktop'] ) && ! empty( $setting['desktop'] ) ) { - $css .= $selector . '{' . $css_property . ':' . esc_attr( $setting['desktop'] ) . ';}'; - } - if ( isset( $setting['tablet'] ) && ! empty( $setting['tablet'] ) ) { - $css .= '@media (max-width:' . astra_get_tablet_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['tablet'] ) . ';} }'; - } - if ( isset( $setting['mobile'] ) && ! empty( $setting['mobile'] ) ) { - $css .= '@media (max-width:' . astra_get_mobile_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['mobile'] ) . ';} }'; - } - return $css; - } -} - -if ( ! function_exists( 'astra_check_is_bb_themer_layout' ) ) : - - /** - * Check if layout is bb themer's layout - */ - function astra_check_is_bb_themer_layout() { - - $is_layout = false; - - $post_type = get_post_type(); - $post_id = get_the_ID(); - - if ( 'fl-theme-layout' === $post_type && $post_id ) { - - $is_layout = true; - } - - return $is_layout; - } - -endif; - - -if ( ! function_exists( 'astra_is_white_labelled' ) ) : - - /** - * Check if white label option is enabled in astra pro plugin - */ - function astra_is_white_labelled() { - - if ( is_callable( 'Astra_Ext_White_Label_Markup::show_branding' ) && ! Astra_Ext_White_Label_Markup::show_branding() ) { - return apply_filters( 'astra_is_white_labelled', true ); - } - - return apply_filters( 'astra_is_white_labelled', false ); - } - -endif; - -/** - * Get the value for font-display property. - * - * @since 1.8.6 - * @return string - */ -function astra_get_fonts_display_property() { - return apply_filters( 'astra_fonts_display_property', 'fallback' ); -} - -/** - * Generate Responsive Background Color CSS. - * - * @param array $bg_obj_res array of background object. - * @param string $device CSS for which device. - * @return array - */ -function astra_get_responsive_background_obj( $bg_obj_res, $device ) { - - $gen_bg_css = array(); - - if ( ! is_array( $bg_obj_res ) ) { - return; - } - - $bg_obj = $bg_obj_res[ $device ]; - $bg_img = isset( $bg_obj['background-image'] ) ? $bg_obj['background-image'] : ''; - $bg_tab_img = isset( $bg_obj_res['tablet']['background-image'] ) ? $bg_obj_res['tablet']['background-image'] : ''; - $bg_desk_img = isset( $bg_obj_res['desktop']['background-image'] ) ? $bg_obj_res['desktop']['background-image'] : ''; - $bg_color = isset( $bg_obj['background-color'] ) ? $bg_obj['background-color'] : ''; - $tablet_css = ( isset( $bg_obj_res['tablet']['background-image'] ) && $bg_obj_res['tablet']['background-image'] ) ? true : false; - $desktop_css = ( isset( $bg_obj_res['desktop']['background-image'] ) && $bg_obj_res['desktop']['background-image'] ) ? true : false; - - $bg_type = ( isset( $bg_obj['background-type'] ) && $bg_obj['background-type'] ) ? $bg_obj['background-type'] : ''; - - if ( '' !== $bg_type ) { - switch ( $bg_type ) { - case 'color': - if ( '' !== $bg_img && '' !== $bg_color ) { - $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_img . ');'; - } elseif ( 'mobile' === $device ) { - if ( $desktop_css ) { - $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ');'; - } elseif ( $tablet_css ) { - $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_tab_img . ');'; - } else { - if ( '' !== $bg_color ) { - $gen_bg_css['background-color'] = $bg_color . ';'; - $gen_bg_css['background-image'] = 'none;'; - } - } - } elseif ( 'tablet' === $device ) { - if ( $desktop_css ) { - $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ');'; - } else { - if ( '' !== $bg_color ) { - $gen_bg_css['background-color'] = $bg_color . ';'; - $gen_bg_css['background-image'] = 'none;'; - } - } - } elseif ( '' === $bg_img ) { - $gen_bg_css['background-color'] = $bg_color . ';'; - $gen_bg_css['background-image'] = 'none;'; - } - break; - - case 'image': - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $overlay_type = isset( $bg_obj['overlay-type'] ) ? $bg_obj['overlay-type'] : 'none'; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $overlay_color = isset( $bg_obj['overlay-color'] ) ? $bg_obj['overlay-color'] : ''; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $overlay_grad = isset( $bg_obj['overlay-gradient'] ) ? $bg_obj['overlay-gradient'] : ''; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - if ( '' !== $bg_img ) { - if ( 'none' !== $overlay_type ) { - if ( 'classic' === $overlay_type && '' !== $overlay_color ) { - $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $overlay_color . ', ' . $overlay_color . '), url(' . $bg_img . ');'; - } elseif ( 'gradient' === $overlay_type && '' !== $overlay_grad ) { - $gen_bg_css['background-image'] = $overlay_grad . ', url(' . $bg_img . ');'; - } else { - $gen_bg_css['background-image'] = 'url(' . $bg_img . ');'; - } - } else { - $gen_bg_css['background-image'] = 'url(' . $bg_img . ');'; - } - } - break; - - case 'gradient': - if ( isset( $bg_color ) ) { - $gen_bg_css['background-image'] = $bg_color . ';'; - } - break; - - default: - break; - } - } elseif ( '' !== $bg_color ) { - $gen_bg_css['background-color'] = $bg_color . ';'; - } - - if ( '' !== $bg_img ) { - if ( isset( $bg_obj['background-repeat'] ) ) { - $gen_bg_css['background-repeat'] = esc_attr( $bg_obj['background-repeat'] ); - } - - if ( isset( $bg_obj['background-position'] ) ) { - $gen_bg_css['background-position'] = esc_attr( $bg_obj['background-position'] ); - } - - if ( isset( $bg_obj['background-size'] ) ) { - $gen_bg_css['background-size'] = esc_attr( $bg_obj['background-size'] ); - } - - if ( isset( $bg_obj['background-attachment'] ) ) { - $gen_bg_css['background-attachment'] = esc_attr( $bg_obj['background-attachment'] ); - } - } - - return $gen_bg_css; -} - -/** - * Common function to check is pagination is enabled on current page. - * - * @since 3.0.1 - * @return boolean - */ -function astra_check_pagination_enabled() { - global $wp_query; - - return ( $wp_query->max_num_pages > 1 && apply_filters( 'astra_pagination_enabled', true ) ); -} - -/** - * Verify is current post comments are enabled or not for applying dynamic CSS. - * - * @since 3.0.1 - * @return boolean - */ -function astra_check_current_post_comment_enabled() { - return ( is_singular() && comments_open() ); -} - -/** - * Dont apply zero size to existing user. - * - * @since 3.6.9 - * @return boolean false if it is an existing user , true if not. - */ -function astra_zero_font_size_case() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['astra-zero-font-size-case-css'] = isset( $astra_settings['astra-zero-font-size-case-css'] ) ? false : true; - return apply_filters( 'astra_zero_font_size_case', $astra_settings['astra-zero-font-size-case-css'] ); -} - -/** - * Check the WordPress version. - * - * @since 2.5.4 - * @param string $version WordPress version to compare with the current version. - * @param mixed $compare Comparison value i.e > or < etc. - * @return bool|null True/False based on the $version and $compare value. - */ -function astra_wp_version_compare( $version, $compare ) { - return version_compare( get_bloginfo( 'version' ), $version, $compare ); -} - -/** - * Check if existing setup is live with old block editor compatibilities. - * - * @return bool true|false. - */ -function astra_block_based_legacy_setup() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $legacy_setup = ( isset( $astra_settings['blocks-legacy-setup'] ) && isset( $astra_settings['wp-blocks-ui'] ) && 'legacy' === $astra_settings['wp-blocks-ui'] ) ? true : false; - return $legacy_setup; -} - -/** - * Check is new structural things are updated. - * - * @return bool true|false. - */ -function astra_check_is_structural_setup() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_get_option_customizer-default-layout-update', isset( $astra_settings['customizer-default-layout-update'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores -} - -/** - * Check if the user is old sidebar user. - * - * @since 3.9.4 - * @return bool true|false. - */ -function astra_check_old_sidebar_user() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_old_global_sidebar_defaults', isset( $astra_settings['astra-old-global-sidebar-default'] ) ? false : true ); -} - -/** - * Check if user is old for hiding/showing password icon field for login my-account form. - * - * @since 3.9.2 - * @return bool true|false. - */ -function astra_load_woocommerce_login_form_password_icon() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - return apply_filters( 'astra_get_option_woo-show-password-icon', isset( $astra_settings['woo-show-password-icon'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores -} - -/** - * Function to add narrow width properties in the frontend. - * - * @since 4.0.0 - * @param string $location container layout for single-post, archives, pages, page meta. - * @param string $narrow_container_max_width dynamic container width in px. - * @return string Parsed CSS based on $location and $narrow_container_max_width. - */ -function astra_narrow_container_width( $location, $narrow_container_max_width ) { - - if ( 'narrow-container' === $location ) { - - $narrow_container_css = array( - '.ast-narrow-container .site-content > .ast-container' => array( - 'max-width' => astra_get_css_value( $narrow_container_max_width, 'px' ), - ), - ); - - // Remove Sidebar for Narrow Width Container Layout. - if ( 'narrow-container' === astra_get_content_layout() ) { - add_filter( - 'astra_page_layout', - function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found - return 'no-sidebar'; - } - ); - } - - return astra_parse_css( $narrow_container_css, astra_get_tablet_breakpoint( '', 1 ) ); - - } else { - return ''; - } -} - -/** - * Function which will return the Sidebar Layout to determine default body classes for Editor. - * - * @since 4.2.0 - * @param string $post_type Post Type. - * @return string Sidebar Layout. - */ -function astra_get_sidebar_layout_for_editor( $post_type ) { - - $sidebar_layout = astra_get_option( 'single-' . $post_type . '-sidebar-layout' ); - - if ( 'default' === $sidebar_layout ) { - $sidebar_layout = astra_get_option( 'site-sidebar-layout' ); - } - - return $sidebar_layout; -} - -/** - * Gets the SVG for the duotone filter definition. - * - * @since 4.2.2 - * - * @param string $filter_id The ID of the filter. - * @param array $color An array of color strings. - * @return string An SVG with a duotone filter definition. - */ -function astra_get_filter_svg( $filter_id, $color ) { - - $duotone_values = array( - 'r' => array(), - 'g' => array(), - 'b' => array(), - 'a' => array(), - ); - - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $duotone_values['r'][] = $color['r'] / 255; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $duotone_values['g'][] = $color['g'] / 255; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $duotone_values['b'][] = $color['b'] / 255; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $duotone_values['a'][] = $color['a']; - ob_start(); - - ?> - - - - - - - - - - - - - - - - - <', '><', $svg ); - $svg = trim( $svg ); - - return $svg; -} - -/** - * Converts HEX to RGB. - * - * @since 4.2.2 - * - * @param string $hex Hex color. - * @return array split version of rgb. - */ -function astra_hex_to_rgb( $hex ) { - // @codingStandardsIgnoreStart - /** - * @psalm-suppress PossiblyNullArrayAccess - */ - list($r, $g, $b) = sscanf( $hex, '#%02x%02x%02x' ); - - // @codingStandardsIgnoreEnd - return array( - 'r' => $r, - 'g' => $g, - 'b' => $b, - 'a' => 1, - ); -} - -/** - * Converts RGBA to split array RGBA. - * - * @since 4.2.2 - * - * @param string $rgba RGBA value. - * @return array split version of rgba. - */ -function astra_split_rgba( $rgba ) { - // Remove the "rgba(" and ")" from the input string. - $rgba = str_replace( array( 'rgba(', ')' ), '', $rgba ); - - // Split the RGBA values by comma. - $values = explode( ',', $rgba ); - - // Convert each value from string to integer. - $r = intval( $values[0] ); - $g = intval( $values[1] ); - $b = intval( $values[2] ); - $a = floatval( $values[3] ); - - // Create the split RGBA string. - return array( - 'r' => $r, - 'g' => $g, - 'b' => $b, - 'a' => $a, - ); -} - -/** - * Render svg mask. - * - * @since 4.2.2 - * - * @param string $id id. - * @param string $filter_name filter name. - * @param string $color color. - * @return mixed masked svg, - */ -function astra_render_svg_mask( $id, $filter_name, $color ) { - - if ( 0 === strpos( $color, 'var(--' ) ) { - $agp = new Astra_Global_Palette(); - /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $svg_color = astra_hex_to_rgb( $agp->get_color_by_palette_variable( $color ) ); - } elseif ( preg_match( '/^#[a-f0-9]{6}$/i', $color ) ) { - /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $svg_color = astra_hex_to_rgb( $color ); - } else { - /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $svg_color = astra_split_rgba( $color ); - } - - /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - echo astra_get_filter_svg( $id, apply_filters( 'astra_' . $filter_name, $svg_color ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -} + 0 ) { + + foreach ( $css_output as $selector => $properties ) { + + if ( null === $properties ) { + break; + } + + if ( ! count( $properties ) ) { + continue; + } + + $temp_parse_css = $selector . '{'; + $properties_added = 0; + + foreach ( $properties as $property => $value ) { + + if ( '' == $value && 0 !== $value ) { + continue; + } + + $properties_added++; + $temp_parse_css .= $property . ':' . $value . ';'; + } + + $temp_parse_css .= '}'; + + if ( $properties_added > 0 ) { + $parse_css .= $temp_parse_css; + } + } + + if ( '' != $parse_css && ( '' !== $min_media || '' !== $max_media ) ) { + + $media_css = '@media '; + $min_media_css = ''; + $max_media_css = ''; + $media_separator = ''; + + if ( '' !== $min_media ) { + $min_media_css = '(min-width:' . $min_media . 'px)'; + } + if ( '' !== $max_media ) { + $max_media_css = '(max-width:' . $max_media . 'px)'; + } + if ( '' !== $min_media && '' !== $max_media ) { + $media_separator = ' and '; + } + + $media_css .= $min_media_css . $media_separator . $max_media_css . '{' . $parse_css . '}'; + + return $media_css; + } + } + + return $parse_css; + } +} + +/** + * Return Theme options. + */ +if ( ! function_exists( 'astra_get_option' ) ) { + + /** + * Return Theme options. + * + * @param string $option Option key. + * @param mixed $default Option default value. + * @param string $deprecated Option default value. + * @return mixed Return option value. + */ + function astra_get_option( $option, $default = '', $deprecated = '' ) { + + if ( '' != $deprecated ) { + $default = $deprecated; + } + + $theme_options = Astra_Theme_Options::get_options(); + + /** + * Filter the options array for Astra Settings. + * + * @since 1.0.20 + * @var Array + */ + $theme_options = apply_filters( 'astra_get_option_array', $theme_options, $option, $default ); + + $value = ( isset( $theme_options[ $option ] ) && '' !== $theme_options[ $option ] ) ? $theme_options[ $option ] : $default; + + /** + * Dynamic filter astra_get_option_$option. + * $option is the name of the Astra Setting, Refer Astra_Theme_Options::defaults() for option names from the theme. + * + * @since 1.0.20 + * @var Mixed. + */ + return apply_filters( "astra_get_option_{$option}", $value, $option, $default ); + } +} + +if ( ! function_exists( 'astra_update_option' ) ) { + + /** + * Update Theme options. + * + * @param string $option option key. + * @param Mixed $value option value. + * @return void + */ + function astra_update_option( $option, $value ) { + + do_action( "astra_before_update_option_{$option}", $value, $option ); + + // Get all customizer options. + $theme_options = get_option( ASTRA_THEME_SETTINGS ); + + // Update value in options array. + if ( ! is_array( $theme_options ) ) { + $theme_options = array(); + } + $theme_options[ $option ] = $value; + + update_option( ASTRA_THEME_SETTINGS, $theme_options ); + + do_action( "astra_after_update_option_{$option}", $value, $option ); + } +} + +if ( ! function_exists( 'astra_delete_option' ) ) { + + /** + * Update Theme options. + * + * @param string $option option key. + * @return void + */ + function astra_delete_option( $option ) { + + do_action( "astra_before_delete_option_{$option}", $option ); + + // Get all customizer options. + $theme_options = get_option( ASTRA_THEME_SETTINGS ); + + // Update value in options array. + unset( $theme_options[ $option ] ); + + update_option( ASTRA_THEME_SETTINGS, $theme_options ); + + do_action( "astra_after_delete_option_{$option}", $option ); + } +} + +/** + * Return Theme options from postmeta. + */ +if ( ! function_exists( 'astra_get_option_meta' ) ) { + + /** + * Return Theme options from postmeta. + * + * @param string $option_id Option ID. + * @param string $default Option default value. + * @param boolean $only_meta Get only meta value. + * @param string $extension Is value from extension. + * @param string $post_id Get value from specific post by post ID. + * @return Mixed Return option value. + */ + function astra_get_option_meta( $option_id, $default = '', $only_meta = false, $extension = '', $post_id = '' ) { + + $post_id = ( '' != $post_id ) ? $post_id : astra_get_post_id(); + + $value = astra_get_option( $option_id, $default ); + + // Get value from option 'post-meta'. + if ( is_singular() || ( is_home() && ! is_front_page() ) ) { + + $value = get_post_meta( $post_id, $option_id, true ); + + if ( empty( $value ) || 'default' == $value ) { + + if ( true === $only_meta ) { + return false; + } + + $value = astra_get_option( $option_id, $default ); + } + } + + /** + * Dynamic filter astra_get_option_meta_$option. + * $option_id is the name of the Astra Meta Setting. + * + * @since 1.0.20 + * @var Mixed. + */ + return apply_filters( "astra_get_option_meta_{$option_id}", $value, $default, $default ); + } +} + +/** + * Helper function to get the current post id. + */ +if ( ! function_exists( 'astra_get_post_id' ) ) { + + /** + * Get post ID. + * + * @param string $post_id_override Get override post ID. + * @return number Post ID. + */ + function astra_get_post_id( $post_id_override = '' ) { + + if ( null == Astra_Theme_Options::$post_id ) { + global $post; + + $post_id = 0; + + if ( is_home() ) { + $post_id = get_option( 'page_for_posts' ); + } elseif ( is_archive() ) { + global $wp_query; + $post_id = $wp_query->get_queried_object_id(); + } elseif ( isset( $post->ID ) && ! is_search() && ! is_category() ) { + $post_id = $post->ID; + } + + Astra_Theme_Options::$post_id = $post_id; + } + + return apply_filters( 'astra_get_post_id', Astra_Theme_Options::$post_id, $post_id_override ); + } +} + + +/** + * Display classes for primary div + */ +if ( ! function_exists( 'astra_primary_class' ) ) { + + /** + * Display classes for primary div + * + * @param string|array $class One or more classes to add to the class list. + * @return void Echo classes. + */ + function astra_primary_class( $class = '' ) { + + // Separates classes with a single space, collates classes for body element. + echo 'class="' . esc_attr( join( ' ', astra_get_primary_class( $class ) ) ) . '"'; + } +} + +/** + * Retrieve the classes for the primary element as an array. + */ +if ( ! function_exists( 'astra_get_primary_class' ) ) { + + /** + * Retrieve the classes for the primary element as an array. + * + * @param string|array $class One or more classes to add to the class list. + * @return array Return array of classes. + */ + function astra_get_primary_class( $class = '' ) { + + // array of class names. + $classes = array(); + + // default class for content area. + $classes[] = 'content-area'; + + // primary base class. + $classes[] = 'primary'; + + if ( ! empty( $class ) ) { + if ( ! is_array( $class ) ) { + $class = preg_split( '#\s+#', $class ); + } + $classes = array_merge( $classes, $class ); + } else { + + // Ensure that we always coerce class to being an array. + $class = array(); + } + + // Filter primary div class names. + $classes = apply_filters( 'astra_primary_class', $classes, $class ); + + $classes = array_map( 'sanitize_html_class', $classes ); + + return array_unique( $classes ); + } +} + +/** + * Display classes for secondary div + */ +if ( ! function_exists( 'astra_secondary_class' ) ) { + + /** + * Retrieve the classes for the secondary element as an array. + * + * @param string|array $class One or more classes to add to the class list. + * @return void echo classes. + */ + function astra_secondary_class( $class = '' ) { + + // Separates classes with a single space, collates classes for body element. + echo 'class="' . esc_attr( join( ' ', astra_get_secondary_class( $class ) ) ) . '"'; + } +} + +/** + * Retrieve the classes for the secondary element as an array. + */ +if ( ! function_exists( 'astra_get_secondary_class' ) ) { + + /** + * Retrieve the classes for the secondary element as an array. + * + * @param string|array $class One or more classes to add to the class list. + * @return array Return array of classes. + */ + function astra_get_secondary_class( $class = '' ) { + + // array of class names. + $classes = array(); + + // default class from widget area. + $classes[] = 'widget-area'; + + // secondary base class. + $classes[] = 'secondary'; + + if ( ! empty( $class ) ) { + if ( ! is_array( $class ) ) { + $class = preg_split( '#\s+#', $class ); + } + $classes = array_merge( $classes, $class ); + } else { + + // Ensure that we always coerce class to being an array. + $class = array(); + } + + // Filter secondary div class names. + $classes = apply_filters( 'astra_secondary_class', $classes, $class ); + + $classes = array_map( 'sanitize_html_class', $classes ); + + return array_unique( $classes ); + } +} + +/** + * Get post format + */ +if ( ! function_exists( 'astra_get_post_format' ) ) { + + /** + * Get post format + * + * @param string $post_format_override Override post formate. + * @return string Return post format. + */ + function astra_get_post_format( $post_format_override = '' ) { + + if ( ( is_home() ) || is_archive() ) { + $post_format = 'blog'; + } else { + $post_format = get_post_format(); + } + + return apply_filters( 'astra_get_post_format', $post_format, $post_format_override ); + } +} + +/** + * Wrapper function for get_the_title() for blog post. + */ +if ( ! function_exists( 'astra_the_post_title' ) ) { + + /** + * Wrapper function for get_the_title() for blog post. + * + * Displays title only if the page title bar is disabled. + * + * @since 1.0.15 + * @param string $before Optional. Content to prepend to the title. + * @param string $after Optional. Content to append to the title. + * @param int $post_id Optional, default to 0. Post id. + * @param bool $echo Optional, default to true.Whether to display or return. + * @return string|void String if $echo parameter is false. + */ + function astra_the_post_title( $before = '', $after = '', $post_id = 0, $echo = true ) { + + $enabled = apply_filters( 'astra_the_post_title_enabled', true ); + if ( $enabled ) { + + $title = astra_get_the_title( $post_id ); + $before = apply_filters( 'astra_the_post_title_before', $before ); + $after = apply_filters( 'astra_the_post_title_after', $after ); + + // This will work same as `the_title` function but with Custom Title if exits. + if ( $echo ) { + echo $before . $title . $after; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $before . $title . $after; + } + } + } +} + +/** + * Wrapper function for the_title() + */ +if ( ! function_exists( 'astra_the_title' ) ) { + + /** + * Wrapper function for the_title() + * + * Displays title only if the page title bar is disabled. + * + * @param string $before Optional. Content to prepend to the title. + * @param string $after Optional. Content to append to the title. + * @param int $post_id Optional, default to 0. Post id. + * @param bool $echo Optional, default to true.Whether to display or return. + * @return string|void String if $echo parameter is false. + */ + function astra_the_title( $before = '', $after = '', $post_id = 0, $echo = true ) { + + $title = ''; + $post_type = strval( get_post_type() ); + $blog_post_title = astra_get_option( 'ast-dynamic-archive-' . $post_type . '-structure', array( 'ast-dynamic-archive-' . $post_type . '-title', 'ast-dynamic-archive-' . $post_type . '-description' ) ); + $single_post_title = astra_get_option( 'ast-dynamic-single-' . $post_type . '-structure', 'page' === $post_type ? array( 'ast-dynamic-single-' . $post_type . '-image', 'ast-dynamic-single-' . $post_type . '-title' ) : array( 'ast-dynamic-single-' . $post_type . '-title', 'ast-dynamic-single-' . $post_type . '-meta' ) ); + + if ( ( ! is_singular() && ( in_array( 'ast-dynamic-archive-' . $post_type . '-title', $blog_post_title ) || in_array( 'ast-dynamic-archive-' . $post_type . '-meta', $blog_post_title ) ) ) + || ( is_singular() && ( in_array( 'ast-dynamic-single-' . $post_type . '-title', $single_post_title ) || in_array( 'ast-dynamic-single-' . $post_type . '-meta', $single_post_title ) ) ) + ) { + if ( apply_filters( 'astra_the_title_enabled', true ) ) { + + $title = astra_get_the_title( $post_id ); + $before = apply_filters( 'astra_the_title_before', $before ); + $after = apply_filters( 'astra_the_title_after', $after ); + + $title = $before . $title . $after; + } + } + + // This will work same as `the_title` function but with Custom Title if exits. + if ( $echo ) { + echo $title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $title; + } + } +} + +/** + * Wrapper function for get_the_title() + */ +if ( ! function_exists( 'astra_get_the_title' ) ) { + + /** + * Wrapper function for get_the_title() + * + * Return title for Title Bar and Normal Title. + * + * @param int $post_id Optional, default to 0. Post id. + * @param bool $echo Optional, default to false. Whether to display or return. + * @return string|void String if $echo parameter is false. + */ + function astra_get_the_title( $post_id = 0, $echo = false ) { + + $title = ''; + if ( $post_id || is_singular() ) { + $title = get_the_title( $post_id ); + } else { + if ( is_front_page() && is_home() ) { + // Default homepage. + $title = apply_filters( 'astra_the_default_home_page_title', esc_html__( 'Home', 'astra' ) ); + } elseif ( is_home() ) { + // blog page. + $title = apply_filters( 'astra_the_blog_home_page_title', get_the_title( get_option( 'page_for_posts', true ) ) ); + } elseif ( is_404() ) { + // for 404 page - title always display. + $title = apply_filters( 'astra_the_404_page_title', esc_html__( 'This page doesn\'t seem to exist.', 'astra' ) ); + + // for search page - title always display. + } elseif ( is_search() ) { + + /* translators: 1: search string */ + $title = apply_filters( 'astra_the_search_page_title', sprintf( __( 'Search Results for: %s', 'astra' ), '' . get_search_query() . '' ) ); + + } elseif ( class_exists( 'WooCommerce' ) && is_shop() ) { + + $title = woocommerce_page_title( false ); + + } elseif ( is_archive() ) { + + $title = get_the_archive_title(); + + } + } + + $title = apply_filters( 'astra_the_title', $title, $post_id ); + + // This will work same as `get_the_title` function but with Custom Title if exits. + if ( $echo ) { + echo $title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $title; + } + } +} + +/** + * Don't apply direct new layouts to legacy users. + * + * @since 4.0.0 + * @return boolean false if it is an existing user , true if not. + */ +function astra_use_dynamic_blog_layouts() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['dynamic-blog-layouts'] = isset( $astra_settings['dynamic-blog-layouts'] ) ? $astra_settings['dynamic-blog-layouts'] : true; + return apply_filters( 'astra_get_option_dynamic_blog_layouts', $astra_settings['dynamic-blog-layouts'] ); +} + +/** + * Get taxonomy archive banner for layout 1. + * + * @since 4.0.0 + */ +function astra_get_taxonomy_banner_legacy_layout() { + ?> +
+ ', '' ); + remove_filter( 'get_the_archive_title_prefix', '__return_empty_string' ); + do_action( 'astra_after_archive_title' ); + break; + case 'archive-breadcrumb': + if ( ! is_author() ) { + do_action( 'astra_before_archive_breadcrumb' ); + echo astra_get_breadcrumb(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + do_action( 'astra_after_archive_breadcrumb' ); + } + break; + case 'archive-description': + do_action( 'astra_before_archive_description' ); + echo wp_kses_post( wpautop( get_the_archive_description() ) ); + do_action( 'astra_after_archive_description' ); + break; + } + } + ?> +
+ + +
+
+ +

+ +

+ +
+
+ +
+
+ + + +
+ + ' . get_search_query() . '' ) ); + ?> +

+ +
+ + hexdec( substr( $hex, 0, 2 ) ), + 'g' => hexdec( substr( $hex, 2, 2 ) ), + 'b' => hexdec( substr( $hex, 4, 2 ) ), + ); + + // Should we darken the color? + if ( 'reverse' == $type && $shortcode_atts['r'] + $shortcode_atts['g'] + $shortcode_atts['b'] > 382 ) { + $steps = -$steps; + } elseif ( 'darken' == $type ) { + $steps = -$steps; + } + + // Build the new color. + $steps = max( -255, min( 255, $steps ) ); + + $shortcode_atts['r'] = max( 0, min( 255, $shortcode_atts['r'] + $steps ) ); + $shortcode_atts['g'] = max( 0, min( 255, $shortcode_atts['g'] + $steps ) ); + $shortcode_atts['b'] = max( 0, min( 255, $shortcode_atts['b'] + $steps ) ); + + $r_hex = str_pad( dechex( $shortcode_atts['r'] ), 2, '0', STR_PAD_LEFT ); + $g_hex = str_pad( dechex( $shortcode_atts['g'] ), 2, '0', STR_PAD_LEFT ); + $b_hex = str_pad( dechex( $shortcode_atts['b'] ), 2, '0', STR_PAD_LEFT ); + + return '#' . $r_hex . $g_hex . $b_hex; + } +} // End if. + +/** + * Convert colors from HEX to RGBA + */ +if ( ! function_exists( 'astra_hex_to_rgba' ) ) : + + /** + * Convert colors from HEX to RGBA + * + * @param string $color Color code in HEX. + * @param boolean $opacity Color code opacity. + * @return string Color code in RGB or RGBA. + */ + function astra_hex_to_rgba( $color, $opacity = false ) { + + $default = 'rgb(0,0,0)'; + + // Return default if no color provided. + if ( empty( $color ) ) { + return $default; + } + + // Sanitize $color if "#" is provided. + if ( '#' == $color[0] ) { + $color = substr( $color, 1 ); + } + + // Check if color has 6 or 3 characters and get values. + if ( 6 == strlen( $color ) ) { + $hex = array( $color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5] ); + } elseif ( 3 == strlen( $color ) ) { + $hex = array( $color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2] ); + } else { + return $default; + } + + // Convert HEX to RGB. + $rgb = array_map( 'hexdec', $hex ); + + // Check if opacity is set(RGBA or RGB). + if ( $opacity ) { + if ( 1 < abs( $opacity ) ) { + $opacity = 1.0; + } + $output = 'rgba(' . implode( ',', $rgb ) . ',' . $opacity . ')'; + } else { + $output = 'rgb(' . implode( ',', $rgb ) . ')'; + } + + // Return RGB(a) color string. + return $output; + } + +endif; + + +if ( ! function_exists( 'astra_enable_page_builder_compatibility' ) ) : + + /** + * Allow filter to enable/disable page builder compatibility. + * + * @see https://wpastra.com/docs/recommended-settings-beaver-builder-astra/ + * @see https://wpastra.com/docs/recommended-settings-for-elementor/ + * + * @since 1.2.2 + * @return bool True - If the page builder compatibility is enabled. False - IF the page builder compatibility is disabled. + */ + function astra_enable_page_builder_compatibility() { + return apply_filters( 'astra_enable_page_builder_compatibility', true ); + } + +endif; + + +if ( ! function_exists( 'astra_get_pro_url' ) ) : + /** + * Returns an URL with utm tags + * the admin settings page. + * + * @param string $url URL fo the site. + * @param string $source utm source. + * @param string $medium utm medium. + * @param string $campaign utm campaign. + * @return mixed + */ + function astra_get_pro_url( $url, $source = '', $medium = '', $campaign = '' ) { + + $astra_pro_url = trailingslashit( $url ); + + // Set up our URL if we have a source. + if ( ! empty( $source ) ) { + $astra_pro_url = add_query_arg( 'utm_source', sanitize_text_field( $source ), $url ); + } + // Set up our URL if we have a medium. + if ( ! empty( $medium ) ) { + $astra_pro_url = add_query_arg( 'utm_medium', sanitize_text_field( $medium ), $astra_pro_url ); + } + // Set up our URL if we have a campaign. + if ( ! empty( $campaign ) ) { + $astra_pro_url = add_query_arg( 'utm_campaign', sanitize_text_field( $campaign ), $astra_pro_url ); + } + + $astra_pro_url = apply_filters( 'astra_get_pro_url', $astra_pro_url, $url ); + $astra_pro_url = remove_query_arg( 'bsf', $astra_pro_url ); + + $ref = get_option( 'astra_partner_url_param', '' ); + if ( ! empty( $ref ) ) { + $astra_pro_url = add_query_arg( 'bsf', sanitize_text_field( $ref ), $astra_pro_url ); + } + + return $astra_pro_url; + } + +endif; + + +/** + * Search Form + */ +if ( ! function_exists( 'astra_get_search_form' ) ) : + /** + * Display search form. + * + * @param bool $echo Default to echo and not return the form. + * @return string|void String when $echo is false. + */ + function astra_get_search_form( $echo = true ) { + + $form = get_search_form( + array( + 'input_placeholder' => apply_filters( 'astra_search_field_placeholder', esc_attr_x( 'Search...', 'placeholder', 'astra' ) ), + 'data_attributes' => apply_filters( 'astra_search_field_toggle_data_attrs', '' ), + 'input_value' => get_search_query(), + 'show_input_submit' => false, + ) + ); + + /** + * Filters the HTML output of the search form. + * + * @param string $form The search form HTML output. + */ + $result = apply_filters( 'astra_get_search_form', $form ); + + if ( null === $result ) { + $result = $form; + } + + if ( $echo ) { + echo $result; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $result; + } + } + +endif; + +/** + * Check if we're being delivered AMP + * + * @return bool + */ +function astra_is_amp_endpoint() { + return function_exists( 'is_amp_endpoint' ) && is_amp_endpoint(); +} + +/* + * Get Responsive Spacing + */ +if ( ! function_exists( 'astra_responsive_spacing' ) ) { + + /** + * Get Spacing value + * + * @param array $option CSS value. + * @param string $side top | bottom | left | right. + * @param string $device CSS device. + * @param string $default Default value. + * @param string $prefix Prefix value. + * @return mixed + */ + function astra_responsive_spacing( $option, $side = '', $device = 'desktop', $default = '', $prefix = '' ) { + + if ( isset( $option[ $device ][ $side ] ) && isset( $option[ $device . '-unit' ] ) ) { + $spacing = astra_get_css_value( $option[ $device ][ $side ], $option[ $device . '-unit' ], $default ); + } elseif ( is_numeric( $option ) ) { + $spacing = astra_get_css_value( $option ); + } else { + $spacing = ( ! is_array( $option ) ) ? $option : ''; + } + + if ( '' !== $prefix && '' !== $spacing ) { + return $prefix . $spacing; + } + return $spacing; + } +} + +/** + * Get the tablet breakpoint value. + * + * @param mixed $min min. + * @param mixed $max max. + * + * @since 2.4.0 + * + * @return number $breakpoint. + */ +function astra_get_tablet_breakpoint( $min = '', $max = '' ) { + + $update_breakpoint = astra_get_option( 'can-update-theme-tablet-breakpoint', true ); + + // Change default for new users. + $default = ( true === $update_breakpoint ) ? 921 : 768; + + $header_breakpoint = apply_filters( 'astra_tablet_breakpoint', $default ); + + if ( '' !== $min ) { + $header_breakpoint = $header_breakpoint - $min; + } elseif ( '' !== $max ) { + $header_breakpoint = $header_breakpoint + $max; + } + + return absint( $header_breakpoint ); +} + +/** + * Get the mobile breakpoint value. + * + * @param string $min min. + * @param string $max max. + * + * @since 2.4.0 + * + * @return number header_breakpoint. + */ +function astra_get_mobile_breakpoint( $min = '', $max = '' ) { + + $header_breakpoint = apply_filters( 'astra_mobile_breakpoint', 544 ); + + if ( '' !== $min ) { + $header_breakpoint = $header_breakpoint - $min; + } elseif ( '' !== $max ) { + $header_breakpoint = $header_breakpoint + $max; + } + + return absint( $header_breakpoint ); +} + +/* + * Apply CSS for the element + */ +if ( ! function_exists( 'astra_color_responsive_css' ) ) { + + /** + * Astra Responsive Colors + * + * @param array $setting Responsive colors. + * @param string $css_property CSS property. + * @param string $selector CSS selector. + * @return string Dynamic responsive CSS. + */ + function astra_color_responsive_css( $setting, $css_property, $selector ) { + $css = ''; + if ( isset( $setting['desktop'] ) && ! empty( $setting['desktop'] ) ) { + $css .= $selector . '{' . $css_property . ':' . esc_attr( $setting['desktop'] ) . ';}'; + } + if ( isset( $setting['tablet'] ) && ! empty( $setting['tablet'] ) ) { + $css .= '@media (max-width:' . astra_get_tablet_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['tablet'] ) . ';} }'; + } + if ( isset( $setting['mobile'] ) && ! empty( $setting['mobile'] ) ) { + $css .= '@media (max-width:' . astra_get_mobile_breakpoint() . 'px) {' . $selector . '{' . $css_property . ':' . esc_attr( $setting['mobile'] ) . ';} }'; + } + return $css; + } +} + +if ( ! function_exists( 'astra_check_is_bb_themer_layout' ) ) : + + /** + * Check if layout is bb themer's layout + */ + function astra_check_is_bb_themer_layout() { + + $is_layout = false; + + $post_type = get_post_type(); + $post_id = get_the_ID(); + + if ( 'fl-theme-layout' === $post_type && $post_id ) { + + $is_layout = true; + } + + return $is_layout; + } + +endif; + + +if ( ! function_exists( 'astra_is_white_labelled' ) ) : + + /** + * Check if white label option is enabled in astra pro plugin + */ + function astra_is_white_labelled() { + + if ( is_callable( 'Astra_Ext_White_Label_Markup::show_branding' ) && ! Astra_Ext_White_Label_Markup::show_branding() ) { + return apply_filters( 'astra_is_white_labelled', true ); + } + + return apply_filters( 'astra_is_white_labelled', false ); + } + +endif; + +/** + * Get the value for font-display property. + * + * @since 1.8.6 + * @return string + */ +function astra_get_fonts_display_property() { + return apply_filters( 'astra_fonts_display_property', 'fallback' ); +} + +/** + * Generate Responsive Background Color CSS. + * + * @param array $bg_obj_res array of background object. + * @param string $device CSS for which device. + * @return array + */ +function astra_get_responsive_background_obj( $bg_obj_res, $device ) { + + $gen_bg_css = array(); + + if ( ! is_array( $bg_obj_res ) ) { + return; + } + + $bg_obj = $bg_obj_res[ $device ]; + $bg_img = isset( $bg_obj['background-image'] ) ? $bg_obj['background-image'] : ''; + $bg_tab_img = isset( $bg_obj_res['tablet']['background-image'] ) ? $bg_obj_res['tablet']['background-image'] : ''; + $bg_desk_img = isset( $bg_obj_res['desktop']['background-image'] ) ? $bg_obj_res['desktop']['background-image'] : ''; + $bg_color = isset( $bg_obj['background-color'] ) ? $bg_obj['background-color'] : ''; + $tablet_css = ( isset( $bg_obj_res['tablet']['background-image'] ) && $bg_obj_res['tablet']['background-image'] ) ? true : false; + $desktop_css = ( isset( $bg_obj_res['desktop']['background-image'] ) && $bg_obj_res['desktop']['background-image'] ) ? true : false; + + $bg_type = ( isset( $bg_obj['background-type'] ) && $bg_obj['background-type'] ) ? $bg_obj['background-type'] : ''; + + if ( '' !== $bg_type ) { + switch ( $bg_type ) { + case 'color': + if ( '' !== $bg_img && '' !== $bg_color ) { + $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_img . ');'; + } elseif ( 'mobile' === $device ) { + if ( $desktop_css ) { + $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ');'; + } elseif ( $tablet_css ) { + $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_tab_img . ');'; + } else { + if ( '' !== $bg_color ) { + $gen_bg_css['background-color'] = $bg_color . ';'; + $gen_bg_css['background-image'] = 'none;'; + } + } + } elseif ( 'tablet' === $device ) { + if ( $desktop_css ) { + $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $bg_color . ', ' . $bg_color . '), url(' . $bg_desk_img . ');'; + } else { + if ( '' !== $bg_color ) { + $gen_bg_css['background-color'] = $bg_color . ';'; + $gen_bg_css['background-image'] = 'none;'; + } + } + } elseif ( '' === $bg_img ) { + $gen_bg_css['background-color'] = $bg_color . ';'; + $gen_bg_css['background-image'] = 'none;'; + } + break; + + case 'image': + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $overlay_type = isset( $bg_obj['overlay-type'] ) ? $bg_obj['overlay-type'] : 'none'; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $overlay_color = isset( $bg_obj['overlay-color'] ) ? $bg_obj['overlay-color'] : ''; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $overlay_grad = isset( $bg_obj['overlay-gradient'] ) ? $bg_obj['overlay-gradient'] : ''; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + if ( '' !== $bg_img ) { + if ( 'none' !== $overlay_type ) { + if ( 'classic' === $overlay_type && '' !== $overlay_color ) { + $gen_bg_css['background-image'] = 'linear-gradient(to right, ' . $overlay_color . ', ' . $overlay_color . '), url(' . $bg_img . ');'; + } elseif ( 'gradient' === $overlay_type && '' !== $overlay_grad ) { + $gen_bg_css['background-image'] = $overlay_grad . ', url(' . $bg_img . ');'; + } else { + $gen_bg_css['background-image'] = 'url(' . $bg_img . ');'; + } + } else { + $gen_bg_css['background-image'] = 'url(' . $bg_img . ');'; + } + } + break; + + case 'gradient': + if ( isset( $bg_color ) ) { + $gen_bg_css['background-image'] = $bg_color . ';'; + } + break; + + default: + break; + } + } elseif ( '' !== $bg_color ) { + $gen_bg_css['background-color'] = $bg_color . ';'; + } + + if ( '' !== $bg_img ) { + if ( isset( $bg_obj['background-repeat'] ) ) { + $gen_bg_css['background-repeat'] = esc_attr( $bg_obj['background-repeat'] ); + } + + if ( isset( $bg_obj['background-position'] ) ) { + $gen_bg_css['background-position'] = esc_attr( $bg_obj['background-position'] ); + } + + if ( isset( $bg_obj['background-size'] ) ) { + $gen_bg_css['background-size'] = esc_attr( $bg_obj['background-size'] ); + } + + if ( isset( $bg_obj['background-attachment'] ) ) { + $gen_bg_css['background-attachment'] = esc_attr( $bg_obj['background-attachment'] ); + } + } + + return $gen_bg_css; +} + +/** + * Common function to check is pagination is enabled on current page. + * + * @since 3.0.1 + * @return boolean + */ +function astra_check_pagination_enabled() { + global $wp_query; + + return ( $wp_query->max_num_pages > 1 && apply_filters( 'astra_pagination_enabled', true ) ); +} + +/** + * Verify is current post comments are enabled or not for applying dynamic CSS. + * + * @since 3.0.1 + * @return boolean + */ +function astra_check_current_post_comment_enabled() { + return ( is_singular() && comments_open() ); +} + +/** + * Dont apply zero size to existing user. + * + * @since 3.6.9 + * @return boolean false if it is an existing user , true if not. + */ +function astra_zero_font_size_case() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['astra-zero-font-size-case-css'] = isset( $astra_settings['astra-zero-font-size-case-css'] ) ? false : true; + return apply_filters( 'astra_zero_font_size_case', $astra_settings['astra-zero-font-size-case-css'] ); +} + +/** + * Check the WordPress version. + * + * @since 2.5.4 + * @param string $version WordPress version to compare with the current version. + * @param mixed $compare Comparison value i.e > or < etc. + * @return bool|null True/False based on the $version and $compare value. + */ +function astra_wp_version_compare( $version, $compare ) { + return version_compare( get_bloginfo( 'version' ), $version, $compare ); +} + +/** + * Check if existing setup is live with old block editor compatibilities. + * + * @return bool true|false. + */ +function astra_block_based_legacy_setup() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $legacy_setup = ( isset( $astra_settings['blocks-legacy-setup'] ) && isset( $astra_settings['wp-blocks-ui'] ) && 'legacy' === $astra_settings['wp-blocks-ui'] ) ? true : false; + return $legacy_setup; +} + +/** + * Check is new structural things are updated. + * + * @return bool true|false. + */ +function astra_check_is_structural_setup() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_get_option_customizer-default-layout-update', isset( $astra_settings['customizer-default-layout-update'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores +} + +/** + * Check if the user is old sidebar user. + * + * @since 3.9.4 + * @return bool true|false. + */ +function astra_check_old_sidebar_user() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_old_global_sidebar_defaults', isset( $astra_settings['astra-old-global-sidebar-default'] ) ? false : true ); +} + +/** + * Check if user is old for hiding/showing password icon field for login my-account form. + * + * @since 3.9.2 + * @return bool true|false. + */ +function astra_load_woocommerce_login_form_password_icon() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + return apply_filters( 'astra_get_option_woo-show-password-icon', isset( $astra_settings['woo-show-password-icon'] ) ? false : true ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores +} + +/** + * Function to add narrow width properties in the frontend. + * + * @since 4.0.0 + * @param string $location container layout for single-post, archives, pages, page meta. + * @param string $narrow_container_max_width dynamic container width in px. + * @return string Parsed CSS based on $location and $narrow_container_max_width. + */ +function astra_narrow_container_width( $location, $narrow_container_max_width ) { + + if ( 'narrow-container' === $location ) { + + $narrow_container_css = array( + '.ast-narrow-container .site-content > .ast-container' => array( + 'max-width' => astra_get_css_value( $narrow_container_max_width, 'px' ), + ), + ); + + // Remove Sidebar for Narrow Width Container Layout. + if ( 'narrow-container' === astra_get_content_layout() ) { + add_filter( + 'astra_page_layout', + function() { // phpcs:ignore PHPCompatibility.FunctionDeclarations.NewClosure.Found + return 'no-sidebar'; + } + ); + } + + return astra_parse_css( $narrow_container_css, astra_get_tablet_breakpoint( '', 1 ) ); + + } else { + return ''; + } +} + +/** + * Function which will return the Sidebar Layout to determine default body classes for Editor. + * + * @since 4.2.0 + * @param string $post_type Post Type. + * @return string Sidebar Layout. + */ +function astra_get_sidebar_layout_for_editor( $post_type ) { + + $sidebar_layout = astra_get_option( 'single-' . $post_type . '-sidebar-layout' ); + + if ( 'default' === $sidebar_layout ) { + $sidebar_layout = astra_get_option( 'site-sidebar-layout' ); + } + + return $sidebar_layout; +} + +/** + * Gets the SVG for the duotone filter definition. + * + * @since 4.2.2 + * + * @param string $filter_id The ID of the filter. + * @param array $color An array of color strings. + * @return string An SVG with a duotone filter definition. + */ +function astra_get_filter_svg( $filter_id, $color ) { + + $duotone_values = array( + 'r' => array(), + 'g' => array(), + 'b' => array(), + 'a' => array(), + ); + + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $duotone_values['r'][] = $color['r'] / 255; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $duotone_values['g'][] = $color['g'] / 255; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $duotone_values['b'][] = $color['b'] / 255; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $duotone_values['a'][] = $color['a']; + ob_start(); + + ?> + + + + + + + + + + + + + + + + + <', '><', $svg ); + $svg = trim( $svg ); + + return $svg; +} + +/** + * Converts HEX to RGB. + * + * @since 4.2.2 + * + * @param string $hex Hex color. + * @return array split version of rgb. + */ +function astra_hex_to_rgb( $hex ) { + // @codingStandardsIgnoreStart + /** + * @psalm-suppress PossiblyNullArrayAccess + */ + list($r, $g, $b) = sscanf( $hex, '#%02x%02x%02x' ); + + // @codingStandardsIgnoreEnd + return array( + 'r' => $r, + 'g' => $g, + 'b' => $b, + 'a' => 1, + ); +} + +/** + * Converts RGBA to split array RGBA. + * + * @since 4.2.2 + * + * @param string $rgba RGBA value. + * @return array split version of rgba. + */ +function astra_split_rgba( $rgba ) { + // Remove the "rgba(" and ")" from the input string. + $rgba = str_replace( array( 'rgba(', ')' ), '', $rgba ); + + // Split the RGBA values by comma. + $values = explode( ',', $rgba ); + + // Convert each value from string to integer. + $r = intval( $values[0] ); + $g = intval( $values[1] ); + $b = intval( $values[2] ); + $a = floatval( $values[3] ); + + // Create the split RGBA string. + return array( + 'r' => $r, + 'g' => $g, + 'b' => $b, + 'a' => $a, + ); +} + +/** + * Render svg mask. + * + * @since 4.2.2 + * + * @param string $id id. + * @param string $filter_name filter name. + * @param string $color color. + * @return mixed masked svg, + */ +function astra_render_svg_mask( $id, $filter_name, $color ) { + + if ( 0 === strpos( $color, 'var(--' ) ) { + $agp = new Astra_Global_Palette(); + /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $svg_color = astra_hex_to_rgb( $agp->get_color_by_palette_variable( $color ) ); + } elseif ( preg_match( '/^#[a-f0-9]{6}$/i', $color ) ) { + /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $svg_color = astra_hex_to_rgb( $color ); + } else { + /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $svg_color = astra_split_rgba( $color ); + } + + /** @psalm-suppress UndefinedFunction */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + echo astra_get_filter_svg( $id, apply_filters( 'astra_' . $filter_name, $svg_color ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped +} diff --git a/wp-content/themes/astra/inc/customizer/class-astra-customizer.php b/wp-content/themes/astra/inc/customizer/class-astra-customizer.php index 4de614515..50cd55f6d 100644 --- a/wp-content/themes/astra/inc/customizer/class-astra-customizer.php +++ b/wp-content/themes/astra/inc/customizer/class-astra-customizer.php @@ -1,1630 +1,1630 @@ -' ) && is_customize_preview() ) { - add_filter( 'gutenberg_use_widgets_block_editor', '__return_false' ); - } - - add_action( 'customize_controls_enqueue_scripts', array( $this, 'controls_scripts' ) ); - add_action( 'customize_controls_enqueue_scripts', array( $this, 'enqueue_customizer_scripts' ), 999 ); - - add_action( 'customize_controls_print_footer_scripts', array( $this, 'print_footer_scripts' ) ); - - add_action( 'customize_register', array( $this, 'customize_register_panel' ), 2 ); - add_action( 'customize_register', array( $this, 'customize_register' ) ); - add_action( 'customize_register', array( $this, 'customize_register_site_icon' ), 20 ); - add_action( 'customize_save_after', array( $this, 'customize_save' ) ); - add_action( 'customize_save_after', array( $this, 'delete_cached_partials' ) ); - add_action( 'wp_head', array( $this, 'preview_styles' ) ); - add_action( 'wp_ajax_astra_regenerate_fonts_folder', array( $this, 'regenerate_astra_fonts_folder' ) ); - } - - /** - * Add site icon control in the site identity panel. - * - * @access public - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - * @return void - * - * @since 3.6.9 - */ - public function customize_register_site_icon( $wp_customize ) { - - /** @psalm-suppress RedundantConditionGivenDocblockType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( true !== Astra_Builder_Helper::$is_header_footer_builder_active ) { - /** @psalm-suppress RedundantConditionGivenDocblockType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - return; - } - - $panel_arr = array( - 'priority' => 80, - 'capability' => 'edit_theme_options', - 'theme_supports' => '', - 'title' => __( 'Site Identity', 'astra' ), - 'description' => '', - ); - // Register panel. - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $wp_customize->add_panel( 'astra-site-identity', $panel_arr ); - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - $section_arr = array( - 'priority' => 80, - 'capability' => 'edit_theme_options', - 'theme_supports' => '', - 'title' => __( 'Site Identity', 'astra' ), - 'description' => '', - ); - - // Register Section. - $wp_customize->add_section( 'astra-site-identity', $section_arr ); - - /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $wp_customize->get_control( 'site_icon' )->section = 'astra-site-identity'; - /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - - /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $wp_customize->get_control( 'site_icon' )->description = __( 'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. Upload one here! Site Icons should be square and at least 512 × 512 pixels.', 'astra' ); - /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - } - - /** - * Reset font folder - * - * @access public - * @return void - * - * @since 3.6.0 - */ - public function regenerate_astra_fonts_folder() { - check_ajax_referer( 'astra_update_admin_setting', 'security' ); - - if ( ! current_user_can( 'edit_theme_options' ) ) { - wp_send_json_error( 'invalid_permissions' ); - } - - if ( Astra_API_Init::get_admin_settings_option( 'self_hosted_gfonts', false ) ) { - $local_font_loader = astra_webfont_loader_instance( '' ); - $flushed = $local_font_loader->astra_delete_fonts_folder(); - - if ( ! $flushed ) { - $response_data = array( 'message' => __( 'Failed to Flush, try again later.', 'astra' ) ); - wp_send_json_error( $response_data ); - } - wp_send_json_success(); - } - - $response_data = array( 'message' => __( 'Local font files not present.', 'astra' ) ); - wp_send_json_error( $response_data ); - } - - /** - * Delete the cached partial configs. - */ - public function delete_cached_partials() { - delete_option( 'astra_partials_config_cache' ); - - // Delete previously stored local fonts data, if exists. - if ( Astra_API_Init::get_admin_settings_option( 'self_hosted_gfonts', false ) ) { - $local_webfont_loader = astra_webfont_loader_instance( '' ); - $local_webfont_loader->astra_delete_fonts_folder(); - } - } - - /** - * Add dynamic control partial refresh. - * - * @since 3.1.0 - * @param array $partial_args partial configs. - * @param string $partial_id partial id. - * @return array|mixed - */ - public function filter_dynamic_partial_args( $partial_args, $partial_id ) { - - if ( isset( self::$dynamic_options['partials'][ $partial_id ] ) ) { - if ( false === $partial_args ) { - $partial_args = array(); - } - $partial_args = array_merge( $partial_args, self::$dynamic_options['partials'][ $partial_id ] ); - } - - return $partial_args; - } - - /** - * Add dynamic control settings. - * - * @since 3.1.0 - * @param array $setting_args setting configs. - * @param string $setting_id setting id. - * @return mixed - */ - public function filter_dynamic_setting_args( $setting_args, $setting_id ) { - - if ( isset( self::$dynamic_options['settings'][ $setting_id ] ) ) { - return self::$dynamic_options['settings'][ $setting_id ]; - } - - return $setting_args; - } - - /** - * Prepare Contexts and choices. - * - * @since 3.0.0 - */ - public function prepare_customizer_javascript_configs() { - - global $wp_customize; - - $cached_data = get_option( 'astra_partials_config_cache', false ); - - if ( $wp_customize->selective_refresh->is_render_partials_request() && $cached_data ) { - self::$dynamic_options = $cached_data; - return; - } - - $configurations = $this->get_customizer_configurations(); - - $defaults = $this->get_astra_customizer_configuration_defaults(); - - foreach ( $configurations as $key => $configuration ) { - - $config = wp_parse_args( $configuration, $defaults ); - - if ( isset( $configuration['context'] ) ) { - self::$contexts[ $configuration['name'] ] = $configuration['context']; - } else { - if ( isset( $configuration['type'] ) && ( ( 'control' === $configuration['type'] ) || ( 'sub-control' === $configuration['type'] ) ) ) { - if ( ( isset( $configuration['control'] ) && 'ast-builder-header-control' !== $configuration['control'] ) && ( isset( $configuration['name'] ) && strpos( $configuration['name'], 'ast-callback-notice' ) === false ) ) { - self::$contexts[ $configuration['name'] ] = Astra_Builder_Helper::$general_tab; - } - } - } - - if ( isset( $configuration['choices'] ) ) { - self::$choices[ $configuration['name'] ] = $configuration['choices']; - } - - switch ( $config['type'] ) { - - case 'panel': - $this->prepare_javascript_panel_configs( $config ); - break; - case 'section': - $this->prepare_javascript_section_configs( $config ); - break; - - case 'sub-control': - $this->prepare_javascript_sub_control_configs( $config ); - break; - case 'control': - $this->prepare_javascript_control_configs( $config ); - break; - } - } - - update_option( 'astra_partials_config_cache', self::$dynamic_options, false ); - - } - - /** - * Get control default. - * - * @param string $setting_key setting key. - * @param array $default_values default value array. - * @return mixed|string - */ - private function get_default_value( $setting_key, $default_values ) { - $return = ''; - preg_match( '#astra-settings\[(.*?)\]#', $setting_key, $match ); - if ( ! empty( $match ) && isset( $match[1] ) ) { - $return = isset( $default_values[ $match[1] ] ) ? $default_values[ $match[1] ] : ''; - } - return $return; - } - - /** - * Prepare tabbed sections for dynamic controls to optimize frontend JS calls. - */ - private static function prepare_tabbed_sections() { - - if ( ! isset( self::$js_configs['controls'] ) ) { - return; - } - - foreach ( self::$js_configs['controls'] as $section_id => $controls ) { - $tab_id = $section_id . '-ast-context-tabs'; - $control_names = wp_list_pluck( $controls, 'name' ); - if ( in_array( $tab_id, $control_names, true ) ) { - array_push( self::$tabbed_sections, $section_id ); - } - } - - } - - /** - * Print Footer Scripts - * - * @since 1.0.0 - * @return void - */ - public function print_footer_scripts() { - $output = ''; - - echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } - - /** - * Set default context for WP default controls. - */ - private static function set_default_context() { - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - return; - } - - self::$contexts['blogname'] = array( - Astra_Builder_Helper::$general_tab_config, - - ); - - self::$contexts['blogdescription'] = array( - Astra_Builder_Helper::$general_tab_config, - - ); - - } - - /** - * Bypass JS configs for Controls. - * - * @param array $configuration configuration. - */ - public static function bypass_control_configs( $configuration ) { - - $val = ''; - - if ( isset( $configuration['name'] ) ) { - - $data = explode( '[', rtrim( $configuration['name'], ']' ) ); - - if ( isset( $data[1] ) ) { - $val = astra_get_option( $data[1] ); - } - } - - if ( isset( $val ) && ! empty( $val ) ) { - - $configuration['value'] = $val; - } - - switch ( $configuration['type'] ) { - - case 'ast-builder': - if ( is_array( $configuration['default'] ) && ! isset( $configuration['default']['popup'] ) ) { - $configuration['default']['popup'] = array( 'popup_content' => array() ); - } - break; - case 'ast-responsive-spacing': - if ( ! is_array( $val ) || is_numeric( $val ) ) { - - $configuration['value'] = array( - 'desktop' => array( - 'top' => $val, - 'right' => '', - 'bottom' => $val, - 'left' => '', - ), - 'tablet' => array( - 'top' => $val, - 'right' => '', - 'bottom' => $val, - 'left' => '', - ), - 'mobile' => array( - 'top' => $val, - 'right' => '', - 'bottom' => $val, - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - } - - break; - case 'ast-radio-image': - $configuration['value'] = $val; - - if ( isset( $configuration['choices'] ) && is_array( $configuration['choices'] ) ) { - - foreach ( $configuration['choices'] as $key => $value ) { - $configuration['choices'][ $key ] = $value['path']; - $configuration['choices_titles'][ $key ] = $value['label']; - $configuration['choices_upgrade'][ $key ] = isset( $value['is_pro'] ) ? $value['is_pro'] : false; - } - } - if ( isset( $configuration['inputAttrs'] ) ) { - - $configuration['inputAttrs'] = ''; - $configuration['labelStyle'] = ''; - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - foreach ( $configuration['input_attrs'] as $attr => $value ) { - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( 'style' !== $attr ) { - $configuration['inputAttrs'] .= $attr . '="' . esc_attr( $value ) . '" '; - } else { - $configuration['labelStyle'] = 'style="' . esc_attr( $value ) . '" '; - } - } - } - break; - case 'ast-border': - $configuration['value'] = $val; - break; - case 'ast-section-toggle': - $configuration['value'] = $val; - break; - case 'ast-responsive-slider': - if ( ! is_array( $val ) || is_numeric( $val ) ) { - - $configuration['value'] = array( - 'desktop' => $val, - 'tablet' => '', - 'mobile' => '', - ); - } - break; - case 'ast-responsive-background': - $configuration['value'] = $val; - - break; - case 'ast-link': - $configuration['value'] = $val; - - break; - case 'ast-hidden': - $configuration['value'] = $val; - - break; - case 'ast-settings-group': - $config = array(); - - if ( isset( self::$group_configs[ $configuration['name'] ]['tabs'] ) ) { - $tab = array_keys( self::$group_configs[ $configuration['name'] ]['tabs'] ); - rsort( $tab ); - foreach ( $tab as $key => $value ) { - - $config['tabs'][ $value ] = wp_list_sort( self::$group_configs[ $configuration['name'] ]['tabs'][ $value ], 'priority' ); - } - } else { - if ( isset( self::$group_configs[ $configuration['name'] ] ) ) { - $config = wp_list_sort( self::$group_configs[ $configuration['name'] ], 'priority' ); - } - } - $configuration['ast_fields'] = $config; - break; - case 'ast-font-weight': - $configuration['ast_all_font_weight'] = array( - '100' => __( 'Thin 100', 'astra' ), - '100italic' => __( '100 Italic', 'astra' ), - '200' => __( 'Extra-Light 200', 'astra' ), - '200italic' => __( '200 Italic', 'astra' ), - '300' => __( 'Light 300', 'astra' ), - '300italic' => __( '300 Italic', 'astra' ), - '400' => __( 'Normal 400', 'astra' ), - 'normal' => __( 'Normal 400', 'astra' ), - 'italic' => __( '400 Italic', 'astra' ), - '500' => __( 'Medium 500', 'astra' ), - '500italic' => __( '500 Italic', 'astra' ), - '600' => __( 'Semi-Bold 600', 'astra' ), - '600italic' => __( '600 Italic', 'astra' ), - '700' => __( 'Bold 700', 'astra' ), - '700italic' => __( '700 Italic', 'astra' ), - '800' => __( 'Extra-Bold 800', 'astra' ), - '800italic' => __( '800 Italic', 'astra' ), - '900' => __( 'Ultra-Bold 900', 'astra' ), - '900italic' => __( '900 Italic', 'astra' ), - ); - break; - case 'ast-sortable': - $configuration['value'] = $val; - - if ( isset( self::$group_configs[ $configuration['name'] ] ) ) { - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $config = wp_list_sort( self::$group_configs[ $configuration['name'] ], 'priority' ); - /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $configuration['ast_fields'] = $config; - } - - break; - - case 'ast-font-variant': - $configuration['value'] = $val; - break; - - case 'ast-select-multi': - $configuration['value'] = $val; - break; - - } // Switch End. - - if ( isset( $configuration['id'] ) ) { - - $configuration['link'] = self::get_control_link( $configuration['id'] ); - } - $exclude_controls = array( 'ast-builder', 'ast-radio-image' ); - - if ( isset( $configuration['type'] ) && ! in_array( $configuration['type'], $exclude_controls ) && isset( $configuration['input_attrs'] ) && is_array( $configuration['input_attrs'] ) ) { - - $configuration['inputAttrs'] = ''; - - foreach ( $configuration['input_attrs'] as $attr => $value ) { - - if ( ! is_array( $value ) ) { - - $configuration['inputAttrs'] .= $attr . '="' . esc_attr( $value ) . '" '; - } - } - } - - return $configuration; - } - - /** - * Prepare Panel Configs for Javascript. - * - * @since 3.0.0 - * @param array $config configs. - */ - public function prepare_javascript_panel_configs( $config ) { - - $panel_name = astra_get_prop( $config, 'name' ); - - unset( $config['type'] ); - $config['type'] = 'ast_panel'; - $config['active'] = true; - $config['id'] = $panel_name; - self::$js_configs['panels'][ $panel_name ] = $config; - } - - /** - * Prepare Section Configs for Javascript. - * - * @since 3.0.0 - * @param array $config configs. - */ - public function prepare_javascript_section_configs( $config ) { - - $section_name = astra_get_prop( $config, 'name' ); - - unset( $config['type'] ); - $config['type'] = isset( $config['ast_type'] ) ? $config['ast_type'] : 'ast_section'; - $config['active'] = true; - $config['id'] = $section_name; - $config['customizeAction'] = sprintf( __( 'Customizing ▸ %s', 'astra' ), astra_get_prop( $config, 'title' ) ); - - if ( isset( $config['clone_type'] ) && isset( $config['clone_index'] ) ) { - - if ( isset( Astra_Builder_Helper::$component_count_array[ $config['clone_type'] ] ) ) { - if ( in_array( $section_name, Astra_Builder_Helper::$component_count_array['removed-items'], true ) || Astra_Builder_Helper::$component_count_array[ $config['clone_type'] ] < $config['clone_index'] ) { - self::$js_configs['clone_sections'][ $section_name ] = $config; - } else { - self::$js_configs['sections'][ $section_name ] = $config; - } - } - } else { - self::$js_configs['sections'][ $section_name ] = $config; - } - } - - /** - * Prepare Sub Control Configs for Javascript. - * - * @since 3.0.0 - * @param array $config configs. - */ - public function prepare_javascript_sub_control_configs( $config ) { - - unset( $config['type'] ); - - $name = astra_get_prop( $config, 'name' ); - $parent = astra_get_prop( $config, 'parent' ); - $sub_control_name = ASTRA_THEME_SETTINGS . '[' . $name . ']'; - - $ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider', 'ast-section-toggle' ); - - $sanitize_callback = ( in_array( $config['control'], $ignore_controls, true ) ) ? false : astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ); - - if ( ! $sanitize_callback ) { - $config = $this->sanitize_control( $config ); - } - - $new_config = array( - 'name' => $sub_control_name, - 'datastore_type' => 'option', - 'transport' => 'postMessage', - 'control' => 'ast-hidden', - 'section' => astra_get_prop( $config, 'section', 'title_tagline' ), - 'title' => astra_get_prop( $config, 'title' ), - 'priority' => astra_get_prop( $config, 'priority', '10' ), - 'default' => astra_get_prop( $config, 'default' ), - 'sanitize_callback' => $sanitize_callback, - 'suffix' => astra_get_prop( $config, 'suffix' ), - 'control_type' => astra_get_prop( $config, 'control' ), - 'linked' => astra_get_prop( $config, 'linked' ), - 'variant' => astra_get_prop( $config, 'variant' ), - 'help' => astra_get_prop( $config, 'help' ), - 'description' => astra_get_prop( $config, 'description' ), - 'input_attrs' => astra_get_prop( $config, 'input_attrs' ), - 'disable' => astra_get_prop( $config, 'disable' ), - ); - - self::$dynamic_options['settings'][ astra_get_prop( $new_config, 'name' ) ] = array( - 'default' => astra_get_prop( $new_config, 'default' ), - 'type' => astra_get_prop( $new_config, 'datastore_type' ), - 'transport' => astra_get_prop( $new_config, 'transport', 'refresh' ), - 'sanitize_callback' => astra_get_prop( $new_config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $new_config, 'control' ) ) ), - ); - - $new_config['type'] = astra_get_prop( $new_config, 'control' ); - $new_config['id'] = astra_get_prop( $new_config, 'name' ); - $new_config['settings'] = array( 'default' => astra_get_prop( $new_config, 'name' ) ); - $new_config = self::bypass_control_configs( $new_config ); - self::$js_configs ['sub_controls'] [ $parent ] [] = $new_config; - - // Keep contextual sub controls aside to process initially in customizer.js. - if ( isset( $config['contextual_sub_control'] ) ) { - self::$js_configs ['contextual_sub_controls'] [ $name ] = $new_config; - } - } - - /** - * Get the Link for Control. - * - * @since 3.0.0 - * @param array $id Control ID. - */ - public static function get_control_link( $id ) { - if ( isset( $id ) ) { - return 'data-customize-setting-link="' . $id . '"'; - } else { - return 'data-customize-setting-key-link="default"'; - } - } - - /** - * Prepare Control Configs for Javascript. - * - * @since 3.0.0 - * @param array $config configs. - */ - public function prepare_javascript_control_configs( $config ) { - - // Remove type from configuration. - unset( $config['type'] ); - $name = astra_get_prop( $config, 'name' ); - - $ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider', 'ast-section-toggle' ); - - if ( ! isset( $config['control'] ) ) { - return; - } - - $sanitize_callback = ( in_array( $config['control'], $ignore_controls, true ) ) ? false : astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ); - - - if ( ! $sanitize_callback ) { - $config = $this->sanitize_control( $config ); - } - - $config['label'] = astra_get_prop( $config, 'title' ); - $config['type'] = astra_get_prop( $config, 'control' ); - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( false !== astra_get_prop( $config, 'font-type', false ) ) { - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $config['type'] = astra_get_prop( $config, 'font-type', false ); - } - - if ( 'image' === $config['type'] ) { - $this->prepare_preload_controls( $config ); - } - - if ( isset( $config['active_callback'] ) ) { - self::$js_configs ['skip_context'] [] = $name; - $this->prepare_preload_controls( $config ); - return; - } - - self::$dynamic_options['settings'][ $name ] = array( - 'default' => astra_get_prop( $config, 'default' ), - 'type' => astra_get_prop( $config, 'datastore_type' ), - 'transport' => astra_get_prop( $config, 'transport', 'refresh' ), - 'sanitize_callback' => $sanitize_callback, - ); - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( astra_get_prop( $config, 'partial', false ) ) { - self::$dynamic_options['partials'][ $name ] = array( - 'selector' => astra_get_prop( $config['partial'], 'selector' ), - 'render_callback' => astra_get_prop( $config['partial'], 'render_callback' ), - 'containerInclusive' => astra_get_prop( $config['partial'], 'container_inclusive' ), - 'fallbackRefresh' => astra_get_prop( $config['partial'], 'fallback_refresh', true ), - ); - } - - $config['id'] = $name; - $config['settings'] = array( 'default' => $name ); - $config = self::bypass_control_configs( $config ); - - if ( isset( $config['section'] ) ) { - self::$js_configs ['controls'] [ $config['section'] ] [] = $config; - } - - // Keep contextual sub controls aside to process initially in customizer.js. - if ( isset( $config['contextual_sub_control'] ) ) { - self::$js_configs ['contextual_sub_controls'] [ $name ] = $config; - } - } - - /** - * Map and add sanitize callback to JS configs. - * - * @param array $config js config array. - * @return mixed - */ - public function sanitize_control( $config ) { - - $control_type = isset( $config['control'] ) ? $config['control'] : ''; - switch ( $control_type ) { - case 'color': - $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_hex_color' ); - break; - case 'ast-border': - $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_border' ); - break; - case 'ast-html-editor': - $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_html' ); - break; - case 'ast-color': - $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ); - break; - case 'ast-sortable': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ); - break; - case 'ast-radio-image': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_choices' ); - break; - case 'ast-link': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_link' ); - break; - case 'ast-customizer-link': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_customizer_links' ); - break; - case 'ast-responsive-slider': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ); - break; - case 'ast-toggle-control': - case 'ast-section-toggle': - $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_toggle_control' ); - break; - default: - break; - } - - return $config; - - } - - /** - * Add controls for which active_callback is added. - * - * @since 3.0.0 - * @param array $config config. - */ - public function prepare_preload_controls( $config ) { - - global $wp_customize; - - $instance = Astra_Customizer_Control_Base::get_control_instance( astra_get_prop( $config, 'control' ) ); - - // Forwarding to the DOM as default control. - if ( 'title_tagline' !== $config['section'] ) { - self::$js_configs ['wp_defaults'][ astra_get_prop( $config, 'name' ) ] = $config['section']; - $config['section'] = 'title_tagline'; - } - - $wp_customize->add_setting( - astra_get_prop( $config, 'name' ), - array( - 'default' => astra_get_prop( $config, 'default' ), - 'type' => astra_get_prop( $config, 'datastore_type' ), - 'transport' => astra_get_prop( $config, 'transport', 'refresh' ), - 'sanitize_callback' => astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ), - ) - ); - - if ( false !== $instance ) { - $wp_customize->add_control( - new $instance( $wp_customize, astra_get_prop( $config, 'name' ), $config ) - ); - } else { - $wp_customize->add_control( astra_get_prop( $config, 'name' ), $config ); - } - } - - /** - * Prepare Group configs to visible sub-controls. - * - * @since 3.0.0 - * @param object $wp_customize customizer object. - */ - public function prepare_group_configs( $wp_customize ) { - - if ( $wp_customize->selective_refresh->is_render_partials_request() ) { - return; - } - - $configurations = $this->get_customizer_configurations(); - $defaults = $this->get_astra_customizer_configuration_defaults(); - - foreach ( $configurations as $key => $configuration ) { - $config = wp_parse_args( $configuration, $defaults ); - if ( 'sub-control' === $config['type'] ) { - unset( $config['type'] ); - $parent = astra_get_prop( $config, 'parent' ); - $tab = astra_get_prop( $config, 'tab' ); - - if ( empty( self::$group_configs[ $parent ] ) ) { - self::$group_configs[ $parent ] = array(); - } - - if ( array_key_exists( 'tab', $config ) ) { - self::$group_configs[ $parent ]['tabs'][ $tab ][] = $config; - } else { - self::$group_configs[ $parent ][] = $config; - } - } - } - } - - /** - * Prepare context. - * - * @return mixed|void - */ - public static function get_contexts() { - - self::set_default_context(); - // Return contexts. - return apply_filters( 'astra_customizer_context', self::$contexts ); - } - - /** - * Prepare choices. - * - * @return mixed|void - */ - public static function get_choices() { - // Return contexts. - return apply_filters( 'astra_customizer_choices', self::$choices ); - } - - /** - * Prepare javascript configs. - * - * @return mixed|void - */ - public static function get_js_configs() { - - // Return contexts. - return apply_filters( 'astra_javascript_configurations', self::$js_configs ); - } - - /** - * Prepare tabbed sections. - * - * @return mixed|void - */ - public static function get_tabbed_sections() { - - self::prepare_tabbed_sections(); - // Return contexts. - return apply_filters( 'astra_customizer_tabbed_sections', self::$tabbed_sections ); - } - - /** - * Prepare default values for the control. - * - * @return array - */ - private function get_control_defaults() { - - $defaults = array(); - $default_values = Astra_Theme_Options::defaults(); - $default_controls = array_merge( self::$js_configs['controls'], self::$js_configs['sub_controls'] ); - - foreach ( $default_controls as $section_controls ) { - foreach ( $section_controls as $control ) { - $control_id = astra_get_prop( $control, 'name' ); - if ( 'ast-responsive-spacing' === $control['control'] ) { - $defaults[ $control_id ] = array( - 'desktop' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ); - } else { - $defaults[ $control_id ] = $this->get_default_value( $control_id, $default_values ); - } - } - } - - return $defaults; - - } - - /** - * Add customizer script. - * - * @since 3.0.0 - */ - public function enqueue_customizer_scripts() { - // Localize variables for Dev mode > Customizer JS. - wp_localize_script( - 'astra-custom-control-script', - 'AstraBuilderCustomizerData', - array( - 'contexts' => self::get_contexts(), - 'dynamic_setting_options' => self::$dynamic_options['settings'], - 'choices' => self::get_choices(), - 'js_configs' => self::get_js_configs(), - 'tabbed_sections' => self::get_tabbed_sections(), - 'component_limit' => Astra_Builder_Helper::$component_limit, - 'is_site_rtl' => is_rtl(), - 'defaults' => $this->get_control_defaults(), - 'isWP_5_9' => astra_wp_version_compare( '5.8.99', '>=' ), - 'googleFonts' => Astra_Font_Families::get_google_fonts(), - 'variantLabels' => Astra_Font_Families::font_variant_labels(), - 'upgradeUrl' => ASTRA_PRO_CUSTOMIZER_UPGRADE_URL, - ) - ); - - if ( is_rtl() ) { - $builder_customizer_css_file = 'ast-builder-customizer-rtl'; - $font_icon_picker_css_file = 'font-icon-picker-rtl'; - } else { - $builder_customizer_css_file = 'ast-builder-customizer'; - $font_icon_picker_css_file = 'font-icon-picker'; - } - - // Enqueue Builder CSS. - wp_enqueue_style( - 'ahfb-customizer-style', - ASTRA_THEME_URI . 'inc/assets/css/' . $builder_customizer_css_file . '.css', - array( 'wp-components' ), - ASTRA_THEME_VERSION - ); - - wp_enqueue_style( - 'ahfb-customizer-color-picker-style', - ASTRA_THEME_URI . 'inc/assets/css/' . $font_icon_picker_css_file . '.css', - array( 'wp-components' ), - ASTRA_THEME_VERSION - ); - } - - /** - * Check if string is start with a string provided. - * - * @param string $string main string. - * @param string $start_string string to search. - * @since 2.0.0 - * @return bool. - */ - public function starts_with( $string, $start_string ) { - $len = strlen( $start_string ); - return ( substr( $string, 0, $len ) === $start_string ); - } - - /** - * Filter and return Customizer Configurations. - * - * @since 1.4.3 - * @return Array Customizer Configurations for registering Sections/Panels/Controls. - */ - private function get_customizer_configurations() { - - global $wp_customize; - - if ( ! is_null( self::$configuration ) ) { - return self::$configuration; - } - - self::$configuration = apply_filters( 'astra_customizer_configurations', array(), $wp_customize ); - return self::$configuration; - } - - /** - * Return default values for the Customize Configurations. - * - * @since 1.4.3 - * @return Array default values for the Customizer Configurations. - */ - private function get_astra_customizer_configuration_defaults() { - return apply_filters( - 'astra_customizer_configuration_defaults', - array( - 'priority' => null, - 'title' => null, - 'label' => null, - 'name' => null, - 'type' => null, - 'description' => null, - 'capability' => null, - 'datastore_type' => 'option', // theme_mod or option. Default option. - 'settings' => null, - 'active_callback' => null, - 'sanitize_callback' => null, - 'sanitize_js_callback' => null, - 'theme_supports' => null, - 'transport' => null, - 'default' => null, - 'selector' => null, - 'ast_fields' => array(), - ) - ); - } - - /** - * Include Customizer Configuration files. - * - * @since 1.4.3 - * @return void - */ - public function include_configurations() { - // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - require ASTRA_THEME_DIR . 'inc/customizer/configurations/class-astra-customizer-config-base.php'; - - /** - * Register Sections & Panels - */ - require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-register-sections-panels.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-identity-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-blog-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-container-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-body-colors-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-archive-typo-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-body-typo-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/block-editor/class-astra-block-editor-configs.php'; - - if( astra_has_gcp_typo_preset_compatibility() ) { - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-headings-typo-configs.php'; - } else { - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-content-typo-configs.php'; - } - - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-header-typo-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-single-typo-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-global-typo-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/global-misc/class-astra-global-misc-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/accessibility/class-astra-accessibility-configs.php'; - - if ( astra_existing_header_footer_configs() ) { - require ASTRA_THEME_DIR . 'inc/customizer/configurations/buttons/class-astra-existing-button-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-header-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-footer-layout-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-advanced-footer-colors-configs.php'; - require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-footer-colors-configs.php'; - } - // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Register custom section and panel. - * - * @since 1.0.0 - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - */ - public function customize_register_panel( $wp_customize ) { - - /** - * Register Extended Panel - */ - $wp_customize->register_panel_type( 'Astra_WP_Customize_Panel' ); - $wp_customize->register_section_type( 'Astra_WP_Customize_Section' ); - $wp_customize->register_section_type( 'Astra_WP_Customize_Separator' ); - - if ( ! defined( 'ASTRA_EXT_VER' ) ) { - $wp_customize->register_section_type( 'Astra_Pro_Customizer' ); - } - - // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-panel.php'; - require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-section.php'; - require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-separator.php'; - require ASTRA_THEME_DIR . 'inc/customizer/customizer-controls.php'; - // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - - /** - * Add Controls - */ - - Astra_Customizer_Control_Base::add_control( - 'image', - array( - 'callback' => 'WP_Customize_Image_Control', - 'sanitize_callback' => 'esc_url_raw', - ) - ); - - Astra_Customizer_Control_Base::add_control( - 'ast-font', - array( - 'callback' => 'Astra_Control_Typography', - 'sanitize_callback' => 'sanitize_text_field', - ) - ); - - Astra_Customizer_Control_Base::add_control( - 'ast-description', - array( - 'callback' => 'Astra_Control_Description', - 'sanitize_callback' => '', - ) - ); - - Astra_Customizer_Control_Base::add_control( - 'ast-customizer-link', - array( - 'callback' => 'Astra_Control_Customizer_Link', - 'santize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_customizer_links' ), - ) - ); - - /** - * Helper files - */ - // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-partials.php'; - require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-callback.php'; - require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-sanitizes.php'; - // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Add postMessage support for site title and description for the Theme Customizer. - * - * @since 1.0.0 - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - */ - public function customize_register( $wp_customize ) { - - /** - * Override Defaults - */ - require ASTRA_THEME_DIR . 'inc/customizer/override-defaults.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - /** - * Add upgrade link configurations controls. - * - * @since 1.0.0 - * @param WP_Customize_Manager $wp_customize Theme Customizer object. - */ - public function astra_pro_upgrade_configurations( $wp_customize ) { - - if ( ! defined( 'ASTRA_EXT_VER' ) ) { - require ASTRA_THEME_DIR . 'inc/customizer/astra-pro/class-astra-pro-customizer.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - require ASTRA_THEME_DIR . 'inc/customizer/astra-pro/class-astra-pro-upgrade-link-configs.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - } - - /** - * Customizer Controls - * - * @since 1.0.0 - * @return void - */ - public function controls_scripts() { - - $js_prefix = '.min.js'; - $css_prefix = '.min.css'; - $dir = 'minified'; - if ( SCRIPT_DEBUG ) { - $js_prefix = '.js'; - $dir = 'unminified'; - } - - if ( is_rtl() ) { - $css_prefix = '.min-rtl.css'; - } - - wp_enqueue_style( 'wp-components' ); - wp_enqueue_script( 'thickbox' ); - wp_enqueue_style( 'thickbox' ); - - // Customizer Core. - wp_enqueue_script( 'astra-customizer-controls-toggle-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/customizer-controls-toggle' . $js_prefix, array(), ASTRA_THEME_VERSION, true ); - - wp_enqueue_script( 'astra-customizer-controls-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/customizer-controls' . $js_prefix, array( 'astra-customizer-controls-toggle-js' ), ASTRA_THEME_VERSION, true ); - // Extended Customizer Assets - Panel extended. - wp_enqueue_style( 'astra-extend-customizer-css', ASTRA_THEME_URI . 'assets/css/minified/extend-customizer' . $css_prefix, null, ASTRA_THEME_VERSION ); - wp_enqueue_script( 'astra-extend-customizer-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/extend-customizer' . $js_prefix, array(), ASTRA_THEME_VERSION, true ); - - // Customizer Controls. - wp_enqueue_style( 'astra-customizer-controls-css', ASTRA_THEME_URI . 'assets/css/minified/customizer-controls' . $css_prefix, null, ASTRA_THEME_VERSION ); - - $string = $this->generate_font_dropdown(); - - $template = '
-
    -
-
'; - - $sortable_subcontrol_template = '
-
    -
-
'; - - wp_localize_script( - 'astra-customizer-controls-toggle-js', - 'astra', - apply_filters( - 'astra_theme_customizer_js_localize', - array( - 'customizer' => array( - 'settings' => array( - 'sidebars' => array( - 'single' => array( - 'single-post-sidebar-layout', - 'single-page-sidebar-layout', - ), - 'archive' => array( - 'archive-post-sidebar-layout', - ), - ), - 'container' => array( - 'single' => array( - 'single-post-content-layout', - 'single-page-content-layout', - ), - 'archive' => array( - 'archive-post-content-layout', - ), - ), - 'google_fonts' => $string, - ), - 'group_modal_tmpl' => $template, - 'sortable_modal_tmpl' => $sortable_subcontrol_template, - 'is_pro' => defined( 'ASTRA_EXT_VER' ), - 'show_upgrade_notice' => ( astra_showcase_upgrade_notices() ) ? true : false, - 'upgrade_link' => htmlspecialchars_decode( astra_get_pro_url( 'https://wpastra.com/pricing/?utm_source=wp&utm_medium=dashboard/', 'customizer', 'upgrade-link', 'upgrade-to-pro' ) ), - 'is_block_widget' => astra_has_widgets_block_editor(), - ), - 'theme' => array( - 'option' => ASTRA_THEME_SETTINGS, - ), - ) - ) - ); - } - - /** - * Generates HTML for font dropdown. - * - * @return string - */ - public function generate_font_dropdown() { - - ob_start(); - - ?> - - - - - $variants ) { - ?> - - - - - - $single_font ) { - $variants = astra_get_prop( $single_font, '0' ); - $category = astra_get_prop( $single_font, '1' ); - - ?> - - - astra_header_break_point(), - 'includeAnchorsInHeadindsCss' => Astra_Dynamic_CSS::anchors_in_css_selectors_heading(), - 'googleFonts' => Astra_Font_Families::get_google_fonts(), - 'page_builder_button_style_css' => Astra_Dynamic_CSS::page_builder_button_style_css(), - 'elementor_default_color_font_setting' => Astra_Dynamic_CSS::elementor_default_color_font_setting(), - 'dynamic_partial_options' => self::$dynamic_options['partials'], - 'gb_outline_buttons_patterns_support' => Astra_Dynamic_CSS::gutenberg_core_patterns_compat(), - 'font_weights_widget_title_support' => Astra_Dynamic_CSS::support_font_css_to_widget_and_in_editor(), - 'is_content_bg_option_to_load' => astra_has_gcp_typo_preset_compatibility(), - 'content_layout' => $content_layout, - 'site_layout' => astra_get_option( 'site-layout' ), - 'has_block_editor_support' => Astra_Dynamic_CSS::is_block_editor_support_enabled(), - 'updated_gb_outline_button_patterns' => astra_button_default_padding_updated(), - 'apply_content_bg_fullwidth_layouts' => astra_get_option( 'apply-content-background-fullwidth-layouts', true ), - 'astra_woo_btn_global_compatibility' => is_callable( 'Astra_Dynamic_CSS::astra_woo_support_global_settings' ) ? Astra_Dynamic_CSS::astra_woo_support_global_settings() : false, - 'v4_2_2_core_form_btns_styling' => ( true === Astra_Dynamic_CSS::astra_core_form_btns_styling() ) ? ', #comments .submit, .search .search-submit' : '', - 'tablet_breakpoint' => astra_get_tablet_breakpoint(), - 'mobile_breakpoint' => astra_get_mobile_breakpoint(), - ); - - wp_localize_script( 'astra-customizer-preview-js', 'astraCustomizer', $localize_array ); - } - - /** - * Called by the customize_save_after action to refresh - * the cached CSS when Customizer settings are saved. - * - * @since 1.0.0 - * @return void - */ - public function customize_save() { - - // Update variables. - Astra_Theme_Options::refresh(); - - if ( apply_filters( 'astra_resize_logo', true ) ) { - - /* Generate Header Logo */ - $custom_logo_id = get_theme_mod( 'custom_logo' ); - - add_filter( 'intermediate_image_sizes_advanced', 'Astra_Customizer::logo_image_sizes', 10, 2 ); - self::generate_logo_by_width( $custom_logo_id ); - remove_filter( 'intermediate_image_sizes_advanced', 'Astra_Customizer::logo_image_sizes', 10 ); - - } else { - // Regenerate the logo without custom image sizes. - $custom_logo_id = get_theme_mod( 'custom_logo' ); - self::generate_logo_by_width( $custom_logo_id ); - } - - do_action( 'astra_customizer_save' ); - - } - - /** - * Add logo image sizes in filter. - * - * @since 1.0.0 - * @param array $sizes Sizes. - * @param array $metadata attachment data. - * - * @return array - */ - public static function logo_image_sizes( $sizes, $metadata ) { - - $logo_width = astra_get_option( 'ast-header-responsive-logo-width' ); - - if ( is_array( $sizes ) && '' != $logo_width['desktop'] ) { - $max_value = max( $logo_width ); - $sizes['ast-logo-size'] = array( - 'width' => (int) $max_value, - 'height' => 0, - 'crop' => false, - ); - } - - return $sizes; - } - - /** - * Generate logo image by its width. - * - * @since 1.0.0 - * @param int $custom_logo_id Logo id. - */ - public static function generate_logo_by_width( $custom_logo_id ) { - if ( $custom_logo_id ) { - - $image = get_post( $custom_logo_id ); - - if ( $image ) { - $fullsizepath = get_attached_file( $image->ID ); - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( false !== $fullsizepath || file_exists( $fullsizepath ) ) { - - if ( ! function_exists( 'wp_generate_attachment_metadata' ) ) { - require_once ABSPATH . 'wp-admin/includes/image.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound - } - - $metadata = wp_generate_attachment_metadata( $image->ID, $fullsizepath ); - - if ( ! is_wp_error( $metadata ) && ! empty( $metadata ) ) { - wp_update_attachment_metadata( $image->ID, $metadata ); - } - } - } - } - } - - /** - * Customizer Preview icon CSS - * - * @since 1.0.0 - * @return void - */ - public function preview_styles() { - if ( is_customize_preview() ) { - echo ''; - echo ''; - } - } - } -} - -/** - * Kicking this off by calling 'get_instance()' method - */ -Astra_Customizer::get_instance(); +' ) && is_customize_preview() ) { + add_filter( 'gutenberg_use_widgets_block_editor', '__return_false' ); + } + + add_action( 'customize_controls_enqueue_scripts', array( $this, 'controls_scripts' ) ); + add_action( 'customize_controls_enqueue_scripts', array( $this, 'enqueue_customizer_scripts' ), 999 ); + + add_action( 'customize_controls_print_footer_scripts', array( $this, 'print_footer_scripts' ) ); + + add_action( 'customize_register', array( $this, 'customize_register_panel' ), 2 ); + add_action( 'customize_register', array( $this, 'customize_register' ) ); + add_action( 'customize_register', array( $this, 'customize_register_site_icon' ), 20 ); + add_action( 'customize_save_after', array( $this, 'customize_save' ) ); + add_action( 'customize_save_after', array( $this, 'delete_cached_partials' ) ); + add_action( 'wp_head', array( $this, 'preview_styles' ) ); + add_action( 'wp_ajax_astra_regenerate_fonts_folder', array( $this, 'regenerate_astra_fonts_folder' ) ); + } + + /** + * Add site icon control in the site identity panel. + * + * @access public + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + * @return void + * + * @since 3.6.9 + */ + public function customize_register_site_icon( $wp_customize ) { + + /** @psalm-suppress RedundantConditionGivenDocblockType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( true !== Astra_Builder_Helper::$is_header_footer_builder_active ) { + /** @psalm-suppress RedundantConditionGivenDocblockType */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + return; + } + + $panel_arr = array( + 'priority' => 80, + 'capability' => 'edit_theme_options', + 'theme_supports' => '', + 'title' => __( 'Site Identity', 'astra' ), + 'description' => '', + ); + // Register panel. + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $wp_customize->add_panel( 'astra-site-identity', $panel_arr ); + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + $section_arr = array( + 'priority' => 80, + 'capability' => 'edit_theme_options', + 'theme_supports' => '', + 'title' => __( 'Site Identity', 'astra' ), + 'description' => '', + ); + + // Register Section. + $wp_customize->add_section( 'astra-site-identity', $section_arr ); + + /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $wp_customize->get_control( 'site_icon' )->section = 'astra-site-identity'; + /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + + /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $wp_customize->get_control( 'site_icon' )->description = __( 'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. Upload one here! Site Icons should be square and at least 512 × 512 pixels.', 'astra' ); + /** @psalm-suppress PossiblyNullPropertyAssignment */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + } + + /** + * Reset font folder + * + * @access public + * @return void + * + * @since 3.6.0 + */ + public function regenerate_astra_fonts_folder() { + check_ajax_referer( 'astra_update_admin_setting', 'security' ); + + if ( ! current_user_can( 'edit_theme_options' ) ) { + wp_send_json_error( 'invalid_permissions' ); + } + + if ( Astra_API_Init::get_admin_settings_option( 'self_hosted_gfonts', false ) ) { + $local_font_loader = astra_webfont_loader_instance( '' ); + $flushed = $local_font_loader->astra_delete_fonts_folder(); + + if ( ! $flushed ) { + $response_data = array( 'message' => __( 'Failed to Flush, try again later.', 'astra' ) ); + wp_send_json_error( $response_data ); + } + wp_send_json_success(); + } + + $response_data = array( 'message' => __( 'Local font files not present.', 'astra' ) ); + wp_send_json_error( $response_data ); + } + + /** + * Delete the cached partial configs. + */ + public function delete_cached_partials() { + delete_option( 'astra_partials_config_cache' ); + + // Delete previously stored local fonts data, if exists. + if ( Astra_API_Init::get_admin_settings_option( 'self_hosted_gfonts', false ) ) { + $local_webfont_loader = astra_webfont_loader_instance( '' ); + $local_webfont_loader->astra_delete_fonts_folder(); + } + } + + /** + * Add dynamic control partial refresh. + * + * @since 3.1.0 + * @param array $partial_args partial configs. + * @param string $partial_id partial id. + * @return array|mixed + */ + public function filter_dynamic_partial_args( $partial_args, $partial_id ) { + + if ( isset( self::$dynamic_options['partials'][ $partial_id ] ) ) { + if ( false === $partial_args ) { + $partial_args = array(); + } + $partial_args = array_merge( $partial_args, self::$dynamic_options['partials'][ $partial_id ] ); + } + + return $partial_args; + } + + /** + * Add dynamic control settings. + * + * @since 3.1.0 + * @param array $setting_args setting configs. + * @param string $setting_id setting id. + * @return mixed + */ + public function filter_dynamic_setting_args( $setting_args, $setting_id ) { + + if ( isset( self::$dynamic_options['settings'][ $setting_id ] ) ) { + return self::$dynamic_options['settings'][ $setting_id ]; + } + + return $setting_args; + } + + /** + * Prepare Contexts and choices. + * + * @since 3.0.0 + */ + public function prepare_customizer_javascript_configs() { + + global $wp_customize; + + $cached_data = get_option( 'astra_partials_config_cache', false ); + + if ( $wp_customize->selective_refresh->is_render_partials_request() && $cached_data ) { + self::$dynamic_options = $cached_data; + return; + } + + $configurations = $this->get_customizer_configurations(); + + $defaults = $this->get_astra_customizer_configuration_defaults(); + + foreach ( $configurations as $key => $configuration ) { + + $config = wp_parse_args( $configuration, $defaults ); + + if ( isset( $configuration['context'] ) ) { + self::$contexts[ $configuration['name'] ] = $configuration['context']; + } else { + if ( isset( $configuration['type'] ) && ( ( 'control' === $configuration['type'] ) || ( 'sub-control' === $configuration['type'] ) ) ) { + if ( ( isset( $configuration['control'] ) && 'ast-builder-header-control' !== $configuration['control'] ) && ( isset( $configuration['name'] ) && strpos( $configuration['name'], 'ast-callback-notice' ) === false ) ) { + self::$contexts[ $configuration['name'] ] = Astra_Builder_Helper::$general_tab; + } + } + } + + if ( isset( $configuration['choices'] ) ) { + self::$choices[ $configuration['name'] ] = $configuration['choices']; + } + + switch ( $config['type'] ) { + + case 'panel': + $this->prepare_javascript_panel_configs( $config ); + break; + case 'section': + $this->prepare_javascript_section_configs( $config ); + break; + + case 'sub-control': + $this->prepare_javascript_sub_control_configs( $config ); + break; + case 'control': + $this->prepare_javascript_control_configs( $config ); + break; + } + } + + update_option( 'astra_partials_config_cache', self::$dynamic_options, false ); + + } + + /** + * Get control default. + * + * @param string $setting_key setting key. + * @param array $default_values default value array. + * @return mixed|string + */ + private function get_default_value( $setting_key, $default_values ) { + $return = ''; + preg_match( '#astra-settings\[(.*?)\]#', $setting_key, $match ); + if ( ! empty( $match ) && isset( $match[1] ) ) { + $return = isset( $default_values[ $match[1] ] ) ? $default_values[ $match[1] ] : ''; + } + return $return; + } + + /** + * Prepare tabbed sections for dynamic controls to optimize frontend JS calls. + */ + private static function prepare_tabbed_sections() { + + if ( ! isset( self::$js_configs['controls'] ) ) { + return; + } + + foreach ( self::$js_configs['controls'] as $section_id => $controls ) { + $tab_id = $section_id . '-ast-context-tabs'; + $control_names = wp_list_pluck( $controls, 'name' ); + if ( in_array( $tab_id, $control_names, true ) ) { + array_push( self::$tabbed_sections, $section_id ); + } + } + + } + + /** + * Print Footer Scripts + * + * @since 1.0.0 + * @return void + */ + public function print_footer_scripts() { + $output = ''; + + echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } + + /** + * Set default context for WP default controls. + */ + private static function set_default_context() { + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + return; + } + + self::$contexts['blogname'] = array( + Astra_Builder_Helper::$general_tab_config, + + ); + + self::$contexts['blogdescription'] = array( + Astra_Builder_Helper::$general_tab_config, + + ); + + } + + /** + * Bypass JS configs for Controls. + * + * @param array $configuration configuration. + */ + public static function bypass_control_configs( $configuration ) { + + $val = ''; + + if ( isset( $configuration['name'] ) ) { + + $data = explode( '[', rtrim( $configuration['name'], ']' ) ); + + if ( isset( $data[1] ) ) { + $val = astra_get_option( $data[1] ); + } + } + + if ( isset( $val ) && ! empty( $val ) ) { + + $configuration['value'] = $val; + } + + switch ( $configuration['type'] ) { + + case 'ast-builder': + if ( is_array( $configuration['default'] ) && ! isset( $configuration['default']['popup'] ) ) { + $configuration['default']['popup'] = array( 'popup_content' => array() ); + } + break; + case 'ast-responsive-spacing': + if ( ! is_array( $val ) || is_numeric( $val ) ) { + + $configuration['value'] = array( + 'desktop' => array( + 'top' => $val, + 'right' => '', + 'bottom' => $val, + 'left' => '', + ), + 'tablet' => array( + 'top' => $val, + 'right' => '', + 'bottom' => $val, + 'left' => '', + ), + 'mobile' => array( + 'top' => $val, + 'right' => '', + 'bottom' => $val, + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + } + + break; + case 'ast-radio-image': + $configuration['value'] = $val; + + if ( isset( $configuration['choices'] ) && is_array( $configuration['choices'] ) ) { + + foreach ( $configuration['choices'] as $key => $value ) { + $configuration['choices'][ $key ] = $value['path']; + $configuration['choices_titles'][ $key ] = $value['label']; + $configuration['choices_upgrade'][ $key ] = isset( $value['is_pro'] ) ? $value['is_pro'] : false; + } + } + if ( isset( $configuration['inputAttrs'] ) ) { + + $configuration['inputAttrs'] = ''; + $configuration['labelStyle'] = ''; + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + foreach ( $configuration['input_attrs'] as $attr => $value ) { + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( 'style' !== $attr ) { + $configuration['inputAttrs'] .= $attr . '="' . esc_attr( $value ) . '" '; + } else { + $configuration['labelStyle'] = 'style="' . esc_attr( $value ) . '" '; + } + } + } + break; + case 'ast-border': + $configuration['value'] = $val; + break; + case 'ast-section-toggle': + $configuration['value'] = $val; + break; + case 'ast-responsive-slider': + if ( ! is_array( $val ) || is_numeric( $val ) ) { + + $configuration['value'] = array( + 'desktop' => $val, + 'tablet' => '', + 'mobile' => '', + ); + } + break; + case 'ast-responsive-background': + $configuration['value'] = $val; + + break; + case 'ast-link': + $configuration['value'] = $val; + + break; + case 'ast-hidden': + $configuration['value'] = $val; + + break; + case 'ast-settings-group': + $config = array(); + + if ( isset( self::$group_configs[ $configuration['name'] ]['tabs'] ) ) { + $tab = array_keys( self::$group_configs[ $configuration['name'] ]['tabs'] ); + rsort( $tab ); + foreach ( $tab as $key => $value ) { + + $config['tabs'][ $value ] = wp_list_sort( self::$group_configs[ $configuration['name'] ]['tabs'][ $value ], 'priority' ); + } + } else { + if ( isset( self::$group_configs[ $configuration['name'] ] ) ) { + $config = wp_list_sort( self::$group_configs[ $configuration['name'] ], 'priority' ); + } + } + $configuration['ast_fields'] = $config; + break; + case 'ast-font-weight': + $configuration['ast_all_font_weight'] = array( + '100' => __( 'Thin 100', 'astra' ), + '100italic' => __( '100 Italic', 'astra' ), + '200' => __( 'Extra-Light 200', 'astra' ), + '200italic' => __( '200 Italic', 'astra' ), + '300' => __( 'Light 300', 'astra' ), + '300italic' => __( '300 Italic', 'astra' ), + '400' => __( 'Normal 400', 'astra' ), + 'normal' => __( 'Normal 400', 'astra' ), + 'italic' => __( '400 Italic', 'astra' ), + '500' => __( 'Medium 500', 'astra' ), + '500italic' => __( '500 Italic', 'astra' ), + '600' => __( 'Semi-Bold 600', 'astra' ), + '600italic' => __( '600 Italic', 'astra' ), + '700' => __( 'Bold 700', 'astra' ), + '700italic' => __( '700 Italic', 'astra' ), + '800' => __( 'Extra-Bold 800', 'astra' ), + '800italic' => __( '800 Italic', 'astra' ), + '900' => __( 'Ultra-Bold 900', 'astra' ), + '900italic' => __( '900 Italic', 'astra' ), + ); + break; + case 'ast-sortable': + $configuration['value'] = $val; + + if ( isset( self::$group_configs[ $configuration['name'] ] ) ) { + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $config = wp_list_sort( self::$group_configs[ $configuration['name'] ], 'priority' ); + /** @psalm-suppress PossiblyUndefinedStringArrayOffset */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $configuration['ast_fields'] = $config; + } + + break; + + case 'ast-font-variant': + $configuration['value'] = $val; + break; + + case 'ast-select-multi': + $configuration['value'] = $val; + break; + + } // Switch End. + + if ( isset( $configuration['id'] ) ) { + + $configuration['link'] = self::get_control_link( $configuration['id'] ); + } + $exclude_controls = array( 'ast-builder', 'ast-radio-image' ); + + if ( isset( $configuration['type'] ) && ! in_array( $configuration['type'], $exclude_controls ) && isset( $configuration['input_attrs'] ) && is_array( $configuration['input_attrs'] ) ) { + + $configuration['inputAttrs'] = ''; + + foreach ( $configuration['input_attrs'] as $attr => $value ) { + + if ( ! is_array( $value ) ) { + + $configuration['inputAttrs'] .= $attr . '="' . esc_attr( $value ) . '" '; + } + } + } + + return $configuration; + } + + /** + * Prepare Panel Configs for Javascript. + * + * @since 3.0.0 + * @param array $config configs. + */ + public function prepare_javascript_panel_configs( $config ) { + + $panel_name = astra_get_prop( $config, 'name' ); + + unset( $config['type'] ); + $config['type'] = 'ast_panel'; + $config['active'] = true; + $config['id'] = $panel_name; + self::$js_configs['panels'][ $panel_name ] = $config; + } + + /** + * Prepare Section Configs for Javascript. + * + * @since 3.0.0 + * @param array $config configs. + */ + public function prepare_javascript_section_configs( $config ) { + + $section_name = astra_get_prop( $config, 'name' ); + + unset( $config['type'] ); + $config['type'] = isset( $config['ast_type'] ) ? $config['ast_type'] : 'ast_section'; + $config['active'] = true; + $config['id'] = $section_name; + $config['customizeAction'] = sprintf( __( 'Customizing ▸ %s', 'astra' ), astra_get_prop( $config, 'title' ) ); + + if ( isset( $config['clone_type'] ) && isset( $config['clone_index'] ) ) { + + if ( isset( Astra_Builder_Helper::$component_count_array[ $config['clone_type'] ] ) ) { + if ( in_array( $section_name, Astra_Builder_Helper::$component_count_array['removed-items'], true ) || Astra_Builder_Helper::$component_count_array[ $config['clone_type'] ] < $config['clone_index'] ) { + self::$js_configs['clone_sections'][ $section_name ] = $config; + } else { + self::$js_configs['sections'][ $section_name ] = $config; + } + } + } else { + self::$js_configs['sections'][ $section_name ] = $config; + } + } + + /** + * Prepare Sub Control Configs for Javascript. + * + * @since 3.0.0 + * @param array $config configs. + */ + public function prepare_javascript_sub_control_configs( $config ) { + + unset( $config['type'] ); + + $name = astra_get_prop( $config, 'name' ); + $parent = astra_get_prop( $config, 'parent' ); + $sub_control_name = ASTRA_THEME_SETTINGS . '[' . $name . ']'; + + $ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider', 'ast-section-toggle' ); + + $sanitize_callback = ( in_array( $config['control'], $ignore_controls, true ) ) ? false : astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ); + + if ( ! $sanitize_callback ) { + $config = $this->sanitize_control( $config ); + } + + $new_config = array( + 'name' => $sub_control_name, + 'datastore_type' => 'option', + 'transport' => 'postMessage', + 'control' => 'ast-hidden', + 'section' => astra_get_prop( $config, 'section', 'title_tagline' ), + 'title' => astra_get_prop( $config, 'title' ), + 'priority' => astra_get_prop( $config, 'priority', '10' ), + 'default' => astra_get_prop( $config, 'default' ), + 'sanitize_callback' => $sanitize_callback, + 'suffix' => astra_get_prop( $config, 'suffix' ), + 'control_type' => astra_get_prop( $config, 'control' ), + 'linked' => astra_get_prop( $config, 'linked' ), + 'variant' => astra_get_prop( $config, 'variant' ), + 'help' => astra_get_prop( $config, 'help' ), + 'description' => astra_get_prop( $config, 'description' ), + 'input_attrs' => astra_get_prop( $config, 'input_attrs' ), + 'disable' => astra_get_prop( $config, 'disable' ), + ); + + self::$dynamic_options['settings'][ astra_get_prop( $new_config, 'name' ) ] = array( + 'default' => astra_get_prop( $new_config, 'default' ), + 'type' => astra_get_prop( $new_config, 'datastore_type' ), + 'transport' => astra_get_prop( $new_config, 'transport', 'refresh' ), + 'sanitize_callback' => astra_get_prop( $new_config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $new_config, 'control' ) ) ), + ); + + $new_config['type'] = astra_get_prop( $new_config, 'control' ); + $new_config['id'] = astra_get_prop( $new_config, 'name' ); + $new_config['settings'] = array( 'default' => astra_get_prop( $new_config, 'name' ) ); + $new_config = self::bypass_control_configs( $new_config ); + self::$js_configs ['sub_controls'] [ $parent ] [] = $new_config; + + // Keep contextual sub controls aside to process initially in customizer.js. + if ( isset( $config['contextual_sub_control'] ) ) { + self::$js_configs ['contextual_sub_controls'] [ $name ] = $new_config; + } + } + + /** + * Get the Link for Control. + * + * @since 3.0.0 + * @param array $id Control ID. + */ + public static function get_control_link( $id ) { + if ( isset( $id ) ) { + return 'data-customize-setting-link="' . $id . '"'; + } else { + return 'data-customize-setting-key-link="default"'; + } + } + + /** + * Prepare Control Configs for Javascript. + * + * @since 3.0.0 + * @param array $config configs. + */ + public function prepare_javascript_control_configs( $config ) { + + // Remove type from configuration. + unset( $config['type'] ); + $name = astra_get_prop( $config, 'name' ); + + $ignore_controls = array( 'ast-settings-group', 'ast-sortable', 'ast-radio-image', 'ast-slider', 'ast-responsive-slider', 'ast-section-toggle' ); + + if ( ! isset( $config['control'] ) ) { + return; + } + + $sanitize_callback = ( in_array( $config['control'], $ignore_controls, true ) ) ? false : astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ); + + + if ( ! $sanitize_callback ) { + $config = $this->sanitize_control( $config ); + } + + $config['label'] = astra_get_prop( $config, 'title' ); + $config['type'] = astra_get_prop( $config, 'control' ); + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( false !== astra_get_prop( $config, 'font-type', false ) ) { + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $config['type'] = astra_get_prop( $config, 'font-type', false ); + } + + if ( 'image' === $config['type'] ) { + $this->prepare_preload_controls( $config ); + } + + if ( isset( $config['active_callback'] ) ) { + self::$js_configs ['skip_context'] [] = $name; + $this->prepare_preload_controls( $config ); + return; + } + + self::$dynamic_options['settings'][ $name ] = array( + 'default' => astra_get_prop( $config, 'default' ), + 'type' => astra_get_prop( $config, 'datastore_type' ), + 'transport' => astra_get_prop( $config, 'transport', 'refresh' ), + 'sanitize_callback' => $sanitize_callback, + ); + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( astra_get_prop( $config, 'partial', false ) ) { + self::$dynamic_options['partials'][ $name ] = array( + 'selector' => astra_get_prop( $config['partial'], 'selector' ), + 'render_callback' => astra_get_prop( $config['partial'], 'render_callback' ), + 'containerInclusive' => astra_get_prop( $config['partial'], 'container_inclusive' ), + 'fallbackRefresh' => astra_get_prop( $config['partial'], 'fallback_refresh', true ), + ); + } + + $config['id'] = $name; + $config['settings'] = array( 'default' => $name ); + $config = self::bypass_control_configs( $config ); + + if ( isset( $config['section'] ) ) { + self::$js_configs ['controls'] [ $config['section'] ] [] = $config; + } + + // Keep contextual sub controls aside to process initially in customizer.js. + if ( isset( $config['contextual_sub_control'] ) ) { + self::$js_configs ['contextual_sub_controls'] [ $name ] = $config; + } + } + + /** + * Map and add sanitize callback to JS configs. + * + * @param array $config js config array. + * @return mixed + */ + public function sanitize_control( $config ) { + + $control_type = isset( $config['control'] ) ? $config['control'] : ''; + switch ( $control_type ) { + case 'color': + $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_hex_color' ); + break; + case 'ast-border': + $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_border' ); + break; + case 'ast-html-editor': + $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_html' ); + break; + case 'ast-color': + $config['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ); + break; + case 'ast-sortable': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ); + break; + case 'ast-radio-image': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_choices' ); + break; + case 'ast-link': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_link' ); + break; + case 'ast-customizer-link': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_customizer_links' ); + break; + case 'ast-responsive-slider': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ); + break; + case 'ast-toggle-control': + case 'ast-section-toggle': + $config ['sanitize_callback'] = array( 'Astra_Customizer_Sanitizes', 'sanitize_toggle_control' ); + break; + default: + break; + } + + return $config; + + } + + /** + * Add controls for which active_callback is added. + * + * @since 3.0.0 + * @param array $config config. + */ + public function prepare_preload_controls( $config ) { + + global $wp_customize; + + $instance = Astra_Customizer_Control_Base::get_control_instance( astra_get_prop( $config, 'control' ) ); + + // Forwarding to the DOM as default control. + if ( 'title_tagline' !== $config['section'] ) { + self::$js_configs ['wp_defaults'][ astra_get_prop( $config, 'name' ) ] = $config['section']; + $config['section'] = 'title_tagline'; + } + + $wp_customize->add_setting( + astra_get_prop( $config, 'name' ), + array( + 'default' => astra_get_prop( $config, 'default' ), + 'type' => astra_get_prop( $config, 'datastore_type' ), + 'transport' => astra_get_prop( $config, 'transport', 'refresh' ), + 'sanitize_callback' => astra_get_prop( $config, 'sanitize_callback', Astra_Customizer_Control_Base::get_sanitize_call( astra_get_prop( $config, 'control' ) ) ), + ) + ); + + if ( false !== $instance ) { + $wp_customize->add_control( + new $instance( $wp_customize, astra_get_prop( $config, 'name' ), $config ) + ); + } else { + $wp_customize->add_control( astra_get_prop( $config, 'name' ), $config ); + } + } + + /** + * Prepare Group configs to visible sub-controls. + * + * @since 3.0.0 + * @param object $wp_customize customizer object. + */ + public function prepare_group_configs( $wp_customize ) { + + if ( $wp_customize->selective_refresh->is_render_partials_request() ) { + return; + } + + $configurations = $this->get_customizer_configurations(); + $defaults = $this->get_astra_customizer_configuration_defaults(); + + foreach ( $configurations as $key => $configuration ) { + $config = wp_parse_args( $configuration, $defaults ); + if ( 'sub-control' === $config['type'] ) { + unset( $config['type'] ); + $parent = astra_get_prop( $config, 'parent' ); + $tab = astra_get_prop( $config, 'tab' ); + + if ( empty( self::$group_configs[ $parent ] ) ) { + self::$group_configs[ $parent ] = array(); + } + + if ( array_key_exists( 'tab', $config ) ) { + self::$group_configs[ $parent ]['tabs'][ $tab ][] = $config; + } else { + self::$group_configs[ $parent ][] = $config; + } + } + } + } + + /** + * Prepare context. + * + * @return mixed|void + */ + public static function get_contexts() { + + self::set_default_context(); + // Return contexts. + return apply_filters( 'astra_customizer_context', self::$contexts ); + } + + /** + * Prepare choices. + * + * @return mixed|void + */ + public static function get_choices() { + // Return contexts. + return apply_filters( 'astra_customizer_choices', self::$choices ); + } + + /** + * Prepare javascript configs. + * + * @return mixed|void + */ + public static function get_js_configs() { + + // Return contexts. + return apply_filters( 'astra_javascript_configurations', self::$js_configs ); + } + + /** + * Prepare tabbed sections. + * + * @return mixed|void + */ + public static function get_tabbed_sections() { + + self::prepare_tabbed_sections(); + // Return contexts. + return apply_filters( 'astra_customizer_tabbed_sections', self::$tabbed_sections ); + } + + /** + * Prepare default values for the control. + * + * @return array + */ + private function get_control_defaults() { + + $defaults = array(); + $default_values = Astra_Theme_Options::defaults(); + $default_controls = array_merge( self::$js_configs['controls'], self::$js_configs['sub_controls'] ); + + foreach ( $default_controls as $section_controls ) { + foreach ( $section_controls as $control ) { + $control_id = astra_get_prop( $control, 'name' ); + if ( 'ast-responsive-spacing' === $control['control'] ) { + $defaults[ $control_id ] = array( + 'desktop' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ); + } else { + $defaults[ $control_id ] = $this->get_default_value( $control_id, $default_values ); + } + } + } + + return $defaults; + + } + + /** + * Add customizer script. + * + * @since 3.0.0 + */ + public function enqueue_customizer_scripts() { + // Localize variables for Dev mode > Customizer JS. + wp_localize_script( + 'astra-custom-control-script', + 'AstraBuilderCustomizerData', + array( + 'contexts' => self::get_contexts(), + 'dynamic_setting_options' => self::$dynamic_options['settings'], + 'choices' => self::get_choices(), + 'js_configs' => self::get_js_configs(), + 'tabbed_sections' => self::get_tabbed_sections(), + 'component_limit' => Astra_Builder_Helper::$component_limit, + 'is_site_rtl' => is_rtl(), + 'defaults' => $this->get_control_defaults(), + 'isWP_5_9' => astra_wp_version_compare( '5.8.99', '>=' ), + 'googleFonts' => Astra_Font_Families::get_google_fonts(), + 'variantLabels' => Astra_Font_Families::font_variant_labels(), + 'upgradeUrl' => ASTRA_PRO_CUSTOMIZER_UPGRADE_URL, + ) + ); + + if ( is_rtl() ) { + $builder_customizer_css_file = 'ast-builder-customizer-rtl'; + $font_icon_picker_css_file = 'font-icon-picker-rtl'; + } else { + $builder_customizer_css_file = 'ast-builder-customizer'; + $font_icon_picker_css_file = 'font-icon-picker'; + } + + // Enqueue Builder CSS. + wp_enqueue_style( + 'ahfb-customizer-style', + ASTRA_THEME_URI . 'inc/assets/css/' . $builder_customizer_css_file . '.css', + array( 'wp-components' ), + ASTRA_THEME_VERSION + ); + + wp_enqueue_style( + 'ahfb-customizer-color-picker-style', + ASTRA_THEME_URI . 'inc/assets/css/' . $font_icon_picker_css_file . '.css', + array( 'wp-components' ), + ASTRA_THEME_VERSION + ); + } + + /** + * Check if string is start with a string provided. + * + * @param string $string main string. + * @param string $start_string string to search. + * @since 2.0.0 + * @return bool. + */ + public function starts_with( $string, $start_string ) { + $len = strlen( $start_string ); + return ( substr( $string, 0, $len ) === $start_string ); + } + + /** + * Filter and return Customizer Configurations. + * + * @since 1.4.3 + * @return Array Customizer Configurations for registering Sections/Panels/Controls. + */ + private function get_customizer_configurations() { + + global $wp_customize; + + if ( ! is_null( self::$configuration ) ) { + return self::$configuration; + } + + self::$configuration = apply_filters( 'astra_customizer_configurations', array(), $wp_customize ); + return self::$configuration; + } + + /** + * Return default values for the Customize Configurations. + * + * @since 1.4.3 + * @return Array default values for the Customizer Configurations. + */ + private function get_astra_customizer_configuration_defaults() { + return apply_filters( + 'astra_customizer_configuration_defaults', + array( + 'priority' => null, + 'title' => null, + 'label' => null, + 'name' => null, + 'type' => null, + 'description' => null, + 'capability' => null, + 'datastore_type' => 'option', // theme_mod or option. Default option. + 'settings' => null, + 'active_callback' => null, + 'sanitize_callback' => null, + 'sanitize_js_callback' => null, + 'theme_supports' => null, + 'transport' => null, + 'default' => null, + 'selector' => null, + 'ast_fields' => array(), + ) + ); + } + + /** + * Include Customizer Configuration files. + * + * @since 1.4.3 + * @return void + */ + public function include_configurations() { + // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + require ASTRA_THEME_DIR . 'inc/customizer/configurations/class-astra-customizer-config-base.php'; + + /** + * Register Sections & Panels + */ + require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-register-sections-panels.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-identity-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-blog-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-site-container-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-body-colors-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-archive-typo-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-body-typo-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/block-editor/class-astra-block-editor-configs.php'; + + if( astra_has_gcp_typo_preset_compatibility() ) { + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-headings-typo-configs.php'; + } else { + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-content-typo-configs.php'; + } + + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-header-typo-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-single-typo-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/typography/class-astra-global-typo-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/global-misc/class-astra-global-misc-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/accessibility/class-astra-accessibility-configs.php'; + + if ( astra_existing_header_footer_configs() ) { + require ASTRA_THEME_DIR . 'inc/customizer/configurations/buttons/class-astra-existing-button-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-header-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/layout/class-astra-footer-layout-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-advanced-footer-colors-configs.php'; + require ASTRA_THEME_DIR . 'inc/customizer/configurations/colors-background/class-astra-footer-colors-configs.php'; + } + // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Register custom section and panel. + * + * @since 1.0.0 + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + */ + public function customize_register_panel( $wp_customize ) { + + /** + * Register Extended Panel + */ + $wp_customize->register_panel_type( 'Astra_WP_Customize_Panel' ); + $wp_customize->register_section_type( 'Astra_WP_Customize_Section' ); + $wp_customize->register_section_type( 'Astra_WP_Customize_Separator' ); + + if ( ! defined( 'ASTRA_EXT_VER' ) ) { + $wp_customize->register_section_type( 'Astra_Pro_Customizer' ); + } + + // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-panel.php'; + require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-section.php'; + require ASTRA_THEME_DIR . 'inc/customizer/extend-customizer/class-astra-wp-customize-separator.php'; + require ASTRA_THEME_DIR . 'inc/customizer/customizer-controls.php'; + // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + + /** + * Add Controls + */ + + Astra_Customizer_Control_Base::add_control( + 'image', + array( + 'callback' => 'WP_Customize_Image_Control', + 'sanitize_callback' => 'esc_url_raw', + ) + ); + + Astra_Customizer_Control_Base::add_control( + 'ast-font', + array( + 'callback' => 'Astra_Control_Typography', + 'sanitize_callback' => 'sanitize_text_field', + ) + ); + + Astra_Customizer_Control_Base::add_control( + 'ast-description', + array( + 'callback' => 'Astra_Control_Description', + 'sanitize_callback' => '', + ) + ); + + Astra_Customizer_Control_Base::add_control( + 'ast-customizer-link', + array( + 'callback' => 'Astra_Control_Customizer_Link', + 'santize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_customizer_links' ), + ) + ); + + /** + * Helper files + */ + // @codingStandardsIgnoreStart WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-partials.php'; + require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-callback.php'; + require ASTRA_THEME_DIR . 'inc/customizer/class-astra-customizer-sanitizes.php'; + // @codingStandardsIgnoreEnd WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Add postMessage support for site title and description for the Theme Customizer. + * + * @since 1.0.0 + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + */ + public function customize_register( $wp_customize ) { + + /** + * Override Defaults + */ + require ASTRA_THEME_DIR . 'inc/customizer/override-defaults.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + /** + * Add upgrade link configurations controls. + * + * @since 1.0.0 + * @param WP_Customize_Manager $wp_customize Theme Customizer object. + */ + public function astra_pro_upgrade_configurations( $wp_customize ) { + + if ( ! defined( 'ASTRA_EXT_VER' ) ) { + require ASTRA_THEME_DIR . 'inc/customizer/astra-pro/class-astra-pro-customizer.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + require ASTRA_THEME_DIR . 'inc/customizer/astra-pro/class-astra-pro-upgrade-link-configs.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + } + + /** + * Customizer Controls + * + * @since 1.0.0 + * @return void + */ + public function controls_scripts() { + + $js_prefix = '.min.js'; + $css_prefix = '.min.css'; + $dir = 'minified'; + if ( SCRIPT_DEBUG ) { + $js_prefix = '.js'; + $dir = 'unminified'; + } + + if ( is_rtl() ) { + $css_prefix = '.min-rtl.css'; + } + + wp_enqueue_style( 'wp-components' ); + wp_enqueue_script( 'thickbox' ); + wp_enqueue_style( 'thickbox' ); + + // Customizer Core. + wp_enqueue_script( 'astra-customizer-controls-toggle-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/customizer-controls-toggle' . $js_prefix, array(), ASTRA_THEME_VERSION, true ); + + wp_enqueue_script( 'astra-customizer-controls-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/customizer-controls' . $js_prefix, array( 'astra-customizer-controls-toggle-js' ), ASTRA_THEME_VERSION, true ); + // Extended Customizer Assets - Panel extended. + wp_enqueue_style( 'astra-extend-customizer-css', ASTRA_THEME_URI . 'assets/css/minified/extend-customizer' . $css_prefix, null, ASTRA_THEME_VERSION ); + wp_enqueue_script( 'astra-extend-customizer-js', ASTRA_THEME_URI . 'assets/js/' . $dir . '/extend-customizer' . $js_prefix, array(), ASTRA_THEME_VERSION, true ); + + // Customizer Controls. + wp_enqueue_style( 'astra-customizer-controls-css', ASTRA_THEME_URI . 'assets/css/minified/customizer-controls' . $css_prefix, null, ASTRA_THEME_VERSION ); + + $string = $this->generate_font_dropdown(); + + $template = '
+
    +
+
'; + + $sortable_subcontrol_template = '
+
    +
+
'; + + wp_localize_script( + 'astra-customizer-controls-toggle-js', + 'astra', + apply_filters( + 'astra_theme_customizer_js_localize', + array( + 'customizer' => array( + 'settings' => array( + 'sidebars' => array( + 'single' => array( + 'single-post-sidebar-layout', + 'single-page-sidebar-layout', + ), + 'archive' => array( + 'archive-post-sidebar-layout', + ), + ), + 'container' => array( + 'single' => array( + 'single-post-content-layout', + 'single-page-content-layout', + ), + 'archive' => array( + 'archive-post-content-layout', + ), + ), + 'google_fonts' => $string, + ), + 'group_modal_tmpl' => $template, + 'sortable_modal_tmpl' => $sortable_subcontrol_template, + 'is_pro' => defined( 'ASTRA_EXT_VER' ), + 'show_upgrade_notice' => ( astra_showcase_upgrade_notices() ) ? true : false, + 'upgrade_link' => htmlspecialchars_decode( astra_get_pro_url( 'https://wpastra.com/pricing/?utm_source=wp&utm_medium=dashboard/', 'customizer', 'upgrade-link', 'upgrade-to-pro' ) ), + 'is_block_widget' => astra_has_widgets_block_editor(), + ), + 'theme' => array( + 'option' => ASTRA_THEME_SETTINGS, + ), + ) + ) + ); + } + + /** + * Generates HTML for font dropdown. + * + * @return string + */ + public function generate_font_dropdown() { + + ob_start(); + + ?> + + + + + $variants ) { + ?> + + + + + + $single_font ) { + $variants = astra_get_prop( $single_font, '0' ); + $category = astra_get_prop( $single_font, '1' ); + + ?> + + + astra_header_break_point(), + 'includeAnchorsInHeadindsCss' => Astra_Dynamic_CSS::anchors_in_css_selectors_heading(), + 'googleFonts' => Astra_Font_Families::get_google_fonts(), + 'page_builder_button_style_css' => Astra_Dynamic_CSS::page_builder_button_style_css(), + 'elementor_default_color_font_setting' => Astra_Dynamic_CSS::elementor_default_color_font_setting(), + 'dynamic_partial_options' => self::$dynamic_options['partials'], + 'gb_outline_buttons_patterns_support' => Astra_Dynamic_CSS::gutenberg_core_patterns_compat(), + 'font_weights_widget_title_support' => Astra_Dynamic_CSS::support_font_css_to_widget_and_in_editor(), + 'is_content_bg_option_to_load' => astra_has_gcp_typo_preset_compatibility(), + 'content_layout' => $content_layout, + 'site_layout' => astra_get_option( 'site-layout' ), + 'has_block_editor_support' => Astra_Dynamic_CSS::is_block_editor_support_enabled(), + 'updated_gb_outline_button_patterns' => astra_button_default_padding_updated(), + 'apply_content_bg_fullwidth_layouts' => astra_get_option( 'apply-content-background-fullwidth-layouts', true ), + 'astra_woo_btn_global_compatibility' => is_callable( 'Astra_Dynamic_CSS::astra_woo_support_global_settings' ) ? Astra_Dynamic_CSS::astra_woo_support_global_settings() : false, + 'v4_2_2_core_form_btns_styling' => ( true === Astra_Dynamic_CSS::astra_core_form_btns_styling() ) ? ', #comments .submit, .search .search-submit' : '', + 'tablet_breakpoint' => astra_get_tablet_breakpoint(), + 'mobile_breakpoint' => astra_get_mobile_breakpoint(), + ); + + wp_localize_script( 'astra-customizer-preview-js', 'astraCustomizer', $localize_array ); + } + + /** + * Called by the customize_save_after action to refresh + * the cached CSS when Customizer settings are saved. + * + * @since 1.0.0 + * @return void + */ + public function customize_save() { + + // Update variables. + Astra_Theme_Options::refresh(); + + if ( apply_filters( 'astra_resize_logo', true ) ) { + + /* Generate Header Logo */ + $custom_logo_id = get_theme_mod( 'custom_logo' ); + + add_filter( 'intermediate_image_sizes_advanced', 'Astra_Customizer::logo_image_sizes', 10, 2 ); + self::generate_logo_by_width( $custom_logo_id ); + remove_filter( 'intermediate_image_sizes_advanced', 'Astra_Customizer::logo_image_sizes', 10 ); + + } else { + // Regenerate the logo without custom image sizes. + $custom_logo_id = get_theme_mod( 'custom_logo' ); + self::generate_logo_by_width( $custom_logo_id ); + } + + do_action( 'astra_customizer_save' ); + + } + + /** + * Add logo image sizes in filter. + * + * @since 1.0.0 + * @param array $sizes Sizes. + * @param array $metadata attachment data. + * + * @return array + */ + public static function logo_image_sizes( $sizes, $metadata ) { + + $logo_width = astra_get_option( 'ast-header-responsive-logo-width' ); + + if ( is_array( $sizes ) && '' != $logo_width['desktop'] ) { + $max_value = max( $logo_width ); + $sizes['ast-logo-size'] = array( + 'width' => (int) $max_value, + 'height' => 0, + 'crop' => false, + ); + } + + return $sizes; + } + + /** + * Generate logo image by its width. + * + * @since 1.0.0 + * @param int $custom_logo_id Logo id. + */ + public static function generate_logo_by_width( $custom_logo_id ) { + if ( $custom_logo_id ) { + + $image = get_post( $custom_logo_id ); + + if ( $image ) { + $fullsizepath = get_attached_file( $image->ID ); + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( false !== $fullsizepath || file_exists( $fullsizepath ) ) { + + if ( ! function_exists( 'wp_generate_attachment_metadata' ) ) { + require_once ABSPATH . 'wp-admin/includes/image.php';// phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound + } + + $metadata = wp_generate_attachment_metadata( $image->ID, $fullsizepath ); + + if ( ! is_wp_error( $metadata ) && ! empty( $metadata ) ) { + wp_update_attachment_metadata( $image->ID, $metadata ); + } + } + } + } + } + + /** + * Customizer Preview icon CSS + * + * @since 1.0.0 + * @return void + */ + public function preview_styles() { + if ( is_customize_preview() ) { + echo ''; + echo ''; + } + } + } +} + +/** + * Kicking this off by calling 'get_instance()' method + */ +Astra_Customizer::get_instance(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php b/wp-content/themes/astra/inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php index b68776cd6..5c5031d72 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/buttons/class-astra-customizer-button-configs.php @@ -1,883 +1,883 @@ - ASTRA_THEME_SETTINGS . '[' . $id . 'button-preset-style]', - 'default' => astra_get_option( $id . 'button-preset-style' ), - 'type' => 'control', - 'control' => 'ast-button-presets', - 'title' => __( 'Button Presets', 'astra' ), - 'section' => 'section-buttons', - 'options' => array( - 'button_01' => array( - 'src' => 'btn-preset-01', - 'border-size' => array( - 'top' => 0, - 'right' => 0, - 'bottom' => 0, - 'left' => 0, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 0, - 'right' => 0, - 'bottom' => 0, - 'left' => 0, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => '', - 'button-bg-h-color' => '', - 'button-color' => '', - ), - 'button_02' => array( - 'src' => 'btn-preset-02', - 'border-size' => array( - 'top' => 0, - 'right' => 0, - 'bottom' => 0, - 'left' => 0, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 3, - 'right' => 3, - 'bottom' => 3, - 'left' => 3, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => '', - 'button-bg-h-color' => '', - 'button-color' => '', - ), - 'button_03' => array( - 'src' => 'btn-preset-03', - 'border-size' => array( - 'top' => 0, - 'right' => 0, - 'bottom' => 0, - 'left' => 0, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 30, - 'right' => 30, - 'bottom' => 30, - 'left' => 30, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => '', - 'button-bg-h-color' => '', - 'button-color' => '', - ), - 'button_04' => array( - 'src' => 'btn-preset-04', - 'border-size' => array( - 'top' => 1, - 'right' => 1, - 'bottom' => 1, - 'left' => 1, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 0, - 'right' => 0, - 'bottom' => 0, - 'left' => 0, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => 'rgba(0,0,0,0)', - 'button-bg-h-color' => '', - 'button-color' => '#0170B9', - ), - 'button_05' => array( - 'src' => 'btn-preset-05', - 'border-size' => array( - 'top' => 1, - 'right' => 1, - 'bottom' => 1, - 'left' => 1, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 3, - 'right' => 3, - 'bottom' => 3, - 'left' => 3, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => 'rgba(0,0,0,0)', - 'button-bg-h-color' => '', - 'button-color' => '#0170B9', - ), - 'button_06' => array( - 'src' => 'btn-preset-06', - 'border-size' => array( - 'top' => 1, - 'right' => 1, - 'bottom' => 1, - 'left' => 1, - ), - 'button-radius-fields' => array( - 'desktop' => array( - 'top' => 30, - 'right' => 30, - 'bottom' => 30, - 'left' => 30, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-padding' => array( - 'desktop' => array( - 'top' => 10, - 'right' => 20, - 'bottom' => 10, - 'left' => 20, - ), - 'tablet' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'mobile' => array( - 'top' => '', - 'right' => '', - 'bottom' => '', - 'left' => '', - ), - 'desktop-unit' => 'px', - 'tablet-unit' => 'px', - 'mobile-unit' => 'px', - ), - 'button-bg-color' => 'rgba(0,0,0,0)', - 'button-bg-h-color' => '', - 'button-color' => '#0170B9', - ), - ), - 'priority' => 18, - 'transport' => 'postMessage', - 'divider' => array( 'ast_class' => 'ast-section-spacing ast-bottom-dotted-divider' ), - ), - - /** - * Group: Theme Button color Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', - 'default' => astra_get_option( $id . 'theme-button-color-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Text Color', 'astra' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'priority' => 18, - ), - - /** - * Group: Theme Button background colors Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', - 'default' => astra_get_option( $id . 'theme-button-bg-color-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Background Color', 'astra' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'priority' => 18.5, - ), - - /** - * Group: Theme Button Border Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', - 'default' => astra_get_option( $id . 'theme-button-border-color-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => __( 'Border Color', 'astra' ), - 'section' => 'section-buttons', - 'transport' => 'postMessage', - 'priority' => 18.5, - 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), - ), - - /** - * Option: Global Button Border Color - */ - array( - 'name' => $id . 'theme-button-border-group-border-color', - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', - 'default' => astra_get_option( $id . 'theme-button-border-group-border-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 18.5, - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Global Button Border Hover Color - */ - array( - 'name' => $id . 'theme-button-border-group-border-h-color', - 'default' => astra_get_option( $id . 'theme-button-border-group-border-h-color' ), - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 18.5, - 'title' => __( 'Hover', 'astra' ), - ), - - /** - * Option: Button Color - */ - array( - 'name' => $id . 'button-color', - 'default' => astra_get_option( $id . 'button-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Button Hover Color - */ - array( - 'name' => $id . 'button-h-color', - 'default' => astra_get_option( $id . 'button-h-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'title' => __( 'Hover', 'astra' ), - 'priority' => 39, - ), - - /** - * Option: Button Background Color - */ - array( - 'name' => $id . 'button-bg-color', - 'default' => astra_get_option( $id . 'button-bg-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'title' => __( 'Normal', 'astra' ), - ), - - /** - * Option: Button Background Hover Color - */ - array( - 'name' => $id . 'button-bg-h-color', - 'default' => astra_get_option( $id . 'button-bg-h-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', - 'section' => 'section-buttons', - 'control' => 'ast-color', - 'title' => __( 'Hover', 'astra' ), - 'priority' => 40, - ), - - /** - * Option: Theme Button Padding - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-padding]', - 'default' => astra_get_option( $id . 'theme-button-padding' ), - 'type' => 'control', - 'control' => 'ast-responsive-spacing', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), - 'section' => 'section-buttons', - 'title' => __( 'Padding', 'astra' ), - 'linked_choices' => true, - 'transport' => 'postMessage', - 'unit_choices' => array( 'px', 'em', '%' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - 'priority' => 19, - 'connected' => false, - 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), - ), - - /** - * Option: Global Button Border Size - */ - array( - 'type' => 'control', - 'section' => 'section-buttons', - 'control' => 'ast-border', - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-group-border-size]', - 'transport' => 'postMessage', - 'linked_choices' => true, - 'suffix' => 'px', - 'priority' => 19, - 'default' => astra_get_option( $id . 'theme-button-border-group-border-size' ), - 'title' => __( 'Border Width', 'astra' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - ), - - /** - * Option: Global Button Radius Fields - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'button-radius-fields]', - 'default' => astra_get_option( $id . 'button-radius-fields' ), - 'type' => 'control', - 'control' => 'ast-responsive-spacing', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), - 'section' => 'section-buttons', - 'title' => __( 'Border Radius', 'astra' ), - 'linked_choices' => true, - 'transport' => 'postMessage', - 'unit_choices' => array( 'px', 'em', '%' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - 'priority' => 19, - 'connected' => false, - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - ); - - $_configs = array_merge( $_configs, $_tab_configs ); - } - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - // Secondary tab. - $_configs[] = array( - 'name' => 'section-secondary-ast-context-tabs', - 'section' => 'section-buttons', - 'type' => 'control', - 'control' => 'ast-builder-header-control', - 'priority' => 0, - 'description' => '', - ); - - // Only add outline presets to secondary button presets. - $secondary_btn_preset_index = 13; - - // Add context & priority dynamically to secondary tab options. - for ( $index = $secondary_btn_preset_index, $priority = 0; $index < count( $_configs ) - 1; $index++ ) { - $_configs[ $index ]['context'] = Astra_Builder_Helper::$design_tab; - $_configs[ $index ]['priority'] = ++$priority; - } - } - - if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - $_trans_config = array( - /** - * Option: Transparent Header Button Colors Divider - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-divider]', - 'type' => 'control', - 'control' => 'ast-heading', - 'section' => 'section-transparent-header', - 'title' => __( 'Header Button', 'astra' ), - 'settings' => array(), - 'priority' => 40, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', - 'operator' => '===', - 'value' => 'custom-button', - ), - ), - ), - /** - * Group: Transparent Header Button Colors Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', - 'default' => astra_get_option( 'transparent-header-button-color-group' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => __( 'Colors', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 40, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', - 'operator' => '===', - 'value' => 'custom-button', - ), - ), - ), - /** - * Group: Transparent Header Button Border Group - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', - 'default' => astra_get_option( 'transparent-header-button-border-group' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => __( 'Border', 'astra' ), - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'priority' => 40, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', - 'operator' => '===', - 'value' => 'custom-button', - ), - ), - ), - - /** - * Option: Button Text Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-text-color', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-text-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 10, - 'title' => __( 'Text Color', 'astra' ), - ), - - /** - * Option: Button Text Hover Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-text-h-color', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-text-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 10, - 'title' => __( 'Text Color', 'astra' ), - ), - - /** - * Option: Button Background Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-back-color', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-back-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Normal', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 10, - 'title' => __( 'Background Color', 'astra' ), - ), - - /** - * Option: Button Button Hover Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-back-h-color', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-back-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', - 'section' => 'section-transparent-header', - 'tab' => __( 'Hover', 'astra' ), - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 10, - 'title' => __( 'Background Color', 'astra' ), - ), - - // Option: Custom Menu Button Border. - array( - 'type' => 'control', - 'control' => 'ast-responsive-spacing', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), - 'name' => ASTRA_THEME_SETTINGS . '[header-main-rt-trans-section-button-padding]', - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'linked_choices' => true, - 'priority' => 40, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', - 'operator' => '===', - 'value' => 'custom-button', - ), - ), - 'default' => astra_get_option( 'header-main-rt-trans-section-button-padding' ), - 'title' => __( 'Padding', 'astra' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - ), - - /** - * Option: Button Border Size - */ - array( - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', - 'section' => 'section-transparent-header', - 'control' => 'ast-border', - 'name' => 'header-main-rt-trans-section-button-border-size', - 'transport' => 'postMessage', - 'linked_choices' => true, - 'priority' => 10, - 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-size' ), - 'title' => __( 'Width', 'astra' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - ), - - /** - * Option: Button Border Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-border-color', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-color' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', - 'section' => 'section-transparent-header', - 'transport' => 'postMessage', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 12, - 'title' => __( 'Color', 'astra' ), - ), - - /** - * Option: Button Border Hover Color - */ - array( - 'name' => 'header-main-rt-trans-section-button-border-h-color', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-h-color' ), - 'transport' => 'postMessage', - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', - 'control' => 'ast-color', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), - 'priority' => 14, - 'title' => __( 'Hover Color', 'astra' ), - ), - - /** - * Option: Button Border Radius - */ - array( - 'name' => 'header-main-rt-trans-section-button-border-radius', - 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-radius' ), - 'type' => 'sub-control', - 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', - 'section' => 'section-transparent-header', - 'control' => 'ast-slider', - 'suffix' => 'px', - 'transport' => 'postMessage', - 'priority' => 16, - 'title' => __( 'Border Radius', 'astra' ), - 'input_attrs' => array( - 'min' => 0, - 'step' => 1, - 'max' => 100, - ), - ), - ); - $_configs = array_merge( $_configs, $_trans_config ); - - } - - - return array_merge( $configurations, $_configs ); - } - } -} - -/** - * Kicking this off by calling 'get_instance()' method - */ -new Astra_Customizer_Button_Configs(); + ASTRA_THEME_SETTINGS . '[' . $id . 'button-preset-style]', + 'default' => astra_get_option( $id . 'button-preset-style' ), + 'type' => 'control', + 'control' => 'ast-button-presets', + 'title' => __( 'Button Presets', 'astra' ), + 'section' => 'section-buttons', + 'options' => array( + 'button_01' => array( + 'src' => 'btn-preset-01', + 'border-size' => array( + 'top' => 0, + 'right' => 0, + 'bottom' => 0, + 'left' => 0, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 0, + 'right' => 0, + 'bottom' => 0, + 'left' => 0, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => '', + 'button-bg-h-color' => '', + 'button-color' => '', + ), + 'button_02' => array( + 'src' => 'btn-preset-02', + 'border-size' => array( + 'top' => 0, + 'right' => 0, + 'bottom' => 0, + 'left' => 0, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 3, + 'right' => 3, + 'bottom' => 3, + 'left' => 3, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => '', + 'button-bg-h-color' => '', + 'button-color' => '', + ), + 'button_03' => array( + 'src' => 'btn-preset-03', + 'border-size' => array( + 'top' => 0, + 'right' => 0, + 'bottom' => 0, + 'left' => 0, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 30, + 'right' => 30, + 'bottom' => 30, + 'left' => 30, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => '', + 'button-bg-h-color' => '', + 'button-color' => '', + ), + 'button_04' => array( + 'src' => 'btn-preset-04', + 'border-size' => array( + 'top' => 1, + 'right' => 1, + 'bottom' => 1, + 'left' => 1, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 0, + 'right' => 0, + 'bottom' => 0, + 'left' => 0, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => 'rgba(0,0,0,0)', + 'button-bg-h-color' => '', + 'button-color' => '#0170B9', + ), + 'button_05' => array( + 'src' => 'btn-preset-05', + 'border-size' => array( + 'top' => 1, + 'right' => 1, + 'bottom' => 1, + 'left' => 1, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 3, + 'right' => 3, + 'bottom' => 3, + 'left' => 3, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => 'rgba(0,0,0,0)', + 'button-bg-h-color' => '', + 'button-color' => '#0170B9', + ), + 'button_06' => array( + 'src' => 'btn-preset-06', + 'border-size' => array( + 'top' => 1, + 'right' => 1, + 'bottom' => 1, + 'left' => 1, + ), + 'button-radius-fields' => array( + 'desktop' => array( + 'top' => 30, + 'right' => 30, + 'bottom' => 30, + 'left' => 30, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-padding' => array( + 'desktop' => array( + 'top' => 10, + 'right' => 20, + 'bottom' => 10, + 'left' => 20, + ), + 'tablet' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'mobile' => array( + 'top' => '', + 'right' => '', + 'bottom' => '', + 'left' => '', + ), + 'desktop-unit' => 'px', + 'tablet-unit' => 'px', + 'mobile-unit' => 'px', + ), + 'button-bg-color' => 'rgba(0,0,0,0)', + 'button-bg-h-color' => '', + 'button-color' => '#0170B9', + ), + ), + 'priority' => 18, + 'transport' => 'postMessage', + 'divider' => array( 'ast_class' => 'ast-section-spacing ast-bottom-dotted-divider' ), + ), + + /** + * Group: Theme Button color Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', + 'default' => astra_get_option( $id . 'theme-button-color-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Text Color', 'astra' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'priority' => 18, + ), + + /** + * Group: Theme Button background colors Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', + 'default' => astra_get_option( $id . 'theme-button-bg-color-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Background Color', 'astra' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'priority' => 18.5, + ), + + /** + * Group: Theme Button Border Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', + 'default' => astra_get_option( $id . 'theme-button-border-color-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => __( 'Border Color', 'astra' ), + 'section' => 'section-buttons', + 'transport' => 'postMessage', + 'priority' => 18.5, + 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), + ), + + /** + * Option: Global Button Border Color + */ + array( + 'name' => $id . 'theme-button-border-group-border-color', + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', + 'default' => astra_get_option( $id . 'theme-button-border-group-border-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 18.5, + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Global Button Border Hover Color + */ + array( + 'name' => $id . 'theme-button-border-group-border-h-color', + 'default' => astra_get_option( $id . 'theme-button-border-group-border-h-color' ), + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-color-group]', + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 18.5, + 'title' => __( 'Hover', 'astra' ), + ), + + /** + * Option: Button Color + */ + array( + 'name' => $id . 'button-color', + 'default' => astra_get_option( $id . 'button-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Button Hover Color + */ + array( + 'name' => $id . 'button-h-color', + 'default' => astra_get_option( $id . 'button-h-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-color-group]', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'title' => __( 'Hover', 'astra' ), + 'priority' => 39, + ), + + /** + * Option: Button Background Color + */ + array( + 'name' => $id . 'button-bg-color', + 'default' => astra_get_option( $id . 'button-bg-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'title' => __( 'Normal', 'astra' ), + ), + + /** + * Option: Button Background Hover Color + */ + array( + 'name' => $id . 'button-bg-h-color', + 'default' => astra_get_option( $id . 'button-bg-h-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-bg-color-group]', + 'section' => 'section-buttons', + 'control' => 'ast-color', + 'title' => __( 'Hover', 'astra' ), + 'priority' => 40, + ), + + /** + * Option: Theme Button Padding + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-padding]', + 'default' => astra_get_option( $id . 'theme-button-padding' ), + 'type' => 'control', + 'control' => 'ast-responsive-spacing', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), + 'section' => 'section-buttons', + 'title' => __( 'Padding', 'astra' ), + 'linked_choices' => true, + 'transport' => 'postMessage', + 'unit_choices' => array( 'px', 'em', '%' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + 'priority' => 19, + 'connected' => false, + 'divider' => array( 'ast_class' => 'ast-bottom-dotted-divider' ), + ), + + /** + * Option: Global Button Border Size + */ + array( + 'type' => 'control', + 'section' => 'section-buttons', + 'control' => 'ast-border', + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'theme-button-border-group-border-size]', + 'transport' => 'postMessage', + 'linked_choices' => true, + 'suffix' => 'px', + 'priority' => 19, + 'default' => astra_get_option( $id . 'theme-button-border-group-border-size' ), + 'title' => __( 'Border Width', 'astra' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + ), + + /** + * Option: Global Button Radius Fields + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[' . $id . 'button-radius-fields]', + 'default' => astra_get_option( $id . 'button-radius-fields' ), + 'type' => 'control', + 'control' => 'ast-responsive-spacing', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), + 'section' => 'section-buttons', + 'title' => __( 'Border Radius', 'astra' ), + 'linked_choices' => true, + 'transport' => 'postMessage', + 'unit_choices' => array( 'px', 'em', '%' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + 'priority' => 19, + 'connected' => false, + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + ); + + $_configs = array_merge( $_configs, $_tab_configs ); + } + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + // Secondary tab. + $_configs[] = array( + 'name' => 'section-secondary-ast-context-tabs', + 'section' => 'section-buttons', + 'type' => 'control', + 'control' => 'ast-builder-header-control', + 'priority' => 0, + 'description' => '', + ); + + // Only add outline presets to secondary button presets. + $secondary_btn_preset_index = 13; + + // Add context & priority dynamically to secondary tab options. + for ( $index = $secondary_btn_preset_index, $priority = 0; $index < count( $_configs ) - 1; $index++ ) { + $_configs[ $index ]['context'] = Astra_Builder_Helper::$design_tab; + $_configs[ $index ]['priority'] = ++$priority; + } + } + + if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + $_trans_config = array( + /** + * Option: Transparent Header Button Colors Divider + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-divider]', + 'type' => 'control', + 'control' => 'ast-heading', + 'section' => 'section-transparent-header', + 'title' => __( 'Header Button', 'astra' ), + 'settings' => array(), + 'priority' => 40, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', + 'operator' => '===', + 'value' => 'custom-button', + ), + ), + ), + /** + * Group: Transparent Header Button Colors Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', + 'default' => astra_get_option( 'transparent-header-button-color-group' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => __( 'Colors', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 40, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', + 'operator' => '===', + 'value' => 'custom-button', + ), + ), + ), + /** + * Group: Transparent Header Button Border Group + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', + 'default' => astra_get_option( 'transparent-header-button-border-group' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => __( 'Border', 'astra' ), + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'priority' => 40, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', + 'operator' => '===', + 'value' => 'custom-button', + ), + ), + ), + + /** + * Option: Button Text Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-text-color', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-text-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 10, + 'title' => __( 'Text Color', 'astra' ), + ), + + /** + * Option: Button Text Hover Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-text-h-color', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-text-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 10, + 'title' => __( 'Text Color', 'astra' ), + ), + + /** + * Option: Button Background Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-back-color', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-back-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Normal', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 10, + 'title' => __( 'Background Color', 'astra' ), + ), + + /** + * Option: Button Button Hover Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-back-h-color', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-back-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-color-group]', + 'section' => 'section-transparent-header', + 'tab' => __( 'Hover', 'astra' ), + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 10, + 'title' => __( 'Background Color', 'astra' ), + ), + + // Option: Custom Menu Button Border. + array( + 'type' => 'control', + 'control' => 'ast-responsive-spacing', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), + 'name' => ASTRA_THEME_SETTINGS . '[header-main-rt-trans-section-button-padding]', + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'linked_choices' => true, + 'priority' => 40, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[header-main-rt-section-button-style]', + 'operator' => '===', + 'value' => 'custom-button', + ), + ), + 'default' => astra_get_option( 'header-main-rt-trans-section-button-padding' ), + 'title' => __( 'Padding', 'astra' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + ), + + /** + * Option: Button Border Size + */ + array( + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', + 'section' => 'section-transparent-header', + 'control' => 'ast-border', + 'name' => 'header-main-rt-trans-section-button-border-size', + 'transport' => 'postMessage', + 'linked_choices' => true, + 'priority' => 10, + 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-size' ), + 'title' => __( 'Width', 'astra' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + ), + + /** + * Option: Button Border Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-border-color', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-color' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', + 'section' => 'section-transparent-header', + 'transport' => 'postMessage', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 12, + 'title' => __( 'Color', 'astra' ), + ), + + /** + * Option: Button Border Hover Color + */ + array( + 'name' => 'header-main-rt-trans-section-button-border-h-color', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-h-color' ), + 'transport' => 'postMessage', + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', + 'control' => 'ast-color', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_alpha_color' ), + 'priority' => 14, + 'title' => __( 'Hover Color', 'astra' ), + ), + + /** + * Option: Button Border Radius + */ + array( + 'name' => 'header-main-rt-trans-section-button-border-radius', + 'default' => astra_get_option( 'header-main-rt-trans-section-button-border-radius' ), + 'type' => 'sub-control', + 'parent' => ASTRA_THEME_SETTINGS . '[transparent-header-button-border-group]', + 'section' => 'section-transparent-header', + 'control' => 'ast-slider', + 'suffix' => 'px', + 'transport' => 'postMessage', + 'priority' => 16, + 'title' => __( 'Border Radius', 'astra' ), + 'input_attrs' => array( + 'min' => 0, + 'step' => 1, + 'max' => 100, + ), + ), + ); + $_configs = array_merge( $_configs, $_trans_config ); + + } + + + return array_merge( $configurations, $_configs ); + } + } +} + +/** + * Kicking this off by calling 'get_instance()' method + */ +new Astra_Customizer_Button_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-layout-configs.php b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-layout-configs.php index a356d9dce..6d3d74dde 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-layout-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-layout-configs.php @@ -1,245 +1,245 @@ - __( 'Comments', 'astra' ), - 'category' => __( 'Category', 'astra' ), - 'author' => __( 'Author', 'astra' ), - 'date' => array( - 'clone' => false, - 'is_parent' => true, - 'main_index' => 'date', - 'clone_limit' => 1, - 'title' => __( 'Date', 'astra' ), - ), - 'tag' => __( 'Tag', 'astra' ), - ); - - /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'blog-pro' ) ) { - /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $blog_meta_choices['read-time'] = __( 'Read Time', 'astra' ); - } - - $_configs = array( - - /** - * Option: Blog Content Width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-width]', - 'default' => astra_get_option( 'blog-width' ), - 'type' => 'control', - 'control' => 'ast-selector', - 'section' => 'section-blog', - 'priority' => 50, - 'transport' => 'postMessage', - 'title' => __( 'Content Width', 'astra' ), - 'choices' => array( - 'default' => __( 'Default', 'astra' ), - 'custom' => __( 'Custom', 'astra' ), - ), - 'responsive' => false, - 'renderAs' => 'text', - 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), - ), - - /** - * Option: Enter Width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-max-width]', - 'type' => 'control', - 'control' => 'ast-slider', - 'section' => 'section-blog', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'blog-max-width' ), - 'priority' => 50, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[blog-width]', - 'operator' => '===', - 'value' => 'custom', - ), - ), - 'title' => __( 'Custom Width', 'astra' ), - 'suffix' => 'px', - 'input_attrs' => array( - 'min' => 768, - 'step' => 1, - 'max' => 1920, - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Blog Post Content - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-post-content]', - 'section' => 'section-blog', - 'title' => __( 'Post Content', 'astra' ), - 'default' => astra_get_option( 'blog-post-content' ), - 'type' => 'control', - 'control' => 'ast-selector', - 'priority' => 75, - 'choices' => array( - 'full-content' => __( 'Full Content', 'astra' ), - 'excerpt' => __( 'Excerpt', 'astra' ), - ), - 'responsive' => false, - 'renderAs' => 'text', - ), - - /** - * Option: Divider - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[archive-post-content-structure-divider]', - 'section' => 'section-blog', - 'title' => __( 'Posts Structure', 'astra' ), - 'type' => 'control', - 'control' => 'ast-heading', - 'priority' => 50, - 'settings' => array(), - 'divider' => array( 'ast_class' => 'ast-section-spacing ast-bottom-spacing' ), - ), - - /** - * Option: Display Post Structure - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-post-structure]', - 'default' => astra_get_option( 'blog-post-structure' ), - 'type' => 'control', - 'control' => 'ast-sortable', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ), - 'section' => 'section-blog', - 'priority' => 50, - 'title' => __( 'Post Structure', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-top-spacing ast-bottom-section-divider' ), - 'choices' => array( - 'image' => __( 'Featured Image', 'astra' ), - 'title-meta' => __( 'Title & Blog Meta', 'astra' ), - ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-meta]', - 'type' => 'control', - 'control' => 'ast-sortable', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ), - 'section' => 'section-blog', - 'default' => astra_get_option( 'blog-meta' ), - 'priority' => 50, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[blog-post-structure]', - 'operator' => 'contains', - 'value' => 'title-meta', - ), - ), - 'title' => __( 'Meta', 'astra' ), - 'choices' => $blog_meta_choices, - 'divider' => array( 'ast_class' => 'ast-bottom-spacing ast-bottom-section-divider' ), - ), - - /** - * Option: Date Meta Type. - */ - array( - 'name' => 'blog-meta-date-type', - 'parent' => ASTRA_THEME_SETTINGS . '[blog-meta]', - 'type' => 'sub-control', - 'control' => 'ast-selector', - 'section' => 'section-blog', - 'default' => astra_get_option( 'blog-meta-date-type' ), - 'priority' => 1, - 'linked' => 'date', - 'transport' => 'postMessage', - 'title' => __( 'Type', 'astra' ), - 'choices' => array( - 'published' => __( 'Published', 'astra' ), - 'updated' => __( 'Last Updated', 'astra' ), - ), - 'divider' => array( 'ast_class' => 'ast-bottom-spacing' ), - 'responsive' => false, - 'renderAs' => 'text', - ), - - /** - * Date format support for meta field. - */ - array( - 'name' => 'blog-meta-date-format', - 'default' => astra_get_option( 'blog-meta-date-format' ), - 'parent' => ASTRA_THEME_SETTINGS . '[blog-meta]', - 'linked' => 'date', - 'type' => 'sub-control', - 'control' => 'ast-select', - 'transport' => 'postMessage', - 'section' => 'section-blog', - 'priority' => 2, - 'responsive' => false, - 'renderAs' => 'text', - 'title' => __( 'Format', 'astra' ), - 'choices' => array( - '' => __( 'Default', 'astra' ), - 'F j, Y' => 'November 6, 2010', - 'Y-m-d' => '2010-11-06', - 'm/d/Y' => '11/06/2010', - 'd/m/Y' => '06/11/2010', - ), - ), - ); - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $_configs[] = array( - 'name' => 'section-blog-ast-context-tabs', - 'section' => 'section-blog', - 'type' => 'control', - 'control' => 'ast-builder-header-control', - 'priority' => 0, - 'description' => '', - ); - } - - $configurations = array_merge( $configurations, $_configs ); - - return $configurations; - } - } -} - -new Astra_Blog_Layout_Configs(); + __( 'Comments', 'astra' ), + 'category' => __( 'Category', 'astra' ), + 'author' => __( 'Author', 'astra' ), + 'date' => array( + 'clone' => false, + 'is_parent' => true, + 'main_index' => 'date', + 'clone_limit' => 1, + 'title' => __( 'Date', 'astra' ), + ), + 'tag' => __( 'Tag', 'astra' ), + ); + + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'blog-pro' ) ) { + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $blog_meta_choices['read-time'] = __( 'Read Time', 'astra' ); + } + + $_configs = array( + + /** + * Option: Blog Content Width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-width]', + 'default' => astra_get_option( 'blog-width' ), + 'type' => 'control', + 'control' => 'ast-selector', + 'section' => 'section-blog', + 'priority' => 50, + 'transport' => 'postMessage', + 'title' => __( 'Content Width', 'astra' ), + 'choices' => array( + 'default' => __( 'Default', 'astra' ), + 'custom' => __( 'Custom', 'astra' ), + ), + 'responsive' => false, + 'renderAs' => 'text', + 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), + ), + + /** + * Option: Enter Width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-max-width]', + 'type' => 'control', + 'control' => 'ast-slider', + 'section' => 'section-blog', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'blog-max-width' ), + 'priority' => 50, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[blog-width]', + 'operator' => '===', + 'value' => 'custom', + ), + ), + 'title' => __( 'Custom Width', 'astra' ), + 'suffix' => 'px', + 'input_attrs' => array( + 'min' => 768, + 'step' => 1, + 'max' => 1920, + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Blog Post Content + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-post-content]', + 'section' => 'section-blog', + 'title' => __( 'Post Content', 'astra' ), + 'default' => astra_get_option( 'blog-post-content' ), + 'type' => 'control', + 'control' => 'ast-selector', + 'priority' => 75, + 'choices' => array( + 'full-content' => __( 'Full Content', 'astra' ), + 'excerpt' => __( 'Excerpt', 'astra' ), + ), + 'responsive' => false, + 'renderAs' => 'text', + ), + + /** + * Option: Divider + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[archive-post-content-structure-divider]', + 'section' => 'section-blog', + 'title' => __( 'Posts Structure', 'astra' ), + 'type' => 'control', + 'control' => 'ast-heading', + 'priority' => 50, + 'settings' => array(), + 'divider' => array( 'ast_class' => 'ast-section-spacing ast-bottom-spacing' ), + ), + + /** + * Option: Display Post Structure + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-post-structure]', + 'default' => astra_get_option( 'blog-post-structure' ), + 'type' => 'control', + 'control' => 'ast-sortable', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ), + 'section' => 'section-blog', + 'priority' => 50, + 'title' => __( 'Post Structure', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-top-spacing ast-bottom-section-divider' ), + 'choices' => array( + 'image' => __( 'Featured Image', 'astra' ), + 'title-meta' => __( 'Title & Blog Meta', 'astra' ), + ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-meta]', + 'type' => 'control', + 'control' => 'ast-sortable', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_multi_choices' ), + 'section' => 'section-blog', + 'default' => astra_get_option( 'blog-meta' ), + 'priority' => 50, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[blog-post-structure]', + 'operator' => 'contains', + 'value' => 'title-meta', + ), + ), + 'title' => __( 'Meta', 'astra' ), + 'choices' => $blog_meta_choices, + 'divider' => array( 'ast_class' => 'ast-bottom-spacing ast-bottom-section-divider' ), + ), + + /** + * Option: Date Meta Type. + */ + array( + 'name' => 'blog-meta-date-type', + 'parent' => ASTRA_THEME_SETTINGS . '[blog-meta]', + 'type' => 'sub-control', + 'control' => 'ast-selector', + 'section' => 'section-blog', + 'default' => astra_get_option( 'blog-meta-date-type' ), + 'priority' => 1, + 'linked' => 'date', + 'transport' => 'postMessage', + 'title' => __( 'Type', 'astra' ), + 'choices' => array( + 'published' => __( 'Published', 'astra' ), + 'updated' => __( 'Last Updated', 'astra' ), + ), + 'divider' => array( 'ast_class' => 'ast-bottom-spacing' ), + 'responsive' => false, + 'renderAs' => 'text', + ), + + /** + * Date format support for meta field. + */ + array( + 'name' => 'blog-meta-date-format', + 'default' => astra_get_option( 'blog-meta-date-format' ), + 'parent' => ASTRA_THEME_SETTINGS . '[blog-meta]', + 'linked' => 'date', + 'type' => 'sub-control', + 'control' => 'ast-select', + 'transport' => 'postMessage', + 'section' => 'section-blog', + 'priority' => 2, + 'responsive' => false, + 'renderAs' => 'text', + 'title' => __( 'Format', 'astra' ), + 'choices' => array( + '' => __( 'Default', 'astra' ), + 'F j, Y' => 'November 6, 2010', + 'Y-m-d' => '2010-11-06', + 'm/d/Y' => '11/06/2010', + 'd/m/Y' => '06/11/2010', + ), + ), + ); + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $_configs[] = array( + 'name' => 'section-blog-ast-context-tabs', + 'section' => 'section-blog', + 'type' => 'control', + 'control' => 'ast-builder-header-control', + 'priority' => 0, + 'description' => '', + ); + } + + $configurations = array_merge( $configurations, $_configs ); + + return $configurations; + } + } +} + +new Astra_Blog_Layout_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php index 8bcd21a10..6dba02bb9 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-blog-single-layout-configs.php @@ -1,145 +1,145 @@ - ASTRA_THEME_SETTINGS . '[blog-single-width]', - 'type' => 'control', - 'control' => 'ast-selector', - 'section' => 'section-blog-single', - 'default' => astra_get_option( 'blog-single-width' ), - 'priority' => 6, - 'title' => __( 'Content Width', 'astra' ), - 'choices' => array( - 'default' => __( 'Default', 'astra' ), - 'custom' => __( 'Custom', 'astra' ), - ), - 'transport' => 'postMessage', - 'responsive' => false, - 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), - 'renderAs' => 'text', - ), - - /** - * Option: Enter Width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[blog-single-max-width]', - 'type' => 'control', - 'control' => 'ast-slider', - 'section' => 'section-blog-single', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'blog-single-max-width' ), - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[blog-single-width]', - 'operator' => '===', - 'value' => 'custom', - ), - ), - 'priority' => 6, - 'title' => __( 'Custom Width', 'astra' ), - 'suffix' => 'px', - 'input_attrs' => array( - 'min' => 768, - 'step' => 1, - 'max' => 1920, - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Divider - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[section-blog-single-spacing-divider]', - 'section' => 'section-blog-single', - 'title' => __( 'Post Spacing', 'astra' ), - 'type' => 'control', - 'control' => 'ast-heading', - 'priority' => 24, - 'context' => $tab_config, - ), - - /** - * Option: Single Post Spacing - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[single-post-outside-spacing]', - 'default' => astra_get_option( 'single-post-outside-spacing' ), - 'type' => 'control', - 'control' => 'ast-responsive-spacing', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), - 'section' => 'section-blog-single', - 'title' => __( 'Outside', 'astra' ), - 'linked_choices' => true, - 'transport' => 'postMessage', - 'unit_choices' => array( 'px', 'em', '%' ), - 'choices' => array( - 'top' => __( 'Top', 'astra' ), - 'right' => __( 'Right', 'astra' ), - 'bottom' => __( 'Bottom', 'astra' ), - 'left' => __( 'Left', 'astra' ), - ), - 'priority' => 25, - 'context' => $tab_config, - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - ); - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - $_configs[] = array( - 'name' => 'section-blog-single-ast-context-tabs', - 'section' => 'section-blog-single', - 'type' => 'control', - 'control' => 'ast-builder-header-control', - 'priority' => 0, - 'description' => '', - ); - } - - $configurations = array_merge( $configurations, $_configs ); - - return $configurations; - } - } -} - -new Astra_Blog_Single_Layout_Configs(); + ASTRA_THEME_SETTINGS . '[blog-single-width]', + 'type' => 'control', + 'control' => 'ast-selector', + 'section' => 'section-blog-single', + 'default' => astra_get_option( 'blog-single-width' ), + 'priority' => 6, + 'title' => __( 'Content Width', 'astra' ), + 'choices' => array( + 'default' => __( 'Default', 'astra' ), + 'custom' => __( 'Custom', 'astra' ), + ), + 'transport' => 'postMessage', + 'responsive' => false, + 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), + 'renderAs' => 'text', + ), + + /** + * Option: Enter Width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[blog-single-max-width]', + 'type' => 'control', + 'control' => 'ast-slider', + 'section' => 'section-blog-single', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'blog-single-max-width' ), + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[blog-single-width]', + 'operator' => '===', + 'value' => 'custom', + ), + ), + 'priority' => 6, + 'title' => __( 'Custom Width', 'astra' ), + 'suffix' => 'px', + 'input_attrs' => array( + 'min' => 768, + 'step' => 1, + 'max' => 1920, + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Divider + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[section-blog-single-spacing-divider]', + 'section' => 'section-blog-single', + 'title' => __( 'Post Spacing', 'astra' ), + 'type' => 'control', + 'control' => 'ast-heading', + 'priority' => 24, + 'context' => $tab_config, + ), + + /** + * Option: Single Post Spacing + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[single-post-outside-spacing]', + 'default' => astra_get_option( 'single-post-outside-spacing' ), + 'type' => 'control', + 'control' => 'ast-responsive-spacing', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_spacing' ), + 'section' => 'section-blog-single', + 'title' => __( 'Outside', 'astra' ), + 'linked_choices' => true, + 'transport' => 'postMessage', + 'unit_choices' => array( 'px', 'em', '%' ), + 'choices' => array( + 'top' => __( 'Top', 'astra' ), + 'right' => __( 'Right', 'astra' ), + 'bottom' => __( 'Bottom', 'astra' ), + 'left' => __( 'Left', 'astra' ), + ), + 'priority' => 25, + 'context' => $tab_config, + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + ); + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + $_configs[] = array( + 'name' => 'section-blog-single-ast-context-tabs', + 'section' => 'section-blog-single', + 'type' => 'control', + 'control' => 'ast-builder-header-control', + 'priority' => 0, + 'description' => '', + ); + } + + $configurations = array_merge( $configurations, $_configs ); + + return $configurations; + } + } +} + +new Astra_Blog_Single_Layout_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php index 90abc193e..c2a05d4fa 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-sidebar-layout-configs.php @@ -1,190 +1,190 @@ - ASTRA_THEME_SETTINGS . '[site-sidebar-layout]', - 'type' => 'control', - 'control' => 'ast-radio-image', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_choices' ), - 'section' => 'section-sidebars', - 'default' => astra_get_option( 'site-sidebar-layout' ), - 'priority' => 5, - 'title' => __( 'Default Layout', 'astra' ), - 'choices' => array( - 'no-sidebar' => array( - 'label' => __( 'No Sidebar', 'astra' ), - 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'no-sidebar', false ) : '', - ), - 'left-sidebar' => array( - 'label' => __( 'Left Sidebar', 'astra' ), - 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'left-sidebar', false ) : '', - ), - 'right-sidebar' => array( - 'label' => __( 'Right Sidebar', 'astra' ), - 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'right-sidebar', false ) : '', - ), - ), - ), - - /** - * Help Text: Sidebar Layout. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-layout-description]', - 'type' => 'control', - 'control' => 'ast-description', - 'section' => 'section-sidebars', - 'priority' => 5, - 'title' => '', - 'help' => __( 'Sidebar will only apply when container layout is set to normal.', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-bottom-spacing' ), - 'settings' => array(), - 'hide' => ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ), - ), - - /** - * Option: Site Sidebar Style. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-style]', - 'type' => 'control', - 'control' => 'ast-selector', - 'section' => 'section-sidebars', - 'default' => astra_get_option( 'site-sidebar-style', 'unboxed' ), - 'priority' => 9, - 'title' => __( 'Sidebar Style', 'astra' ), - 'choices' => array( - 'unboxed' => __( 'Unboxed', 'astra' ), - 'boxed' => __( 'Boxed', 'astra' ), - ), - 'responsive' => false, - 'renderAs' => 'text', - 'divider' => array( 'ast_class' => 'ast-top-divider ast-bottom-section-divider' ), - ), - - /** - * Option: Primary Content Width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-width]', - 'type' => 'control', - 'control' => 'ast-slider', - 'default' => astra_get_option( 'site-sidebar-width' ), - 'section' => 'section-sidebars', - 'priority' => 15, - 'title' => __( 'Sidebar Width', 'astra' ), - 'suffix' => '%', - 'transport' => 'postMessage', - 'input_attrs' => array( - 'min' => 15, - 'step' => 1, - 'max' => 50, - ), - - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-width-description]', - 'type' => 'control', - 'control' => 'ast-description', - 'section' => 'section-sidebars', - 'priority' => 15, - 'title' => '', - 'help' => __( 'Sidebar width will apply only when one of the above sidebar is set.', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), - 'settings' => array(), - ), - - /** - * Option: Sticky Sidebar - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-sticky-sidebar]', - 'default' => astra_get_option( 'site-sticky-sidebar' ), - 'type' => 'control', - 'section' => 'section-sidebars', - 'title' => __( 'Enable Sticky Sidebar', 'astra' ), - 'priority' => 15, - 'control' => 'ast-toggle-control', - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - ); - - // Learn More link if Astra Pro is not activated. - if ( astra_showcase_upgrade_notices() ) { - $_configs[] = array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-sidebar-pro-items]', - 'type' => 'control', - 'control' => 'ast-upgrade', - 'renderAs' => 'list', - 'choices' => array( - 'one' => array( - 'title' => __( 'Sidebar spacing', 'astra' ), - ), - 'two' => array( - 'title' => __( 'Sidebar color options', 'astra' ), - ), - 'three' => array( - 'title' => __( 'Widget color options', 'astra' ), - ), - 'four' => array( - 'title' => __( 'Widget title typography', 'astra' ), - ), - 'five' => array( - 'title' => __( 'Widget content typography', 'astra' ), - ), - ), - 'section' => 'section-sidebars', - 'default' => '', - 'priority' => 999, - 'title' => __( 'Make sidebars work harder to engage with Astra Pro', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), - ); - } - - return array_merge( $configurations, $_configs ); - } - } -} - - -new Astra_Sidebar_Layout_Configs(); - - - - - + ASTRA_THEME_SETTINGS . '[site-sidebar-layout]', + 'type' => 'control', + 'control' => 'ast-radio-image', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_choices' ), + 'section' => 'section-sidebars', + 'default' => astra_get_option( 'site-sidebar-layout' ), + 'priority' => 5, + 'title' => __( 'Default Layout', 'astra' ), + 'choices' => array( + 'no-sidebar' => array( + 'label' => __( 'No Sidebar', 'astra' ), + 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'no-sidebar', false ) : '', + ), + 'left-sidebar' => array( + 'label' => __( 'Left Sidebar', 'astra' ), + 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'left-sidebar', false ) : '', + ), + 'right-sidebar' => array( + 'label' => __( 'Right Sidebar', 'astra' ), + 'path' => ( class_exists( 'Astra_Builder_UI_Controller' ) ) ? Astra_Builder_UI_Controller::fetch_svg_icon( 'right-sidebar', false ) : '', + ), + ), + ), + + /** + * Help Text: Sidebar Layout. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-layout-description]', + 'type' => 'control', + 'control' => 'ast-description', + 'section' => 'section-sidebars', + 'priority' => 5, + 'title' => '', + 'help' => __( 'Sidebar will only apply when container layout is set to normal.', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-bottom-spacing' ), + 'settings' => array(), + 'hide' => ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ), + ), + + /** + * Option: Site Sidebar Style. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-style]', + 'type' => 'control', + 'control' => 'ast-selector', + 'section' => 'section-sidebars', + 'default' => astra_get_option( 'site-sidebar-style', 'unboxed' ), + 'priority' => 9, + 'title' => __( 'Sidebar Style', 'astra' ), + 'choices' => array( + 'unboxed' => __( 'Unboxed', 'astra' ), + 'boxed' => __( 'Boxed', 'astra' ), + ), + 'responsive' => false, + 'renderAs' => 'text', + 'divider' => array( 'ast_class' => 'ast-top-divider ast-bottom-section-divider' ), + ), + + /** + * Option: Primary Content Width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-width]', + 'type' => 'control', + 'control' => 'ast-slider', + 'default' => astra_get_option( 'site-sidebar-width' ), + 'section' => 'section-sidebars', + 'priority' => 15, + 'title' => __( 'Sidebar Width', 'astra' ), + 'suffix' => '%', + 'transport' => 'postMessage', + 'input_attrs' => array( + 'min' => 15, + 'step' => 1, + 'max' => 50, + ), + + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-sidebar-width-description]', + 'type' => 'control', + 'control' => 'ast-description', + 'section' => 'section-sidebars', + 'priority' => 15, + 'title' => '', + 'help' => __( 'Sidebar width will apply only when one of the above sidebar is set.', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), + 'settings' => array(), + ), + + /** + * Option: Sticky Sidebar + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-sticky-sidebar]', + 'default' => astra_get_option( 'site-sticky-sidebar' ), + 'type' => 'control', + 'section' => 'section-sidebars', + 'title' => __( 'Enable Sticky Sidebar', 'astra' ), + 'priority' => 15, + 'control' => 'ast-toggle-control', + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + ); + + // Learn More link if Astra Pro is not activated. + if ( astra_showcase_upgrade_notices() ) { + $_configs[] = array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-sidebar-pro-items]', + 'type' => 'control', + 'control' => 'ast-upgrade', + 'renderAs' => 'list', + 'choices' => array( + 'one' => array( + 'title' => __( 'Sidebar spacing', 'astra' ), + ), + 'two' => array( + 'title' => __( 'Sidebar color options', 'astra' ), + ), + 'three' => array( + 'title' => __( 'Widget color options', 'astra' ), + ), + 'four' => array( + 'title' => __( 'Widget title typography', 'astra' ), + ), + 'five' => array( + 'title' => __( 'Widget content typography', 'astra' ), + ), + ), + 'section' => 'section-sidebars', + 'default' => '', + 'priority' => 999, + 'title' => __( 'Make sidebars work harder to engage with Astra Pro', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), + ); + } + + return array_merge( $configurations, $_configs ); + } + } +} + + +new Astra_Sidebar_Layout_Configs(); + + + + + diff --git a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-site-identity-configs.php b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-site-identity-configs.php index 564f579d8..39e347d74 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-site-identity-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/layout/class-astra-site-identity-configs.php @@ -1,474 +1,474 @@ - ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-logo]', - 'type' => 'control', - 'control' => 'ast-description', - 'section' => $_section, - 'priority' => 1, - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'active_callback' => array( $this, 'is_transparent_header_enabled' ), - 'help' => $this->get_help_text_notice( 'transparent-header' ), - ), - - /** - * Option: Transparent Header Section - Link. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-logo-link]', - 'type' => 'control', - 'control' => 'ast-customizer-link', - 'section' => $_section, - 'priority' => 1, - 'link_type' => 'control', - 'linked' => ASTRA_THEME_SETTINGS . '[transparent-header-logo]', - 'context' => array( - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', - 'operator' => '==', - 'value' => true, - ), - ), - 'link_text' => '' . __( 'Customize Transparent Header.', 'astra' ) . '', - 'active_callback' => array( $this, 'is_transparent_header_enabled' ), - ), - - - /** - * Option: Different retina logo - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[different-retina-logo]', - 'type' => 'control', - 'control' => 'ast-toggle-control', - 'section' => $_section, - 'title' => __( 'Different Logo For Retina Devices?', 'astra' ), - 'default' => astra_get_option( 'different-retina-logo' ), - 'priority' => 5, - 'transport' => 'postMessage', - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - 'context' => array( - array( - 'setting' => 'custom_logo', - 'operator' => '!=', - 'value' => '', - ), - Astra_Builder_Helper::$general_tab_config, - ), - 'partial' => array( - 'selector' => '.site-branding', - 'container_inclusive' => false, - 'render_callback' => 'Astra_Builder_Header::site_identity', - ), - ), - - /** - * Option: Retina logo selector - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-header-retina-logo]', - 'default' => astra_get_option( 'ast-header-retina-logo' ), - 'type' => 'control', - 'control' => 'image', - 'sanitize_callback' => 'esc_url_raw', - 'section' => 'title_tagline', - 'context' => array( - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-retina-logo]', - 'operator' => '!=', - 'value' => 0, - ), - Astra_Builder_Helper::$general_tab_config, - ), - 'priority' => 5.5, - 'title' => __( 'Retina Logo', 'astra' ), - 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), - 'transport' => 'postMessage', - 'partial' => array( - 'selector' => '.site-branding', - 'container_inclusive' => false, - 'render_callback' => 'Astra_Builder_Header::site_identity', - ), - ), - - /** - * Option: Inherit Desktop logo - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[different-mobile-logo]', - 'type' => 'control', - 'control' => 'ast-toggle-control', - 'default' => astra_get_option( 'different-mobile-logo' ), - 'section' => 'title_tagline', - 'title' => __( 'Different Logo For Mobile Devices?', 'astra' ), - 'priority' => 5.5, - 'context' => array( - array( - 'setting' => 'custom_logo', - 'operator' => '!=', - 'value' => '', - ), - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => 'ast_selected_device', - 'operator' => 'in', - 'value' => array( 'tablet', 'mobile' ), - ), - ), - 'transport' => 'postMessage', - 'partial' => array( - 'selector' => '.site-branding', - 'container_inclusive' => false, - 'render_callback' => 'Astra_Builder_Header::site_identity', - ), - 'divider' => array( 'ast_class' => 'ast-top-divider' ), - ), - - /** - * Option: Mobile header logo - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[mobile-header-logo]', - 'default' => astra_get_option( 'mobile-header-logo' ), - 'type' => 'control', - 'control' => 'image', - 'sanitize_callback' => 'esc_url_raw', - 'section' => 'title_tagline', - 'priority' => 6, - 'title' => __( 'Mobile Logo (optional)', 'astra' ), - 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), - 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), - 'context' => array( - array( - 'setting' => ASTRA_THEME_SETTINGS . '[different-mobile-logo]', - 'operator' => '==', - 'value' => '1', - ), - Astra_Builder_Helper::$general_tab_config, - array( - 'setting' => 'ast_selected_device', - 'operator' => 'in', - 'value' => array( 'tablet', 'mobile' ), - ), - ), - ), - - /** - * Option: Logo Width - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-header-responsive-logo-width]', - 'type' => 'control', - 'control' => 'ast-responsive-slider', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'default' => astra_get_option( 'ast-header-responsive-logo-width' ), - 'priority' => 7, - 'title' => __( 'Logo Width', 'astra' ), - 'suffix' => 'px', - 'input_attrs' => array( - 'min' => 0, - 'step' => 1, - 'max' => 600, - ), - 'divider' => array( 'ast_class' => 'ast-top-section-divider ast-bottom-section-divider' ), - ), - - array( - 'name' => ASTRA_THEME_SETTINGS . '[display-site-title-responsive]', - 'default' => astra_get_option( 'display-site-title-responsive' ), - 'type' => 'control', - 'control' => 'ast-multi-selector', - 'section' => $_section, - 'priority' => 8, - 'title' => __( 'Site Title Visibility', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - 'transport' => 'postMessage', - 'choices' => array( - 'desktop' => 'customizer-desktop', - 'tablet' => 'customizer-tablet', - 'mobile' => 'customizer-mobile', - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider ast-bottom-section-divider' ), - ), - - /** - * Option: Display Tagline - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[display-site-tagline-responsive]', - 'default' => astra_get_option( 'display-site-tagline-responsive' ), - 'type' => 'control', - 'control' => 'ast-multi-selector', - 'section' => $_section, - 'priority' => 12, - 'title' => __( 'Site Tagline Visibility', 'astra' ), - 'context' => Astra_Builder_Helper::$general_tab, - 'transport' => 'postMessage', - 'choices' => array( - 'desktop' => 'customizer-desktop', - 'tablet' => 'customizer-tablet', - 'mobile' => 'customizer-mobile', - ), - 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), - ), - - /** - * Option: Logo inline title. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[logo-title-inline]', - 'default' => astra_get_option( 'logo-title-inline' ), - 'type' => 'control', - 'context' => array( Astra_Builder_Helper::$general_tab_config ), - 'control' => 'ast-toggle-control', - 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), - 'section' => $_section, - 'title' => __( 'Inline Logo & Site Title', 'astra' ), - 'priority' => 8, - 'transport' => 'postMessage', - 'partial' => array( - 'selector' => '.site-branding', - 'container_inclusive' => false, - 'render_callback' => 'Astra_Builder_Header::site_identity', - ), - ), - ); - - $_configs = array_merge( - $_configs, - array( - // Color Group control for site title colors. - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', - 'default' => astra_get_option( 'site-identity-title-color-group' ), - 'type' => 'control', - 'control' => 'ast-color-group', - 'title' => Astra_Builder_Helper::$is_header_footer_builder_active ? __( 'Title Color', 'astra' ) : __( 'Colors', 'astra' ), - 'section' => $_section, - 'responsive' => false, - 'transport' => 'postMessage', - 'priority' => 8, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', - ), - - // Option: Site Title Color. - array( - 'name' => 'header-color-site-title', - 'parent' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', - 'section' => 'title_tagline', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'priority' => 5, - 'default' => astra_get_option( 'header-color-site-title' ), - 'transport' => 'postMessage', - 'title' => __( 'Normal', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Site Title Hover Color. - array( - 'name' => 'header-color-h-site-title', - 'parent' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', - 'section' => 'title_tagline', - 'type' => 'sub-control', - 'control' => 'ast-color', - 'priority' => 10, - 'transport' => 'postMessage', - 'default' => astra_get_option( 'header-color-h-site-title' ), - 'title' => __( 'Hover', 'astra' ), - 'context' => Astra_Builder_Helper::$design_tab, - ), - - // Option: Site Tagline Color. - array( - 'name' => ASTRA_THEME_SETTINGS . '[header-color-site-tagline]', - 'type' => 'control', - 'control' => 'ast-color', - 'transport' => 'postMessage', - 'default' => astra_get_option( 'header-color-site-tagline' ), - 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Tagline', 'astra' ) : __( 'Color', 'astra' ), - 'section' => 'title_tagline', - 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 8 : 12, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', - 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), - ), - ) - ); - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - $_configs = array_merge( - $_configs, - array( - /** - * Notice - Transparent meta header enabled on page. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-meta-enabled]', - 'type' => 'control', - 'control' => 'ast-description', - 'section' => 'section-header-builder-layout', - 'priority' => 1, - 'active_callback' => array( $this, 'is_transparent_header_enabled' ), - 'help' => $this->get_help_text_notice( 'transparent-meta' ), - ), - - /** - * Notice Link - Transparent meta header enabled on page. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-meta-link]', - 'type' => 'control', - 'control' => 'ast-customizer-link', - 'section' => 'section-header-builder-layout', - 'priority' => 1, - 'link_type' => 'section', - 'linked' => 'section-transparent-header', - 'link_text' => '' . __( 'Customize Transparent Header.', 'astra' ) . '', - 'active_callback' => array( $this, 'is_transparent_header_enabled' ), - ), - - /** - * Link to the site icon. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-icon-link]', - 'type' => 'control', - 'control' => 'ast-customizer-link', - 'section' => 'title_tagline', - 'priority' => 340, - 'link_type' => 'control', - 'is_button_link' => true, - 'linked' => 'site_icon', - 'link_text' => __( 'Site Icon', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), - ), - ) - ); - } - - if ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'typography' ) ) { - - $new_configs = array( - - /** - * Option: Header Site Title. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-title-typography]', - 'default' => astra_get_option( 'site-title-typography' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Title Font', 'astra' ) : __( 'Typography', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 16 : 8, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', - ), - - /** - * Options: Site Tagline. - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-tagline-typography]', - 'default' => astra_get_option( 'site-tagline-typography' ), - 'type' => 'control', - 'control' => 'ast-settings-group', - 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Tagline Font', 'astra' ) : __( 'Typography', 'astra' ), - 'section' => $_section, - 'transport' => 'postMessage', - 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 20 : 11, - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', - ), - ); - - $_configs = array_merge( $_configs, $new_configs ); - } - - $configurations = array_merge( $configurations, $_configs ); - return $configurations; - } - - /** - * Check if transparent header is enabled on the page being previewed. - * - * @since 2.4.5 - * @return boolean True - If Transparent Header is enabled, False if not. - */ - public function is_transparent_header_enabled() { - $status = Astra_Ext_Transparent_Header_Markup::is_transparent_header(); - return ( true === $status ? true : false ); - } - - /** - * Help notice message to be displayed when the page that is being previewed has Logo set from Transparent Header. - * - * @since 2.4.5 - * @param String $context Type of notice message to be returned. - * @return String HTML Markup for the help notice. - */ - private function get_help_text_notice( $context ) { - - switch ( $context ) { - case 'transparent-header': - $notice = '

' . __( 'The Logo on this page is set from the Transparent Header Section. Please click the link below to customize Transparent Header Logo.', 'astra' ) . '

'; - break; - case 'transparent-meta': - $notice = '

' . __( 'The header on this page is set from the Transparent Header.', 'astra' ) . '

' . __( 'Please click the link below to customize Transparent Header', 'astra' ) . '

'; - break; - default: - $notice = ''; - } - return $notice; - } - } -} - - -new Astra_Site_Identity_Configs(); + ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-logo]', + 'type' => 'control', + 'control' => 'ast-description', + 'section' => $_section, + 'priority' => 1, + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'active_callback' => array( $this, 'is_transparent_header_enabled' ), + 'help' => $this->get_help_text_notice( 'transparent-header' ), + ), + + /** + * Option: Transparent Header Section - Link. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-logo-link]', + 'type' => 'control', + 'control' => 'ast-customizer-link', + 'section' => $_section, + 'priority' => 1, + 'link_type' => 'control', + 'linked' => ASTRA_THEME_SETTINGS . '[transparent-header-logo]', + 'context' => array( + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-transparent-logo]', + 'operator' => '==', + 'value' => true, + ), + ), + 'link_text' => '' . __( 'Customize Transparent Header.', 'astra' ) . '', + 'active_callback' => array( $this, 'is_transparent_header_enabled' ), + ), + + + /** + * Option: Different retina logo + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[different-retina-logo]', + 'type' => 'control', + 'control' => 'ast-toggle-control', + 'section' => $_section, + 'title' => __( 'Different Logo For Retina Devices?', 'astra' ), + 'default' => astra_get_option( 'different-retina-logo' ), + 'priority' => 5, + 'transport' => 'postMessage', + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + 'context' => array( + array( + 'setting' => 'custom_logo', + 'operator' => '!=', + 'value' => '', + ), + Astra_Builder_Helper::$general_tab_config, + ), + 'partial' => array( + 'selector' => '.site-branding', + 'container_inclusive' => false, + 'render_callback' => 'Astra_Builder_Header::site_identity', + ), + ), + + /** + * Option: Retina logo selector + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-header-retina-logo]', + 'default' => astra_get_option( 'ast-header-retina-logo' ), + 'type' => 'control', + 'control' => 'image', + 'sanitize_callback' => 'esc_url_raw', + 'section' => 'title_tagline', + 'context' => array( + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-retina-logo]', + 'operator' => '!=', + 'value' => 0, + ), + Astra_Builder_Helper::$general_tab_config, + ), + 'priority' => 5.5, + 'title' => __( 'Retina Logo', 'astra' ), + 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), + 'transport' => 'postMessage', + 'partial' => array( + 'selector' => '.site-branding', + 'container_inclusive' => false, + 'render_callback' => 'Astra_Builder_Header::site_identity', + ), + ), + + /** + * Option: Inherit Desktop logo + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[different-mobile-logo]', + 'type' => 'control', + 'control' => 'ast-toggle-control', + 'default' => astra_get_option( 'different-mobile-logo' ), + 'section' => 'title_tagline', + 'title' => __( 'Different Logo For Mobile Devices?', 'astra' ), + 'priority' => 5.5, + 'context' => array( + array( + 'setting' => 'custom_logo', + 'operator' => '!=', + 'value' => '', + ), + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => 'ast_selected_device', + 'operator' => 'in', + 'value' => array( 'tablet', 'mobile' ), + ), + ), + 'transport' => 'postMessage', + 'partial' => array( + 'selector' => '.site-branding', + 'container_inclusive' => false, + 'render_callback' => 'Astra_Builder_Header::site_identity', + ), + 'divider' => array( 'ast_class' => 'ast-top-divider' ), + ), + + /** + * Option: Mobile header logo + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[mobile-header-logo]', + 'default' => astra_get_option( 'mobile-header-logo' ), + 'type' => 'control', + 'control' => 'image', + 'sanitize_callback' => 'esc_url_raw', + 'section' => 'title_tagline', + 'priority' => 6, + 'title' => __( 'Mobile Logo (optional)', 'astra' ), + 'library_filter' => array( 'gif', 'jpg', 'jpeg', 'png', 'ico' ), + 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), + 'context' => array( + array( + 'setting' => ASTRA_THEME_SETTINGS . '[different-mobile-logo]', + 'operator' => '==', + 'value' => '1', + ), + Astra_Builder_Helper::$general_tab_config, + array( + 'setting' => 'ast_selected_device', + 'operator' => 'in', + 'value' => array( 'tablet', 'mobile' ), + ), + ), + ), + + /** + * Option: Logo Width + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-header-responsive-logo-width]', + 'type' => 'control', + 'control' => 'ast-responsive-slider', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'default' => astra_get_option( 'ast-header-responsive-logo-width' ), + 'priority' => 7, + 'title' => __( 'Logo Width', 'astra' ), + 'suffix' => 'px', + 'input_attrs' => array( + 'min' => 0, + 'step' => 1, + 'max' => 600, + ), + 'divider' => array( 'ast_class' => 'ast-top-section-divider ast-bottom-section-divider' ), + ), + + array( + 'name' => ASTRA_THEME_SETTINGS . '[display-site-title-responsive]', + 'default' => astra_get_option( 'display-site-title-responsive' ), + 'type' => 'control', + 'control' => 'ast-multi-selector', + 'section' => $_section, + 'priority' => 8, + 'title' => __( 'Site Title Visibility', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + 'transport' => 'postMessage', + 'choices' => array( + 'desktop' => 'customizer-desktop', + 'tablet' => 'customizer-tablet', + 'mobile' => 'customizer-mobile', + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider ast-bottom-section-divider' ), + ), + + /** + * Option: Display Tagline + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[display-site-tagline-responsive]', + 'default' => astra_get_option( 'display-site-tagline-responsive' ), + 'type' => 'control', + 'control' => 'ast-multi-selector', + 'section' => $_section, + 'priority' => 12, + 'title' => __( 'Site Tagline Visibility', 'astra' ), + 'context' => Astra_Builder_Helper::$general_tab, + 'transport' => 'postMessage', + 'choices' => array( + 'desktop' => 'customizer-desktop', + 'tablet' => 'customizer-tablet', + 'mobile' => 'customizer-mobile', + ), + 'divider' => array( 'ast_class' => 'ast-top-dotted-divider' ), + ), + + /** + * Option: Logo inline title. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[logo-title-inline]', + 'default' => astra_get_option( 'logo-title-inline' ), + 'type' => 'control', + 'context' => array( Astra_Builder_Helper::$general_tab_config ), + 'control' => 'ast-toggle-control', + 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), + 'section' => $_section, + 'title' => __( 'Inline Logo & Site Title', 'astra' ), + 'priority' => 8, + 'transport' => 'postMessage', + 'partial' => array( + 'selector' => '.site-branding', + 'container_inclusive' => false, + 'render_callback' => 'Astra_Builder_Header::site_identity', + ), + ), + ); + + $_configs = array_merge( + $_configs, + array( + // Color Group control for site title colors. + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', + 'default' => astra_get_option( 'site-identity-title-color-group' ), + 'type' => 'control', + 'control' => 'ast-color-group', + 'title' => Astra_Builder_Helper::$is_header_footer_builder_active ? __( 'Title Color', 'astra' ) : __( 'Colors', 'astra' ), + 'section' => $_section, + 'responsive' => false, + 'transport' => 'postMessage', + 'priority' => 8, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', + ), + + // Option: Site Title Color. + array( + 'name' => 'header-color-site-title', + 'parent' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', + 'section' => 'title_tagline', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'priority' => 5, + 'default' => astra_get_option( 'header-color-site-title' ), + 'transport' => 'postMessage', + 'title' => __( 'Normal', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Site Title Hover Color. + array( + 'name' => 'header-color-h-site-title', + 'parent' => ASTRA_THEME_SETTINGS . '[site-identity-title-color-group]', + 'section' => 'title_tagline', + 'type' => 'sub-control', + 'control' => 'ast-color', + 'priority' => 10, + 'transport' => 'postMessage', + 'default' => astra_get_option( 'header-color-h-site-title' ), + 'title' => __( 'Hover', 'astra' ), + 'context' => Astra_Builder_Helper::$design_tab, + ), + + // Option: Site Tagline Color. + array( + 'name' => ASTRA_THEME_SETTINGS . '[header-color-site-tagline]', + 'type' => 'control', + 'control' => 'ast-color', + 'transport' => 'postMessage', + 'default' => astra_get_option( 'header-color-site-tagline' ), + 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Tagline', 'astra' ) : __( 'Color', 'astra' ), + 'section' => 'title_tagline', + 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 8 : 12, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', + 'divider' => array( 'ast_class' => 'ast-bottom-section-divider' ), + ), + ) + ); + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + $_configs = array_merge( + $_configs, + array( + /** + * Notice - Transparent meta header enabled on page. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-meta-enabled]', + 'type' => 'control', + 'control' => 'ast-description', + 'section' => 'section-header-builder-layout', + 'priority' => 1, + 'active_callback' => array( $this, 'is_transparent_header_enabled' ), + 'help' => $this->get_help_text_notice( 'transparent-meta' ), + ), + + /** + * Notice Link - Transparent meta header enabled on page. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[ast-callback-notice-header-transparent-header-meta-link]', + 'type' => 'control', + 'control' => 'ast-customizer-link', + 'section' => 'section-header-builder-layout', + 'priority' => 1, + 'link_type' => 'section', + 'linked' => 'section-transparent-header', + 'link_text' => '' . __( 'Customize Transparent Header.', 'astra' ) . '', + 'active_callback' => array( $this, 'is_transparent_header_enabled' ), + ), + + /** + * Link to the site icon. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-icon-link]', + 'type' => 'control', + 'control' => 'ast-customizer-link', + 'section' => 'title_tagline', + 'priority' => 340, + 'link_type' => 'control', + 'is_button_link' => true, + 'linked' => 'site_icon', + 'link_text' => __( 'Site Icon', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-bottom-divider' ), + ), + ) + ); + } + + if ( defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'typography' ) ) { + + $new_configs = array( + + /** + * Option: Header Site Title. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-title-typography]', + 'default' => astra_get_option( 'site-title-typography' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Title Font', 'astra' ) : __( 'Typography', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 16 : 8, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', + ), + + /** + * Options: Site Tagline. + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-tagline-typography]', + 'default' => astra_get_option( 'site-tagline-typography' ), + 'type' => 'control', + 'control' => 'ast-settings-group', + 'title' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? __( 'Tagline Font', 'astra' ) : __( 'Typography', 'astra' ), + 'section' => $_section, + 'transport' => 'postMessage', + 'priority' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? 20 : 11, + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? array( Astra_Builder_Helper::$design_tab_config ) : '', + ), + ); + + $_configs = array_merge( $_configs, $new_configs ); + } + + $configurations = array_merge( $configurations, $_configs ); + return $configurations; + } + + /** + * Check if transparent header is enabled on the page being previewed. + * + * @since 2.4.5 + * @return boolean True - If Transparent Header is enabled, False if not. + */ + public function is_transparent_header_enabled() { + $status = Astra_Ext_Transparent_Header_Markup::is_transparent_header(); + return ( true === $status ? true : false ); + } + + /** + * Help notice message to be displayed when the page that is being previewed has Logo set from Transparent Header. + * + * @since 2.4.5 + * @param String $context Type of notice message to be returned. + * @return String HTML Markup for the help notice. + */ + private function get_help_text_notice( $context ) { + + switch ( $context ) { + case 'transparent-header': + $notice = '

' . __( 'The Logo on this page is set from the Transparent Header Section. Please click the link below to customize Transparent Header Logo.', 'astra' ) . '

'; + break; + case 'transparent-meta': + $notice = '

' . __( 'The header on this page is set from the Transparent Header.', 'astra' ) . '

' . __( 'Please click the link below to customize Transparent Header', 'astra' ) . '

'; + break; + default: + $notice = ''; + } + return $notice; + } + } +} + + +new Astra_Site_Identity_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-archive-typo-configs.php b/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-archive-typo-configs.php index 74ffedbf9..6b3585da7 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-archive-typo-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-archive-typo-configs.php @@ -1,130 +1,130 @@ - ASTRA_THEME_SETTINGS . '[ast-blog-pro-items]', - 'type' => 'control', - 'control' => 'ast-upgrade', - 'renderAs' => 'list', - 'choices' => array( - 'one' => array( - 'title' => __( 'Archive blog layout', 'astra' ), - ), - 'two' => array( - 'title' => __( 'Grid, Masonry layout', 'astra' ), - ), - 'three' => array( - 'title' => __( 'Custom featured images size', 'astra' ), - ), - 'four' => array( - 'title' => __( 'Archive pagination options', 'astra' ), - ), - 'six' => array( - 'title' => __( 'Extended typography options', 'astra' ), - ), - 'seven' => array( - 'title' => __( 'Extended spacing options', 'astra' ), - ), - 'eight' => array( - 'title' => __( 'Archive read time', 'astra' ), - ), - 'nine' => array( - 'title' => __( 'Archive excerpt options', 'astra' ), - ), - 'ten' => array( - 'title' => __( 'Extended spacing options', 'astra' ), - ), - ), - 'section' => 'section-blog', - 'default' => '', - 'priority' => 999, - 'context' => array(), - 'title' => __( 'Take your blog to the next level with powerful design features', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), - ), - ); - } - - if ( ! defined( 'ASTRA_EXT_VER' ) || ( defined( 'ASTRA_EXT_VER' ) && ! Astra_Ext_Extension::is_active( 'typography' ) ) ) { - $new_configs = array( - /** - * Option: Blog - Post Title Font Size - */ - array( - 'name' => ASTRA_THEME_SETTINGS . '[font-size-page-title]', - 'control' => 'ast-responsive-slider', - 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), - 'section' => 'section-blog', - 'type' => 'control', - 'transport' => 'postMessage', - 'title' => __( 'Post Title Font Size', 'astra' ), - 'priority' => 140, - 'default' => astra_get_option( 'font-size-page-title' ), - 'suffix' => array( 'px', 'em' ), - 'input_attrs' => array( - 'px' => array( - 'min' => 0, - 'step' => 1, - 'max' => 100, - ), - 'em' => array( - 'min' => 0, - 'step' => 0.01, - 'max' => 20, - ), - ), - 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? - Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, - 'divider' => array( 'ast_class' => 'ast-section-spacing' ), - ), - ); - $_configs = array_merge( $_configs, $new_configs ); - } - - $configurations = array_merge( $configurations, $_configs ); - - return $configurations; - } - } -} - -new Astra_Archive_Typo_Configs(); + ASTRA_THEME_SETTINGS . '[ast-blog-pro-items]', + 'type' => 'control', + 'control' => 'ast-upgrade', + 'renderAs' => 'list', + 'choices' => array( + 'one' => array( + 'title' => __( 'Archive blog layout', 'astra' ), + ), + 'two' => array( + 'title' => __( 'Grid, Masonry layout', 'astra' ), + ), + 'three' => array( + 'title' => __( 'Custom featured images size', 'astra' ), + ), + 'four' => array( + 'title' => __( 'Archive pagination options', 'astra' ), + ), + 'six' => array( + 'title' => __( 'Extended typography options', 'astra' ), + ), + 'seven' => array( + 'title' => __( 'Extended spacing options', 'astra' ), + ), + 'eight' => array( + 'title' => __( 'Archive read time', 'astra' ), + ), + 'nine' => array( + 'title' => __( 'Archive excerpt options', 'astra' ), + ), + 'ten' => array( + 'title' => __( 'Extended spacing options', 'astra' ), + ), + ), + 'section' => 'section-blog', + 'default' => '', + 'priority' => 999, + 'context' => array(), + 'title' => __( 'Take your blog to the next level with powerful design features', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), + ), + ); + } + + if ( ! defined( 'ASTRA_EXT_VER' ) || ( defined( 'ASTRA_EXT_VER' ) && ! Astra_Ext_Extension::is_active( 'typography' ) ) ) { + $new_configs = array( + /** + * Option: Blog - Post Title Font Size + */ + array( + 'name' => ASTRA_THEME_SETTINGS . '[font-size-page-title]', + 'control' => 'ast-responsive-slider', + 'sanitize_callback' => array( 'Astra_Customizer_Sanitizes', 'sanitize_responsive_slider' ), + 'section' => 'section-blog', + 'type' => 'control', + 'transport' => 'postMessage', + 'title' => __( 'Post Title Font Size', 'astra' ), + 'priority' => 140, + 'default' => astra_get_option( 'font-size-page-title' ), + 'suffix' => array( 'px', 'em' ), + 'input_attrs' => array( + 'px' => array( + 'min' => 0, + 'step' => 1, + 'max' => 100, + ), + 'em' => array( + 'min' => 0, + 'step' => 0.01, + 'max' => 20, + ), + ), + 'context' => ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) ? + Astra_Builder_Helper::$design_tab : Astra_Builder_Helper::$general_tab, + 'divider' => array( 'ast_class' => 'ast-section-spacing' ), + ), + ); + $_configs = array_merge( $_configs, $new_configs ); + } + + $configurations = array_merge( $configurations, $_configs ); + + return $configurations; + } + } +} + +new Astra_Archive_Typo_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-single-typo-configs.php b/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-single-typo-configs.php index 5c4ce1d24..7c29380ac 100644 --- a/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-single-typo-configs.php +++ b/wp-content/themes/astra/inc/customizer/configurations/typography/class-astra-single-typo-configs.php @@ -1,93 +1,93 @@ - ASTRA_THEME_SETTINGS . '[ast-single-post-items]', - 'type' => 'control', - 'control' => 'ast-upgrade', - 'renderAs' => 'list', - 'choices' => array( - 'one' => array( - 'title' => __( 'Author info', 'astra' ), - ), - 'two' => array( - 'title' => __( 'Auto load previous posts', 'astra' ), - ), - 'three' => array( - 'title' => __( 'Single post navigation control', 'astra' ), - ), - 'four' => array( - 'title' => __( 'Custom featured images size', 'astra' ), - ), - 'seven' => array( - 'title' => __( 'Single post read time', 'astra' ), - ), - 'five' => array( - 'title' => __( 'Extended typography options', 'astra' ), - ), - 'six' => array( - 'title' => __( 'Extended spacing options', 'astra' ), - ), - 'eight' => array( - 'title' => __( 'Social sharing options', 'astra' ), - ), - ), - 'section' => 'section-blog-single', - 'default' => '', - 'priority' => 999, - 'context' => array(), - 'title' => __( 'Extensive range of tools to help blog pages stand out.', 'astra' ), - 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), - ), - ); - } - - $configurations = array_merge( $configurations, $_configs ); - - return $configurations; - } - } -} - -new Astra_Single_Typo_Configs(); + ASTRA_THEME_SETTINGS . '[ast-single-post-items]', + 'type' => 'control', + 'control' => 'ast-upgrade', + 'renderAs' => 'list', + 'choices' => array( + 'one' => array( + 'title' => __( 'Author info', 'astra' ), + ), + 'two' => array( + 'title' => __( 'Auto load previous posts', 'astra' ), + ), + 'three' => array( + 'title' => __( 'Single post navigation control', 'astra' ), + ), + 'four' => array( + 'title' => __( 'Custom featured images size', 'astra' ), + ), + 'seven' => array( + 'title' => __( 'Single post read time', 'astra' ), + ), + 'five' => array( + 'title' => __( 'Extended typography options', 'astra' ), + ), + 'six' => array( + 'title' => __( 'Extended spacing options', 'astra' ), + ), + 'eight' => array( + 'title' => __( 'Social sharing options', 'astra' ), + ), + ), + 'section' => 'section-blog-single', + 'default' => '', + 'priority' => 999, + 'context' => array(), + 'title' => __( 'Extensive range of tools to help blog pages stand out.', 'astra' ), + 'divider' => array( 'ast_class' => 'ast-top-section-divider' ), + ), + ); + } + + $configurations = array_merge( $configurations, $_configs ); + + return $configurations; + } + } +} + +new Astra_Single_Typo_Configs(); diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min-rtl.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min-rtl.css index 1aded2cc6..38aa2c7b9 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min-rtl.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min-rtl.css @@ -1 +1 @@ -.customize-control-ast-selector .ast-alignment-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-selector .ast-alignment-inner-wrap,.customize-control-ast-selector .ast-selector-responsive-wrap{display:none}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active{flex:1 1 auto;display:flex}.customize-control-ast-selector .components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.ast-alignment-inner-wrap .components-button{white-space:nowrap;color:var(--ast-customizer-color-5);text-decoration:none;text-shadow:none;outline:unset;border:1px solid var(--ast-customizer-color-7);width:100%;height:100%;text-align:center;justify-content:center;border-radius:unset;transition:none;font-weight:400}.ast-alignment-inner-wrap.active .components-button.is-primary{color:var(--ast-customizer-color-10);background:var(--ast-customizer-color-1)}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active .components-button:not(.is-primary):hover{color:var(--ast-customizer-color-5)!important}.customize-control-ast-selector .components-button .ahfb-icon-set svg{width:16px;height:16px;fill:var(--ast-customizer-color-8)}.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg circle,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg path:not(.ast-hf-account-unfill){fill:var(--ast-customizer-color-10)}.customize-control-ast-selector .ast-alignment-inner-wrap:first-child .components-button{border-radius:0 3px 3px 0}.customize-control-ast-selector .ast-alignment-inner-wrap:last-child .components-button{border-radius:3px 0 0 3px}.ast-alignment-wrapper .ast-alignment-inner-wrap:not(:first-child):not(:last-child) .components-button{border-left:none}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button{border-radius:unset;font-size:12px;padding:9px 0 10px}.customize-control-ast-selector .ast-selector-responsive-wrap.active{display:flex;flex:1 1 0}.customize-control-ast-selector .ast-responsive-btns{position:relative;right:6px;top:0}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button:focus:not(:disabled){box-shadow:none}.customize-control-ast-selector .components-button .ahfb-icon-set{display:flex}.customize-control-ast-selector{margin-bottom:1px}.ast-alignment-inner-wrap.active button.components-button.is-primary{border-color:var(--ast-customizer-color-3)}#customize-controls .customize-control-notifications-container{margin:0}.customize-control-ast-background .screen-reader-text{top:initial}.customize-control-ast-background .background-container h4{font-weight:400}.customize-control-ast-background .background-attachment h4,.customize-control-ast-background .background-color h4,.customize-control-ast-background .background-position h4,.customize-control-ast-background .background-repeat h4,.customize-control-ast-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-background .background-color{margin-bottom:12px}.customize-control-ast-background .background-repeat{margin:15px 0 8px 0}.customize-control-ast-background .background-attachment .buttonset,.customize-control-ast-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-background .background-attachment .buttonset .switch-label,.customize-control-ast-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-left:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-background .background-size .buttonset .switch-label:last-child{margin-left:0}.customize-control-ast-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-background .more-settings .message,.customize-control-ast-responsive-background .more-settings .message{margin-left:5px}.customize-control-ast-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-background .arrow-icon{margin-right:5px}.customize-control-ast-background .customize-control-title{display:block}.customize-control-ast-background .astra-color-picker-wrap{margin-top:18px}.ast-field-settings-modal .customize-control-ast-background.customize-control,.ast-field-settings-modal .customize-control-ast-background.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-background .more-settings{margin-top:6px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .ast-color-btn-reset-wrap{left:59px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .color-button-wrap{left:16px}.ast-field-settings-modal .customize-control-ast-background .astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 10px 20px 20px}.customize-control-ast-border .customize-control-title{display:inline-block}.customize-control-ast-border .ast-border-outer-wrapper{display:flex;position:relative}.customize-control-ast-border .ast-border-wrapper{display:flex}.customize-control-ast-border .ast-border-btns{display:block;text-align:center;line-height:2;border:1px solid #ddd;background-color:#fff;border-radius:3px 0 0 3px}.customize-control-ast-border .ast-border-btns>li{margin-bottom:0;display:none;width:35px;height:26px}.customize-control-ast-border .ast-border-btns>li.active{display:inline-block}.customize-control-ast-border .ast-border-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;opacity:.75;outline:0;width:100%;height:100%}.customize-control-ast-border .ast-border-btns button[type=button]>i{width:15px;height:15px;font-size:15px;margin-top:1px}.customize-control-ast-border .input-wrapper .ast-border-wrapper{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;margin:0 2px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:first-child{margin-right:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s;-moz-appearance:textfield}.customize-control-ast-border .input-wrapper .ast-border-wrapper li .ast-border-connected{color:#fff}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:last-child input.ast-border-input{border-left-width:1px;border-radius:3px 0 0 3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper.active{display:flex}.customize-control-ast-border .input-wrapper .ast-border-wrapper span.ast-border-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link .ast-border-connected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-disconnected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-connected{display:block}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span{width:100%;height:26px;line-height:26px;font-size:14px;background-color:transparent;border-radius:3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span svg{pointer-events:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link{margin-top:4px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus,.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:hover{border-color:var(--ast-customizer-color-2)}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus{outline:0}.customize-control-ast-border .input-wrapper.ast-border-wrapper{margin-bottom:8px}.customize-control-ast-border .ast-range-unit{position:absolute;left:0;top:0;padding-left:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.ast-upgrade-pro-wrap .ast-button-link,.customize-control-ast-button-link .ast-button-link{display:block;padding:10px 0;border-radius:2px;border:1px solid var(--ast-customizer-color-1);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);font-size:13px!important;font-weight:400;line-height:13px!important;text-align:center;cursor:pointer}.ast-upgrade-pro-wrap .ast-button-link:hover,.customize-control-ast-button-link .ast-button-link:hover{background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);border:1px solid var(--ast-customizer-color-1)}.ast-btn-preset-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ast-btn-preset-wrap .ast-btn-style-item{cursor:pointer}.ast-btn-preset-wrap .ast-btn-style-item svg{fill:#646970}.ast-btn-preset-wrap .ast-btn-style-item svg:hover{fill:#565b62}.ast-btn-preset-wrap .ast-btn-style-item.active svg,.ast-btn-preset-wrap .ast-btn-style-item.active svg:hover{fill:#2271b1}.ast-reset-btn-preset-wrap{position:absolute;display:inline-block;line-height:1;left:0;top:0}.ast-reset-btn-preset-wrap .components-button.is-secondary,.ast-reset-btn-preset-wrap .components-button.is-secondary:hover{box-shadow:none;background:0 0;color:var(--ast-customizer-color-1)}.color-group-item .components-tooltip .components-popover__content{border-radius:3px}.color-group-item .components-tooltip .components-popover__content>div{padding:5px 10px;line-height:1}.customize-control.customize-control-ast-color-group{display:flex;flex-wrap:wrap}.customize-control.customize-control-ast-color-group .ast-toggle-desc-wrap{flex:1 1 auto;align-self:center}.customize-control.customize-control-ast-color-group .customize-control-title{margin-bottom:5px}.customize-control.customize-control-ast-color-group .ast-field-color-group-wrap{justify-content:flex-end;display:flex;max-height:28px}.customize-control.customize-control-ast-color-group .color-button-wrap{position:inherit}.customize-control.customize-control-ast-color-group .color-group-item:not(:last-child){margin-left:8px}.customize-control.customize-control-ast-color-group .ast-color-group-reset{left:72px;top:6px;cursor:pointer}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap{display:none}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap.active{justify-content:flex-end;display:flex}.customize-control.customize-control-ast-color-group .ast-responsive-btns{position:relative;left:-5px;top:3px}.customize-control.customize-control-ast-color-group .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control.customize-control-ast-color-group .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset{left:110px}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset.ast-single-color-group-set{left:112px}#customize-control-astra-settings-woo-single-page-color-group .ast-color-group-reset{left:145px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-group-reset{top:47px}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:73px}.astra-color-picker-wrap.picker-open+span{display:none}#customize-control-astra-color-palettes .ast-color-palette-wrap>div{margin-bottom:8px;position:relative}#customize-control-astra-color-palettes .color-button-wrap{display:unset;position:relative;left:unset;top:unset;vertical-align:sub;z-index:10}#customize-control-astra-color-palettes .astra-color-picker-wrap{position:absolute;z-index:1;left:0;width:100%;display:none;margin-top:10px}#customize-control-astra-color-palettes .astra-color-picker-wrap.picker-open{display:block}#customize-control-astra-color-palettes .ast-color-palette-label{width:65%;display:inline-block;margin-left:10px;vertical-align:top}#customize-control-astra-color-palettes .ast-color-palette-label input{background:0 0;border:none}#customize-control-astra-color-palettes .ast-color-palette-label input:focus{border:1px solid #000;outline:0;box-shadow:none;background:#fff}.ast-color-palette-wrapper .ast-single-palette-wrap{display:grid;grid-template-columns:repeat(9,1fr);align-items:center;position:relative;gap:2px}.ast-single-palette-wrap .components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:25px;height:25px}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap:first-child{margin-right:0}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap{margin-top:12px;cursor:pointer}#customize-control-astra-color-palettes .ast-reset-btn:disabled{opacity:.6}#customize-control-astra-color-palettes .ast-single-color-container{width:25%;height:48px;display:inline-block}#customize-control-astra-color-palettes .ast-color-palette-wrap>section{text-align:center;outline:0;border-radius:3px;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1px #ddd}.ast-color-palette-container{width:100%;display:inline-grid;grid-template-columns:auto auto;column-gap:16px;row-gap:16px}#customize-control-astra-color-palettes .ast-field-settings-modal{display:none;padding:16px}.ast-color-palette-wrap{transition:all .2s}.ast-color-palette-wrap.active{box-shadow:0 12px 20px -8px rgb(30 41 59 / 16%)}#customize-control-astra-color-palettes .ast-color-palette-wrapper{clear:both}#customize-controls .customize-section-title.is-in-view.is-sticky{z-index:99}#customize-control-astra-color-palettes .ast-palette-selection-wrapper{overflow:hidden;padding:2px}@media (min-width:1800px){#customize-control-astra-color-palettes .astra-color-picker-wrap{width:auto}}#customize-control-astra-color-palettes .ast-color-palette-wrap.active>section{box-shadow:0 0 0 1px #334155}.ast-palette-label-wrap{text-align:center;color:#9ca3af;overflow:hidden;width:100%;box-sizing:border-box;padding:0;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out;font-style:normal;font-weight:600;font-size:10px;line-height:22px;letter-spacing:1.5px;text-transform:uppercase}.ast-color-palette-wrap.active .ast-palette-label-wrap{color:#334155}#customize-control-astra-color-palettes .ast-field-settings-modal{margin-top:-35px}.astra-advanced-color-indicate .global-color{display:none}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color{color:#fff;display:block;opacity:1;position:absolute;right:50%;top:50%;display:block;text-align:center;transform:translate(50%,-50%)}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color svg{width:10px;height:10px;transform:scale(1.5)}#customize-control-astra-color-palettes .ast-adv-toggle-icon{top:-5px}.ast-color-picker-custom-tooltip{position:absolute;top:-30px;bottom:0;right:0;left:0;width:100%;height:100%}.ast-color-picker-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.ast-color-picker-custom-tooltip-wrapper{position:relative}.ast-color-picker-wrap:hover+.ast-color-picker-custom-tooltip-wrapper .ast-color-picker-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-color-palette .components-popover.components-tooltip{position:relative!important;right:5px!important;top:-35px!important;transform:unset!important}.customize-control .components-tooltip{z-index:8!important}.ast-color-palette .components-popover .components-popover__content{bottom:calc(100% + 5px);animation:tooltips-vert .3s ease-out forwards;right:50%;transform:translate(50%,-.5em)}.astra-control-field.astra-color-control{display:flex}.astra-control-field{position:relative;margin-top:10px;margin-bottom:10px}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.astra-control-field .customize-control-title{font-size:14px;font-weight:600;margin-bottom:0;display:flex;align-items:center;letter-spacing:.1px;line-height:18px}.customize-control-title{display:block;font-size:14px;line-height:1;font-weight:600;margin-bottom:4px}.astra-globe-dashicon{color:#fff;background:rgba(0,0,0,.4);border-radius:100%;border:.1px solid rgba(0,0,0,.1);opacity:.78}.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:28px;height:28px;border-radius:50%;margin:0;background:inherit}.component-color-indicator{width:25px;height:16px;display:inline-block}.astra-advanced-color-indicate.component-color-indicator{border:none}.astra-color-icon-indicate.components-button{height:auto;position:relative;transform:scale(1);transition:none;border-radius:50%;padding:0;background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0}.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper{box-sizing:border-box}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type=number].components-text-control__input{min-height:16px;line-height:16px;font-size:12px;width:50px;font-weight:400}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control{flex:1;margin-bottom:0}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label{margin-bottom:0;margin-left:.2em}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field{display:flex;align-items:center;font-size:8px;font-weight:600;font-style:normal;text-transform:uppercase}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field{justify-content:flex-end}.astra-popover-color .components-popover__content .actions{display:flex;justify-content:center;margin-bottom:10px}.astra-popover-color .components-popover__content .actions .button{flex:1;margin-top:10px}.astra-background-picker-wrap .astra-popover-color .components-popover__content{min-width:300px;min-height:340px;max-height:60vh}.color-button-wrap{display:inline-block;position:absolute;left:0;top:0;transform:scale(1);transition:transform .1s ease;height:28px;width:28px}.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:50%;border:1px solid transparent}.components-button.astra-background-icon-indicate{width:50px;height:50px;border-radius:50%;position:relative;transform:scale(1);transition:transform .1s ease;border-radius:50%;padding:0;background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);border:1px solid #dadada;background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0}.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:100%;height:100%;border-radius:4px;margin:0;display:block;position:absolute;border:0;top:0}.components-button.astra-background-icon-indicate>svg.dashicon{position:absolute;transform:translate(50%,-50%);right:50%;top:50%;color:#fff;background:rgba(0,0,0,.6);border-radius:100%;width:16px;height:16px;border:1px solid rgba(0,0,0,.1)}.components-button.astra-background-icon-indicate>svg.dashicon path{transform:translate(-1px,1px)}.components-button.astra-background-icon-indicate img.astra-background-image-preview{display:flex;object-fit:cover;min-width:100%;min-height:100%;position:absolute;top:0}.components-button.astra-background-icon-indicate:hover{box-shadow:none!important}.astra-control-field.astra-color-control{display:flex}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.components-popover.astra-popover-color .components-popover__content{padding:15px 15px 0;box-sizing:initial;background:#fff;border:unset;border-radius:4px;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.customize-control-ast-color.customize-control>*{display:inline}.components-popover.astra-popover-color .components-popover__content .sketch-picker{padding:0 0 5px!important;box-shadow:none!important;border-radius:0!important}.components-popover.astra-popover-color .components-popover__content .attachment-media-view{margin-top:10px;margin-bottom:10px}.astra-swatches-wrap .astra-swatche-item-wrap:hover{transform:scale(1.1)!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item{background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0;padding:0;display:flex;justify-content:center}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon{display:none}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active{box-shadow:0 0 0 8px inset!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon{display:block;color:#fff;background:rgba(0,0,0,.6);width:16px;height:16px;border:1px solid rgba(0,0,0,.1);border-radius:100%}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path{transform:translate(-1px,1px)}.components-button.astra-color-icon-indicate>.dashicon{position:absolute;transform:translate(50%,-50%);right:50%;top:50%;color:#fff;background:rgb(85 93 101);border-radius:4px;width:24px;height:24px;font-size:24px;border:1px solid rgba(0,0,0,.1)}.astra-popover-color{margin:5px -5px 0;background-color:#fff;border-radius:4px;box-shadow:0 8px 16px -4px rgba(30,41,59,.16)}.astra-popover-color .components-h-stack.ast-color-palette{padding:14px 5px}.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette,.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette{padding:0 5px 14px}.astra-popover-color .components-h-stack .components-button{flex:inherit}.astra-popover-color .components-circular-option-picker__option:focus::after{width:auto;height:auto}.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{margin-left:0}.astra-popover-color .components-color-picker .react-colorful__alpha,.astra-popover-color .components-color-picker .react-colorful__hue{width:90%}.ast-field-settings-modal .astra-popover-color{margin-right:0;border:1px solid #dedede}.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs{padding:8px}.components-color-picker__saturation-black{border-radius:4px 4px 0 0}.components-color-picker__saturation-color{border-radius:3px}.components-color-picker__saturation-white{border-radius:3px}.astra-color-picker-wrap{position:absolute;z-index:2;top:30px;right:0;left:0;bottom:0;display:none}.astra-color-picker-wrap .astra-popover-color .components-color-picker,.astra-color-picker-wrap .astra-popover-color .react-colorful{width:100%}.astra-popover-color .components-custom-gradient-picker{z-index:1}.astra-popover-color .components-custom-gradient-picker__ui-line{z-index:-1}.astra-color-picker-wrap.picker-open{display:block}.ast-field-settings-modal .astra-color-picker-wrap{position:relative;top:10px}.ast-color-palette .components-circular-option-picker__option-wrapper{margin-left:6px;position:relative;height:25px;width:25px}.ast-color-btn-clear-wrap{position:absolute;top:1.5px;left:65px}.ast-color-btn-clear-wrap .astra-color-clear-button.components-button{padding:10px 3px;width:20px;height:20px}.ast-clear-btn-inside-picker.components-button,.ast-reset-btn-inside-picker.components-button,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 15px 20px 20px;padding:0 8px;border:1px solid #ccc;box-shadow:none}.ast-clear-btn-inside-picker.components-button:active,.ast-clear-btn-inside-picker.components-button:focus,.ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:none!important;background:0 0!important}.ast-clear-btn-inside-picker{padding:0 8px}.ast-color-btn-reset-wrap{position:absolute;left:36px;top:6px}.ast-color-btn-reset-wrap .ast-reset-btn.components-button,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button{color:#006ba1;height:20px;width:20px;padding:4px;background:0 0;box-shadow:none;cursor:pointer}.astra-color-clear-button.components-button:focus:not(:disabled){outline:unset;border:none}.ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus,.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover{box-shadow:none;border:none;background:0 0}.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled),.astra-color-clear-button.components-button:focus:not(:disabled){box-shadow:0 0 #000;padding:1.5px;border:none}.ast-reset-btn.components-button.is-secondary:disabled span,.astra-color-clear-button.components-button.is-secondary:disabled{color:var(--ast-customizer-color-6)}.ast-field-settings-modal .color-button-wrap{left:16px}.ast-field-settings-modal .ast-color-btn-reset-wrap{left:59px;top:6px}.ast-field-settings-modal .ast-color-btn-clear-wrap{left:78px}.ast-field-settings-modal .customize-control-ast-color.customize-control,.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child{margin-top:25px}.astra-color-picker-wrap .components-color-picker__inputs-wrapper{min-width:unset}.customize-control .ast-gradient-color-picker input[type=number]{width:100%}.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker{align-items:center;flex-direction:inherit}.astra-color-picker-wrap .components-popover__content{width:max-content}.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker,.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful,.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker{width:216px}.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker{flex-direction:column;align-items:start}.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control{margin-bottom:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point{padding:0 16px 16px 16px;border:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus{box-shadow:none;outline:0}.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type=number]{width:100%}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:25px;width:25px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:2.5px;top:0;width:20px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:0;top:0;mix-blend-mode:difference}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches{gap:4px;justify-content:center}.astra-popover-color .components-circular-option-picker__option-wrapper:hover{transform:scale(1.1)}.customize-control-ast-color+.customize-control-ast-color{margin-top:30px}@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{height:22px;width:22px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option{padding:6px 10px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{width:20px;top:-2px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.astra-popover-color .ast-color-palette.components-circular-option-picker{width:auto;padding:16px 8px 0 0}.astra-typography-control .typography-button-wrap>button.components-button.astra-typography-preview-indicate{padding:0 2px}.astra-typography-control .typography-button-wrap>button.components-button{padding:0 4px}.ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:auto;height:auto}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:1px;top:-2px;width:18px}}@supports (-moz-appearance:none){@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{margin-left:5px}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:21px;height:21px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:3px;top:-2px;width:15px}}}.astra-color-icon-indicate.components-button:focus:not(:disabled){box-shadow:unset;outline:unset}.astra-color-icon-indicate.components-button:hover{transform:scale(1.05)}.ast-top-divider.customize-control-ast-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px;display:inline-flex;width:100%;min-height:22px}.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title+.ast-responsive-toggle-control-wrapper,.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap,.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.ast-top-divider .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:67px}.ast-top-divider .ast-divider-title+.ast-control-wrap .color-button-wrap{top:61px}.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap .ast-responsive-btns{top:70px}.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{width:100%}:root{--ast-customizer-color-1:#0284c7;--ast-customizer-color-2:#0ea5e9;--ast-customizer-color-3:#2271b1;--ast-customizer-color-4:#1e293b;--ast-customizer-color-5:#334155;--ast-customizer-color-6:#9CA3AF;--ast-customizer-color-7:#D1D5DB;--ast-customizer-color-8:#4B5563;--ast-customizer-color-9:#fff;--ast-customizer-color-10:#fff;--ast-customizer-color-11:#F5F5F5;--ast-customizer-color-12:#1e293b;--ast-customizer-color-13:#F3F4F6;--ast-customizer-color-14:#cc1818}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{color:var(--ast-customizer-color-5)}.customize-control .ast-spacing-responsive-btns li svg{max-width:13px}.customize-control-ast-customizer-link .customizer-link{font-style:italic;text-decoration:none}.customize-control-ast-customizer-link:empty{display:none}.accordion-section-content::-webkit-scrollbar,.wp-full-overlay-sidebar-content::-webkit-scrollbar{width:6px;background-color:#f1f1f1}.accordion-section-content::-webkit-scrollbar-thumb,.wp-full-overlay-sidebar-content::-webkit-scrollbar-thumb{border-radius:10px;background-color:#d8d8d8}.accordion-section-content::-webkit-scrollbar-track,.wp-full-overlay-sidebar-content::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3);width:6px}.wp-full-overlay-sidebar:after{display:none}#customize-theme-controls .control-section-ast-section-separator{margin-top:15px;border-top:1px solid #ddd;display:block!important}.customize-control:not(.customize-control-nav_menu_item){position:relative;margin-bottom:0;margin-top:16px}.customize-control-ast-background,.customize-control-ast-responsive-background,.customize-control.customize-control-ast-color,.customize-control.customize-control-ast-color-group{display:flex;align-items:center;min-height:28px;flex-wrap:wrap}.customize-control-ast-responsive-background label{white-space:nowrap}.customize-control .media-position-setting label.components-text{text-transform:capitalize;font-size:12px;font-weight:400}.media-position-setting .astra-popover-tabs .components-tab-panel__tabs{padding-right:0;padding-left:0}.customize-control[ID*="-builder-layout-ast-context-tabs"]{margin-top:0}[ID*="-builder-layout-ast-context-tabs"]{margin-top:10px}.customize-section-title{margin:-12px -24px 0 -24px}#customize-controls .customize-info,#customize-controls .customize-info.section-meta,.customize-section-description-container{margin-bottom:0}#customize-controls #sub-accordion-panel-nav_menus .customize-info{margin-bottom:15px}#customize-control-astra-settings-header-transparent-link-heading{margin-top:15px}.components-base-control .components-base-control__field{margin-bottom:0}.components-base-control .components-base-control__field .components-input-control__backdrop{border-color:#d1d5db!important}.customize-control .customize-inside-control-row{padding-top:0;padding-bottom:0}.customize-control-title{display:inline-block;margin-bottom:16px;vertical-align:middle}.customize-control-ast-background .customize-control-title,.customize-control-ast-color .customize-control-title,.customize-control-ast-responsive-background .customize-control-title,.customize-control-ast-responsive-color .customize-control-title{display:contents}.customize-control .ast-control-tooltip{position:absolute;top:0;left:0;color:var(--ast-customizer-color-6);cursor:help}.customize-control.customize-control-ast-toggle-control .ast-control-tooltip{position:absolute;top:50%;left:40px;transform:translateY(-50%);z-index:1}#customize-control-astra-settings-learndash-distraction-free-learning .ast-control-tooltip{padding-top:32px}.customize-control.customize-control-ast-toggle-control.ast-top-dotted-divider .ast-control-tooltip{position:absolute;top:55%;left:40px;transform:translateY(0)}.customize-control.customize-control-ast-toggle-control.ast-top-divider .ast-control-tooltip{top:calc(50% + 15px)}.customize-control.customize-control-ast-toggle-control.ast-bottom-divider .ast-control-tooltip{top:calc(50% - 11px)}.customize-control.customize-control-ast-toggle-control .ast-description-enabled .components-form-toggle{margin-right:25px}.customize-control.customize-control-ast-divider .ast-control-tooltip{position:absolute;top:auto;bottom:3px;left:0}.ast-fields-wrap .customize-control .ast-control-tooltip{left:15px;top:6px}.customize-control .ast-sortable-subfields-wrap .ast-control-tooltip{position:absolute!important;top:40%;left:0;transform:translateY(-50%);z-index:1}.customize-control .ast-sortable-subfields-wrap .customize-control-ast-toggle .ast-control-tooltip{left:30px;top:50%}.ast-top-dotted-divider .dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{top:24px}.customize-control .select2-search input[type=text].select2-search__field{min-height:17px}input[type=text].select2-search__field{line-height:1;border-radius:0}.ast-customizer-notice{margin:0 -12px;padding:12px}#customize-theme-controls .control-section.open{height:100%;padding:12px 24px 25px 24px}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){#customize-control-astra-settings-ast-header-responsive-logo-width .wrapper{display:inline-block;width:100%}.dashicons-desktop:before,.dashicons-smartphone:before,.dashicons-tablet:before{color:#000;opacity:.75}.ast-reset-btn.components-button svg{padding:0;height:13px}}}@-moz-document url-prefix(){.control-section.open .customize-control:last-child{margin-bottom:20px}}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.control-section.open .customize-control:last-child{padding-bottom:20px}#customize-control-astra-settings-blog-archive-image-height .customize-control-title,#customize-control-astra-settings-blog-archive-image-width .customize-control-title,#customize-control-astra-settings-blog-single-post-image-height .customize-control-title,#customize-control-astra-settings-blog-single-post-image-width .customize-control-title{margin-right:0;margin-left:20px}}.wp-customizer li:not(.customize-control-sidebar_block_editor) h1,.wp-customizer li:not(.customize-control-sidebar_block_editor) h2,.wp-customizer li:not(.customize-control-sidebar_block_editor) h3,.wp-customizer li:not(.customize-control-sidebar_block_editor) h4,.wp-customizer li:not(.customize-control-sidebar_block_editor) h5,.wp-customizer li:not(.customize-control-sidebar_block_editor) h6{font-weight:600}.block-list-appender{margin-bottom:20px}.block-editor-block-inspector .block-editor-block-card{margin-top:12px}.components-circular-option-picker__option-wrapper::before{background:unset}.block-editor-panel-color-gradient-settings .components-circular-option-picker__option-wrapper{position:relative}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}#customize-controls .control-section.control-section-ast_section .accordion-section-title,#customize-outer-theme-controls .accordion-section-title,#customize-theme-controls .accordion-section-title{border-bottom:1px solid var(--ast-customizer-color-7)}.wp-core-ui #customize-controls .control-section .accordion-section-title:focus,.wp-core-ui #customize-controls .control-section .accordion-section-title:hover,.wp-core-ui #customize-controls .control-section:hover>.accordion-section-title,.wp-core-ui .customize-panel-back:focus,.wp-core-ui .customize-panel-back:hover,.wp-core-ui .customize-section-back:focus,.wp-core-ui .customize-section-back:hover{border-right-color:var(--ast-customizer-color-1)}.ast-section-toggle{display:grid;grid-template-columns:70% 20% 10%;align-items:center;padding:0 12px 0 0;height:100%;align-items:center;align-content:center}.ast-section-toggle label{font-size:14px;line-height:1;font-weight:600;height:100%;display:inline-flex;align-items:center}.ast-section-toggle>label{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:auto;line-height:50px}.ast-section-toggle:not(.active)>label{cursor:default}.customize-control.customize-control-ast-section-toggle{border:1px dashed var(--ast-customizer-color-7);background:var(--ast-customizer-color-11);cursor:pointer;box-shadow:none!important;line-height:42px;font-size:14px;display:inline-grid;align-items:center;height:auto;color:var(--ast-customizer-color-5);position:relative;white-space:nowrap;border-radius:4px;transition:all .2s;padding-top:0;padding-bottom:0;margin-bottom:9px}.customize-control.customize-control-ast-section-toggle:hover{background:var(--ast-customizer-color-9);border-style:solid}.ast-section-toggle-icon{color:var(--wp-admin-theme-color);cursor:pointer;line-height:20px;height:100%;display:inline-flex;align-items:center}.ast-section-toggle-icon span{font-size:16px;line-height:20px;width:16px;height:16px}.customize-control-ast-section-toggle{padding-top:25px;padding-bottom:16px}li[ID*=accordion-section-ast-dynamic-archive-].control-section-ast_section,li[ID*=accordion-section-ast-dynamic-single-].control-section-ast_section{display:none!important}.customize-control-ast-description .ast-description{font-style:italic;color:#9ca3af;font-size:11px;line-height:16px;font-weight:400;text-wrap:wrap;display:inline-block}.customize-control-ast-description a.button{margin-top:10px;font-style:normal}.customize-control-ast-description p{margin:0;cursor:initial;font-size:11px;line-height:16px;font-weight:400}.customize-control-ast-divider hr{margin-top:0;margin-bottom:0;border-bottom:none}.customize-control-ast-divider .customize-control-title{font-size:15px;margin:1em 0 .2em}.customize-control-ast-divider .customize-control-suffix{position:absolute;left:0;bottom:0;font-weight:600;color:var(--ast-customizer-color-1);display:inline-block;font-size:11px;text-transform:uppercase}.customize-control-ast-divider .customizer-text{margin-top:-10px;display:block}.ast-field-settings-modal .customize-control-ast-divider{background-color:#f5f5f5;display:block;padding:6px 14px;margin:0;border-width:1px 0;border-style:solid;border-color:#ddd;line-height:1;margin-top:15px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customizer-text{margin-top:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customize-control-title{font-weight:500;letter-spacing:1px;font-size:11px;margin:0;text-transform:uppercase}.ast-bottom-divider{border-bottom:1px solid var(--ast-customizer-color-7);padding-bottom:25px}.ast-top-divider{border-top:1px solid var(--ast-customizer-color-7);padding-top:25px}.ast-bottom-divider>label.ast-divider-title,.ast-top-divider>label.ast-divider-title,.customize-control-ast-color-group>.ast-divider-title{display:block;width:100%;font-size:15px;font-weight:600}.ast-top-divider .ast-control-wrap .ast-color-btn-reset-wrap{top:25px}.ast-top-divider .ast-control-wrap .astra-color-picker-wrap{top:55px;background-color:transparent}.ast-top-divider .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:100px;background-color:transparent}.ast-top-divider .ast-control-wrap .color-button-wrap{top:20.5px}.ast-top-divider.customize-control-ast-select .ast-divider-title{margin-bottom:25px}.customize-control.ast-bottom-spacing{margin-bottom:16px}.customize-control.ast-top-spacing{margin-top:16px}#customize-control-astra-settings-ast-header-retina-logo,#customize-control-astra-settings-checkout-back-to-cart-button-text,#customize-control-astra-settings-edd-archive-variable-button-text,#customize-control-astra-settings-header-account-create-menu-link,#customize-control-astra-settings-header-account-logged-out-text,#customize-control-astra-settings-product-sale-percent-value,#customize-control-astra-settings-shop-load-more-text,#customize-control-astra-settings-single-product-recently-viewed-text,#customize-control-astra-settings-single-product-shipping-text,#customize-control-astra-settings-sticky-header-retina-logo,#customize-control-astra-settings-woo-cart-button-text,.customize-control.ast-top-dotted-divider{margin-top:24px;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)},#customize-control-blogdescription,#customize-control-blogname{margin-top:16px}#customize-control-astra-settings-product-sale-percent-value .ast-control-tooltip{top:24px}.customize-control.ast-top-dotted-divider .ast-adv-toggle-icon{top:25px}#customize-control-astra-settings-header-account-logged-in-text,.customize-control.ast-bottom-dotted-divider{margin-bottom:8px;padding-bottom:24px;border-bottom:1px dashed var(--ast-customizer-color-7)}.customize-control.ast-bottom-dotted-divider .ast-adv-toggle-icon{bottom:25px}.customize-control.ast-bottom-section-divider,.customize-control.ast-top-section-divider{position:relative}.customize-control.ast-top-section-divider{padding-top:32px;margin-top:32px}.customize-control.ast-bottom-section-divider{padding-bottom:32px;margin-bottom:16px}.customize-control.ast-sub-top-dotted-divider{padding-top:20px}.customize-control.ast-sub-bottom-dotted-divider{padding-bottom:20px;margin-bottom:10px}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-top-section-divider::before{content:'';position:absolute;right:-100%;background-color:var(--ast-customizer-color-7);width:500%;height:1px}.customize-control.ast-sub-top-dotted-divider::before,.customize-control.ast-top-section-divider::before{top:0}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-sub-bottom-dotted-divider::after{bottom:0}.customize-control.ast-sub-bottom-dotted-divider::after,.customize-control.ast-sub-top-dotted-divider::before{content:'';border-top:1px dashed var(--ast-customizer-color-7);width:calc(100% - 30px);height:1px;position:absolute;right:15px}[ID*="-create-menu-link"] .ahfb-builder-item-start{margin-bottom:0}#customize-control-astra-settings-footer-create-menu-link,#customize-control-astra-settings-footer-language-switcher-options,#customize-control-astra-settings-header-above-stick,#customize-control-astra-settings-header-language-switcher-options,#customize-control-astra-settings-header-mobile-menu-create-menu-link,#customize-control-astra-settings-site-icon-link,#customize-control-custom_logo,.customize-control.ast-section-spacing,[ID*=customize-control-astra-settings-footer-button][ID*="-text"],[ID*=customize-control-astra-settings-header-button][ID*="-text"],[ID*=sub-accordion-section-section-hb-menu-] [ID*="-create-menu-link"]{margin-top:32px}#customize-control-body-font-variant,#customize-control-headings-font-variant{margin-top:0}#sub-accordion-section-section-sidebars>.customize-control-ast-heading{margin-top:16px}#sub-accordion-section-section-sidebars>.customize-control-ast-heading~.customize-control-ast-heading{margin-top:32px}.ast-fields-wrap .customize-control.ast-bottom-section-divider::after,.ast-fields-wrap .customize-control.ast-top-section-divider::before{width:100%;right:0}.ast-typo-presets{width:100%;display:flex;align-items:center;flex-wrap:wrap;row-gap:8px;column-gap:8px;justify-content:space-between}.ast-typo-presets .ast-typo-preset-item{padding:0;border-radius:3px;cursor:pointer;border:1px solid var(--ast-customizer-color-7);height:64px;text-align:center;width:47.5%;position:relative}.ast-typo-presets .ast-typo-preset-item:hover{border:1px solid var(--ast-customizer-color-1)}.ast-typo-presets .ast-typo-preset-item svg{transform:scale(1);width:100%;height:100%;padding:0;margin:0}.ast-typo-presets .ast-typo-preset-item.active{border:1px solid var(--ast-customizer-color-1);background:var(--ast-customizer-color-9)}.customize-control-ast-typography-presets .ast-reset-btn-preset-wrap{top:-5px}.ast-typo-preset-item .components-tooltip{margin-top:-8px}.ast-typo-preset-item .components-tooltip::before{border-bottom:none!important;border-right-color:transparent!important;border-left-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-right:-10px;bottom:-8px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #ccc}.ast-typo-preset-item .components-tooltip::after{border-bottom:none!important;border-right-color:transparent!important;border-left-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-right:-10px;bottom:-6px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #fff}.ast-font-styling{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px dashed #d4d4d4}.ast-font-extras-wrapper,.ast-font-spacing-wrapper{display:flex;align-items:center;gap:8px}.ast-font-extras-wrapper .ast-font-extras-input,.ast-font-spacing-wrapper .ast-font-spacing-input{position:relative;display:flex;align-items:center;background:#fff;max-width:72px;width:100%;border:1px solid #d1d5db;border-radius:3px;padding:0 3px}.ast-font-extras-wrapper .ast-font-extras-input input,.ast-font-spacing-wrapper .ast-font-spacing-input input{padding:0;border:none;min-height:32px;border-radius:3px;border:none!important;box-shadow:none!important;text-align:center;padding:0 5px}.ast-font-extras-wrapper .ast-font-extras-input input[type=number],.ast-font-spacing-wrapper .ast-font-spacing-input input[type=number]{-moz-appearance:textfield}.ast-font-extras-input:hover,.ast-font-spacing-input:hover{border-color:var(--ast-customizer-color-2)}.ast-font-extras-wrapper .ast-font-extras-input svg,.ast-font-spacing-wrapper .ast-font-spacing-input svg{width:38px;height:28px}.ast-font-extras-input .plus-minus-control .dashicons,.ast-font-spacing-input .plus-minus-control .dashicons{font-size:10px;color:#9ca3af;width:12px;height:10px;display:inherit;cursor:pointer}div .ast-field-settings-modal .customize-control-ast-font-extras{margin-top:15px}.ast-font-extras-input input[type=number]::-webkit-inner-spin-button,.ast-font-extras-input input[type=number]::-webkit-outer-spin-button,.ast-font-spacing-input input[type=number]::-webkit-inner-spin-button,.ast-font-spacing-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ast-font-unit-wrapper{display:flex;gap:6px;font-size:11px;font-weight:500;color:#9ca3af}.ast-font-unit-wrapper span{cursor:pointer}.ast-font-unit-wrapper span:hover{color:#0284c7}.ast-font-unit-wrapper .active{color:#0284c7;cursor:default}.ast-font-styling-second{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px}.ast-font-decoration-wrapper,.ast-font-transform-wrapper{display:flex;align-items:center;flex:1}.ast-font-decoration-wrapper div,.ast-font-transform-wrapper div{padding:8px 0;width:33%;text-align:center;font-weight:600;font-size:12px;line-height:16px;color:#334155}.ast-font-decoration-wrapper div.active,.ast-font-transform-wrapper div.active{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type{border:1px solid #d1d5db}.ast-font-item-type:hover{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type:first-child{border:1px solid #d1d5db;border-left:none;border-radius:0 3px 3px 0}.ast-font-item-type:last-child{border:1px solid #d1d5db;border-right:none;border-radius:3px 0 0 3px}.ast-font-item-type.ast-font-deco-underline{text-decoration:underline}.ast-font-item-type.ast-font-deco-linethrough{text-decoration:line-through}.ast-typopreset-custom-tooltip{position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.ast-typopreset-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.ast-typopreset-custom-tooltip[data-title]:hover::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-customizer-font-varient-wrap{margin-top:12px}.ast-customizer-font-varient-wrap .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding:2px 5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:12px;padding:2px 2px 2px 2px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px;padding-right:5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__label{line-height:normal}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove{color:#4b5563;padding-left:0}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-font-varient-wrap .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-font-varient-wrap .ast-multi-select__control{position:relative;max-height:32px;display:inline-flex;width:100%;align-content:center}.ast-customizer-font-varient-wrap .ast-multi-select__control:after{content:"\f11c";font-family:dashicons;font-size:16px;margin-left:7px;pointer-events:none;z-index:1}.ast-customizer-font-varient-wrap .ast-multi-select__control:before{content:'';position:absolute;top:3px;left:3px;width:50px;height:25px;background:#f7f7f7;background:linear-gradient(-90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}#customize-control-astra-settings-ast-body-font-settings .ast-fields-wrap,#customize-control-astra-settings-ast-headings-font-settings .ast-fields-wrap{overflow:visible}.customize-control-ast-font select option[value=normal],.customize-control-ast-font select[data-value=normal] option[value="400"]{display:none}.customize-control-ast-font select[data-value=normal] option[value=normal]{display:block}span.customize-control-title.ast-group-section-title{margin-bottom:4px;font-weight:600}.ast-top-divider.customize-control-ast-group-title .ast-reset-btn-preset-wrap{top:24px}.customize-control-ast-group-title .ast-responsive-btns{margin-right:5px;position:relative;top:3px}.ast-field-settings-wrap .customize-control-ast-heading{margin:0 0 15px 0}.customize-control-ast-heading{margin-top:25px;margin-bottom:0}.customize-control-ast-heading .ast-heading-wrapper{margin:0 -24px}.customize-control-ast-heading .customize-control-title{display:block;padding:15px 24px;margin:0;border-width:1px 0;border-style:solid;border-color:var(--ast-customizer-color-7);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-4);font-size:12px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase!important}.customize-control-ast-heading .customize-control-caption{top:50%;transform:translateY(-50%);position:absolute;left:0;font-size:11px;font-weight:500;letter-spacing:1px}.customize-control-ast-heading .customize-control-description{margin-top:10px}.ast-heading-wrapper label{cursor:default}.customize-control>label{cursor:default}.customize-control .ast-border-input-item-link,.customize-control .ast-spacing-input-item-link{cursor:pointer}.customize-control.customize-control-ast-slider label{cursor:pointer}.customize-control.customize-control-ast-slider label .wrapper input[type=range]{cursor:pointer}.customize-control .ast-control-reduce-top-space{margin-top:-15px}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper{position:relative}.customize-control-ast-input-with-dropdown .components-dropdown-menu{position:absolute;left:0;top:0}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle{width:30px;height:30px;border-radius:0;background-color:var(--wp-admin-theme-color);color:#fff}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:#fff}.customize-control-ast-input-with-dropdown .components-button:focus:not(:disabled){box-shadow:none;outline:0}.customize-control-ast-input-with-dropdown .components-popover__content{min-width:170px}.customize-control-ast-input-with-dropdown .components-popover__content .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:var(--wp-admin-theme-color)}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper input.components-text-control__input{padding-left:40px;max-height:30px;min-height:30px;border-color:#ddd}.ast-link-open-in-new-tab-wrapper{margin:24px 0 0;border-top:1px dashed var(--ast-customizer-color-7)}.ast-link-label-wrapper{margin:24px 0;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)}.customize-control-ast-multi-selector .input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap{display:flex;justify-content:center;flex:1 1 0;background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-7);padding:.6em 0;cursor:pointer;--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-6);margin-right:-1px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active{--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-1);border-color:var(--ast-customizer-color-3);z-index:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap svg{fill:var(--ast-customizer-color-10)}.ast-multiselector-inner-wrap .ahfb-icon-set{line-height:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:last-child{border-radius:3px 0 0 3px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:first-child{border-radius:0 3px 3px 0}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap span[label]{color:var(--ast-customizer-color-6)}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active span[label]{color:var(--ast-customizer-multiselect-icon-color)}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(50% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap:nth-child(2n){margin-left:0}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(33.33% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap:nth-child(3n){margin-left:0}[CLASS*=stack-after-].ast-alignment-wrapper{margin-right:-5px;margin-left:-5px;display:flex;flex-wrap:wrap}[CLASS*=stack-after-].ast-alignment-wrapper .ast-multiselector-inner-wrap{margin:5px;align-items:center;padding:5px;height:30px;border-radius:0}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(45% - 10px)}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(28% - 10px)}li[ID*="-image-custom-scale-height"],li[ID*="-image-custom-scale-width"]{display:inline-flex}li[ID*="-image-custom-scale-height"]{float:none;padding:0!important;width:calc(50% + 10px)}li[ID*="-image-custom-scale-width"]{width:calc(50% - 10px)}li[ID*="-image-custom-scale-height"]:before{content:':';padding:0 10px;line-height:30px}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden{float:unset;width:unset}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before{content:unset}.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}` .customize-control-ast-number input[type=number]{-moz-appearance:textfield;text-align:center}.customize-control-ast-number input[type=number]::-ms-clear,.customize-control-ast-number input[type=number]::-ms-reveal,.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{display:none}.customize-control-ast-radio-icon .ast-control-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.customize-control-ast-radio-icon .customize-control-title{flex:1;padding-left:.5em}.customize-control-ast-radio-icon .customize-control-title{margin-top:8px;margin-bottom:8px}.customize-control-ast-radio-icon .ast-options{background-color:transparent;margin:0;line-height:0}.customize-control-ast-radio-icon .ast-options li{display:inline-block;position:relative;background-color:transparent;width:42px;height:28px;line-height:28px;margin-bottom:0;border:1px solid var(--ast-customizer-color-7);color:var(--ast-customizer-color-8);cursor:pointer}.customize-control-ast-radio-icon .ast-options li .dashicon{text-align:center;line-height:28px;width:100%;font-size:16px}.customize-control-ast-radio-icon .ast-options li{margin-right:-1px}.customize-control-ast-radio-icon .ast-options li:first-child{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.customize-control-ast-radio-icon .ast-options li:last-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.customize-control-ast-radio-icon .ast-options li.active{background-color:var(--ast-customizer-color-1);color:var(--ast-customizer-color-10);border-color:var(--ast-customizer-color-1);margin-left:1px}.customize-control-ast-row-layout .ast-responsive-btns{position:relative;top:1px}.customize-control-ast-radio-image label{position:relative;display:inline-block;margin-left:12px}.ast-divide-four label{margin-left:0}.customize-control-ast-radio-image input{display:none}.customize-control-ast-radio-image input:checked+label svg{background:var(--ast-customizer-color-1);border-radius:0;box-shadow:0 0 3px 0 rgba(0,133,186,.67)}.customize-control-ast-radio-image input:checked+label svg path{color:var(--ast-customizer-color-10)}.components-button-group.ahfb-radio-container-control .active-radio.ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout input:checked+label svg{background-color:var(--ast-customizer-color-1);border-color:transparent;box-shadow:0 12px 20px -8px rgba(30,41,59,.16);border-bottom-color:#f0f0f1}.ast-divide-four input:checked+label svg{box-shadow:none;color:var(--ast-customizer-color-3)}.customize-control-ast-radio-image input+label .image-clickable{position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.image{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:5px;grid-row-gap:5px}.components-button-group.ahfb-radio-container-control,.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.modern-layout{display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:23px;grid-row-gap:23px}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.ast-divide-four{grid-template-columns:repeat(4,1fr);grid-column-gap:14px;grid-row-gap:10px}.customize-control-ast-radio-image .ast-radio-img-svg svg{width:75px;height:50px}.components-button-group.ahfb-radio-container-control .ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout .ast-radio-img-svg svg{margin:0;width:100%;height:auto;background-color:rgba(221,224,226,.5);border:1px solid var(--ast-customizer-color-7);border-radius:4px;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.ast-divide-four .ast-radio-img-svg svg{color:var(--ast-customizer-color-7);width:100%;height:93%}.ast-divide-four .ast-radio-img-svg svg path{color:var(--ast-customizer-color-8)}.image-clickable[data-title]::after{text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.image-clickable[data-title]::after{content:attr(data-title);min-width:3em;max-width:21em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgba(0,0,0,.35);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:9;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards}.image-clickable[data-title]:hover::after{display:block}.image-clickable[data-title='']::after{display:none!important}@keyframes tooltips-vert{to{opacity:.9;transform:translate(50%,0)}}@keyframes tooltips-horz{to{opacity:.9;transform:translate(0,-50%)}}.ast-upgrade-trigger:hover .image-clickable[data-title]::after{display:block}.customize-control-ast-responsive-background{position:relative;margin-bottom:-5px}.customize-control-ast-responsive-background .background-container h4{font-size:14px;font-weight:600;color:#555d66}.customize-control-ast-responsive-background .background-attachment h4,.customize-control-ast-responsive-background .background-color h4,.customize-control-ast-responsive-background .background-position h4,.customize-control-ast-responsive-background .background-repeat h4,.customize-control-ast-responsive-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-responsive-background .background-color{margin-bottom:12px}.customize-control-ast-responsive-background .background-repeat{margin:15px 0 15px 0}.customize-control-ast-responsive-background .background-attachment .buttonset,.customize-control-ast-responsive-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-left:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-responsive-background .background-size .buttonset .switch-label:last-child{margin-left:0}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input:checked+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-responsive-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-responsive-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-responsive-background .arrow-icon{margin-right:5px}.customize-control-ast-responsive-background .background-container{display:none}.customize-control-ast-responsive-background .background-container.active{display:block}.customize-control-ast-responsive-background .wp-picker-container{display:block}.customize-control-ast-responsive-background .wp-picker-container .wp-picker-clear{margin-right:4px;min-height:30px}.customize-control-ast-responsive-background .customize-control-content .astra-color-picker-wrap{width:100%}.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.customize-control-ast-responsive-background .ast-color-btn-clear-wrap{left:84px}.components-color-picker__inputs-toggle-wrapper .components-color-picker__inputs-toggle{vertical-align:middle;height:32px}.astra-popover-tabs .components-button.upload-button.button-add-media{width:100%;position:relative;text-align:center;color:#555d66;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6}.astra-popover-tabs .components-button.upload-button.button-add-media:hover{color:#555d66;box-sizing:border-box;box-shadow:unset;border-color:#0185ba}.astra-popover-tabs [ID*="-gradient-view"]{padding:0 15px 15px 15px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear{flex:unset;box-shadow:unset;width:auto;padding:0 5px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:hover{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:focus{box-shadow:unset}.astra-popover-tabs #tab-panel-0-image-view>div{text-align:center}.astra-popover-tabs #tab-panel-0-image-view>div img{width:200px;margin-bottom:18px}.astra-popover-tabs #tab-panel-0-image-view>div .media-position-setting{text-align:right}.media-position-setting>.components-base-control{margin-bottom:15px}.media-position-setting [CLASS*="-Item-LabelWrapper"]{margin-bottom:5px}.astra-popover-color .components-circular-option-picker{position:relative;margin-top:0}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{margin-top:10px;justify-content:flex-start}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{width:50px}}.astra-popover-color [ID*="-color-view"] .components-circular-option-picker{width:auto}.astra-popover-color .ast-color-palette{width:auto;padding:16px 14px 0 0}.astra-popover-color .ast-color-palette .components-circular-option-picker__option{width:100%;height:100%;border-radius:100%}.astra-popover-color .ast-color-palette .components-button.is-pressed:focus:not(:disabled){box-shadow:none;border:none}.astra-popover-color .components-custom-gradient-picker{margin-top:0}.astra-popover-color .components-custom-gradient-picker__gradient-bar{box-sizing:border-box;opacity:1}.astra-popover-color .components-custom-gradient-picker__type-picker .components-base-control__label{display:block}.components-custom-gradient-picker .components-base-control__label{padding-top:10px;font-size:12px;display:block;letter-spacing:.1px;line-height:18px}[ID*="-gradient-view"] .components-toolbar.components-custom-gradient-picker__toolbar .components-button.has-icon{border:none}.media-position-setting.hide-settings{display:none}.media-position-setting .astra-popover-tabs [ID*="-gradient-view"]{padding:0 0 15px 0}.ast-field-settings-modal .customize-control-content .color-button-wrap{left:30px;top:0}.ast-field-settings-modal .ast-responsive-btns{position:absolute;left:14px;top:4px}.ast-field-settings-modal .customize-control-content .astra-color-picker-wrap{margin-right:0;margin-top:0}.ast-field-settings-modal .customize-control-content .ast-color-btn-reset-wrap{left:65px;top:7px}.ast-field-settings-modal .customize-control-content .ast-color-btn-clear-wrap{left:91px}.ast-field-settings-modal .customize-control-ast-responsive-background.customize-control:first-child{margin-top:28px}.customize-control-ast-responsive-background .ast-color-btn-reset-wrap,.customize-control-ast-responsive-color .ast-color-btn-reset-wrap{display:inline-block;line-height:1;top:4.5px}.customize-control-ast-responsive-background .ast-responsive-btns,.customize-control-ast-responsive-color .ast-responsive-btns{position:relative;left:-5px;top:2px}.ast-field-settings-modal .customize-control-ast-responsive-background .ast-responsive-btns,.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{left:8px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha{display:none}.customize-control-ast-responsive-color .customize-control-content{display:block;margin-top:5px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-black{border-radius:4px 4px 0 0}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-white{border-radius:3px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha.active{display:block}.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{left:30px;top:-3px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .astra-color-picker-wrap{margin-right:0;margin-bottom:10px;margin-top:10px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .customize-control-title{display:block;margin-bottom:0}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{left:7px;top:1px}.ast-field-settings-modal .customize-control-ast-responsive-color.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-clear-btn-inside-picker.components-button{margin:5px 10px 20px 20px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:3.5px}@supports (-moz-appearance:none){.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:5.5px;left:65px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{left:27px;top:-2px}}.customize-control-ast-responsive-slider .wrapper,.customize-control-ast-slider .wrapper{position:relative;display:flex}.customize-control-ast-responsive-slider .input-field-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-responsive-slider input[type=range]{position:inherit}.customize-control-ast-responsive-slider select,.customize-control.customize-control-select select{color:#32373c}.customize-control-ast-responsive-slider .input-field-wrapper{display:none}.customize-control-ast-responsive-slider .input-field-wrapper.active{display:flex}.customize-control-ast-responsive-slider .components-base-control{width:100%}.customize-control-ast-responsive-slider .slider-control-label,.customize-control-ast-slider .customize-control-title{cursor:default;margin-top:3px}.ast-responsive-slider-btns{position:absolute;left:0;top:5px;left:30px}.ast-responsive-slider-btns>li{margin-bottom:0;display:none}.ast-responsive-slider-btns>li.active{display:inline-block}.ast-responsive-slider-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;line-height:1}.ast-responsive-slider-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.customize-control-ast-responsive-slider .wrapper .components-base-control,.customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active,.customize-control-ast-slider .components-base-control.components-range-control{width:100%;display:inline-block}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-right:5px;margin-top:4px}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap{top:4px;left:0}.customize-control .ast-reset-btn .dashicons-image-rotate{width:12px;height:12px;font-size:12px}.customize-control-ast-responsive-slider .components-input-control input.components-input-control__input,.customize-control-ast-slider .components-input-control input.components-input-control__input{-moz-appearance:textfield}.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button{-webkit-appearance:none}.customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input,.customize-control-ast-slider .components-input-control__container input.components-input-control__input{display:block;border-radius:0 2px 2px 0;box-shadow:none;transition:all .3s;border:1px solid var(--ast-customizer-color-7)}.customize-control-ast-responsive-slider input.components-input-control__input:active,.customize-control-ast-responsive-slider input.components-input-control__input:focus,.customize-control-ast-responsive-slider input.components-input-control__input:hover,.customize-control-ast-slider input.components-input-control__input:active,.customize-control-ast-slider input.components-input-control__input:focus,.customize-control-ast-slider input.components-input-control__input:hover{border-color:var(--ast-customizer-color-2);border-radius:2px;outline:0}.customize-control-ast-responsive-slider .ast-slider-wrap,.customize-control-ast-slider .ast-slider-wrap{position:relative}.components-range-control__wrapper .components-range-control__track{color:var(--ast-customizer-color-1)}.components-range-control__wrapper span span{background-color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit,.customize-control-ast-slider .ast-slider-wrap .ast-range-unit{position:absolute;left:23px;top:4px;border-left:1px solid var(--ast-customizer-color-7);padding-left:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .components-input-control__container,.customize-control-ast-slider .components-input-control__container{margin-right:5px}.customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop,.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop{border:none;border-radius:0 2px 2px 0;box-shadow:none}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{position:absolute;display:inline-block;line-height:1;left:0}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{top:1px}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number{width:calc(48px)!important}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{text-align:center}.customize-control-ast-responsive-spacing .customize-control-title{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-outer-wrapper{display:flex;position:relative}.customize-control-ast-responsive-spacing .ast-spacing-input-item{margin:0 2px;-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input[type=number]{-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-inner-spin-button,.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units-screen-wrap{position:relative;top:-5px;left:-10px;display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns{position:relative;top:2px}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li{display:none}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li.active{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;width:100%}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]>i{font-size:15px;vertical-align:middle}.customize-control-ast-responsive-spacing .input-wrapper.ast-spacing-responsive-wrapper{display:inline-flex}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units{position:absolute;font-size:12px;line-height:16px;text-transform:uppercase;font-weight:500;top:-32px;left:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit{display:inline-block;margin-right:6px;width:18px;text-align:center;user-select:none;opacity:.6}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit.active{opacity:1;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;cursor:pointer}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:active,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:focus,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:hover{border-color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li .ast-spacing-connected{color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper.active{display:flex}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper span.ast-spacing-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link{order:2;margin-right:2px;margin-top:4px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .dashicons{padding:2px 0;font-size:12px;line-height:28px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .ast-spacing-connected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-disconnected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-connected{display:block}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link span{width:100%;height:32px;line-height:28px;font-size:14px;border-radius:0 3px 3px 0;background-color:transparent}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link svg{pointer-events:none}.customize-control-ast-responsive-spacing .ast-spacing-wrapper>li:nth-child(2){margin-right:0}.ast-responsive-toggle-control .components-base-control__field,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-responsive-toggle-control .components-form-toggle,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-responsive-toggle-control .components-base-control__field{margin:20px 0}.ast-responsive-toggle-control label,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control{display:none}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control.active{position:relative;top:2px;width:91%;display:inline-block;vertical-align:middle}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns{position:relative;float:left;top:4px}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns>li.active{vertical-align:middle}.ast-responsive-toggle-btns>li{margin-bottom:0;display:none}.ast-responsive-toggle-btns>li.active{display:inline-block}.ast-responsive-toggle-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-toggle-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.ast-responsive-btns{display:inline-block;line-height:1;vertical-align:top}.ast-responsive-btns>li{margin-bottom:0;display:none}.ast-responsive-btns>li.active{display:inline-block}.ast-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-btns button[type=button]>i{width:15px;height:15px;font-size:15px}.input-wrapper.ast-responsive-wrapper{display:inline-flex;justify-content:space-between;margin-left:0;align-items:flex-start;flex:0 1;width:100%}.ast-customizer-select-multi .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-select-multi{position:relative}.ast-customizer-select-multi .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding-right:10px;padding-left:30px}.ast-customizer-select-multi:before{content:'';position:absolute;top:3px;left:1px;width:50px;height:37px;background:#f7f7f7;background:linear-gradient(-90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}.ast-customizer-select-multi:after{content:"\f11c";position:absolute;font-family:dashicons;font-size:16px;margin-left:15px;pointer-events:none;z-index:1;top:13px;left:0}.ast-customizer-select-multi .ast-multi-select__multi-value__label{margin-left:.2em}.ast-customizer-select-multi .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:14px;padding:2px 5px 2px 5px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px}.ast-customizer-select-multi .ast-multi-select__multi-value__remove{color:#4b5563;padding-left:0}.ast-customizer-select-multi .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-select-multi .ast-multi-select__menu *,.ast-customizer-select-multi .ast-multi-select__multi-value__remove{cursor:pointer}.ast-customizer-select-multi .ast-multi-select__menu{z-index:2}.ast-variant-select>div{border-color:#ddd}.ast-variant-select>div,.customize-control input,.customize-control select,.customize-control textarea,.customize-control-content .components-text-control__input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5);padding-top:1px;padding-bottom:1px}.ast-variant-select>div:focus,.customize-control input:focus,.customize-control select:focus{border-color:var(--ast-customizer-color-1);color:#0a4b78;box-shadow:0 0 0 1px var(--ast-customizer-color-1)}.ast-adv-toggle-icon{left:2px;position:absolute;width:18px;height:18px;font-size:18px;border-radius:2px;padding:4px;color:var(--ast-customizer-color-8);background:var(--ast-customizer-color-9);cursor:pointer}.ast-adv-toggle-icon:hover{color:var(--ast-customizer-color-1)}.ast-adv-toggle-icon:before{content:"\f464"}.ast-adv-toggle-icon.open:before{content:"\f158"}.ast-field-settings-modal{position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;right:0;left:0;z-index:8;background-color:#fff}.customize-control-ast-color-palette .ast-field-settings-modal{z-index:11}.ast-field-settings-modal .customize-control-ast-divider:first-child{margin-top:15px}.ast-field-settings-wrap{width:100%}.ast-group-tabs,.ast-tab-content{position:relative}.ast-group-list{overflow:hidden;border-bottom:1px solid #ddd}.ast-group-list:after,.ast-group-list:before{content:"";display:table;border-collapse:collapse}.ui-tabs-anchor{float:right;padding:.5em .5em;color:#555d66;text-decoration:none}.ui-state-active .ui-tabs-anchor{color:#fff}.ui-tabs-anchor:hover{color:#555d66}.ui-state-active .ui-tabs-anchor:hover{color:#fff}.ast-group-tabs .ui-widget-content{overflow:hidden}.ast-group-tabs .ui-widget-content.iris-slider-offset,.ast-group-tabs .ui-widget-content.iris-slider-offset-alpha{overflow:inherit}.ast-fields-wrap{overflow:hidden}.ast-field-settings-wrap{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;background-color:#fff}.ast-field-settings-wrap .ast-field-settings-modal{border-radius:3px;margin-top:10px;margin-bottom:20px}.ast-field-settings-modal::before{content:'';position:absolute;top:-17px;left:8px;border:9px solid transparent;border-bottom-color:#fff;pointer-events:none}.ast-group-tabs .ui-tabs-nav{display:flex;padding:15px 15px 0 15px}.ast-group-tabs .ui-tabs-nav .ui-corner-top{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.ast-group-tabs .ui-tabs-nav .ui-corner-top:first-child{border-radius:0 3px 3px 0}.ast-group-tabs .ui-tabs-nav .ui-corner-top:last-child{border-radius:3px 0 0 3px}.ast-group-tabs .ui-tabs-nav .ui-corner-top .ui-tabs-anchor{width:100%;text-align:center;padding:2px 4px;padding-right:0;padding-left:0;outline:0}.ast-group-tabs ul.ast-group-list .ui-corner-top .ui-tabs-anchor:focus{box-shadow:none}.ast-group-tabs .ui-tabs-nav{border:none}.ast-group-tabs ul.ast-group-list .ui-corner-top.ui-state-active{background-color:#0185ba;border:1px solid rgba(0,0,0,.1)}.ast-group-tabs .ui-tabs-nav{overflow:visible}.ast-group-tabs ul.ast-group-list .ui-corner-top:not(:first-child){border-right-width:0}.wp-core-ui .ast-field-settings-modal .background-image-upload .button{font-size:11px}.ast-field-settings-modal .customize-control{padding-right:16px;padding-left:16px;box-sizing:border-box}.ast-control-wrap .ast-color-picker-alpha{margin-right:-5px;margin-left:-5px}.ast-field-settings-modal .customize-control:first-child{margin-top:16px}.ast-field-settings-modal .ui-tabs-nav .customize-control:first-child{margin-top:0}.ast-field-settings-modal .customize-control:last-child{padding-bottom:16px}.customize-control-ast-settings-group{line-height:27px}.customize-control-ast-settings-group .customize-control-title{margin-bottom:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-title{margin-bottom:10px;font-size:13px;margin-top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-range-unit,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-units,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-range-unit{top:6px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-resp-slider-reset-wrap{top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-slider-btns,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-responsive-slider-btns{top:2px}.ast-field-settings-modal .customize-control{margin-top:2px}#customize-control-headings-font-extras.ast-sub-top-dotted-divider{margin-top:12px}.astra-popover-tabs{position:relative}.astra-popover-tabs .components-tab-panel__tabs{display:flex;padding:15px;border:none}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{color:#555d66;font-size:13px;font-weight:400;height:35px;transition:unset;padding:2px 4px;text-decoration:none;border-radius:0;border:1px solid rgba(0,0,0,.1)}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:active{box-shadow:unset}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus{box-shadow:unset}.astra-popover-tabs [ID*="-image-view"]{padding:15px;border:none}.astra-popover-tabs .components-button{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.astra-popover-tabs .components-tab-panel__tabs-item:first-child{border-radius:0 3px 3px 0}.astra-popover-tabs .components-tab-panel__tabs-item:last-child{border-radius:3px 0 0 3px}.astra-popover-tabs .components-tab-panel__tabs-item:not(:first-child){border-right-width:0}.astra-popover-tabs .components-tab-panel__tabs-item.active-tab{background-color:#0185ba;color:#fff}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content,.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs{padding:0}.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs-item.active-tab{border-color:var(--ast-customizer-color-3);background:var(--ast-customizer-color-1)}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content .ast-social-icon-picker-label{text-align:right}.astra-media-tab .astra-media-image{width:100%;margin-bottom:0}.astra-media-tab .ast-media-btn{display:block;width:100%;border:1px dashed var(--ast-customizer-color-7);box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;text-decoration:none}.astra-media-tab .ast-danger-btn{color:var(--ast-customizer-color-14);margin-top:10px}.astra-media-tab .ast-media-btn:hover{border-color:var(--ast-customizer-color-3)}.astra-media-tab .ast-danger-btn:hover{border-color:var(--ast-customizer-color-14)}.components-base-control.ast-text-control-input{margin-bottom:16px}.ast-payments-text-control-input .components-base-control__label{text-transform:none;color:#334155;font-size:13px}.components-base-control.ast-payments-text-control-input{margin-bottom:20px}.components-base-control.ast-text-control-input input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5)}.astra-popover-color .astra-popover-tabs .components-tab-panel__tabs button.components-tab-panel__tabs-item.active-tab:not(.is-primary):not(.is-tertiary):not(.is-link):hover{color:#fff}.components-popover.astra-popover-color .components-popover__content{min-width:310px;max-height:60vh;padding:0;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.ast-field-settings-modal .components-popover.astra-popover-color .components-popover__content{min-width:320px;min-height:325px}.ast-field-settings-modal .background-wrapper .components-popover.astra-popover-color .components-popover__content{min-height:385px}.ast-field-settings-modal .components-angle-picker-control .components-flex__block{min-width:auto}.customize-control-ast-settings-group .customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-top:0}.ast-top-divider.customize-control-ast-settings-group .ast-toggle-desc-wrap .ast-adv-toggle-icon{top:23px}.ast-fields-wrap .customize-control-ast-responsive-slider .ast-slider-wrap>label,.ast-fields-wrap .customize-control-ast-selector .ast-slider-wrap>label{display:inline-block}.customize-control-ast-slider .wrapper{display:flex}.customize-control-ast-slider .components-range-control{width:100%}.customize-control-ast-responsive-slider .wrapper .ast-range-unit,.customize-control-ast-slider .ast-range-unit{padding:0 5px 0 0;font-size:11px;line-height:1em;font-weight:500;align-self:auto;text-transform:uppercase}.components-range-control__slider[type=range]{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.components-range-control__slider[type=range]::-moz-range-track,.components-range-control__slider[type=range]::-webkit-slider-runnable-track{content:'';height:2px;pointer-events:none}.components-range-control__slider[type=range]::-moz-range-thumb,.components-range-control__slider[type=range]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;margin-top:5px}.customize-control-ast-responsive-slider .components-range-control__wrapper,.customize-control-ast-slider .components-range-control__wrapper{margin-right:0}.customize-control-ast-responsive-slider span[CLASS*="-ThumbWrapper"],.customize-control-ast-slider span[CLASS*="-ThumbWrapper"]{height:17px;width:17px;top:2px;margin-right:0}.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap .ast-resp-slider-reset-wrap{top:68px}.customize-control-ast-responsive-slider .ast-responsive-slider-btns{position:relative;top:-3px;left:-10px;display:inline-block}.customize-control-ast-responsive-slider .ast-responsive-units{position:absolute;top:3px;left:23px;font-size:11px;line-height:normal;border-left:1px solid #ddd;padding-left:5px;text-transform:uppercase;width:auto;display:none}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit{display:inline-block;margin-right:6px;margin-bottom:0;width:16px;text-align:center;user-select:none;opacity:.6;cursor:pointer}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit.active{opacity:1;font-weight:600;color:#0073aa;cursor:default}.ast-field-settings-modal .ast-fields-wrap>.customize-control-ast-responsive-slider+.customize-control-ast-font{margin-top:8px}.customize-control-ast-sortable .sortable{cursor:default}.customize-control-ast-sortable .sortable .dashicons-visibility{cursor:pointer}.customize-control-ast-sortable .sortable .ast-sortable-item,.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{padding:1px 12px 1px 3px;border:1px solid #d1d5db;color:#334155;background:#fff;cursor:move;font-size:14px;line-height:38px;margin:0 0 10px;border-radius:4px}.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{border:none;padding:0 0 0 9px;border-top:1px solid #d1d5db;border-radius:0 0 3px 3px}.customize-control-ast-sortable .sortable div:last-child{margin:0}.customize-control-ast-sortable .sortable div>.dashicons{float:left;position:relative;font-size:16px;padding:9px;line-height:20px;border-right:none}.customize-control-ast-sortable .sortable div.invisible{opacity:.6;visibility:visible}.customize-control-ast-sortable .sortable div.invisible .dashicons.visibility:after{opacity:1;position:absolute;content:'';width:18px;height:2px;top:18px;right:11px;background:#656565;border-radius:5px;transform:rotate(45deg);box-shadow:0 0 0 1px #fff;transition:opacity .2s ease}.ast-sortable-item.invisible,.ast-sortable-item:hover{opacity:.8}.ast-sortable-item.show:hover{opacity:1}.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{margin-left:-6px}.ast-sortable-item .dashicons-admin-page,.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{cursor:pointer}.ast-sortable-subcontrols{display:none;padding:12px 0;border-top:1px solid #d1d5db}.show .ast-sortable-subcontrols{display:block}.ast-sortable-subfields-wrap .customize-control{box-sizing:border-box;position:relative}.ast-sortable-item.show i.ast-accordion{transform:rotate(-180deg);border-right:none;border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button{padding:6px 8px;height:40px;background:#fff}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button:focus{box-shadow:none}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .ahfb-sorter-title{padding-left:20px;max-width:100%;text-overflow:ellipsis;overflow:hidden}.customize-control-ast-list-icons span.feature-label{max-width:100px;text-overflow:ellipsis;font-size:14px;line-height:18px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .dashicons-admin-page{color:#556068}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item-panel-header{border:1px solid #ddd;border-right:0;border-bottom:0;overflow:hidden}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity .ast-media-image-preview,.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:14px;width:14px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity span{display:flex}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:16px;width:16px;fill:#556068}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ast-sorter-item-expand{border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity{border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item{border:1px solid #ddd;border-top:0}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown{width:225px!important;right:-10px;box-shadow:0 5px 15px rgb(0 0 0 / 22%),0 0 5px rgb(0 0 0 / 30%)}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open{height:285px;overflow:hidden;position:absolute}.ast-sortable-item .ahfb-sorter-item-panel-content{border-top:1px solid #ddd}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox:hover>*{transform:scale(1.3)!important}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox{height:32px!important}.ast-sortable-subfields-wrap .ast-color-btn-reset-wrap{top:0}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-title{margin-bottom:16px;font-size:14px}.ast-sortable-subfields-wrap .customize-control-ast-color .ast-control-wrap .astra-popover-color{margin-right:-10px;margin-left:10px;width:calc(100% + 15px)}.customize-control-ast-sortable .ast-sortable-subfields-wrap .ast-responsive-btns{top:7px}.ast-sortable-subfields-wrap .ast-fields-wrap{padding-bottom:16px}.customize-control-content{width:100%;display:flex;flex-direction:column}.ast-sortable-subfields-wrap .ast-fields-wrap{overflow:inherit}.ast-sortable-subfields-wrap .customize-control{float:none}.ast-sortable-item.invisible>.ast-accordion,.ast-sortable-item.invisible>.dashicons-admin-page,.ast-sortable-item.invisible>.dashicons-remove{display:none}.ast-sortable-item.invisible .ast-sortable-subcontrols{display:none}.ast-sortable-item .ahfb-sorter-item .dashicons{font-size:16px;width:16px;height:16px}.ast-sortable-item .ahfb-sorter-item .ahfb-sorter-item-expand:before{right:7px;width:17px}.ahfb-sorter-item:first-child .ahfb-sorter-item-remove,.ast-sortable-item .components-button.item-is-hidden:not(.visibility-item){display:none}.customize-control-ast-sortable .sortable .rfip .rfipbtn__button{margin-right:auto}.ast-sortable-subfields-wrap .customize-control-ast-responsive-slider .ast-responsive-slider-btns{top:-2px}.ast-sortable-item .customize-control-ast-color .ast-color-btn-reset-wrap{top:12px}.ast-sortable-item .customize-control-ast-color .color-button-wrap{top:8px}.ast-sortable-item .customize-control-ast-color .astra-color-picker-wrap{position:relative;top:8px}.ast-sortable-subfields-wrap .customize-control-ast-description{line-height:1}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .dashicons-admin-page{margin-left:0}.customize-control-ast-text-input textarea{display:block;width:100%}.ast-togglecontrol-wrapper .components-base-control__field,.customize-control-ast-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-togglecontrol-wrapper .components-form-toggle,.customize-control-ast-toggle .components-toggle-control .components-form-toggle,.customize-control-ast-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-togglecontrol-wrapper .components-base-control__field{margin:24px 0 0}.ast-togglecontrol-wrapper .components-toggle-control__label,.ast-togglecontrol-wrapper .toggle-control-label{font-size:14px;font-weight:600}.ast-togglecontrol-wrapper label,.customize-control-ast-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.ast-switch~label{position:relative;display:block;width:35px;height:14px;background-color:var(--ast-customizer-color-7);color:transparent;border-radius:50px;cursor:pointer;transition:all .2s ease-in}.ast-switch~label:after{content:'';position:absolute;top:-3px;right:-1px;display:block;width:20px;height:20px;border-radius:50px;background:var(--ast-customizer-color-9);box-shadow:0 2px 4px 0 rgba(72,72,72,.5);transition:all .2s ease-in}.ast-switch:checked~label{background:var(--ast-customizer-color-1)}.ast-switch:checked~label:after{transform:translateX(-16px);background:var(--ast-customizer-color-9)}.ast-switch:disabled~label{background:#f0f0f0;pointer-events:none}.ast-switch:disabled~label:after{background:#d1d1d1;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ast-switch:checked,.ast-switch:not(:checked){opacity:0}.customize-control-ast-section-toggle .components-form-toggle{margin-right:5px;text-align:left}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:initial;align-items:center}.dashicons-editor-help[data-title]{z-index:1}.ast-dashicons-custom-tooltip{display:none;opacity:0;position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.ast-dashicons-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:3;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{display:block;opacity:100}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-top-dotted-divider .ast-control-tooltip.dashicons-editor-help{top:22px}.customize-control.ast-bottom-dotted-divider.customize-control-ast-toggle-control .ast-control-tooltip{top:8px}.customize-control.customize-control-ast-select.ast-top-dotted-divider .ast-control-tooltip{top:36px}.customize-control-ast-sortable .customize-control-ast-selector .dashicons.ast-control-tooltip{top:18%;padding:0;font-size:20px}.select2-container{width:100%!important}span.select2-container.select2-container--default.select2-container--open{z-index:999999}span.select2-container.select2-container--default.select2-container--open li.select2-results__option{margin:0}.select2-selection__rendered li{margin-bottom:0}.select2-container--default .select2-selection--single,.select2-container--default.select2-container .select2-selection--multiple{border-color:#ddd;border-radius:0}.select2-container--default .select2-selection--multiple .select2-selection__choice,.select2-dropdown{border-color:#ddd;border-radius:0}.customize-control.customize-control-ast-hidden{margin-top:0}.wp-full-overlay-footer .devices-wrapper .preview-desktop,.wp-full-overlay-footer .devices-wrapper .preview-mobile,.wp-full-overlay-footer .devices-wrapper .preview-tablet{vertical-align:middle}.customize-control-ast-font-variant .ast-variant-select input#react-select-2-input:focus{box-shadow:none}.ast-variant-select [CLASS*="-indicatorContainer"]{padding:2px;display:contents}.ast-variant-select [CLASS*="-multiValue"]>div:first-child{padding:0}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap,.ast-upgrade-pro-wrap .ast-upgrade-trigger{width:100%;-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center;position:relative;overflow:hidden;justify-content:center}.ast-upgrade-pro-wrap .ast-upgrade-cta{position:absolute;top:auto;right:auto;width:auto;height:28px;border-radius:4px;padding:0 5px 0 8px;font-size:1em;line-height:1em;display:inline-flex;color:var(--ast-customizer-color-1);background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-1);align-items:center;align-content:center;white-space:nowrap}a.ast-upgrade-trigger:active,a.ast-upgrade-trigger:focus{box-shadow:none;border:none;outline:0}.ast-upgrade-pro-wrap .ast-upgrade-section-title{margin-right:8px}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap>svg{width:100%;height:100%;filter:blur(4px)}.ast-upgrade-pro-wrap .ast-upgrade-cta svg{width:1.2em;height:1.2em}.customize-control-ast-radio-image .ast-pro-option>:not(.image-clickable){opacity:.4}.ast-radio-img-svg.ast-pro-option .image-clickable::before{display:inline-flex;position:absolute;top:36%;right:41%;content:'';background-size:1.5em 1.5em;height:1.5em;width:1.5em;border:1px solid var(--ast-customizer-color-1);background-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5002 7.2001H11.7002V4.8001C11.7002 3.0401 10.2602 1.6001 8.5002 1.6001C6.7402 1.6001 5.3002 3.0401 5.3002 4.8001V7.2001H4.5002C4.1002 7.2001 3.7002 7.6001 3.7002 8.0001V13.6001C3.7002 14.0001 4.1002 14.4001 4.5002 14.4001H12.5002C12.9002 14.4001 13.3002 14.0001 13.3002 13.6001V8.0001C13.3002 7.6001 12.9002 7.2001 12.5002 7.2001ZM9.3002 12.8001H7.7002L8.0202 11.0401C7.6202 10.8801 7.3002 10.4001 7.3002 10.0001C7.3002 9.3601 7.8602 8.8001 8.5002 8.8001C9.1402 8.8001 9.7002 9.3601 9.7002 10.0001C9.7002 10.4801 9.4602 10.8801 8.9802 11.0401L9.3002 12.8001ZM10.1002 7.2001H6.9002V4.8001C6.9002 3.9201 7.6202 3.2001 8.5002 3.2001C9.3802 3.2001 10.1002 3.9201 10.1002 4.8001V7.2001Z' fill='%230284C7'/%3E%3C/svg%3E")}.ast-upgrade-list-wrapper{text-align:center}.ast-upgrade-list-wrapper .ast-brand-logo{margin:0}.ast-upgrade-list-wrapper svg{width:32px;height:32px}.ast-upgrade-list-items{margin-bottom:1.8em}.ast-upgrade-list-wrapper .ast-upgrade-list-section-title{margin:.5em auto 1.8em;max-width:240px}.ast-pro-upgrade-item svg{vertical-align:middle;margin-left:5px;fill:var(--ast-customizer-color-1)}.ast-pro-upgrade-item span{display:inline-block}.ast-upgrade-list-description{margin:5px 20px 0 0}.ast-upgrade-list-title{font-weight:600}.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available),.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available) *,.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available),.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available) *{color:var(--ast-customizer-color-9);background:var(--ast-customizer-color-1)}.customize-control .button.ahfb-builder-section-shortcut{border-right:1px solid #ddd;border-left:1px solid #ddd}.ast-customize-control-title a.ast-builder-upgrade-link{background:var(--ast-customizer-color-9)!important;color:var(--ast-customizer-color-1)!important;box-shadow:0 4px 8px -4px rgba(0,0,0,.16);margin-right:10px;border-radius:4px;padding:3px 10px 5px;text-decoration:none;vertical-align:top}.ast-pro-upgrade-item p{margin:1.25em 0;line-height:1}li#customize-control-astra-settings-footer-builder-pro-items .ast-upgrade-pro-wrap,li#customize-control-astra-settings-header-builder-pro-items .ast-upgrade-pro-wrap{padding-right:12px;padding-left:12px} \ No newline at end of file +.customize-control-ast-selector .ast-alignment-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-selector .ast-alignment-inner-wrap,.customize-control-ast-selector .ast-selector-responsive-wrap{display:none}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active{flex:1 1 auto;display:flex}.customize-control-ast-selector .components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.ast-alignment-inner-wrap .components-button{white-space:nowrap;color:var(--ast-customizer-color-5);text-decoration:none;text-shadow:none;outline:unset;border:1px solid var(--ast-customizer-color-7);width:100%;height:100%;text-align:center;justify-content:center;border-radius:unset;transition:none;font-weight:400}.ast-alignment-inner-wrap.active .components-button.is-primary{color:var(--ast-customizer-color-10);background:var(--ast-customizer-color-1)}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active .components-button:not(.is-primary):hover{color:var(--ast-customizer-color-5)!important}.customize-control-ast-selector .components-button .ahfb-icon-set svg{width:16px;height:16px;fill:var(--ast-customizer-color-8)}.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg circle,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg path:not(.ast-hf-account-unfill){fill:var(--ast-customizer-color-10)}.customize-control-ast-selector .ast-alignment-inner-wrap:first-child .components-button{border-radius:0 3px 3px 0}.customize-control-ast-selector .ast-alignment-inner-wrap:last-child .components-button{border-radius:3px 0 0 3px}.ast-alignment-wrapper .ast-alignment-inner-wrap:not(:first-child):not(:last-child) .components-button{border-left:none}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button{border-radius:unset;font-size:12px;padding:9px 0 10px}.customize-control-ast-selector .ast-selector-responsive-wrap.active{display:flex;flex:1 1 0}.customize-control-ast-selector .ast-responsive-btns{position:relative;right:6px;top:0}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button:focus:not(:disabled){box-shadow:none}.customize-control-ast-selector .components-button .ahfb-icon-set{display:flex}.customize-control-ast-selector{margin-bottom:1px}.ast-alignment-inner-wrap.active button.components-button.is-primary{border-color:var(--ast-customizer-color-3)}#customize-controls .customize-control-notifications-container{margin:0}.customize-control-ast-background .screen-reader-text{top:initial}.customize-control-ast-background .background-container h4{font-weight:400}.customize-control-ast-background .background-attachment h4,.customize-control-ast-background .background-color h4,.customize-control-ast-background .background-position h4,.customize-control-ast-background .background-repeat h4,.customize-control-ast-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-background .background-color{margin-bottom:12px}.customize-control-ast-background .background-repeat{margin:15px 0 8px 0}.customize-control-ast-background .background-attachment .buttonset,.customize-control-ast-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-background .background-attachment .buttonset .switch-label,.customize-control-ast-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-left:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-background .background-size .buttonset .switch-label:last-child{margin-left:0}.customize-control-ast-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-background .more-settings .message,.customize-control-ast-responsive-background .more-settings .message{margin-left:5px}.customize-control-ast-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-background .arrow-icon{margin-right:5px}.customize-control-ast-background .customize-control-title{display:block}.customize-control-ast-background .astra-color-picker-wrap{margin-top:18px}.ast-field-settings-modal .customize-control-ast-background.customize-control,.ast-field-settings-modal .customize-control-ast-background.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-background .more-settings{margin-top:6px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .ast-color-btn-reset-wrap{left:59px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .color-button-wrap{left:16px}.ast-field-settings-modal .customize-control-ast-background .astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 10px 20px 20px}.customize-control-ast-border .customize-control-title{display:inline-block}.customize-control-ast-border .ast-border-outer-wrapper{display:flex;position:relative}.customize-control-ast-border .ast-border-wrapper{display:flex}.customize-control-ast-border .ast-border-btns{display:block;text-align:center;line-height:2;border:1px solid #ddd;background-color:#fff;border-radius:3px 0 0 3px}.customize-control-ast-border .ast-border-btns>li{margin-bottom:0;display:none;width:35px;height:26px}.customize-control-ast-border .ast-border-btns>li.active{display:inline-block}.customize-control-ast-border .ast-border-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;opacity:.75;outline:0;width:100%;height:100%}.customize-control-ast-border .ast-border-btns button[type=button]>i{width:15px;height:15px;font-size:15px;margin-top:1px}.customize-control-ast-border .input-wrapper .ast-border-wrapper{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;margin:0 2px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:first-child{margin-right:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s;-moz-appearance:textfield}.customize-control-ast-border .input-wrapper .ast-border-wrapper li .ast-border-connected{color:#fff}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:last-child input.ast-border-input{border-left-width:1px;border-radius:3px 0 0 3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper.active{display:flex}.customize-control-ast-border .input-wrapper .ast-border-wrapper span.ast-border-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link .ast-border-connected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-disconnected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-connected{display:block}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span{width:100%;height:26px;line-height:26px;font-size:14px;background-color:transparent;border-radius:3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span svg{pointer-events:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link{margin-top:4px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus,.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:hover{border-color:var(--ast-customizer-color-2)}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus{outline:0}.customize-control-ast-border .input-wrapper.ast-border-wrapper{margin-bottom:8px}.customize-control-ast-border .ast-range-unit{position:absolute;left:0;top:0;padding-left:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.ast-upgrade-pro-wrap .ast-button-link,.customize-control-ast-button-link .ast-button-link{display:block;padding:10px 0;border-radius:2px;border:1px solid var(--ast-customizer-color-1);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);font-size:13px!important;font-weight:400;line-height:13px!important;text-align:center;cursor:pointer}.ast-upgrade-pro-wrap .ast-button-link:hover,.customize-control-ast-button-link .ast-button-link:hover{background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);border:1px solid var(--ast-customizer-color-1)}.ast-btn-preset-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ast-btn-preset-wrap .ast-btn-style-item{cursor:pointer}.ast-btn-preset-wrap .ast-btn-style-item svg{fill:#646970}.ast-btn-preset-wrap .ast-btn-style-item svg:hover{fill:#565b62}.ast-btn-preset-wrap .ast-btn-style-item.active svg,.ast-btn-preset-wrap .ast-btn-style-item.active svg:hover{fill:#2271b1}.ast-reset-btn-preset-wrap{position:absolute;display:inline-block;line-height:1;left:0;top:0}.ast-reset-btn-preset-wrap .components-button.is-secondary,.ast-reset-btn-preset-wrap .components-button.is-secondary:hover{box-shadow:none;background:0 0;color:var(--ast-customizer-color-1)}.color-group-item .components-tooltip .components-popover__content{border-radius:3px}.color-group-item .components-tooltip .components-popover__content>div{padding:5px 10px;line-height:1}.customize-control.customize-control-ast-color-group{display:flex;flex-wrap:wrap}.customize-control.customize-control-ast-color-group .ast-toggle-desc-wrap{flex:1 1 auto;align-self:center}.customize-control.customize-control-ast-color-group .customize-control-title{margin-bottom:5px}.customize-control.customize-control-ast-color-group .ast-field-color-group-wrap{justify-content:flex-end;display:flex;max-height:28px}.customize-control.customize-control-ast-color-group .color-button-wrap{position:inherit}.customize-control.customize-control-ast-color-group .color-group-item:not(:last-child){margin-left:8px}.customize-control.customize-control-ast-color-group .ast-color-group-reset{left:72px;top:6px;cursor:pointer}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap{display:none}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap.active{justify-content:flex-end;display:flex}.customize-control.customize-control-ast-color-group .ast-responsive-btns{position:relative;left:-5px;top:3px}.customize-control.customize-control-ast-color-group .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control.customize-control-ast-color-group .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset{left:110px}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset.ast-single-color-group-set{left:112px}#customize-control-astra-settings-woo-single-page-color-group .ast-color-group-reset{left:145px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-group-reset{top:47px}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:73px}.astra-color-picker-wrap.picker-open+span{display:none}#customize-control-astra-color-palettes .ast-color-palette-wrap>div{margin-bottom:8px;position:relative}#customize-control-astra-color-palettes .color-button-wrap{display:unset;position:relative;left:unset;top:unset;vertical-align:sub;z-index:10}#customize-control-astra-color-palettes .astra-color-picker-wrap{position:absolute;z-index:1;left:0;width:100%;display:none;margin-top:10px}#customize-control-astra-color-palettes .astra-color-picker-wrap.picker-open{display:block}#customize-control-astra-color-palettes .ast-color-palette-label{width:65%;display:inline-block;margin-left:10px;vertical-align:top}#customize-control-astra-color-palettes .ast-color-palette-label input{background:0 0;border:none}#customize-control-astra-color-palettes .ast-color-palette-label input:focus{border:1px solid #000;outline:0;box-shadow:none;background:#fff}.ast-color-palette-wrapper .ast-single-palette-wrap{display:grid;grid-template-columns:repeat(9,1fr);align-items:center;position:relative;gap:2px}.ast-single-palette-wrap .components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:25px;height:25px}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap:first-child{margin-right:0}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap{margin-top:12px;cursor:pointer}#customize-control-astra-color-palettes .ast-reset-btn:disabled{opacity:.6}#customize-control-astra-color-palettes .ast-single-color-container{width:25%;height:48px;display:inline-block}#customize-control-astra-color-palettes .ast-color-palette-wrap>section{text-align:center;outline:0;border-radius:3px;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1px #ddd}.ast-color-palette-container{width:100%;display:inline-grid;grid-template-columns:auto auto;column-gap:16px;row-gap:16px}#customize-control-astra-color-palettes .ast-field-settings-modal{display:none;padding:16px}.ast-color-palette-wrap{transition:all .2s}.ast-color-palette-wrap.active{box-shadow:0 12px 20px -8px rgb(30 41 59 / 16%)}#customize-control-astra-color-palettes .ast-color-palette-wrapper{clear:both}#customize-controls .customize-section-title.is-in-view.is-sticky{z-index:99}#customize-control-astra-color-palettes .ast-palette-selection-wrapper{overflow:hidden;padding:2px}@media (min-width:1800px){#customize-control-astra-color-palettes .astra-color-picker-wrap{width:auto}}#customize-control-astra-color-palettes .ast-color-palette-wrap.active>section{box-shadow:0 0 0 1px #334155}.ast-palette-label-wrap{text-align:center;color:#9ca3af;overflow:hidden;width:100%;box-sizing:border-box;padding:0;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out;font-style:normal;font-weight:600;font-size:10px;line-height:22px;letter-spacing:1.5px;text-transform:uppercase}.ast-color-palette-wrap.active .ast-palette-label-wrap{color:#334155}#customize-control-astra-color-palettes .ast-field-settings-modal{margin-top:-35px}.astra-advanced-color-indicate .global-color{display:none}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color{color:#fff;display:block;opacity:1;position:absolute;right:50%;top:50%;display:block;text-align:center;transform:translate(50%,-50%)}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color svg{width:10px;height:10px;transform:scale(1.5)}#customize-control-astra-color-palettes .ast-adv-toggle-icon{top:-5px}.ast-color-picker-custom-tooltip{position:absolute;top:-30px;bottom:0;right:0;left:0;width:100%;height:100%}.ast-color-picker-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.ast-color-picker-custom-tooltip-wrapper{position:relative}.ast-color-picker-wrap:hover+.ast-color-picker-custom-tooltip-wrapper .ast-color-picker-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-color-palette .components-popover.components-tooltip{position:relative!important;right:5px!important;top:-35px!important;transform:unset!important}.customize-control .components-tooltip{z-index:8!important}.ast-color-palette .components-popover .components-popover__content{bottom:calc(100% + 5px);animation:tooltips-vert .3s ease-out forwards;right:50%;transform:translate(50%,-.5em)}.astra-control-field.astra-color-control{display:flex}.astra-control-field{position:relative;margin-top:10px;margin-bottom:10px}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.astra-control-field .customize-control-title{font-size:14px;font-weight:600;margin-bottom:0;display:flex;align-items:center;letter-spacing:.1px;line-height:18px}.customize-control-title{display:block;font-size:14px;line-height:1;font-weight:600;margin-bottom:4px}.astra-globe-dashicon{color:#fff;background:rgba(0,0,0,.4);border-radius:100%;border:.1px solid rgba(0,0,0,.1);opacity:.78}.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:28px;height:28px;border-radius:50%;margin:0;background:inherit}.component-color-indicator{width:25px;height:16px;display:inline-block}.astra-advanced-color-indicate.component-color-indicator{border:none}.astra-color-icon-indicate.components-button{height:auto;position:relative;transform:scale(1);transition:none;border-radius:50%;padding:0;background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0}.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper{box-sizing:border-box}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type=number].components-text-control__input{min-height:16px;line-height:16px;font-size:12px;width:50px;font-weight:400}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control{flex:1;margin-bottom:0}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label{margin-bottom:0;margin-left:.2em}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field{display:flex;align-items:center;font-size:8px;font-weight:600;font-style:normal;text-transform:uppercase}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field{justify-content:flex-end}.astra-popover-color .components-popover__content .actions{display:flex;justify-content:center;margin-bottom:10px}.astra-popover-color .components-popover__content .actions .button{flex:1;margin-top:10px}.astra-background-picker-wrap .astra-popover-color .components-popover__content{min-width:300px;min-height:340px;max-height:60vh}.color-button-wrap{display:inline-block;position:absolute;left:0;top:0;transform:scale(1);transition:transform .1s ease;height:28px;width:28px}.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:50%;border:1px solid transparent}.components-button.astra-background-icon-indicate{width:50px;height:50px;border-radius:50%;position:relative;transform:scale(1);transition:transform .1s ease;border-radius:50%;padding:0;background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);border:1px solid #dadada;background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0}.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:100%;height:100%;border-radius:4px;margin:0;display:block;position:absolute;border:0;top:0}.components-button.astra-background-icon-indicate>svg.dashicon{position:absolute;transform:translate(50%,-50%);right:50%;top:50%;color:#fff;background:rgba(0,0,0,.6);border-radius:100%;width:16px;height:16px;border:1px solid rgba(0,0,0,.1)}.components-button.astra-background-icon-indicate>svg.dashicon path{transform:translate(-1px,1px)}.components-button.astra-background-icon-indicate img.astra-background-image-preview{display:flex;object-fit:cover;min-width:100%;min-height:100%;position:absolute;top:0}.components-button.astra-background-icon-indicate:hover{box-shadow:none!important}.astra-control-field.astra-color-control{display:flex}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.components-popover.astra-popover-color .components-popover__content{padding:15px 15px 0;box-sizing:initial;background:#fff;border:unset;border-radius:4px;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.customize-control-ast-color.customize-control>*{display:inline}.components-popover.astra-popover-color .components-popover__content .sketch-picker{padding:0 0 5px!important;box-shadow:none!important;border-radius:0!important}.components-popover.astra-popover-color .components-popover__content .attachment-media-view{margin-top:10px;margin-bottom:10px}.astra-swatches-wrap .astra-swatche-item-wrap:hover{transform:scale(1.1)!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item{background-image:linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#ddd 0),linear-gradient(45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:100% 0,100% 5px,5px -5px,-5px 0;padding:0;display:flex;justify-content:center}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon{display:none}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active{box-shadow:0 0 0 8px inset!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon{display:block;color:#fff;background:rgba(0,0,0,.6);width:16px;height:16px;border:1px solid rgba(0,0,0,.1);border-radius:100%}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path{transform:translate(-1px,1px)}.components-button.astra-color-icon-indicate>.dashicon{position:absolute;transform:translate(50%,-50%);right:50%;top:50%;color:#fff;background:rgb(85 93 101);border-radius:4px;width:24px;height:24px;font-size:24px;border:1px solid rgba(0,0,0,.1)}.astra-popover-color{margin:5px -5px 0;background-color:#fff;border-radius:4px;box-shadow:0 8px 16px -4px rgba(30,41,59,.16)}.astra-popover-color .components-h-stack.ast-color-palette{padding:14px 5px}.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette,.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette{padding:0 5px 14px}.astra-popover-color .components-h-stack .components-button{flex:inherit}.astra-popover-color .components-circular-option-picker__option:focus::after{width:auto;height:auto}.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{margin-left:0}.astra-popover-color .components-color-picker .react-colorful__alpha,.astra-popover-color .components-color-picker .react-colorful__hue{width:90%}.ast-field-settings-modal .astra-popover-color{margin-right:0;border:1px solid #dedede}.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs{padding:8px}.components-color-picker__saturation-black{border-radius:4px 4px 0 0}.components-color-picker__saturation-color{border-radius:3px}.components-color-picker__saturation-white{border-radius:3px}.astra-color-picker-wrap{position:absolute;z-index:2;top:30px;right:0;left:0;bottom:0;display:none}.astra-color-picker-wrap .astra-popover-color .components-color-picker,.astra-color-picker-wrap .astra-popover-color .react-colorful{width:100%}.astra-popover-color .components-custom-gradient-picker{z-index:1}.astra-popover-color .components-custom-gradient-picker__ui-line{z-index:-1}.astra-color-picker-wrap.picker-open{display:block}.ast-field-settings-modal .astra-color-picker-wrap{position:relative;top:10px}.ast-color-palette .components-circular-option-picker__option-wrapper{margin-left:6px;position:relative;height:25px;width:25px}.ast-color-btn-clear-wrap{position:absolute;top:1.5px;left:65px}.ast-color-btn-clear-wrap .astra-color-clear-button.components-button{padding:10px 3px;width:20px;height:20px}.ast-clear-btn-inside-picker.components-button,.ast-reset-btn-inside-picker.components-button,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 15px 20px 20px;padding:0 8px;border:1px solid #ccc;box-shadow:none}.ast-clear-btn-inside-picker.components-button:active,.ast-clear-btn-inside-picker.components-button:focus,.ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:none!important;background:0 0!important}.ast-clear-btn-inside-picker{padding:0 8px}.ast-color-btn-reset-wrap{position:absolute;left:36px;top:6px}.ast-color-btn-reset-wrap .ast-reset-btn.components-button,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button{color:#006ba1;height:20px;width:20px;padding:4px;background:0 0;box-shadow:none;cursor:pointer}.astra-color-clear-button.components-button:focus:not(:disabled){outline:unset;border:none}.ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus,.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover{box-shadow:none;border:none;background:0 0}.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled),.astra-color-clear-button.components-button:focus:not(:disabled){box-shadow:0 0 #000;padding:1.5px;border:none}.ast-reset-btn.components-button.is-secondary:disabled span,.astra-color-clear-button.components-button.is-secondary:disabled{color:var(--ast-customizer-color-6)}.ast-field-settings-modal .color-button-wrap{left:16px}.ast-field-settings-modal .ast-color-btn-reset-wrap{left:59px;top:6px}.ast-field-settings-modal .ast-color-btn-clear-wrap{left:78px}.ast-field-settings-modal .customize-control-ast-color.customize-control,.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child{margin-top:25px}.astra-color-picker-wrap .components-color-picker__inputs-wrapper{min-width:unset}.customize-control .ast-gradient-color-picker input[type=number]{width:100%}.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker{align-items:center;flex-direction:inherit}.astra-color-picker-wrap .components-popover__content{width:max-content}.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker,.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful,.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker{width:216px}.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker{flex-direction:column;align-items:start}.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control{margin-bottom:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point{padding:0 16px 16px 16px;border:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus{box-shadow:none;outline:0}.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type=number]{width:100%}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:25px;width:25px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:2.5px;top:0;width:20px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:0;top:0;mix-blend-mode:difference}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches{gap:4px;justify-content:center}.astra-popover-color .components-circular-option-picker__option-wrapper:hover{transform:scale(1.1)}.customize-control-ast-color+.customize-control-ast-color{margin-top:30px}@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{height:22px;width:22px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option{padding:6px 10px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{width:20px;top:-2px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.astra-popover-color .ast-color-palette.components-circular-option-picker{width:auto;padding:16px 8px 0 0}.astra-typography-control .typography-button-wrap>button.components-button.astra-typography-preview-indicate{padding:0 2px}.astra-typography-control .typography-button-wrap>button.components-button{padding:0 4px}.ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:auto;height:auto}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:1px;top:-2px;width:18px}}@supports (-moz-appearance:none){@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{margin-left:5px}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:21px;height:21px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{right:3px;top:-2px;width:15px}}}.astra-color-icon-indicate.components-button:focus:not(:disabled){box-shadow:unset;outline:unset}.astra-color-icon-indicate.components-button:hover{transform:scale(1.05)}.ast-top-divider.customize-control-ast-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px;display:inline-flex;width:100%;min-height:22px}.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title+.ast-responsive-toggle-control-wrapper,.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap,.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.ast-top-divider .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:67px}.ast-top-divider .ast-divider-title+.ast-control-wrap .color-button-wrap{top:61px}.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap .ast-responsive-btns{top:70px}.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{width:100%}:root{--ast-customizer-color-1:#0284c7;--ast-customizer-color-2:#0ea5e9;--ast-customizer-color-3:#2271b1;--ast-customizer-color-4:#1e293b;--ast-customizer-color-5:#334155;--ast-customizer-color-6:#9CA3AF;--ast-customizer-color-7:#D1D5DB;--ast-customizer-color-8:#4B5563;--ast-customizer-color-9:#fff;--ast-customizer-color-10:#fff;--ast-customizer-color-11:#F5F5F5;--ast-customizer-color-12:#1e293b;--ast-customizer-color-13:#F3F4F6;--ast-customizer-color-14:#cc1818}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{color:var(--ast-customizer-color-5)}.customize-control .ast-spacing-responsive-btns li svg{max-width:13px}.customize-control-ast-customizer-link .customizer-link{font-style:italic;text-decoration:none}.customize-control-ast-customizer-link:empty{display:none}.accordion-section-content::-webkit-scrollbar,.wp-full-overlay-sidebar-content::-webkit-scrollbar{width:6px;background-color:#f1f1f1}.accordion-section-content::-webkit-scrollbar-thumb,.wp-full-overlay-sidebar-content::-webkit-scrollbar-thumb{border-radius:10px;background-color:#d8d8d8}.accordion-section-content::-webkit-scrollbar-track,.wp-full-overlay-sidebar-content::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3);width:6px}.wp-full-overlay-sidebar:after{display:none}#customize-theme-controls .control-section-ast-section-separator{margin-top:15px;border-top:1px solid #ddd;display:block!important}.customize-control:not(.customize-control-nav_menu_item){position:relative;margin-bottom:0;margin-top:16px}.customize-control-ast-background,.customize-control-ast-responsive-background,.customize-control.customize-control-ast-color,.customize-control.customize-control-ast-color-group{display:flex;align-items:center;min-height:28px;flex-wrap:wrap}.customize-control-ast-responsive-background label{white-space:nowrap}.customize-control .media-position-setting label.components-text{text-transform:capitalize;font-size:12px;font-weight:400}.media-position-setting .astra-popover-tabs .components-tab-panel__tabs{padding-right:0;padding-left:0}.customize-control[ID*="-builder-layout-ast-context-tabs"]{margin-top:0}[ID*="-builder-layout-ast-context-tabs"]{margin-top:10px}.customize-section-title{margin:-12px -24px 0 -24px}#customize-controls .customize-info,#customize-controls .customize-info.section-meta,.customize-section-description-container{margin-bottom:0}#customize-controls #sub-accordion-panel-nav_menus .customize-info{margin-bottom:15px}#customize-control-astra-settings-header-transparent-link-heading{margin-top:15px}.components-base-control .components-base-control__field{margin-bottom:0}.components-base-control .components-base-control__field .components-input-control__backdrop{border-color:#d1d5db!important}.customize-control .customize-inside-control-row{padding-top:0;padding-bottom:0}.customize-control-title{display:inline-block;margin-bottom:16px;vertical-align:middle}.customize-control-ast-background .customize-control-title,.customize-control-ast-color .customize-control-title,.customize-control-ast-responsive-background .customize-control-title,.customize-control-ast-responsive-color .customize-control-title{display:contents}.customize-control .ast-control-tooltip{position:absolute;top:0;left:0;color:var(--ast-customizer-color-6);cursor:help}.customize-control.customize-control-ast-toggle-control .ast-control-tooltip{position:absolute;top:50%;left:40px;transform:translateY(-50%);z-index:1}#customize-control-astra-settings-learndash-distraction-free-learning .ast-control-tooltip{padding-top:32px}.customize-control.customize-control-ast-toggle-control.ast-top-dotted-divider .ast-control-tooltip{position:absolute;top:55%;left:40px;transform:translateY(0)}.customize-control.customize-control-ast-toggle-control.ast-top-divider .ast-control-tooltip{top:calc(50% + 15px)}.customize-control.customize-control-ast-toggle-control.ast-bottom-divider .ast-control-tooltip{top:calc(50% - 11px)}.customize-control.customize-control-ast-toggle-control .ast-description-enabled .components-form-toggle{margin-right:25px}.customize-control.customize-control-ast-divider .ast-control-tooltip{position:absolute;top:auto;bottom:3px;left:0}.ast-fields-wrap .customize-control .ast-control-tooltip{left:15px;top:6px}.customize-control .ast-sortable-subfields-wrap .ast-control-tooltip{position:absolute!important;top:40%;left:0;transform:translateY(-50%);z-index:1}.customize-control .ast-sortable-subfields-wrap .customize-control-ast-toggle .ast-control-tooltip{left:30px;top:50%}.ast-top-dotted-divider .dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{top:24px}.customize-control .select2-search input[type=text].select2-search__field{min-height:17px}input[type=text].select2-search__field{line-height:1;border-radius:0}.ast-customizer-notice{margin:0 -12px;padding:12px}#customize-theme-controls .control-section.open{height:100%;padding:12px 24px 25px 24px}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){#customize-control-astra-settings-ast-header-responsive-logo-width .wrapper{display:inline-block;width:100%}.dashicons-desktop:before,.dashicons-smartphone:before,.dashicons-tablet:before{color:#000;opacity:.75}.ast-reset-btn.components-button svg{padding:0;height:13px}}}@-moz-document url-prefix(){.control-section.open .customize-control:last-child{margin-bottom:20px}}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.control-section.open .customize-control:last-child{padding-bottom:20px}#customize-control-astra-settings-blog-archive-image-height .customize-control-title,#customize-control-astra-settings-blog-archive-image-width .customize-control-title,#customize-control-astra-settings-blog-single-post-image-height .customize-control-title,#customize-control-astra-settings-blog-single-post-image-width .customize-control-title{margin-right:0;margin-left:20px}}.wp-customizer li:not(.customize-control-sidebar_block_editor) h1,.wp-customizer li:not(.customize-control-sidebar_block_editor) h2,.wp-customizer li:not(.customize-control-sidebar_block_editor) h3,.wp-customizer li:not(.customize-control-sidebar_block_editor) h4,.wp-customizer li:not(.customize-control-sidebar_block_editor) h5,.wp-customizer li:not(.customize-control-sidebar_block_editor) h6{font-weight:600}.block-list-appender{margin-bottom:20px}.block-editor-block-inspector .block-editor-block-card{margin-top:12px}.components-circular-option-picker__option-wrapper::before{background:unset}.block-editor-panel-color-gradient-settings .components-circular-option-picker__option-wrapper{position:relative}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}#customize-controls .control-section.control-section-ast_section .accordion-section-title,#customize-outer-theme-controls .accordion-section-title,#customize-theme-controls .accordion-section-title{border-bottom:1px solid var(--ast-customizer-color-7)}.wp-core-ui #customize-controls .control-section .accordion-section-title:focus,.wp-core-ui #customize-controls .control-section .accordion-section-title:hover,.wp-core-ui #customize-controls .control-section:hover>.accordion-section-title,.wp-core-ui .customize-panel-back:focus,.wp-core-ui .customize-panel-back:hover,.wp-core-ui .customize-section-back:focus,.wp-core-ui .customize-section-back:hover{border-right-color:var(--ast-customizer-color-1)}.ast-section-toggle{display:grid;grid-template-columns:70% 20% 10%;align-items:center;padding:0 12px 0 0;height:100%;align-items:center;align-content:center}.ast-section-toggle label{font-size:14px;line-height:1;font-weight:600;height:100%;display:inline-flex;align-items:center}.ast-section-toggle>label{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:auto;line-height:50px}.ast-section-toggle:not(.active)>label{cursor:default}.customize-control.customize-control-ast-section-toggle{border:1px dashed var(--ast-customizer-color-7);background:var(--ast-customizer-color-11);cursor:pointer;box-shadow:none!important;line-height:42px;font-size:14px;display:inline-grid;align-items:center;height:auto;color:var(--ast-customizer-color-5);position:relative;white-space:nowrap;border-radius:4px;transition:all .2s;padding-top:0;padding-bottom:0;margin-bottom:9px}.customize-control.customize-control-ast-section-toggle:hover{background:var(--ast-customizer-color-9);border-style:solid}.ast-section-toggle-icon{color:var(--wp-admin-theme-color);cursor:pointer;line-height:20px;height:100%;display:inline-flex;align-items:center}.ast-section-toggle-icon span{font-size:16px;line-height:20px;width:16px;height:16px}.customize-control-ast-section-toggle{padding-top:25px;padding-bottom:16px}li[ID*=accordion-section-ast-dynamic-archive-].control-section-ast_section,li[ID*=accordion-section-ast-dynamic-single-].control-section-ast_section{display:none!important}.customize-control-ast-description .ast-description{font-style:italic;color:#9ca3af;font-size:11px;line-height:16px;font-weight:400;text-wrap:wrap;display:inline-block}.customize-control-ast-description a.button{margin-top:10px;font-style:normal}.customize-control-ast-description p{margin:0;cursor:initial;font-size:11px;line-height:16px;font-weight:400}.customize-control-ast-divider hr{margin-top:0;margin-bottom:0;border-bottom:none}.customize-control-ast-divider .customize-control-title{font-size:15px;margin:1em 0 .2em}.customize-control-ast-divider .customize-control-suffix{position:absolute;left:0;bottom:0;font-weight:600;color:var(--ast-customizer-color-1);display:inline-block;font-size:11px;text-transform:uppercase}.customize-control-ast-divider .customizer-text{margin-top:-10px;display:block}.ast-field-settings-modal .customize-control-ast-divider{background-color:#f5f5f5;display:block;padding:6px 14px;margin:0;border-width:1px 0;border-style:solid;border-color:#ddd;line-height:1;margin-top:15px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customizer-text{margin-top:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customize-control-title{font-weight:500;letter-spacing:1px;font-size:11px;margin:0;text-transform:uppercase}.ast-bottom-divider{border-bottom:1px solid var(--ast-customizer-color-7);padding-bottom:25px}.ast-top-divider{border-top:1px solid var(--ast-customizer-color-7);padding-top:25px}.ast-bottom-divider>label.ast-divider-title,.ast-top-divider>label.ast-divider-title,.customize-control-ast-color-group>.ast-divider-title{display:block;width:100%;font-size:15px;font-weight:600}.ast-top-divider .ast-control-wrap .ast-color-btn-reset-wrap{top:25px}.ast-top-divider .ast-control-wrap .astra-color-picker-wrap{top:55px;background-color:transparent}.ast-top-divider .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:100px;background-color:transparent}.ast-top-divider .ast-control-wrap .color-button-wrap{top:20.5px}.ast-top-divider.customize-control-ast-select .ast-divider-title{margin-bottom:25px}.customize-control.ast-bottom-spacing{margin-bottom:16px}.customize-control.ast-top-spacing{margin-top:16px}#customize-control-astra-settings-ast-header-retina-logo,#customize-control-astra-settings-checkout-back-to-cart-button-text,#customize-control-astra-settings-edd-archive-variable-button-text,#customize-control-astra-settings-header-account-create-menu-link,#customize-control-astra-settings-header-account-logged-out-text,#customize-control-astra-settings-product-sale-percent-value,#customize-control-astra-settings-shop-load-more-text,#customize-control-astra-settings-single-product-recently-viewed-text,#customize-control-astra-settings-single-product-shipping-text,#customize-control-astra-settings-sticky-header-retina-logo,#customize-control-astra-settings-woo-cart-button-text,.customize-control.ast-top-dotted-divider{margin-top:24px;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)},#customize-control-blogdescription,#customize-control-blogname{margin-top:16px}#customize-control-astra-settings-product-sale-percent-value .ast-control-tooltip{top:24px}.customize-control.ast-top-dotted-divider .ast-adv-toggle-icon{top:25px}#customize-control-astra-settings-header-account-logged-in-text,.customize-control.ast-bottom-dotted-divider{margin-bottom:8px;padding-bottom:24px;border-bottom:1px dashed var(--ast-customizer-color-7)}.customize-control.ast-bottom-dotted-divider .ast-adv-toggle-icon{bottom:25px}.customize-control.ast-bottom-section-divider,.customize-control.ast-top-section-divider{position:relative}.customize-control.ast-top-section-divider{padding-top:32px;margin-top:32px}.customize-control.ast-bottom-section-divider{padding-bottom:32px;margin-bottom:16px}.customize-control.ast-sub-top-dotted-divider{padding-top:20px}.customize-control.ast-sub-bottom-dotted-divider{padding-bottom:20px;margin-bottom:10px}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-top-section-divider::before{content:'';position:absolute;right:-100%;background-color:var(--ast-customizer-color-7);width:500%;height:1px}.customize-control.ast-sub-top-dotted-divider::before,.customize-control.ast-top-section-divider::before{top:0}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-sub-bottom-dotted-divider::after{bottom:0}.customize-control.ast-sub-bottom-dotted-divider::after,.customize-control.ast-sub-top-dotted-divider::before{content:'';border-top:1px dashed var(--ast-customizer-color-7);width:calc(100% - 30px);height:1px;position:absolute;right:15px}[ID*="-create-menu-link"] .ahfb-builder-item-start{margin-bottom:0}#customize-control-astra-settings-footer-create-menu-link,#customize-control-astra-settings-footer-language-switcher-options,#customize-control-astra-settings-header-above-stick,#customize-control-astra-settings-header-language-switcher-options,#customize-control-astra-settings-header-mobile-menu-create-menu-link,#customize-control-astra-settings-site-icon-link,#customize-control-custom_logo,.customize-control.ast-section-spacing,[ID*=customize-control-astra-settings-footer-button][ID*="-text"],[ID*=customize-control-astra-settings-header-button][ID*="-text"],[ID*=sub-accordion-section-section-hb-menu-] [ID*="-create-menu-link"]{margin-top:32px}#customize-control-body-font-variant,#customize-control-headings-font-variant{margin-top:0}#sub-accordion-section-section-sidebars>.customize-control-ast-heading{margin-top:16px}#sub-accordion-section-section-sidebars>.customize-control-ast-heading~.customize-control-ast-heading{margin-top:32px}.ast-fields-wrap .customize-control.ast-bottom-section-divider::after,.ast-fields-wrap .customize-control.ast-top-section-divider::before{width:100%;right:0}.ast-typo-presets{width:100%;display:flex;align-items:center;flex-wrap:wrap;row-gap:8px;column-gap:8px;justify-content:space-between}.ast-typo-presets .ast-typo-preset-item{padding:0;border-radius:3px;cursor:pointer;border:1px solid var(--ast-customizer-color-7);height:64px;text-align:center;width:47.5%;position:relative}.ast-typo-presets .ast-typo-preset-item:hover{border:1px solid var(--ast-customizer-color-1)}.ast-typo-presets .ast-typo-preset-item svg{transform:scale(1);width:100%;height:100%;padding:0;margin:0}.ast-typo-presets .ast-typo-preset-item.active{border:1px solid var(--ast-customizer-color-1);background:var(--ast-customizer-color-9)}.customize-control-ast-typography-presets .ast-reset-btn-preset-wrap{top:-5px}.ast-typo-preset-item .components-tooltip{margin-top:-8px}.ast-typo-preset-item .components-tooltip::before{border-bottom:none!important;border-right-color:transparent!important;border-left-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-right:-10px;bottom:-8px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #ccc}.ast-typo-preset-item .components-tooltip::after{border-bottom:none!important;border-right-color:transparent!important;border-left-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-right:-10px;bottom:-6px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #fff}.ast-font-styling{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px dashed #d4d4d4}.ast-font-extras-wrapper,.ast-font-spacing-wrapper{display:flex;align-items:center;gap:8px}.ast-font-extras-wrapper .ast-font-extras-input,.ast-font-spacing-wrapper .ast-font-spacing-input{position:relative;display:flex;align-items:center;background:#fff;max-width:72px;width:100%;border:1px solid #d1d5db;border-radius:3px;padding:0 3px}.ast-font-extras-wrapper .ast-font-extras-input input,.ast-font-spacing-wrapper .ast-font-spacing-input input{padding:0;border:none;min-height:32px;border-radius:3px;border:none!important;box-shadow:none!important;text-align:center;padding:0 5px}.ast-font-extras-wrapper .ast-font-extras-input input[type=number],.ast-font-spacing-wrapper .ast-font-spacing-input input[type=number]{-moz-appearance:textfield}.ast-font-extras-input:hover,.ast-font-spacing-input:hover{border-color:var(--ast-customizer-color-2)}.ast-font-extras-wrapper .ast-font-extras-input svg,.ast-font-spacing-wrapper .ast-font-spacing-input svg{width:38px;height:28px}.ast-font-extras-input .plus-minus-control .dashicons,.ast-font-spacing-input .plus-minus-control .dashicons{font-size:10px;color:#9ca3af;width:12px;height:10px;display:inherit;cursor:pointer}div .ast-field-settings-modal .customize-control-ast-font-extras{margin-top:15px}.ast-font-extras-input input[type=number]::-webkit-inner-spin-button,.ast-font-extras-input input[type=number]::-webkit-outer-spin-button,.ast-font-spacing-input input[type=number]::-webkit-inner-spin-button,.ast-font-spacing-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ast-font-unit-wrapper{display:flex;gap:6px;font-size:11px;font-weight:500;color:#9ca3af}.ast-font-unit-wrapper span{cursor:pointer}.ast-font-unit-wrapper span:hover{color:#0284c7}.ast-font-unit-wrapper .active{color:#0284c7;cursor:default}.ast-font-styling-second{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px}.ast-font-decoration-wrapper,.ast-font-transform-wrapper{display:flex;align-items:center;flex:1}.ast-font-decoration-wrapper div,.ast-font-transform-wrapper div{padding:8px 0;width:33%;text-align:center;font-weight:600;font-size:12px;line-height:16px;color:#334155}.ast-font-decoration-wrapper div.active,.ast-font-transform-wrapper div.active{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type{border:1px solid #d1d5db}.ast-font-item-type:hover{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type:first-child{border:1px solid #d1d5db;border-left:none;border-radius:0 3px 3px 0}.ast-font-item-type:last-child{border:1px solid #d1d5db;border-right:none;border-radius:3px 0 0 3px}.ast-font-item-type.ast-font-deco-underline{text-decoration:underline}.ast-font-item-type.ast-font-deco-linethrough{text-decoration:line-through}.ast-typopreset-custom-tooltip{position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.ast-typopreset-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.ast-typopreset-custom-tooltip[data-title]:hover::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-customizer-font-varient-wrap{margin-top:12px}.ast-customizer-font-varient-wrap .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding:2px 5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:12px;padding:2px 2px 2px 2px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px;padding-right:5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__label{line-height:normal}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove{color:#4b5563;padding-left:0}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-font-varient-wrap .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-font-varient-wrap .ast-multi-select__control{position:relative;max-height:32px;display:inline-flex;width:100%;align-content:center}.ast-customizer-font-varient-wrap .ast-multi-select__control:after{content:"\f11c";font-family:dashicons;font-size:16px;margin-left:7px;pointer-events:none;z-index:1}.ast-customizer-font-varient-wrap .ast-multi-select__control:before{content:'';position:absolute;top:3px;left:3px;width:50px;height:25px;background:#f7f7f7;background:linear-gradient(-90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}#customize-control-astra-settings-ast-body-font-settings .ast-fields-wrap,#customize-control-astra-settings-ast-headings-font-settings .ast-fields-wrap{overflow:visible}.customize-control-ast-font select option[value=normal],.customize-control-ast-font select[data-value=normal] option[value="400"]{display:none}.customize-control-ast-font select[data-value=normal] option[value=normal]{display:block}span.customize-control-title.ast-group-section-title{margin-bottom:4px;font-weight:600}.ast-top-divider.customize-control-ast-group-title .ast-reset-btn-preset-wrap{top:24px}.customize-control-ast-group-title .ast-responsive-btns{margin-right:5px;position:relative;top:3px}.ast-field-settings-wrap .customize-control-ast-heading{margin:0 0 15px 0}.customize-control-ast-heading{margin-top:25px;margin-bottom:0}.customize-control-ast-heading .ast-heading-wrapper{margin:0 -24px}.customize-control-ast-heading .customize-control-title{display:block;padding:15px 24px;margin:0;border-width:1px 0;border-style:solid;border-color:var(--ast-customizer-color-7);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-4);font-size:12px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase!important}.customize-control-ast-heading .customize-control-caption{top:50%;transform:translateY(-50%);position:absolute;left:0;font-size:11px;font-weight:500;letter-spacing:1px}.customize-control-ast-heading .customize-control-description{margin-top:10px}.ast-heading-wrapper label{cursor:default}.customize-control>label{cursor:default}.customize-control .ast-border-input-item-link,.customize-control .ast-spacing-input-item-link{cursor:pointer}.customize-control.customize-control-ast-slider label{cursor:pointer}.customize-control.customize-control-ast-slider label .wrapper input[type=range]{cursor:pointer}.customize-control .ast-control-reduce-top-space{margin-top:-15px}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper{position:relative}.customize-control-ast-input-with-dropdown .components-dropdown-menu{position:absolute;left:0;top:0}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle{width:30px;height:30px;border-radius:0;background-color:var(--wp-admin-theme-color);color:#fff}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:#fff}.customize-control-ast-input-with-dropdown .components-button:focus:not(:disabled){box-shadow:none;outline:0}.customize-control-ast-input-with-dropdown .components-popover__content{min-width:170px}.customize-control-ast-input-with-dropdown .components-popover__content .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:var(--wp-admin-theme-color)}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper input.components-text-control__input{padding-left:40px;max-height:30px;min-height:30px;border-color:#ddd}.ast-link-open-in-new-tab-wrapper{margin:24px 0 0;border-top:1px dashed var(--ast-customizer-color-7)}.ast-link-label-wrapper{margin:24px 0;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)}.customize-control-ast-multi-selector .input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap{display:flex;justify-content:center;flex:1 1 0;background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-7);padding:.6em 0;cursor:pointer;--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-6);margin-right:-1px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active{--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-1);border-color:var(--ast-customizer-color-3);z-index:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap svg{fill:var(--ast-customizer-color-10)}.ast-multiselector-inner-wrap .ahfb-icon-set{line-height:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:last-child{border-radius:3px 0 0 3px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:first-child{border-radius:0 3px 3px 0}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap span[label]{color:var(--ast-customizer-color-6)}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active span[label]{color:var(--ast-customizer-multiselect-icon-color)}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(50% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap:nth-child(2n){margin-left:0}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(33.33% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap:nth-child(3n){margin-left:0}[CLASS*=stack-after-].ast-alignment-wrapper{margin-right:-5px;margin-left:-5px;display:flex;flex-wrap:wrap}[CLASS*=stack-after-].ast-alignment-wrapper .ast-multiselector-inner-wrap{margin:5px;align-items:center;padding:5px;height:30px;border-radius:0}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(45% - 10px)}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(28% - 10px)}li[ID*="-image-custom-scale-height"],li[ID*="-image-custom-scale-width"]{display:inline-flex;justify-content:center;align-content:center;align-items:center}li[ID*="-image-custom-scale-height"]{float:none;padding:0!important;width:calc(50% + 12px)}li[ID*="-image-custom-scale-width"]{width:calc(50% - 12px)}li[ID*="-image-custom-scale-height"]:before{content:':';padding:0 10px;line-height:30px}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden{float:unset;width:unset}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before{content:unset}.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}` .customize-control-ast-number input[type=number]{-moz-appearance:textfield;text-align:center}.customize-control-ast-number input[type=number]::-ms-clear,.customize-control-ast-number input[type=number]::-ms-reveal,.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{display:none}.customize-control-ast-radio-icon .ast-control-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.customize-control-ast-radio-icon .customize-control-title{flex:1;padding-left:.5em}.customize-control-ast-radio-icon .customize-control-title{margin-top:8px;margin-bottom:8px}.customize-control-ast-radio-icon .ast-options{background-color:transparent;margin:0;line-height:0}.customize-control-ast-radio-icon .ast-options li{display:inline-block;position:relative;background-color:transparent;width:42px;height:28px;line-height:28px;margin-bottom:0;border:1px solid var(--ast-customizer-color-7);color:var(--ast-customizer-color-8);cursor:pointer}.customize-control-ast-radio-icon .ast-options li .dashicon{text-align:center;line-height:28px;width:100%;font-size:16px}.customize-control-ast-radio-icon .ast-options li{margin-right:-1px}.customize-control-ast-radio-icon .ast-options li:first-child{border-top-right-radius:3px;border-bottom-right-radius:3px;margin-right:0}.customize-control-ast-radio-icon .ast-options li:last-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.customize-control-ast-radio-icon .ast-options li.active{background-color:var(--ast-customizer-color-1);color:var(--ast-customizer-color-10);border-color:var(--ast-customizer-color-1);margin-left:1px}.customize-control-ast-row-layout .ast-responsive-btns{position:relative;top:1px}.customize-control-ast-radio-image label{position:relative;display:inline-block;margin-left:12px}.ast-divide-four label{margin-left:0}.customize-control-ast-radio-image input{display:none}.customize-control-ast-radio-image input:checked+label svg{background:var(--ast-customizer-color-1);border-radius:0;box-shadow:0 0 3px 0 rgba(0,133,186,.67)}.customize-control-ast-radio-image input:checked+label svg path{color:var(--ast-customizer-color-10)}.components-button-group.ahfb-radio-container-control .active-radio.ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout input:checked+label svg{background-color:var(--ast-customizer-color-1);border-color:transparent;box-shadow:0 12px 20px -8px rgba(30,41,59,.16);border-bottom-color:#f0f0f1}.ast-divide-four input:checked+label svg{box-shadow:none;color:var(--ast-customizer-color-3)}.customize-control-ast-radio-image input+label .image-clickable{position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.image{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:5px;grid-row-gap:5px}.components-button-group.ahfb-radio-container-control,.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.modern-layout{display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:23px;grid-row-gap:23px}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.ast-divide-four{grid-template-columns:repeat(4,1fr);grid-column-gap:14px;grid-row-gap:10px}.customize-control-ast-radio-image .ast-radio-img-svg svg{width:75px;height:50px}.components-button-group.ahfb-radio-container-control .ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout .ast-radio-img-svg svg{margin:0;width:100%;height:auto;background-color:rgba(221,224,226,.5);border:1px solid var(--ast-customizer-color-7);border-radius:4px;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.ast-divide-four .ast-radio-img-svg svg{color:var(--ast-customizer-color-7);width:100%;height:93%}.ast-divide-four .ast-radio-img-svg svg path{color:var(--ast-customizer-color-8)}.image-clickable[data-title]::after{text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.image-clickable[data-title]::after{content:attr(data-title);min-width:3em;max-width:21em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgba(0,0,0,.35);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:9;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards}.image-clickable[data-title]:hover::after{display:block}.image-clickable[data-title='']::after{display:none!important}@keyframes tooltips-vert{to{opacity:.9;transform:translate(50%,0)}}@keyframes tooltips-horz{to{opacity:.9;transform:translate(0,-50%)}}.ast-upgrade-trigger:hover .image-clickable[data-title]::after{display:block}.customize-control-ast-responsive-background{position:relative;margin-bottom:-5px}.customize-control-ast-responsive-background .background-container h4{font-size:14px;font-weight:600;color:#555d66}.customize-control-ast-responsive-background .background-attachment h4,.customize-control-ast-responsive-background .background-color h4,.customize-control-ast-responsive-background .background-position h4,.customize-control-ast-responsive-background .background-repeat h4,.customize-control-ast-responsive-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-responsive-background .background-color{margin-bottom:12px}.customize-control-ast-responsive-background .background-repeat{margin:15px 0 15px 0}.customize-control-ast-responsive-background .background-attachment .buttonset,.customize-control-ast-responsive-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-left:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-responsive-background .background-size .buttonset .switch-label:last-child{margin-left:0}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input:checked+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-responsive-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-responsive-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-responsive-background .arrow-icon{margin-right:5px}.customize-control-ast-responsive-background .background-container{display:none}.customize-control-ast-responsive-background .background-container.active{display:block}.customize-control-ast-responsive-background .wp-picker-container{display:block}.customize-control-ast-responsive-background .wp-picker-container .wp-picker-clear{margin-right:4px;min-height:30px}.customize-control-ast-responsive-background .customize-control-content .astra-color-picker-wrap{width:100%}.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.customize-control-ast-responsive-background .ast-color-btn-clear-wrap{left:84px}.components-color-picker__inputs-toggle-wrapper .components-color-picker__inputs-toggle{vertical-align:middle;height:32px}.astra-popover-tabs .components-button.upload-button.button-add-media{width:100%;position:relative;text-align:center;color:#555d66;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6}.astra-popover-tabs .components-button.upload-button.button-add-media:hover{color:#555d66;box-sizing:border-box;box-shadow:unset;border-color:#0185ba}.astra-popover-tabs [ID*="-gradient-view"]{padding:0 15px 15px 15px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear{flex:unset;box-shadow:unset;width:auto;padding:0 5px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:hover{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:focus{box-shadow:unset}.astra-popover-tabs #tab-panel-0-image-view>div{text-align:center}.astra-popover-tabs #tab-panel-0-image-view>div img{width:200px;margin-bottom:18px}.astra-popover-tabs #tab-panel-0-image-view>div .media-position-setting{text-align:right}.media-position-setting>.components-base-control{margin-bottom:15px}.media-position-setting [CLASS*="-Item-LabelWrapper"]{margin-bottom:5px}.astra-popover-color .components-circular-option-picker{position:relative;margin-top:0}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{margin-top:10px;justify-content:flex-start}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{width:50px}}.astra-popover-color [ID*="-color-view"] .components-circular-option-picker{width:auto}.astra-popover-color .ast-color-palette{width:auto;padding:16px 14px 0 0}.astra-popover-color .ast-color-palette .components-circular-option-picker__option{width:100%;height:100%;border-radius:100%}.astra-popover-color .ast-color-palette .components-button.is-pressed:focus:not(:disabled){box-shadow:none;border:none}.astra-popover-color .components-custom-gradient-picker{margin-top:0}.astra-popover-color .components-custom-gradient-picker__gradient-bar{box-sizing:border-box;opacity:1}.astra-popover-color .components-custom-gradient-picker__type-picker .components-base-control__label{display:block}.components-custom-gradient-picker .components-base-control__label{padding-top:10px;font-size:12px;display:block;letter-spacing:.1px;line-height:18px}[ID*="-gradient-view"] .components-toolbar.components-custom-gradient-picker__toolbar .components-button.has-icon{border:none}.media-position-setting.hide-settings{display:none}.media-position-setting .astra-popover-tabs [ID*="-gradient-view"]{padding:0 0 15px 0}.ast-field-settings-modal .customize-control-content .color-button-wrap{left:30px;top:0}.ast-field-settings-modal .ast-responsive-btns{position:absolute;left:14px;top:4px}.ast-field-settings-modal .customize-control-content .astra-color-picker-wrap{margin-right:0;margin-top:0}.ast-field-settings-modal .customize-control-content .ast-color-btn-reset-wrap{left:65px;top:7px}.ast-field-settings-modal .customize-control-content .ast-color-btn-clear-wrap{left:91px}.ast-field-settings-modal .customize-control-ast-responsive-background.customize-control:first-child{margin-top:28px}.customize-control-ast-responsive-background .ast-color-btn-reset-wrap,.customize-control-ast-responsive-color .ast-color-btn-reset-wrap{display:inline-block;line-height:1;top:4.5px}.customize-control-ast-responsive-background .ast-responsive-btns,.customize-control-ast-responsive-color .ast-responsive-btns{position:relative;left:-5px;top:2px}.ast-field-settings-modal .customize-control-ast-responsive-background .ast-responsive-btns,.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{left:8px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha{display:none}.customize-control-ast-responsive-color .customize-control-content{display:block;margin-top:5px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-black{border-radius:4px 4px 0 0}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-white{border-radius:3px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha.active{display:block}.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{left:30px;top:-3px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .astra-color-picker-wrap{margin-right:0;margin-bottom:10px;margin-top:10px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .customize-control-title{display:block;margin-bottom:0}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{left:7px;top:1px}.ast-field-settings-modal .customize-control-ast-responsive-color.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-clear-btn-inside-picker.components-button{margin:5px 10px 20px 20px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:3.5px}@supports (-moz-appearance:none){.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:5.5px;left:65px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{left:27px;top:-2px}}.customize-control-ast-responsive-slider .wrapper,.customize-control-ast-slider .wrapper{position:relative;display:flex}.customize-control-ast-responsive-slider .input-field-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-responsive-slider input[type=range]{position:inherit}.customize-control-ast-responsive-slider select,.customize-control.customize-control-select select{color:#32373c}.customize-control-ast-responsive-slider .input-field-wrapper{display:none}.customize-control-ast-responsive-slider .input-field-wrapper.active{display:flex}.customize-control-ast-responsive-slider .components-base-control{width:100%}.customize-control-ast-responsive-slider .slider-control-label,.customize-control-ast-slider .customize-control-title{cursor:default;margin-top:3px}.ast-responsive-slider-btns{position:absolute;left:0;top:5px;left:30px}.ast-responsive-slider-btns>li{margin-bottom:0;display:none}.ast-responsive-slider-btns>li.active{display:inline-block}.ast-responsive-slider-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;line-height:1}.ast-responsive-slider-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.customize-control-ast-responsive-slider .wrapper .components-base-control,.customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active,.customize-control-ast-slider .components-base-control.components-range-control{width:100%;display:inline-block}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-right:5px;margin-top:4px}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap{top:4px;left:0}.customize-control .ast-reset-btn .dashicons-image-rotate{width:12px;height:12px;font-size:12px}.customize-control-ast-responsive-slider .components-input-control input.components-input-control__input,.customize-control-ast-slider .components-input-control input.components-input-control__input{-moz-appearance:textfield}.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button{-webkit-appearance:none}.customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input,.customize-control-ast-slider .components-input-control__container input.components-input-control__input{display:block;border-radius:0 2px 2px 0;box-shadow:none;transition:all .3s;border:1px solid var(--ast-customizer-color-7)}.customize-control-ast-responsive-slider input.components-input-control__input:active,.customize-control-ast-responsive-slider input.components-input-control__input:focus,.customize-control-ast-responsive-slider input.components-input-control__input:hover,.customize-control-ast-slider input.components-input-control__input:active,.customize-control-ast-slider input.components-input-control__input:focus,.customize-control-ast-slider input.components-input-control__input:hover{border-color:var(--ast-customizer-color-2);border-radius:2px;outline:0}.customize-control-ast-responsive-slider .ast-slider-wrap,.customize-control-ast-slider .ast-slider-wrap{position:relative}.components-range-control__wrapper .components-range-control__track{color:var(--ast-customizer-color-1)}.components-range-control__wrapper span span{background-color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit,.customize-control-ast-slider .ast-slider-wrap .ast-range-unit{position:absolute;left:23px;top:4px;border-left:1px solid var(--ast-customizer-color-7);padding-left:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .components-input-control__container,.customize-control-ast-slider .components-input-control__container{margin-right:5px;width:48px}.customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop,.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop{border:none;border-radius:0 2px 2px 0;box-shadow:none}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{position:absolute;display:inline-block;line-height:1;left:0}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{top:1px}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number{width:calc(48px)!important}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{text-align:center}.customize-control-ast-responsive-spacing .customize-control-title{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-outer-wrapper{display:flex;position:relative}.customize-control-ast-responsive-spacing .ast-spacing-input-item{margin:0 2px;-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input[type=number]{-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-inner-spin-button,.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units-screen-wrap{position:relative;top:-5px;left:-10px;display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns{position:relative;top:2px}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li{display:none}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li.active{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;width:100%}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]>i{font-size:15px;vertical-align:middle}.customize-control-ast-responsive-spacing .input-wrapper.ast-spacing-responsive-wrapper{display:inline-flex}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units{position:absolute;font-size:12px;line-height:16px;text-transform:uppercase;font-weight:500;top:-32px;left:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit{display:inline-block;margin-right:6px;width:18px;text-align:center;user-select:none;opacity:.6}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit.active{opacity:1;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;cursor:pointer}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:active,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:focus,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:hover{border-color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li .ast-spacing-connected{color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper.active{display:flex}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper span.ast-spacing-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link{order:2;margin-right:2px;margin-top:4px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .dashicons{padding:2px 0;font-size:12px;line-height:28px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .ast-spacing-connected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-disconnected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-connected{display:block}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link span{width:100%;height:32px;line-height:28px;font-size:14px;border-radius:0 3px 3px 0;background-color:transparent}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link svg{pointer-events:none}.customize-control-ast-responsive-spacing .ast-spacing-wrapper>li:nth-child(2){margin-right:0}.ast-responsive-toggle-control .components-base-control__field,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-responsive-toggle-control .components-form-toggle,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-responsive-toggle-control .components-base-control__field{margin:20px 0}.ast-responsive-toggle-control label,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control{display:none}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control.active{position:relative;top:2px;width:91%;display:inline-block;vertical-align:middle}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns{position:relative;float:left;top:4px}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns>li.active{vertical-align:middle}.ast-responsive-toggle-btns>li{margin-bottom:0;display:none}.ast-responsive-toggle-btns>li.active{display:inline-block}.ast-responsive-toggle-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-toggle-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.ast-responsive-btns{display:inline-block;line-height:1;vertical-align:top}.ast-responsive-btns>li{margin-bottom:0;display:none}.ast-responsive-btns>li.active{display:inline-block}.ast-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-btns button[type=button]>i{width:15px;height:15px;font-size:15px}.input-wrapper.ast-responsive-wrapper{display:inline-flex;justify-content:space-between;margin-left:0;align-items:flex-start;flex:0 1;width:100%}.ast-customizer-select-multi .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-select-multi{position:relative}.ast-customizer-select-multi .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding-right:10px;padding-left:30px}.ast-customizer-select-multi:before{content:'';position:absolute;top:3px;left:1px;width:50px;height:37px;background:#f7f7f7;background:linear-gradient(-90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}.ast-customizer-select-multi:after{content:"\f11c";position:absolute;font-family:dashicons;font-size:16px;margin-left:15px;pointer-events:none;z-index:1;top:13px;left:0}.ast-customizer-select-multi .ast-multi-select__multi-value__label{margin-left:.2em}.ast-customizer-select-multi .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:14px;padding:2px 5px 2px 5px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px}.ast-customizer-select-multi .ast-multi-select__multi-value__remove{color:#4b5563;padding-left:0}.ast-customizer-select-multi .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-select-multi .ast-multi-select__menu *,.ast-customizer-select-multi .ast-multi-select__multi-value__remove{cursor:pointer}.ast-customizer-select-multi .ast-multi-select__menu{z-index:2}.ast-variant-select>div{border-color:#ddd}.ast-variant-select>div,.customize-control input,.customize-control select,.customize-control textarea,.customize-control-content .components-text-control__input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5);padding-top:1px;padding-bottom:1px}.ast-variant-select>div:focus,.customize-control input:focus,.customize-control select:focus{border-color:var(--ast-customizer-color-1);color:#0a4b78;box-shadow:0 0 0 1px var(--ast-customizer-color-1)}.ast-adv-toggle-icon{left:2px;position:absolute;width:18px;height:18px;font-size:18px;border-radius:2px;padding:4px;color:var(--ast-customizer-color-8);background:var(--ast-customizer-color-9);cursor:pointer}.ast-adv-toggle-icon:hover{color:var(--ast-customizer-color-1)}.ast-adv-toggle-icon:before{content:"\f464"}.ast-adv-toggle-icon.open:before{content:"\f158"}.ast-field-settings-modal{position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;right:0;left:0;z-index:8;background-color:#fff}.customize-control-ast-color-palette .ast-field-settings-modal{z-index:11}.ast-field-settings-modal .customize-control-ast-divider:first-child{margin-top:15px}.ast-field-settings-wrap{width:100%}.ast-group-tabs,.ast-tab-content{position:relative}.ast-group-list{overflow:hidden;border-bottom:1px solid #ddd}.ast-group-list:after,.ast-group-list:before{content:"";display:table;border-collapse:collapse}.ui-tabs-anchor{float:right;padding:.5em .5em;color:#555d66;text-decoration:none}.ui-state-active .ui-tabs-anchor{color:#fff}.ui-tabs-anchor:hover{color:#555d66}.ui-state-active .ui-tabs-anchor:hover{color:#fff}.ast-group-tabs .ui-widget-content{overflow:hidden}.ast-group-tabs .ui-widget-content.iris-slider-offset,.ast-group-tabs .ui-widget-content.iris-slider-offset-alpha{overflow:inherit}.ast-fields-wrap{overflow:hidden}.ast-field-settings-wrap{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;background-color:#fff}.ast-field-settings-wrap .ast-field-settings-modal{border-radius:3px;margin-top:10px;margin-bottom:20px}.ast-field-settings-modal::before{content:'';position:absolute;top:-17px;left:8px;border:9px solid transparent;border-bottom-color:#fff;pointer-events:none}.ast-group-tabs .ui-tabs-nav{display:flex;padding:15px 15px 0 15px}.ast-group-tabs .ui-tabs-nav .ui-corner-top{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.ast-group-tabs .ui-tabs-nav .ui-corner-top:first-child{border-radius:0 3px 3px 0}.ast-group-tabs .ui-tabs-nav .ui-corner-top:last-child{border-radius:3px 0 0 3px}.ast-group-tabs .ui-tabs-nav .ui-corner-top .ui-tabs-anchor{width:100%;text-align:center;padding:2px 4px;padding-right:0;padding-left:0;outline:0}.ast-group-tabs ul.ast-group-list .ui-corner-top .ui-tabs-anchor:focus{box-shadow:none}.ast-group-tabs .ui-tabs-nav{border:none}.ast-group-tabs ul.ast-group-list .ui-corner-top.ui-state-active{background-color:#0185ba;border:1px solid rgba(0,0,0,.1)}.ast-group-tabs .ui-tabs-nav{overflow:visible}.ast-group-tabs ul.ast-group-list .ui-corner-top:not(:first-child){border-right-width:0}.wp-core-ui .ast-field-settings-modal .background-image-upload .button{font-size:11px}.ast-field-settings-modal .customize-control{padding-right:16px;padding-left:16px;box-sizing:border-box}.ast-control-wrap .ast-color-picker-alpha{margin-right:-5px;margin-left:-5px}.ast-field-settings-modal .customize-control:first-child{margin-top:16px}.ast-field-settings-modal .ui-tabs-nav .customize-control:first-child{margin-top:0}.ast-field-settings-modal .customize-control:last-child{padding-bottom:16px}.customize-control-ast-settings-group{line-height:27px}.customize-control-ast-settings-group .customize-control-title{margin-bottom:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-title{margin-bottom:10px;font-size:13px;margin-top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-range-unit,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-units,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-range-unit{top:6px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-resp-slider-reset-wrap{top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-slider-btns,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-responsive-slider-btns{top:2px}.ast-field-settings-modal .customize-control{margin-top:2px}#customize-control-headings-font-extras.ast-sub-top-dotted-divider{margin-top:12px}.astra-popover-tabs{position:relative}.astra-popover-tabs .components-tab-panel__tabs{display:flex;padding:15px;border:none}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{color:#555d66;font-size:13px;font-weight:400;height:35px;transition:unset;padding:2px 4px;text-decoration:none;border-radius:0;border:1px solid rgba(0,0,0,.1)}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:active{box-shadow:unset}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus{box-shadow:unset}.astra-popover-tabs [ID*="-image-view"]{padding:15px;border:none}.astra-popover-tabs .components-button{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.astra-popover-tabs .components-tab-panel__tabs-item:first-child{border-radius:0 3px 3px 0}.astra-popover-tabs .components-tab-panel__tabs-item:last-child{border-radius:3px 0 0 3px}.astra-popover-tabs .components-tab-panel__tabs-item:not(:first-child){border-right-width:0}.astra-popover-tabs .components-tab-panel__tabs-item.active-tab{background-color:#0185ba;color:#fff}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content,.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs{padding:0}.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs-item.active-tab{border-color:var(--ast-customizer-color-3);background:var(--ast-customizer-color-1)}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content .ast-social-icon-picker-label{text-align:right}.astra-media-tab .astra-media-image{width:100%;margin-bottom:0}.astra-media-tab .ast-media-btn{display:block;width:100%;border:1px dashed var(--ast-customizer-color-7);box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;text-decoration:none}.astra-media-tab .ast-danger-btn{color:var(--ast-customizer-color-14);margin-top:10px}.astra-media-tab .ast-media-btn:hover{border-color:var(--ast-customizer-color-3)}.astra-media-tab .ast-danger-btn:hover{border-color:var(--ast-customizer-color-14)}.components-base-control.ast-text-control-input{margin-bottom:16px}.ast-payments-text-control-input .components-base-control__label{text-transform:none;color:#334155;font-size:13px}.components-base-control.ast-payments-text-control-input{margin-bottom:20px}.components-base-control.ast-text-control-input input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5)}.astra-popover-color .astra-popover-tabs .components-tab-panel__tabs button.components-tab-panel__tabs-item.active-tab:not(.is-primary):not(.is-tertiary):not(.is-link):hover{color:#fff}.components-popover.astra-popover-color .components-popover__content{min-width:310px;max-height:60vh;padding:0;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.ast-field-settings-modal .components-popover.astra-popover-color .components-popover__content{min-width:320px;min-height:325px}.ast-field-settings-modal .background-wrapper .components-popover.astra-popover-color .components-popover__content{min-height:385px}.ast-field-settings-modal .components-angle-picker-control .components-flex__block{min-width:auto}.customize-control-ast-settings-group .customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-top:0}.ast-top-divider.customize-control-ast-settings-group .ast-toggle-desc-wrap .ast-adv-toggle-icon{top:23px}.ast-fields-wrap .customize-control-ast-responsive-slider .ast-slider-wrap>label,.ast-fields-wrap .customize-control-ast-selector .ast-slider-wrap>label{display:inline-block}.customize-control-ast-slider .wrapper{display:flex}.customize-control-ast-slider .components-range-control{width:100%}.customize-control-ast-responsive-slider .wrapper .ast-range-unit,.customize-control-ast-slider .ast-range-unit{padding:0 5px 0 0;font-size:11px;line-height:1em;font-weight:500;align-self:auto;text-transform:uppercase}.components-range-control__slider[type=range]{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.components-range-control__slider[type=range]::-moz-range-track,.components-range-control__slider[type=range]::-webkit-slider-runnable-track{content:'';height:2px;pointer-events:none}.components-range-control__slider[type=range]::-moz-range-thumb,.components-range-control__slider[type=range]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;margin-top:5px}.customize-control-ast-responsive-slider .components-range-control__wrapper,.customize-control-ast-slider .components-range-control__wrapper{margin-right:0}.customize-control-ast-responsive-slider span[CLASS*="-ThumbWrapper"],.customize-control-ast-slider span[CLASS*="-ThumbWrapper"]{height:17px;width:17px;top:2px;margin-right:0}.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap .ast-resp-slider-reset-wrap{top:68px}.customize-control-ast-responsive-slider .ast-responsive-slider-btns{position:relative;top:-3px;left:-10px;display:inline-block}.customize-control-ast-responsive-slider .ast-responsive-units{position:absolute;top:3px;left:23px;font-size:11px;line-height:normal;border-left:1px solid #ddd;padding-left:5px;text-transform:uppercase;width:auto;display:none}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit{display:inline-block;margin-right:6px;margin-bottom:0;width:16px;text-align:center;user-select:none;opacity:.6;cursor:pointer}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit.active{opacity:1;font-weight:600;color:#0073aa;cursor:default}.ast-field-settings-modal .ast-fields-wrap>.customize-control-ast-responsive-slider+.customize-control-ast-font{margin-top:8px}.customize-control-ast-sortable .sortable{cursor:default}.customize-control-ast-sortable .sortable .dashicons-visibility{cursor:pointer}.customize-control-ast-sortable .sortable .ast-sortable-item,.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{padding:1px 12px 1px 3px;border:1px solid #d1d5db;color:#334155;background:#fff;cursor:move;font-size:14px;line-height:38px;margin:0 0 10px;border-radius:4px}.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{border:none;padding:0 0 0 9px;border-top:1px solid #d1d5db;border-radius:0 0 3px 3px}.customize-control-ast-sortable .sortable div:last-child{margin:0}.customize-control-ast-sortable .sortable div>.dashicons{float:left;position:relative;font-size:16px;padding:9px;line-height:20px;border-right:none}.customize-control-ast-sortable .sortable div.invisible{opacity:.6;visibility:visible}.customize-control-ast-sortable .sortable div.invisible .dashicons.visibility:after{opacity:1;position:absolute;content:'';width:18px;height:2px;top:18px;right:11px;background:#656565;border-radius:5px;transform:rotate(45deg);box-shadow:0 0 0 1px #fff;transition:opacity .2s ease}.ast-sortable-item.invisible,.ast-sortable-item:hover{opacity:.8}.ast-sortable-item.show:hover{opacity:1}.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{margin-left:-6px}.ast-sortable-item .dashicons-admin-page,.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{cursor:pointer}.ast-sortable-subcontrols{display:none;padding:12px 0;border-top:1px solid #d1d5db}.show .ast-sortable-subcontrols{display:block}.ast-sortable-subfields-wrap .customize-control{box-sizing:border-box;position:relative}.ast-sortable-item.show i.ast-accordion{transform:rotate(-180deg);border-right:none;border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button{padding:6px 8px;height:40px;background:#fff}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button:focus{box-shadow:none}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .ahfb-sorter-title{padding-left:20px;max-width:100%;text-overflow:ellipsis;overflow:hidden}.customize-control-ast-list-icons span.feature-label{max-width:100px;text-overflow:ellipsis;font-size:14px;line-height:18px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .dashicons-admin-page{color:#556068}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item-panel-header{border:1px solid #ddd;border-right:0;border-bottom:0;overflow:hidden}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity .ast-media-image-preview,.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:14px;width:14px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity span{display:flex}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:16px;width:16px;fill:#556068}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ast-sorter-item-expand{border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity{border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item{border:1px solid #ddd;border-top:0}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown{width:225px!important;right:-10px;box-shadow:0 5px 15px rgb(0 0 0 / 22%),0 0 5px rgb(0 0 0 / 30%)}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open{height:285px;overflow:hidden;position:absolute}.ast-sortable-item .ahfb-sorter-item-panel-content{border-top:1px solid #ddd}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox:hover>*{transform:scale(1.3)!important}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox{height:32px!important}.ast-sortable-subfields-wrap .ast-color-btn-reset-wrap{top:0}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-title{margin-bottom:16px;font-size:14px}.ast-sortable-subfields-wrap .customize-control-ast-color .ast-control-wrap .astra-popover-color{margin-right:-10px;margin-left:10px;width:calc(100% + 15px)}.customize-control-ast-sortable .ast-sortable-subfields-wrap .ast-responsive-btns{top:7px}.ast-sortable-subfields-wrap .ast-fields-wrap{padding-bottom:16px}.customize-control-content{width:100%;display:flex;flex-direction:column}.ast-sortable-subfields-wrap .ast-fields-wrap{overflow:inherit}.ast-sortable-subfields-wrap .customize-control{float:none}.ast-sortable-item.invisible>.ast-accordion,.ast-sortable-item.invisible>.dashicons-admin-page,.ast-sortable-item.invisible>.dashicons-remove{display:none}.ast-sortable-item.invisible .ast-sortable-subcontrols{display:none}.ast-sortable-item .ahfb-sorter-item .dashicons{font-size:16px;width:16px;height:16px}.ast-sortable-item .ahfb-sorter-item .ahfb-sorter-item-expand:before{right:7px;width:17px}.ahfb-sorter-item:first-child .ahfb-sorter-item-remove,.ast-sortable-item .components-button.item-is-hidden:not(.visibility-item){display:none}.customize-control-ast-sortable .sortable .rfip .rfipbtn__button{margin-right:auto}.ast-sortable-subfields-wrap .customize-control-ast-responsive-slider .ast-responsive-slider-btns{top:-2px}.ast-sortable-item .customize-control-ast-color .ast-color-btn-reset-wrap{top:12px}.ast-sortable-item .customize-control-ast-color .color-button-wrap{top:8px}.ast-sortable-item .customize-control-ast-color .astra-color-picker-wrap{position:relative;top:8px}.ast-sortable-subfields-wrap .customize-control-ast-description{line-height:1}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .dashicons-admin-page{margin-left:0}.customize-control-ast-text-input textarea{display:block;width:100%}.ast-togglecontrol-wrapper .components-base-control__field,.customize-control-ast-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-togglecontrol-wrapper .components-form-toggle,.customize-control-ast-toggle .components-toggle-control .components-form-toggle,.customize-control-ast-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-togglecontrol-wrapper .components-base-control__field{margin:24px 0 0}.ast-togglecontrol-wrapper .components-toggle-control__label,.ast-togglecontrol-wrapper .toggle-control-label{font-size:14px;font-weight:600}.ast-togglecontrol-wrapper label,.customize-control-ast-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.ast-switch~label{position:relative;display:block;width:35px;height:14px;background-color:var(--ast-customizer-color-7);color:transparent;border-radius:50px;cursor:pointer;transition:all .2s ease-in}.ast-switch~label:after{content:'';position:absolute;top:-3px;right:-1px;display:block;width:20px;height:20px;border-radius:50px;background:var(--ast-customizer-color-9);box-shadow:0 2px 4px 0 rgba(72,72,72,.5);transition:all .2s ease-in}.ast-switch:checked~label{background:var(--ast-customizer-color-1)}.ast-switch:checked~label:after{transform:translateX(-16px);background:var(--ast-customizer-color-9)}.ast-switch:disabled~label{background:#f0f0f0;pointer-events:none}.ast-switch:disabled~label:after{background:#d1d1d1;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ast-switch:checked,.ast-switch:not(:checked){opacity:0}.customize-control-ast-section-toggle .components-form-toggle{margin-right:5px;text-align:left}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:initial;align-items:center}.dashicons-editor-help[data-title]{z-index:1}.ast-dashicons-custom-tooltip{display:none;opacity:0;position:absolute;top:0;bottom:0;right:0;left:0;width:100%;height:100%}.ast-dashicons-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:3;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;right:50%;transform:translate(50%,-.5em)}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{display:block;opacity:100}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-top-dotted-divider .ast-control-tooltip.dashicons-editor-help{top:22px}.customize-control.ast-bottom-dotted-divider.customize-control-ast-toggle-control .ast-control-tooltip{top:8px}.customize-control.customize-control-ast-select.ast-top-dotted-divider .ast-control-tooltip{top:36px}.customize-control-ast-sortable .customize-control-ast-selector .dashicons.ast-control-tooltip{top:18%;padding:0;font-size:20px}.select2-container{width:100%!important}span.select2-container.select2-container--default.select2-container--open{z-index:999999}span.select2-container.select2-container--default.select2-container--open li.select2-results__option{margin:0}.select2-selection__rendered li{margin-bottom:0}.select2-container--default .select2-selection--single,.select2-container--default.select2-container .select2-selection--multiple{border-color:#ddd;border-radius:0}.select2-container--default .select2-selection--multiple .select2-selection__choice,.select2-dropdown{border-color:#ddd;border-radius:0}.customize-control.customize-control-ast-hidden{margin-top:0}.wp-full-overlay-footer .devices-wrapper .preview-desktop,.wp-full-overlay-footer .devices-wrapper .preview-mobile,.wp-full-overlay-footer .devices-wrapper .preview-tablet{vertical-align:middle}.customize-control-ast-font-variant .ast-variant-select input#react-select-2-input:focus{box-shadow:none}.ast-variant-select [CLASS*="-indicatorContainer"]{padding:2px;display:contents}.ast-variant-select [CLASS*="-multiValue"]>div:first-child{padding:0}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap,.ast-upgrade-pro-wrap .ast-upgrade-trigger{width:100%;-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center;position:relative;overflow:hidden;justify-content:center}.ast-upgrade-pro-wrap .ast-upgrade-cta{position:absolute;top:auto;right:auto;width:auto;height:28px;border-radius:4px;padding:0 5px 0 8px;font-size:1em;line-height:1em;display:inline-flex;color:var(--ast-customizer-color-1);background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-1);align-items:center;align-content:center;white-space:nowrap}a.ast-upgrade-trigger:active,a.ast-upgrade-trigger:focus{box-shadow:none;border:none;outline:0}.ast-upgrade-pro-wrap .ast-upgrade-section-title{margin-right:8px}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap>svg{width:100%;height:100%;filter:blur(4px)}.ast-upgrade-pro-wrap .ast-upgrade-cta svg{width:1.2em;height:1.2em}.customize-control-ast-radio-image .ast-pro-option>:not(.image-clickable){opacity:.4}.ast-radio-img-svg.ast-pro-option .image-clickable::before{display:inline-flex;position:absolute;top:36%;right:41%;content:'';background-size:1.5em 1.5em;height:1.5em;width:1.5em;border:1px solid var(--ast-customizer-color-1);background-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5002 7.2001H11.7002V4.8001C11.7002 3.0401 10.2602 1.6001 8.5002 1.6001C6.7402 1.6001 5.3002 3.0401 5.3002 4.8001V7.2001H4.5002C4.1002 7.2001 3.7002 7.6001 3.7002 8.0001V13.6001C3.7002 14.0001 4.1002 14.4001 4.5002 14.4001H12.5002C12.9002 14.4001 13.3002 14.0001 13.3002 13.6001V8.0001C13.3002 7.6001 12.9002 7.2001 12.5002 7.2001ZM9.3002 12.8001H7.7002L8.0202 11.0401C7.6202 10.8801 7.3002 10.4001 7.3002 10.0001C7.3002 9.3601 7.8602 8.8001 8.5002 8.8001C9.1402 8.8001 9.7002 9.3601 9.7002 10.0001C9.7002 10.4801 9.4602 10.8801 8.9802 11.0401L9.3002 12.8001ZM10.1002 7.2001H6.9002V4.8001C6.9002 3.9201 7.6202 3.2001 8.5002 3.2001C9.3802 3.2001 10.1002 3.9201 10.1002 4.8001V7.2001Z' fill='%230284C7'/%3E%3C/svg%3E")}.ast-upgrade-list-wrapper{text-align:center}.ast-upgrade-list-wrapper .ast-brand-logo{margin:0}.ast-upgrade-list-wrapper svg{width:32px;height:32px}.ast-upgrade-list-items{margin-bottom:1.8em}.ast-upgrade-list-wrapper .ast-upgrade-list-section-title{margin:.5em auto 1.8em;max-width:240px}.ast-pro-upgrade-item svg{vertical-align:middle;margin-left:5px;fill:var(--ast-customizer-color-1)}.ast-pro-upgrade-item span{display:inline-block}.ast-upgrade-list-description{margin:5px 20px 0 0}.ast-upgrade-list-title{font-weight:600}.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available),.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available) *,.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available),.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available) *{color:var(--ast-customizer-color-9);background:var(--ast-customizer-color-1)}.customize-control .button.ahfb-builder-section-shortcut{border-right:1px solid #ddd;border-left:1px solid #ddd}.ast-customize-control-title a.ast-builder-upgrade-link{background:var(--ast-customizer-color-9)!important;color:var(--ast-customizer-color-1)!important;box-shadow:0 4px 8px -4px rgba(0,0,0,.16);margin-right:10px;border-radius:4px;padding:3px 10px 5px;text-decoration:none;vertical-align:top}.ast-pro-upgrade-item p{margin:1.25em 0;line-height:1}li#customize-control-astra-settings-footer-builder-pro-items .ast-upgrade-pro-wrap,li#customize-control-astra-settings-header-builder-pro-items .ast-upgrade-pro-wrap{padding-right:12px;padding-left:12px} \ No newline at end of file diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min.css index 76a9f4037..29eedd98f 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/minified/custom-controls.min.css @@ -1 +1 @@ -.customize-control-ast-selector .ast-alignment-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-selector .ast-alignment-inner-wrap,.customize-control-ast-selector .ast-selector-responsive-wrap{display:none}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active{flex:1 1 auto;display:flex}.customize-control-ast-selector .components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.ast-alignment-inner-wrap .components-button{white-space:nowrap;color:var(--ast-customizer-color-5);text-decoration:none;text-shadow:none;outline:unset;border:1px solid var(--ast-customizer-color-7);width:100%;height:100%;text-align:center;justify-content:center;border-radius:unset;transition:none;font-weight:400}.ast-alignment-inner-wrap.active .components-button.is-primary{color:var(--ast-customizer-color-10);background:var(--ast-customizer-color-1)}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active .components-button:not(.is-primary):hover{color:var(--ast-customizer-color-5)!important}.customize-control-ast-selector .components-button .ahfb-icon-set svg{width:16px;height:16px;fill:var(--ast-customizer-color-8)}.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg circle,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg path:not(.ast-hf-account-unfill){fill:var(--ast-customizer-color-10)}.customize-control-ast-selector .ast-alignment-inner-wrap:first-child .components-button{border-radius:3px 0 0 3px}.customize-control-ast-selector .ast-alignment-inner-wrap:last-child .components-button{border-radius:0 3px 3px 0}.ast-alignment-wrapper .ast-alignment-inner-wrap:not(:first-child):not(:last-child) .components-button{border-right:none}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button{border-radius:unset;font-size:12px;padding:9px 0 10px}.customize-control-ast-selector .ast-selector-responsive-wrap.active{display:flex;flex:1 1 0}.customize-control-ast-selector .ast-responsive-btns{position:relative;left:6px;top:0}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button:focus:not(:disabled){box-shadow:none}.customize-control-ast-selector .components-button .ahfb-icon-set{display:flex}.customize-control-ast-selector{margin-bottom:1px}.ast-alignment-inner-wrap.active button.components-button.is-primary{border-color:var(--ast-customizer-color-3)}#customize-controls .customize-control-notifications-container{margin:0}.customize-control-ast-background .screen-reader-text{top:initial}.customize-control-ast-background .background-container h4{font-weight:400}.customize-control-ast-background .background-attachment h4,.customize-control-ast-background .background-color h4,.customize-control-ast-background .background-position h4,.customize-control-ast-background .background-repeat h4,.customize-control-ast-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-background .background-color{margin-bottom:12px}.customize-control-ast-background .background-repeat{margin:15px 0 8px 0}.customize-control-ast-background .background-attachment .buttonset,.customize-control-ast-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-background .background-attachment .buttonset .switch-label,.customize-control-ast-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-right:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-background .background-size .buttonset .switch-label:last-child{margin-right:0}.customize-control-ast-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-background .more-settings .message,.customize-control-ast-responsive-background .more-settings .message{margin-right:5px}.customize-control-ast-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-background .arrow-icon{margin-left:5px}.customize-control-ast-background .customize-control-title{display:block}.customize-control-ast-background .astra-color-picker-wrap{margin-top:18px}.ast-field-settings-modal .customize-control-ast-background.customize-control,.ast-field-settings-modal .customize-control-ast-background.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-background .more-settings{margin-top:6px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .ast-color-btn-reset-wrap{right:59px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .color-button-wrap{right:16px}.ast-field-settings-modal .customize-control-ast-background .astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 10px}.customize-control-ast-border .customize-control-title{display:inline-block}.customize-control-ast-border .ast-border-outer-wrapper{display:flex;position:relative}.customize-control-ast-border .ast-border-wrapper{display:flex}.customize-control-ast-border .ast-border-btns{display:block;text-align:center;line-height:2;border:1px solid #ddd;background-color:#fff;border-radius:0 3px 3px 0}.customize-control-ast-border .ast-border-btns>li{margin-bottom:0;display:none;width:35px;height:26px}.customize-control-ast-border .ast-border-btns>li.active{display:inline-block}.customize-control-ast-border .ast-border-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;opacity:.75;outline:0;width:100%;height:100%}.customize-control-ast-border .ast-border-btns button[type=button]>i{width:15px;height:15px;font-size:15px;margin-top:1px}.customize-control-ast-border .input-wrapper .ast-border-wrapper{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;margin:0 2px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:first-child{margin-left:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s;-moz-appearance:textfield}.customize-control-ast-border .input-wrapper .ast-border-wrapper li .ast-border-connected{color:#fff}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:last-child input.ast-border-input{border-right-width:1px;border-radius:0 3px 3px 0}.customize-control-ast-border .input-wrapper .ast-border-wrapper.active{display:flex}.customize-control-ast-border .input-wrapper .ast-border-wrapper span.ast-border-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link .ast-border-connected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-disconnected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-connected{display:block}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span{width:100%;height:26px;line-height:26px;font-size:14px;background-color:transparent;border-radius:3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span svg{pointer-events:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link{margin-top:4px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus,.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:hover{border-color:var(--ast-customizer-color-2)}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus{outline:0}.customize-control-ast-border .input-wrapper.ast-border-wrapper{margin-bottom:8px}.customize-control-ast-border .ast-range-unit{position:absolute;right:0;top:0;padding-right:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.ast-upgrade-pro-wrap .ast-button-link,.customize-control-ast-button-link .ast-button-link{display:block;padding:10px 0;border-radius:2px;border:1px solid var(--ast-customizer-color-1);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);font-size:13px!important;font-weight:400;line-height:13px!important;text-align:center;cursor:pointer}.ast-upgrade-pro-wrap .ast-button-link:hover,.customize-control-ast-button-link .ast-button-link:hover{background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);border:1px solid var(--ast-customizer-color-1)}.ast-btn-preset-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ast-btn-preset-wrap .ast-btn-style-item{cursor:pointer}.ast-btn-preset-wrap .ast-btn-style-item svg{fill:#646970}.ast-btn-preset-wrap .ast-btn-style-item svg:hover{fill:#565b62}.ast-btn-preset-wrap .ast-btn-style-item.active svg,.ast-btn-preset-wrap .ast-btn-style-item.active svg:hover{fill:#2271b1}.ast-reset-btn-preset-wrap{position:absolute;display:inline-block;line-height:1;right:0;top:0}.ast-reset-btn-preset-wrap .components-button.is-secondary,.ast-reset-btn-preset-wrap .components-button.is-secondary:hover{box-shadow:none;background:0 0;color:var(--ast-customizer-color-1)}.color-group-item .components-tooltip .components-popover__content{border-radius:3px}.color-group-item .components-tooltip .components-popover__content>div{padding:5px 10px;line-height:1}.customize-control.customize-control-ast-color-group{display:flex;flex-wrap:wrap}.customize-control.customize-control-ast-color-group .ast-toggle-desc-wrap{flex:1 1 auto;align-self:center}.customize-control.customize-control-ast-color-group .customize-control-title{margin-bottom:5px}.customize-control.customize-control-ast-color-group .ast-field-color-group-wrap{justify-content:flex-end;display:flex;max-height:28px}.customize-control.customize-control-ast-color-group .color-button-wrap{position:inherit}.customize-control.customize-control-ast-color-group .color-group-item:not(:last-child){margin-right:8px}.customize-control.customize-control-ast-color-group .ast-color-group-reset{right:72px;top:6px;cursor:pointer}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap{display:none}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap.active{justify-content:flex-end;display:flex}.customize-control.customize-control-ast-color-group .ast-responsive-btns{position:relative;right:-5px;top:3px}.customize-control.customize-control-ast-color-group .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control.customize-control-ast-color-group .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset{right:110px}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset.ast-single-color-group-set{right:112px}#customize-control-astra-settings-woo-single-page-color-group .ast-color-group-reset{right:145px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-group-reset{top:47px}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:73px}.astra-color-picker-wrap.picker-open+span{display:none}#customize-control-astra-color-palettes .ast-color-palette-wrap>div{margin-bottom:8px;position:relative}#customize-control-astra-color-palettes .color-button-wrap{display:unset;position:relative;right:unset;top:unset;vertical-align:sub;z-index:10}#customize-control-astra-color-palettes .astra-color-picker-wrap{position:absolute;z-index:1;right:0;width:100%;display:none;margin-top:10px}#customize-control-astra-color-palettes .astra-color-picker-wrap.picker-open{display:block}#customize-control-astra-color-palettes .ast-color-palette-label{width:65%;display:inline-block;margin-right:10px;vertical-align:top}#customize-control-astra-color-palettes .ast-color-palette-label input{background:0 0;border:none}#customize-control-astra-color-palettes .ast-color-palette-label input:focus{border:1px solid #000;outline:0;box-shadow:none;background:#fff}.ast-color-palette-wrapper .ast-single-palette-wrap{display:grid;grid-template-columns:repeat(9,1fr);align-items:center;position:relative;gap:2px}.ast-single-palette-wrap .components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:25px;height:25px}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap:first-child{margin-left:0}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap{margin-top:12px;cursor:pointer}#customize-control-astra-color-palettes .ast-reset-btn:disabled{opacity:.6}#customize-control-astra-color-palettes .ast-single-color-container{width:25%;height:48px;display:inline-block}#customize-control-astra-color-palettes .ast-color-palette-wrap>section{text-align:center;outline:0;border-radius:3px;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1px #ddd}.ast-color-palette-container{width:100%;display:inline-grid;grid-template-columns:auto auto;column-gap:16px;row-gap:16px}#customize-control-astra-color-palettes .ast-field-settings-modal{display:none;padding:16px}.ast-color-palette-wrap{transition:all .2s}.ast-color-palette-wrap.active{box-shadow:0 12px 20px -8px rgb(30 41 59 / 16%)}#customize-control-astra-color-palettes .ast-color-palette-wrapper{clear:both}#customize-controls .customize-section-title.is-in-view.is-sticky{z-index:99}#customize-control-astra-color-palettes .ast-palette-selection-wrapper{overflow:hidden;padding:2px}@media (min-width:1800px){#customize-control-astra-color-palettes .astra-color-picker-wrap{width:auto}}#customize-control-astra-color-palettes .ast-color-palette-wrap.active>section{box-shadow:0 0 0 1px #334155}.ast-palette-label-wrap{text-align:center;color:#9ca3af;overflow:hidden;width:100%;box-sizing:border-box;padding:0;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out;font-style:normal;font-weight:600;font-size:10px;line-height:22px;letter-spacing:1.5px;text-transform:uppercase}.ast-color-palette-wrap.active .ast-palette-label-wrap{color:#334155}#customize-control-astra-color-palettes .ast-field-settings-modal{margin-top:-35px}.astra-advanced-color-indicate .global-color{display:none}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color{color:#fff;display:block;opacity:1;position:absolute;left:50%;top:50%;display:block;text-align:center;transform:translate(-50%,-50%)}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color svg{width:10px;height:10px;transform:scale(1.5)}#customize-control-astra-color-palettes .ast-adv-toggle-icon{top:-5px}.ast-color-picker-custom-tooltip{position:absolute;top:-30px;bottom:0;left:0;right:0;width:100%;height:100%}.ast-color-picker-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.ast-color-picker-custom-tooltip-wrapper{position:relative}.ast-color-picker-wrap:hover+.ast-color-picker-custom-tooltip-wrapper .ast-color-picker-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-color-palette .components-popover.components-tooltip{position:relative!important;left:5px!important;top:-35px!important;transform:unset!important}.customize-control .components-tooltip{z-index:8!important}.ast-color-palette .components-popover .components-popover__content{bottom:calc(100% + 5px);animation:tooltips-vert .3s ease-out forwards;left:50%;transform:translate(-50%,-.5em)}.astra-control-field.astra-color-control{display:flex}.astra-control-field{position:relative;margin-top:10px;margin-bottom:10px}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.astra-control-field .customize-control-title{font-size:14px;font-weight:600;margin-bottom:0;display:flex;align-items:center;letter-spacing:.1px;line-height:18px}.customize-control-title{display:block;font-size:14px;line-height:1;font-weight:600;margin-bottom:4px}.astra-globe-dashicon{color:#fff;background:rgba(0,0,0,.4);border-radius:100%;border:.1px solid rgba(0,0,0,.1);opacity:.78}.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:28px;height:28px;border-radius:50%;margin:0;background:inherit}.component-color-indicator{width:25px;height:16px;display:inline-block}.astra-advanced-color-indicate.component-color-indicator{border:none}.astra-color-icon-indicate.components-button{height:auto;position:relative;transform:scale(1);transition:none;border-radius:50%;padding:0;background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper{box-sizing:border-box}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type=number].components-text-control__input{min-height:16px;line-height:16px;font-size:12px;width:50px;font-weight:400}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control{flex:1;margin-bottom:0}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label{margin-bottom:0;margin-right:.2em}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field{display:flex;align-items:center;font-size:8px;font-weight:600;font-style:normal;text-transform:uppercase}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field{justify-content:flex-end}.astra-popover-color .components-popover__content .actions{display:flex;justify-content:center;margin-bottom:10px}.astra-popover-color .components-popover__content .actions .button{flex:1;margin-top:10px}.astra-background-picker-wrap .astra-popover-color .components-popover__content{min-width:300px;min-height:340px;max-height:60vh}.color-button-wrap{display:inline-block;position:absolute;right:0;top:0;transform:scale(1);transition:transform .1s ease;height:28px;width:28px}.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after{content:"";position:absolute;top:-1px;left:-1px;bottom:-1px;right:-1px;border-radius:50%;border:1px solid transparent}.components-button.astra-background-icon-indicate{width:50px;height:50px;border-radius:50%;position:relative;transform:scale(1);transition:transform .1s ease;border-radius:50%;padding:0;background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);border:1px solid #dadada;background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:100%;height:100%;border-radius:4px;margin:0;display:block;position:absolute;border:0;top:0}.components-button.astra-background-icon-indicate>svg.dashicon{position:absolute;transform:translate(-50%,-50%);left:50%;top:50%;color:#fff;background:rgba(0,0,0,.6);border-radius:100%;width:16px;height:16px;border:1px solid rgba(0,0,0,.1)}.components-button.astra-background-icon-indicate>svg.dashicon path{transform:translate(1px,1px)}.components-button.astra-background-icon-indicate img.astra-background-image-preview{display:flex;object-fit:cover;min-width:100%;min-height:100%;position:absolute;top:0}.components-button.astra-background-icon-indicate:hover{box-shadow:none!important}.astra-control-field.astra-color-control{display:flex}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.components-popover.astra-popover-color .components-popover__content{padding:15px 15px 0;box-sizing:initial;background:#fff;border:unset;border-radius:4px;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.customize-control-ast-color.customize-control>*{display:inline}.components-popover.astra-popover-color .components-popover__content .sketch-picker{padding:0 0 5px!important;box-shadow:none!important;border-radius:0!important}.components-popover.astra-popover-color .components-popover__content .attachment-media-view{margin-top:10px;margin-bottom:10px}.astra-swatches-wrap .astra-swatche-item-wrap:hover{transform:scale(1.1)!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item{background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0;padding:0;display:flex;justify-content:center}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon{display:none}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active{box-shadow:0 0 0 8px inset!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon{display:block;color:#fff;background:rgba(0,0,0,.6);width:16px;height:16px;border:1px solid rgba(0,0,0,.1);border-radius:100%}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path{transform:translate(1px,1px)}.components-button.astra-color-icon-indicate>.dashicon{position:absolute;transform:translate(-50%,-50%);left:50%;top:50%;color:#fff;background:rgb(85 93 101);border-radius:4px;width:24px;height:24px;font-size:24px;border:1px solid rgba(0,0,0,.1)}.astra-popover-color{margin:5px -5px 0;background-color:#fff;border-radius:4px;box-shadow:0 8px 16px -4px rgba(30,41,59,.16)}.astra-popover-color .components-h-stack.ast-color-palette{padding:14px 5px}.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette,.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette{padding:0 5px 14px}.astra-popover-color .components-h-stack .components-button{flex:inherit}.astra-popover-color .components-circular-option-picker__option:focus::after{width:auto;height:auto}.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{margin-right:0}.astra-popover-color .components-color-picker .react-colorful__alpha,.astra-popover-color .components-color-picker .react-colorful__hue{width:90%}.ast-field-settings-modal .astra-popover-color{margin-left:0;border:1px solid #dedede}.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs{padding:8px}.components-color-picker__saturation-black{border-radius:4px 4px 0 0}.components-color-picker__saturation-color{border-radius:3px}.components-color-picker__saturation-white{border-radius:3px}.astra-color-picker-wrap{position:absolute;z-index:2;top:30px;left:0;right:0;bottom:0;display:none}.astra-color-picker-wrap .astra-popover-color .components-color-picker,.astra-color-picker-wrap .astra-popover-color .react-colorful{width:100%}.astra-popover-color .components-custom-gradient-picker{z-index:1}.astra-popover-color .components-custom-gradient-picker__ui-line{z-index:-1}.astra-color-picker-wrap.picker-open{display:block}.ast-field-settings-modal .astra-color-picker-wrap{position:relative;top:10px}.ast-color-palette .components-circular-option-picker__option-wrapper{margin-right:6px;position:relative;height:25px;width:25px}.ast-color-btn-clear-wrap{position:absolute;top:1.5px;right:65px}.ast-color-btn-clear-wrap .astra-color-clear-button.components-button{padding:10px 3px;width:20px;height:20px}.ast-clear-btn-inside-picker.components-button,.ast-reset-btn-inside-picker.components-button,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 15px;padding:0 8px;border:1px solid #ccc;box-shadow:none}.ast-clear-btn-inside-picker.components-button:active,.ast-clear-btn-inside-picker.components-button:focus,.ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:none!important;background:0 0!important}.ast-clear-btn-inside-picker{padding:0 8px}.ast-color-btn-reset-wrap{position:absolute;right:36px;top:6px}.ast-color-btn-reset-wrap .ast-reset-btn.components-button,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button{color:#006ba1;height:20px;width:20px;padding:4px;background:0 0;box-shadow:none;cursor:pointer}.astra-color-clear-button.components-button:focus:not(:disabled){outline:unset;border:none}.ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus,.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover{box-shadow:none;border:none;background:0 0}.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled),.astra-color-clear-button.components-button:focus:not(:disabled){box-shadow:0 0 #000;padding:1.5px;border:none}.ast-reset-btn.components-button.is-secondary:disabled span,.astra-color-clear-button.components-button.is-secondary:disabled{color:var(--ast-customizer-color-6)}.ast-field-settings-modal .color-button-wrap{right:16px}.ast-field-settings-modal .ast-color-btn-reset-wrap{right:59px;top:6px}.ast-field-settings-modal .ast-color-btn-clear-wrap{right:78px}.ast-field-settings-modal .customize-control-ast-color.customize-control,.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child{margin-top:25px}.astra-color-picker-wrap .components-color-picker__inputs-wrapper{min-width:unset}.customize-control .ast-gradient-color-picker input[type=number]{width:100%}.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker{align-items:center;flex-direction:inherit}.astra-color-picker-wrap .components-popover__content{width:max-content}.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker,.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful,.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker{width:216px}.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker{flex-direction:column;align-items:start}.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control{margin-bottom:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point{padding:0 16px 16px 16px;border:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus{box-shadow:none;outline:0}.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type=number]{width:100%}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:25px;width:25px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:2.5px;top:0;width:20px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:0;top:0;mix-blend-mode:difference}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches{gap:4px;justify-content:center}.astra-popover-color .components-circular-option-picker__option-wrapper:hover{transform:scale(1.1)}.customize-control-ast-color+.customize-control-ast-color{margin-top:30px}@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{height:22px;width:22px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option{padding:6px 10px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{width:20px;top:-2px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.astra-popover-color .ast-color-palette.components-circular-option-picker{width:auto;padding:16px 0 0 8px}.astra-typography-control .typography-button-wrap>button.components-button.astra-typography-preview-indicate{padding:0 2px}.astra-typography-control .typography-button-wrap>button.components-button{padding:0 4px}.ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:auto;height:auto}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:1px;top:-2px;width:18px}}@supports (-moz-appearance:none){@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{margin-right:5px}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:21px;height:21px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:3px;top:-2px;width:15px}}}.astra-color-icon-indicate.components-button:focus:not(:disabled){box-shadow:unset;outline:unset}.astra-color-icon-indicate.components-button:hover{transform:scale(1.05)}.ast-top-divider.customize-control-ast-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px;display:inline-flex;width:100%;min-height:22px}.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title+.ast-responsive-toggle-control-wrapper,.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap,.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.ast-top-divider .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:67px}.ast-top-divider .ast-divider-title+.ast-control-wrap .color-button-wrap{top:61px}.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap .ast-responsive-btns{top:70px}.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{width:100%}:root{--ast-customizer-color-1:#0284c7;--ast-customizer-color-2:#0ea5e9;--ast-customizer-color-3:#2271b1;--ast-customizer-color-4:#1e293b;--ast-customizer-color-5:#334155;--ast-customizer-color-6:#9CA3AF;--ast-customizer-color-7:#D1D5DB;--ast-customizer-color-8:#4B5563;--ast-customizer-color-9:#fff;--ast-customizer-color-10:#fff;--ast-customizer-color-11:#F5F5F5;--ast-customizer-color-12:#1e293b;--ast-customizer-color-13:#F3F4F6;--ast-customizer-color-14:#cc1818}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{color:var(--ast-customizer-color-5)}.customize-control .ast-spacing-responsive-btns li svg{max-width:13px}.customize-control-ast-customizer-link .customizer-link{font-style:italic;text-decoration:none}.customize-control-ast-customizer-link:empty{display:none}.accordion-section-content::-webkit-scrollbar,.wp-full-overlay-sidebar-content::-webkit-scrollbar{width:6px;background-color:#f1f1f1}.accordion-section-content::-webkit-scrollbar-thumb,.wp-full-overlay-sidebar-content::-webkit-scrollbar-thumb{border-radius:10px;background-color:#d8d8d8}.accordion-section-content::-webkit-scrollbar-track,.wp-full-overlay-sidebar-content::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3);width:6px}.wp-full-overlay-sidebar:after{display:none}#customize-theme-controls .control-section-ast-section-separator{margin-top:15px;border-top:1px solid #ddd;display:block!important}.customize-control:not(.customize-control-nav_menu_item){position:relative;margin-bottom:0;margin-top:16px}.customize-control-ast-background,.customize-control-ast-responsive-background,.customize-control.customize-control-ast-color,.customize-control.customize-control-ast-color-group{display:flex;align-items:center;min-height:28px;flex-wrap:wrap}.customize-control-ast-responsive-background label{white-space:nowrap}.customize-control .media-position-setting label.components-text{text-transform:capitalize;font-size:12px;font-weight:400}.media-position-setting .astra-popover-tabs .components-tab-panel__tabs{padding-left:0;padding-right:0}.customize-control[ID*="-builder-layout-ast-context-tabs"]{margin-top:0}[ID*="-builder-layout-ast-context-tabs"]{margin-top:10px}.customize-section-title{margin:-12px -24px 0 -24px}#customize-controls .customize-info,#customize-controls .customize-info.section-meta,.customize-section-description-container{margin-bottom:0}#customize-controls #sub-accordion-panel-nav_menus .customize-info{margin-bottom:15px}#customize-control-astra-settings-header-transparent-link-heading{margin-top:15px}.components-base-control .components-base-control__field{margin-bottom:0}.components-base-control .components-base-control__field .components-input-control__backdrop{border-color:#d1d5db!important}.customize-control .customize-inside-control-row{padding-top:0;padding-bottom:0}.customize-control-title{display:inline-block;margin-bottom:16px;vertical-align:middle}.customize-control-ast-background .customize-control-title,.customize-control-ast-color .customize-control-title,.customize-control-ast-responsive-background .customize-control-title,.customize-control-ast-responsive-color .customize-control-title{display:contents}.customize-control .ast-control-tooltip{position:absolute;top:0;right:0;color:var(--ast-customizer-color-6);cursor:help}.customize-control.customize-control-ast-toggle-control .ast-control-tooltip{position:absolute;top:50%;right:40px;transform:translateY(-50%);z-index:1}#customize-control-astra-settings-learndash-distraction-free-learning .ast-control-tooltip{padding-top:32px}.customize-control.customize-control-ast-toggle-control.ast-top-dotted-divider .ast-control-tooltip{position:absolute;top:55%;right:40px;transform:translateY(0)}.customize-control.customize-control-ast-toggle-control.ast-top-divider .ast-control-tooltip{top:calc(50% + 15px)}.customize-control.customize-control-ast-toggle-control.ast-bottom-divider .ast-control-tooltip{top:calc(50% - 11px)}.customize-control.customize-control-ast-toggle-control .ast-description-enabled .components-form-toggle{margin-left:25px}.customize-control.customize-control-ast-divider .ast-control-tooltip{position:absolute;top:auto;bottom:3px;right:0}.ast-fields-wrap .customize-control .ast-control-tooltip{right:15px;top:6px}.customize-control .ast-sortable-subfields-wrap .ast-control-tooltip{position:absolute!important;top:40%;right:0;transform:translateY(-50%);z-index:1}.customize-control .ast-sortable-subfields-wrap .customize-control-ast-toggle .ast-control-tooltip{right:30px;top:50%}.ast-top-dotted-divider .dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{top:24px}.customize-control .select2-search input[type=text].select2-search__field{min-height:17px}input[type=text].select2-search__field{line-height:1;border-radius:0}.ast-customizer-notice{margin:0 -12px;padding:12px}#customize-theme-controls .control-section.open{height:100%;padding:12px 24px 25px 24px}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){#customize-control-astra-settings-ast-header-responsive-logo-width .wrapper{display:inline-block;width:100%}.dashicons-desktop:before,.dashicons-smartphone:before,.dashicons-tablet:before{color:#000;opacity:.75}.ast-reset-btn.components-button svg{padding:0;height:13px}}}@-moz-document url-prefix(){.control-section.open .customize-control:last-child{margin-bottom:20px}}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.control-section.open .customize-control:last-child{padding-bottom:20px}#customize-control-astra-settings-blog-archive-image-height .customize-control-title,#customize-control-astra-settings-blog-archive-image-width .customize-control-title,#customize-control-astra-settings-blog-single-post-image-height .customize-control-title,#customize-control-astra-settings-blog-single-post-image-width .customize-control-title{margin-left:0;margin-right:20px}}.wp-customizer li:not(.customize-control-sidebar_block_editor) h1,.wp-customizer li:not(.customize-control-sidebar_block_editor) h2,.wp-customizer li:not(.customize-control-sidebar_block_editor) h3,.wp-customizer li:not(.customize-control-sidebar_block_editor) h4,.wp-customizer li:not(.customize-control-sidebar_block_editor) h5,.wp-customizer li:not(.customize-control-sidebar_block_editor) h6{font-weight:600}.block-list-appender{margin-bottom:20px}.block-editor-block-inspector .block-editor-block-card{margin-top:12px}.components-circular-option-picker__option-wrapper::before{background:unset}.block-editor-panel-color-gradient-settings .components-circular-option-picker__option-wrapper{position:relative}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}#customize-controls .control-section.control-section-ast_section .accordion-section-title,#customize-outer-theme-controls .accordion-section-title,#customize-theme-controls .accordion-section-title{border-bottom:1px solid var(--ast-customizer-color-7)}.wp-core-ui #customize-controls .control-section .accordion-section-title:focus,.wp-core-ui #customize-controls .control-section .accordion-section-title:hover,.wp-core-ui #customize-controls .control-section:hover>.accordion-section-title,.wp-core-ui .customize-panel-back:focus,.wp-core-ui .customize-panel-back:hover,.wp-core-ui .customize-section-back:focus,.wp-core-ui .customize-section-back:hover{border-left-color:var(--ast-customizer-color-1)}.ast-section-toggle{display:grid;grid-template-columns:70% 20% 10%;align-items:center;padding:0 0 0 12px;height:100%;align-items:center;align-content:center}.ast-section-toggle label{font-size:14px;line-height:1;font-weight:600;height:100%;display:inline-flex;align-items:center}.ast-section-toggle>label{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:auto;line-height:50px}.ast-section-toggle:not(.active)>label{cursor:default}.customize-control.customize-control-ast-section-toggle{border:1px dashed var(--ast-customizer-color-7);background:var(--ast-customizer-color-11);cursor:pointer;box-shadow:none!important;line-height:42px;font-size:14px;display:inline-grid;align-items:center;height:auto;color:var(--ast-customizer-color-5);position:relative;white-space:nowrap;border-radius:4px;transition:all .2s;padding-top:0;padding-bottom:0;margin-bottom:9px}.customize-control.customize-control-ast-section-toggle:hover{background:var(--ast-customizer-color-9);border-style:solid}.ast-section-toggle-icon{color:var(--wp-admin-theme-color);cursor:pointer;line-height:20px;height:100%;display:inline-flex;align-items:center}.ast-section-toggle-icon span{font-size:16px;line-height:20px;width:16px;height:16px}.customize-control-ast-section-toggle{padding-top:25px;padding-bottom:16px}li[ID*=accordion-section-ast-dynamic-archive-].control-section-ast_section,li[ID*=accordion-section-ast-dynamic-single-].control-section-ast_section{display:none!important}.customize-control-ast-description .ast-description{font-style:italic;color:#9ca3af;font-size:11px;line-height:16px;font-weight:400;text-wrap:wrap;display:inline-block}.customize-control-ast-description a.button{margin-top:10px;font-style:normal}.customize-control-ast-description p{margin:0;cursor:initial;font-size:11px;line-height:16px;font-weight:400}.customize-control-ast-divider hr{margin-top:0;margin-bottom:0;border-bottom:none}.customize-control-ast-divider .customize-control-title{font-size:15px;margin:1em 0 .2em}.customize-control-ast-divider .customize-control-suffix{position:absolute;right:0;bottom:0;font-weight:600;color:var(--ast-customizer-color-1);display:inline-block;font-size:11px;text-transform:uppercase}.customize-control-ast-divider .customizer-text{margin-top:-10px;display:block}.ast-field-settings-modal .customize-control-ast-divider{background-color:#f5f5f5;display:block;padding:6px 14px;margin:0;border-width:1px 0;border-style:solid;border-color:#ddd;line-height:1;margin-top:15px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customizer-text{margin-top:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customize-control-title{font-weight:500;letter-spacing:1px;font-size:11px;margin:0;text-transform:uppercase}.ast-bottom-divider{border-bottom:1px solid var(--ast-customizer-color-7);padding-bottom:25px}.ast-top-divider{border-top:1px solid var(--ast-customizer-color-7);padding-top:25px}.ast-bottom-divider>label.ast-divider-title,.ast-top-divider>label.ast-divider-title,.customize-control-ast-color-group>.ast-divider-title{display:block;width:100%;font-size:15px;font-weight:600}.ast-top-divider .ast-control-wrap .ast-color-btn-reset-wrap{top:25px}.ast-top-divider .ast-control-wrap .astra-color-picker-wrap{top:55px;background-color:transparent}.ast-top-divider .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:100px;background-color:transparent}.ast-top-divider .ast-control-wrap .color-button-wrap{top:20.5px}.ast-top-divider.customize-control-ast-select .ast-divider-title{margin-bottom:25px}.customize-control.ast-bottom-spacing{margin-bottom:16px}.customize-control.ast-top-spacing{margin-top:16px}#customize-control-astra-settings-ast-header-retina-logo,#customize-control-astra-settings-checkout-back-to-cart-button-text,#customize-control-astra-settings-edd-archive-variable-button-text,#customize-control-astra-settings-header-account-create-menu-link,#customize-control-astra-settings-header-account-logged-out-text,#customize-control-astra-settings-product-sale-percent-value,#customize-control-astra-settings-shop-load-more-text,#customize-control-astra-settings-single-product-recently-viewed-text,#customize-control-astra-settings-single-product-shipping-text,#customize-control-astra-settings-sticky-header-retina-logo,#customize-control-astra-settings-woo-cart-button-text,.customize-control.ast-top-dotted-divider{margin-top:24px;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)},#customize-control-blogdescription,#customize-control-blogname{margin-top:16px}#customize-control-astra-settings-product-sale-percent-value .ast-control-tooltip{top:24px}.customize-control.ast-top-dotted-divider .ast-adv-toggle-icon{top:25px}#customize-control-astra-settings-header-account-logged-in-text,.customize-control.ast-bottom-dotted-divider{margin-bottom:8px;padding-bottom:24px;border-bottom:1px dashed var(--ast-customizer-color-7)}.customize-control.ast-bottom-dotted-divider .ast-adv-toggle-icon{bottom:25px}.customize-control.ast-bottom-section-divider,.customize-control.ast-top-section-divider{position:relative}.customize-control.ast-top-section-divider{padding-top:32px;margin-top:32px}.customize-control.ast-bottom-section-divider{padding-bottom:32px;margin-bottom:16px}.customize-control.ast-sub-top-dotted-divider{padding-top:20px}.customize-control.ast-sub-bottom-dotted-divider{padding-bottom:20px;margin-bottom:10px}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-top-section-divider::before{content:'';position:absolute;left:-100%;background-color:var(--ast-customizer-color-7);width:500%;height:1px}.customize-control.ast-sub-top-dotted-divider::before,.customize-control.ast-top-section-divider::before{top:0}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-sub-bottom-dotted-divider::after{bottom:0}.customize-control.ast-sub-bottom-dotted-divider::after,.customize-control.ast-sub-top-dotted-divider::before{content:'';border-top:1px dashed var(--ast-customizer-color-7);width:calc(100% - 30px);height:1px;position:absolute;left:15px}[ID*="-create-menu-link"] .ahfb-builder-item-start{margin-bottom:0}#customize-control-astra-settings-footer-create-menu-link,#customize-control-astra-settings-footer-language-switcher-options,#customize-control-astra-settings-header-above-stick,#customize-control-astra-settings-header-language-switcher-options,#customize-control-astra-settings-header-mobile-menu-create-menu-link,#customize-control-astra-settings-site-icon-link,#customize-control-custom_logo,.customize-control.ast-section-spacing,[ID*=customize-control-astra-settings-footer-button][ID*="-text"],[ID*=customize-control-astra-settings-header-button][ID*="-text"],[ID*=sub-accordion-section-section-hb-menu-] [ID*="-create-menu-link"]{margin-top:32px}#customize-control-body-font-variant,#customize-control-headings-font-variant{margin-top:0}#sub-accordion-section-section-sidebars>.customize-control-ast-heading{margin-top:16px}#sub-accordion-section-section-sidebars>.customize-control-ast-heading~.customize-control-ast-heading{margin-top:32px}.ast-fields-wrap .customize-control.ast-bottom-section-divider::after,.ast-fields-wrap .customize-control.ast-top-section-divider::before{width:100%;left:0}.ast-typo-presets{width:100%;display:flex;align-items:center;flex-wrap:wrap;row-gap:8px;column-gap:8px;justify-content:space-between}.ast-typo-presets .ast-typo-preset-item{padding:0;border-radius:3px;cursor:pointer;border:1px solid var(--ast-customizer-color-7);height:64px;text-align:center;width:47.5%;position:relative}.ast-typo-presets .ast-typo-preset-item:hover{border:1px solid var(--ast-customizer-color-1)}.ast-typo-presets .ast-typo-preset-item svg{transform:scale(1);width:100%;height:100%;padding:0;margin:0}.ast-typo-presets .ast-typo-preset-item.active{border:1px solid var(--ast-customizer-color-1);background:var(--ast-customizer-color-9)}.customize-control-ast-typography-presets .ast-reset-btn-preset-wrap{top:-5px}.ast-typo-preset-item .components-tooltip{margin-top:-8px}.ast-typo-preset-item .components-tooltip::before{border-bottom:none!important;border-left-color:transparent!important;border-right-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-left:-10px;bottom:-8px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #ccc}.ast-typo-preset-item .components-tooltip::after{border-bottom:none!important;border-left-color:transparent!important;border-right-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-left:-10px;bottom:-6px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #fff}.ast-font-styling{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px dashed #d4d4d4}.ast-font-extras-wrapper,.ast-font-spacing-wrapper{display:flex;align-items:center;gap:8px}.ast-font-extras-wrapper .ast-font-extras-input,.ast-font-spacing-wrapper .ast-font-spacing-input{position:relative;display:flex;align-items:center;background:#fff;max-width:72px;width:100%;border:1px solid #d1d5db;border-radius:3px;padding:0 3px}.ast-font-extras-wrapper .ast-font-extras-input input,.ast-font-spacing-wrapper .ast-font-spacing-input input{padding:0;border:none;min-height:32px;border-radius:3px;border:none!important;box-shadow:none!important;text-align:center;padding:0 5px}.ast-font-extras-wrapper .ast-font-extras-input input[type=number],.ast-font-spacing-wrapper .ast-font-spacing-input input[type=number]{-moz-appearance:textfield}.ast-font-extras-input:hover,.ast-font-spacing-input:hover{border-color:var(--ast-customizer-color-2)}.ast-font-extras-wrapper .ast-font-extras-input svg,.ast-font-spacing-wrapper .ast-font-spacing-input svg{width:38px;height:28px}.ast-font-extras-input .plus-minus-control .dashicons,.ast-font-spacing-input .plus-minus-control .dashicons{font-size:10px;color:#9ca3af;width:12px;height:10px;display:inherit;cursor:pointer}div .ast-field-settings-modal .customize-control-ast-font-extras{margin-top:15px}.ast-font-extras-input input[type=number]::-webkit-inner-spin-button,.ast-font-extras-input input[type=number]::-webkit-outer-spin-button,.ast-font-spacing-input input[type=number]::-webkit-inner-spin-button,.ast-font-spacing-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ast-font-unit-wrapper{display:flex;gap:6px;font-size:11px;font-weight:500;color:#9ca3af}.ast-font-unit-wrapper span{cursor:pointer}.ast-font-unit-wrapper span:hover{color:#0284c7}.ast-font-unit-wrapper .active{color:#0284c7;cursor:default}.ast-font-styling-second{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px}.ast-font-decoration-wrapper,.ast-font-transform-wrapper{display:flex;align-items:center;flex:1}.ast-font-decoration-wrapper div,.ast-font-transform-wrapper div{padding:8px 0;width:33%;text-align:center;font-weight:600;font-size:12px;line-height:16px;color:#334155}.ast-font-decoration-wrapper div.active,.ast-font-transform-wrapper div.active{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type{border:1px solid #d1d5db}.ast-font-item-type:hover{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type:first-child{border:1px solid #d1d5db;border-right:none;border-radius:3px 0 0 3px}.ast-font-item-type:last-child{border:1px solid #d1d5db;border-left:none;border-radius:0 3px 3px 0}.ast-font-item-type.ast-font-deco-underline{text-decoration:underline}.ast-font-item-type.ast-font-deco-linethrough{text-decoration:line-through}.ast-typopreset-custom-tooltip{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.ast-typopreset-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.ast-typopreset-custom-tooltip[data-title]:hover::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-customizer-font-varient-wrap{margin-top:12px}.ast-customizer-font-varient-wrap .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding:2px 5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:12px;padding:2px 2px 2px 2px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px;padding-left:5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__label{line-height:normal}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove{color:#4b5563;padding-right:0}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-font-varient-wrap .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-font-varient-wrap .ast-multi-select__control{position:relative;max-height:32px;display:inline-flex;width:100%;align-content:center}.ast-customizer-font-varient-wrap .ast-multi-select__control:after{content:"\f11c";font-family:dashicons;font-size:16px;margin-right:7px;pointer-events:none;z-index:1}.ast-customizer-font-varient-wrap .ast-multi-select__control:before{content:'';position:absolute;top:3px;right:3px;width:50px;height:25px;background:#f7f7f7;background:linear-gradient(90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}#customize-control-astra-settings-ast-body-font-settings .ast-fields-wrap,#customize-control-astra-settings-ast-headings-font-settings .ast-fields-wrap{overflow:visible}.customize-control-ast-font select option[value=normal],.customize-control-ast-font select[data-value=normal] option[value="400"]{display:none}.customize-control-ast-font select[data-value=normal] option[value=normal]{display:block}span.customize-control-title.ast-group-section-title{margin-bottom:4px;font-weight:600}.ast-top-divider.customize-control-ast-group-title .ast-reset-btn-preset-wrap{top:24px}.customize-control-ast-group-title .ast-responsive-btns{margin-left:5px;position:relative;top:3px}.ast-field-settings-wrap .customize-control-ast-heading{margin:0 0 15px 0}.customize-control-ast-heading{margin-top:25px;margin-bottom:0}.customize-control-ast-heading .ast-heading-wrapper{margin:0 -24px}.customize-control-ast-heading .customize-control-title{display:block;padding:15px 24px;margin:0;border-width:1px 0;border-style:solid;border-color:var(--ast-customizer-color-7);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-4);font-size:12px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase!important}.customize-control-ast-heading .customize-control-caption{top:50%;transform:translateY(-50%);position:absolute;right:0;font-size:11px;font-weight:500;letter-spacing:1px}.customize-control-ast-heading .customize-control-description{margin-top:10px}.ast-heading-wrapper label{cursor:default}.customize-control>label{cursor:default}.customize-control .ast-border-input-item-link,.customize-control .ast-spacing-input-item-link{cursor:pointer}.customize-control.customize-control-ast-slider label{cursor:pointer}.customize-control.customize-control-ast-slider label .wrapper input[type=range]{cursor:pointer}.customize-control .ast-control-reduce-top-space{margin-top:-15px}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper{position:relative}.customize-control-ast-input-with-dropdown .components-dropdown-menu{position:absolute;right:0;top:0}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle{width:30px;height:30px;border-radius:0;background-color:var(--wp-admin-theme-color);color:#fff}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:#fff}.customize-control-ast-input-with-dropdown .components-button:focus:not(:disabled){box-shadow:none;outline:0}.customize-control-ast-input-with-dropdown .components-popover__content{min-width:170px}.customize-control-ast-input-with-dropdown .components-popover__content .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:var(--wp-admin-theme-color)}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper input.components-text-control__input{padding-right:40px;max-height:30px;min-height:30px;border-color:#ddd}.ast-link-open-in-new-tab-wrapper{margin:24px 0 0;border-top:1px dashed var(--ast-customizer-color-7)}.ast-link-label-wrapper{margin:24px 0;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)}.customize-control-ast-multi-selector .input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap{display:flex;justify-content:center;flex:1 1 0;background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-7);padding:.6em 0;cursor:pointer;--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-6);margin-left:-1px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active{--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-1);border-color:var(--ast-customizer-color-3);z-index:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap svg{fill:var(--ast-customizer-color-10)}.ast-multiselector-inner-wrap .ahfb-icon-set{line-height:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:last-child{border-radius:0 3px 3px 0}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:first-child{border-radius:3px 0 0 3px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap span[label]{color:var(--ast-customizer-color-6)}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active span[label]{color:var(--ast-customizer-multiselect-icon-color)}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(50% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap:nth-child(2n){margin-right:0}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(33.33% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap:nth-child(3n){margin-right:0}[CLASS*=stack-after-].ast-alignment-wrapper{margin-left:-5px;margin-right:-5px;display:flex;flex-wrap:wrap}[CLASS*=stack-after-].ast-alignment-wrapper .ast-multiselector-inner-wrap{margin:5px;align-items:center;padding:5px;height:30px;border-radius:0}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(45% - 10px)}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(28% - 10px)}li[ID*="-image-custom-scale-height"],li[ID*="-image-custom-scale-width"]{display:inline-flex}li[ID*="-image-custom-scale-height"]{float:none;padding:0!important;width:calc(50% + 10px)}li[ID*="-image-custom-scale-width"]{width:calc(50% - 10px)}li[ID*="-image-custom-scale-height"]:before{content:':';padding:0 10px;line-height:30px}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden{float:unset;width:unset}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before{content:unset}.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}` .customize-control-ast-number input[type=number]{-moz-appearance:textfield;text-align:center}.customize-control-ast-number input[type=number]::-ms-clear,.customize-control-ast-number input[type=number]::-ms-reveal,.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{display:none}.customize-control-ast-radio-icon .ast-control-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.customize-control-ast-radio-icon .customize-control-title{flex:1;padding-right:.5em}.customize-control-ast-radio-icon .customize-control-title{margin-top:8px;margin-bottom:8px}.customize-control-ast-radio-icon .ast-options{background-color:transparent;margin:0;line-height:0}.customize-control-ast-radio-icon .ast-options li{display:inline-block;position:relative;background-color:transparent;width:42px;height:28px;line-height:28px;margin-bottom:0;border:1px solid var(--ast-customizer-color-7);color:var(--ast-customizer-color-8);cursor:pointer}.customize-control-ast-radio-icon .ast-options li .dashicon{text-align:center;line-height:28px;width:100%;font-size:16px}.customize-control-ast-radio-icon .ast-options li{margin-left:-1px}.customize-control-ast-radio-icon .ast-options li:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.customize-control-ast-radio-icon .ast-options li:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.customize-control-ast-radio-icon .ast-options li.active{background-color:var(--ast-customizer-color-1);color:var(--ast-customizer-color-10);border-color:var(--ast-customizer-color-1);margin-right:1px}.customize-control-ast-row-layout .ast-responsive-btns{position:relative;top:1px}.customize-control-ast-radio-image label{position:relative;display:inline-block;margin-right:12px}.ast-divide-four label{margin-right:0}.customize-control-ast-radio-image input{display:none}.customize-control-ast-radio-image input:checked+label svg{background:var(--ast-customizer-color-1);border-radius:0;box-shadow:0 0 3px 0 rgba(0,133,186,.67)}.customize-control-ast-radio-image input:checked+label svg path{color:var(--ast-customizer-color-10)}.components-button-group.ahfb-radio-container-control .active-radio.ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout input:checked+label svg{background-color:var(--ast-customizer-color-1);border-color:transparent;box-shadow:0 12px 20px -8px rgba(30,41,59,.16);border-bottom-color:#f0f0f1}.ast-divide-four input:checked+label svg{box-shadow:none;color:var(--ast-customizer-color-3)}.customize-control-ast-radio-image input+label .image-clickable{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.image{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:5px;grid-row-gap:5px}.components-button-group.ahfb-radio-container-control,.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.modern-layout{display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:23px;grid-row-gap:23px}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.ast-divide-four{grid-template-columns:repeat(4,1fr);grid-column-gap:14px;grid-row-gap:10px}.customize-control-ast-radio-image .ast-radio-img-svg svg{width:75px;height:50px}.components-button-group.ahfb-radio-container-control .ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout .ast-radio-img-svg svg{margin:0;width:100%;height:auto;background-color:rgba(221,224,226,.5);border:1px solid var(--ast-customizer-color-7);border-radius:4px;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.ast-divide-four .ast-radio-img-svg svg{color:var(--ast-customizer-color-7);width:100%;height:93%}.ast-divide-four .ast-radio-img-svg svg path{color:var(--ast-customizer-color-8)}.image-clickable[data-title]::after{text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.image-clickable[data-title]::after{content:attr(data-title);min-width:3em;max-width:21em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgba(0,0,0,.35);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:9;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards}.image-clickable[data-title]:hover::after{display:block}.image-clickable[data-title='']::after{display:none!important}@keyframes tooltips-vert{to{opacity:.9;transform:translate(-50%,0)}}@keyframes tooltips-horz{to{opacity:.9;transform:translate(0,-50%)}}.ast-upgrade-trigger:hover .image-clickable[data-title]::after{display:block}.customize-control-ast-responsive-background{position:relative;margin-bottom:-5px}.customize-control-ast-responsive-background .background-container h4{font-size:14px;font-weight:600;color:#555d66}.customize-control-ast-responsive-background .background-attachment h4,.customize-control-ast-responsive-background .background-color h4,.customize-control-ast-responsive-background .background-position h4,.customize-control-ast-responsive-background .background-repeat h4,.customize-control-ast-responsive-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-responsive-background .background-color{margin-bottom:12px}.customize-control-ast-responsive-background .background-repeat{margin:15px 0 15px 0}.customize-control-ast-responsive-background .background-attachment .buttonset,.customize-control-ast-responsive-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-right:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-responsive-background .background-size .buttonset .switch-label:last-child{margin-right:0}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input:checked+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-responsive-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-responsive-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-responsive-background .arrow-icon{margin-left:5px}.customize-control-ast-responsive-background .background-container{display:none}.customize-control-ast-responsive-background .background-container.active{display:block}.customize-control-ast-responsive-background .wp-picker-container{display:block}.customize-control-ast-responsive-background .wp-picker-container .wp-picker-clear{margin-left:4px;min-height:30px}.customize-control-ast-responsive-background .customize-control-content .astra-color-picker-wrap{width:100%}.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.customize-control-ast-responsive-background .ast-color-btn-clear-wrap{right:84px}.components-color-picker__inputs-toggle-wrapper .components-color-picker__inputs-toggle{vertical-align:middle;height:32px}.astra-popover-tabs .components-button.upload-button.button-add-media{width:100%;position:relative;text-align:center;color:#555d66;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6}.astra-popover-tabs .components-button.upload-button.button-add-media:hover{color:#555d66;box-sizing:border-box;box-shadow:unset;border-color:#0185ba}.astra-popover-tabs [ID*="-gradient-view"]{padding:0 15px 15px 15px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear{flex:unset;box-shadow:unset;width:auto;padding:0 5px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:hover{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:focus{box-shadow:unset}.astra-popover-tabs #tab-panel-0-image-view>div{text-align:center}.astra-popover-tabs #tab-panel-0-image-view>div img{width:200px;margin-bottom:18px}.astra-popover-tabs #tab-panel-0-image-view>div .media-position-setting{text-align:left}.media-position-setting>.components-base-control{margin-bottom:15px}.media-position-setting [CLASS*="-Item-LabelWrapper"]{margin-bottom:5px}.astra-popover-color .components-circular-option-picker{position:relative;margin-top:0}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{margin-top:10px;justify-content:flex-start}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{width:50px}}.astra-popover-color [ID*="-color-view"] .components-circular-option-picker{width:auto}.astra-popover-color .ast-color-palette{width:auto;padding:16px 0 0 14px}.astra-popover-color .ast-color-palette .components-circular-option-picker__option{width:100%;height:100%;border-radius:100%}.astra-popover-color .ast-color-palette .components-button.is-pressed:focus:not(:disabled){box-shadow:none;border:none}.astra-popover-color .components-custom-gradient-picker{margin-top:0}.astra-popover-color .components-custom-gradient-picker__gradient-bar{box-sizing:border-box;opacity:1}.astra-popover-color .components-custom-gradient-picker__type-picker .components-base-control__label{display:block}.components-custom-gradient-picker .components-base-control__label{padding-top:10px;font-size:12px;display:block;letter-spacing:.1px;line-height:18px}[ID*="-gradient-view"] .components-toolbar.components-custom-gradient-picker__toolbar .components-button.has-icon{border:none}.media-position-setting.hide-settings{display:none}.media-position-setting .astra-popover-tabs [ID*="-gradient-view"]{padding:0 0 15px 0}.ast-field-settings-modal .customize-control-content .color-button-wrap{right:30px;top:0}.ast-field-settings-modal .ast-responsive-btns{position:absolute;right:14px;top:4px}.ast-field-settings-modal .customize-control-content .astra-color-picker-wrap{margin-left:0;margin-top:0}.ast-field-settings-modal .customize-control-content .ast-color-btn-reset-wrap{right:65px;top:7px}.ast-field-settings-modal .customize-control-content .ast-color-btn-clear-wrap{right:91px}.ast-field-settings-modal .customize-control-ast-responsive-background.customize-control:first-child{margin-top:28px}.customize-control-ast-responsive-background .ast-color-btn-reset-wrap,.customize-control-ast-responsive-color .ast-color-btn-reset-wrap{display:inline-block;line-height:1;top:4.5px}.customize-control-ast-responsive-background .ast-responsive-btns,.customize-control-ast-responsive-color .ast-responsive-btns{position:relative;right:-5px;top:2px}.ast-field-settings-modal .customize-control-ast-responsive-background .ast-responsive-btns,.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{right:8px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha{display:none}.customize-control-ast-responsive-color .customize-control-content{display:block;margin-top:5px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-black{border-radius:4px 4px 0 0}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-white{border-radius:3px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha.active{display:block}.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{right:30px;top:-3px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .astra-color-picker-wrap{margin-left:0;margin-bottom:10px;margin-top:10px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .customize-control-title{display:block;margin-bottom:0}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{right:7px;top:1px}.ast-field-settings-modal .customize-control-ast-responsive-color.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 10px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:3.5px}@supports (-moz-appearance:none){.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:5.5px;right:65px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{right:27px;top:-2px}}.customize-control-ast-responsive-slider .wrapper,.customize-control-ast-slider .wrapper{position:relative;display:flex}.customize-control-ast-responsive-slider .input-field-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-responsive-slider input[type=range]{position:inherit}.customize-control-ast-responsive-slider select,.customize-control.customize-control-select select{color:#32373c}.customize-control-ast-responsive-slider .input-field-wrapper{display:none}.customize-control-ast-responsive-slider .input-field-wrapper.active{display:flex}.customize-control-ast-responsive-slider .components-base-control{width:100%}.customize-control-ast-responsive-slider .slider-control-label,.customize-control-ast-slider .customize-control-title{cursor:default;margin-top:3px}.ast-responsive-slider-btns{position:absolute;right:0;top:5px;right:30px}.ast-responsive-slider-btns>li{margin-bottom:0;display:none}.ast-responsive-slider-btns>li.active{display:inline-block}.ast-responsive-slider-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;line-height:1}.ast-responsive-slider-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.customize-control-ast-responsive-slider .wrapper .components-base-control,.customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active,.customize-control-ast-slider .components-base-control.components-range-control{width:100%;display:inline-block}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-left:5px;margin-top:4px}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap{top:4px;right:0}.customize-control .ast-reset-btn .dashicons-image-rotate{width:12px;height:12px;font-size:12px}.customize-control-ast-responsive-slider .components-input-control input.components-input-control__input,.customize-control-ast-slider .components-input-control input.components-input-control__input{-moz-appearance:textfield}.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button{-webkit-appearance:none}.customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input,.customize-control-ast-slider .components-input-control__container input.components-input-control__input{display:block;border-radius:2px 0 0 2px;box-shadow:none;transition:all .3s;border:1px solid var(--ast-customizer-color-7)}.customize-control-ast-responsive-slider input.components-input-control__input:active,.customize-control-ast-responsive-slider input.components-input-control__input:focus,.customize-control-ast-responsive-slider input.components-input-control__input:hover,.customize-control-ast-slider input.components-input-control__input:active,.customize-control-ast-slider input.components-input-control__input:focus,.customize-control-ast-slider input.components-input-control__input:hover{border-color:var(--ast-customizer-color-2);border-radius:2px;outline:0}.customize-control-ast-responsive-slider .ast-slider-wrap,.customize-control-ast-slider .ast-slider-wrap{position:relative}.components-range-control__wrapper .components-range-control__track{color:var(--ast-customizer-color-1)}.components-range-control__wrapper span span{background-color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit,.customize-control-ast-slider .ast-slider-wrap .ast-range-unit{position:absolute;right:23px;top:4px;border-right:1px solid var(--ast-customizer-color-7);padding-right:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .components-input-control__container,.customize-control-ast-slider .components-input-control__container{margin-left:5px}.customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop,.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop{border:none;border-radius:2px 0 0 2px;box-shadow:none}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{position:absolute;display:inline-block;line-height:1;right:0}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{top:1px}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number{width:calc(48px)!important}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{text-align:center}.customize-control-ast-responsive-spacing .customize-control-title{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-outer-wrapper{display:flex;position:relative}.customize-control-ast-responsive-spacing .ast-spacing-input-item{margin:0 2px;-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input[type=number]{-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-inner-spin-button,.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units-screen-wrap{position:relative;top:-5px;right:-10px;display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns{position:relative;top:2px}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li{display:none}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li.active{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;width:100%}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]>i{font-size:15px;vertical-align:middle}.customize-control-ast-responsive-spacing .input-wrapper.ast-spacing-responsive-wrapper{display:inline-flex}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units{position:absolute;font-size:12px;line-height:16px;text-transform:uppercase;font-weight:500;top:-32px;right:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit{display:inline-block;margin-left:6px;width:18px;text-align:center;user-select:none;opacity:.6}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit.active{opacity:1;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;cursor:pointer}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:active,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:focus,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:hover{border-color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li .ast-spacing-connected{color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper.active{display:flex}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper span.ast-spacing-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link{order:2;margin-left:2px;margin-top:4px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .dashicons{padding:2px 0;font-size:12px;line-height:28px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .ast-spacing-connected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-disconnected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-connected{display:block}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link span{width:100%;height:32px;line-height:28px;font-size:14px;border-radius:3px 0 0 3px;background-color:transparent}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link svg{pointer-events:none}.customize-control-ast-responsive-spacing .ast-spacing-wrapper>li:nth-child(2){margin-left:0}.ast-responsive-toggle-control .components-base-control__field,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-responsive-toggle-control .components-form-toggle,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-responsive-toggle-control .components-base-control__field{margin:20px 0}.ast-responsive-toggle-control label,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control{display:none}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control.active{position:relative;top:2px;width:91%;display:inline-block;vertical-align:middle}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns{position:relative;float:right;top:4px}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns>li.active{vertical-align:middle}.ast-responsive-toggle-btns>li{margin-bottom:0;display:none}.ast-responsive-toggle-btns>li.active{display:inline-block}.ast-responsive-toggle-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-toggle-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.ast-responsive-btns{display:inline-block;line-height:1;vertical-align:top}.ast-responsive-btns>li{margin-bottom:0;display:none}.ast-responsive-btns>li.active{display:inline-block}.ast-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-btns button[type=button]>i{width:15px;height:15px;font-size:15px}.input-wrapper.ast-responsive-wrapper{display:inline-flex;justify-content:space-between;margin-right:0;align-items:flex-start;flex:0 1;width:100%}.ast-customizer-select-multi .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-select-multi{position:relative}.ast-customizer-select-multi .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding-left:10px;padding-right:30px}.ast-customizer-select-multi:before{content:'';position:absolute;top:3px;right:1px;width:50px;height:37px;background:#f7f7f7;background:linear-gradient(90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}.ast-customizer-select-multi:after{content:"\f11c";position:absolute;font-family:dashicons;font-size:16px;margin-right:15px;pointer-events:none;z-index:1;top:13px;right:0}.ast-customizer-select-multi .ast-multi-select__multi-value__label{margin-right:.2em}.ast-customizer-select-multi .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:14px;padding:2px 5px 2px 5px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px}.ast-customizer-select-multi .ast-multi-select__multi-value__remove{color:#4b5563;padding-right:0}.ast-customizer-select-multi .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-select-multi .ast-multi-select__menu *,.ast-customizer-select-multi .ast-multi-select__multi-value__remove{cursor:pointer}.ast-customizer-select-multi .ast-multi-select__menu{z-index:2}.ast-variant-select>div{border-color:#ddd}.ast-variant-select>div,.customize-control input,.customize-control select,.customize-control textarea,.customize-control-content .components-text-control__input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5);padding-top:1px;padding-bottom:1px}.ast-variant-select>div:focus,.customize-control input:focus,.customize-control select:focus{border-color:var(--ast-customizer-color-1);color:#0a4b78;box-shadow:0 0 0 1px var(--ast-customizer-color-1)}.ast-adv-toggle-icon{right:2px;position:absolute;width:18px;height:18px;font-size:18px;border-radius:2px;padding:4px;color:var(--ast-customizer-color-8);background:var(--ast-customizer-color-9);cursor:pointer}.ast-adv-toggle-icon:hover{color:var(--ast-customizer-color-1)}.ast-adv-toggle-icon:before{content:"\f464"}.ast-adv-toggle-icon.open:before{content:"\f158"}.ast-field-settings-modal{position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;z-index:8;background-color:#fff}.customize-control-ast-color-palette .ast-field-settings-modal{z-index:11}.ast-field-settings-modal .customize-control-ast-divider:first-child{margin-top:15px}.ast-field-settings-wrap{width:100%}.ast-group-tabs,.ast-tab-content{position:relative}.ast-group-list{overflow:hidden;border-bottom:1px solid #ddd}.ast-group-list:after,.ast-group-list:before{content:"";display:table;border-collapse:collapse}.ui-tabs-anchor{float:left;padding:.5em .5em;color:#555d66;text-decoration:none}.ui-state-active .ui-tabs-anchor{color:#fff}.ui-tabs-anchor:hover{color:#555d66}.ui-state-active .ui-tabs-anchor:hover{color:#fff}.ast-group-tabs .ui-widget-content{overflow:hidden}.ast-group-tabs .ui-widget-content.iris-slider-offset,.ast-group-tabs .ui-widget-content.iris-slider-offset-alpha{overflow:inherit}.ast-fields-wrap{overflow:hidden}.ast-field-settings-wrap{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;background-color:#fff}.ast-field-settings-wrap .ast-field-settings-modal{border-radius:3px;margin-top:10px;margin-bottom:20px}.ast-field-settings-modal::before{content:'';position:absolute;top:-17px;right:8px;border:9px solid transparent;border-bottom-color:#fff;pointer-events:none}.ast-group-tabs .ui-tabs-nav{display:flex;padding:15px 15px 0 15px}.ast-group-tabs .ui-tabs-nav .ui-corner-top{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.ast-group-tabs .ui-tabs-nav .ui-corner-top:first-child{border-radius:3px 0 0 3px}.ast-group-tabs .ui-tabs-nav .ui-corner-top:last-child{border-radius:0 3px 3px 0}.ast-group-tabs .ui-tabs-nav .ui-corner-top .ui-tabs-anchor{width:100%;text-align:center;padding:2px 4px;padding-left:0;padding-right:0;outline:0}.ast-group-tabs ul.ast-group-list .ui-corner-top .ui-tabs-anchor:focus{box-shadow:none}.ast-group-tabs .ui-tabs-nav{border:none}.ast-group-tabs ul.ast-group-list .ui-corner-top.ui-state-active{background-color:#0185ba;border:1px solid rgba(0,0,0,.1)}.ast-group-tabs .ui-tabs-nav{overflow:visible}.ast-group-tabs ul.ast-group-list .ui-corner-top:not(:first-child){border-left-width:0}.wp-core-ui .ast-field-settings-modal .background-image-upload .button{font-size:11px}.ast-field-settings-modal .customize-control{padding-left:16px;padding-right:16px;box-sizing:border-box}.ast-control-wrap .ast-color-picker-alpha{margin-left:-5px;margin-right:-5px}.ast-field-settings-modal .customize-control:first-child{margin-top:16px}.ast-field-settings-modal .ui-tabs-nav .customize-control:first-child{margin-top:0}.ast-field-settings-modal .customize-control:last-child{padding-bottom:16px}.customize-control-ast-settings-group{line-height:27px}.customize-control-ast-settings-group .customize-control-title{margin-bottom:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-title{margin-bottom:10px;font-size:13px;margin-top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-range-unit,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-units,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-range-unit{top:6px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-resp-slider-reset-wrap{top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-slider-btns,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-responsive-slider-btns{top:2px}.ast-field-settings-modal .customize-control{margin-top:2px}#customize-control-headings-font-extras.ast-sub-top-dotted-divider{margin-top:12px}.astra-popover-tabs{position:relative}.astra-popover-tabs .components-tab-panel__tabs{display:flex;padding:15px;border:none}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{color:#555d66;font-size:13px;font-weight:400;height:35px;transition:unset;padding:2px 4px;text-decoration:none;border-radius:0;border:1px solid rgba(0,0,0,.1)}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:active{box-shadow:unset}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus{box-shadow:unset}.astra-popover-tabs [ID*="-image-view"]{padding:15px;border:none}.astra-popover-tabs .components-button{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.astra-popover-tabs .components-tab-panel__tabs-item:first-child{border-radius:3px 0 0 3px}.astra-popover-tabs .components-tab-panel__tabs-item:last-child{border-radius:0 3px 3px 0}.astra-popover-tabs .components-tab-panel__tabs-item:not(:first-child){border-left-width:0}.astra-popover-tabs .components-tab-panel__tabs-item.active-tab{background-color:#0185ba;color:#fff}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content,.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs{padding:0}.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs-item.active-tab{border-color:var(--ast-customizer-color-3);background:var(--ast-customizer-color-1)}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content .ast-social-icon-picker-label{text-align:left}.astra-media-tab .astra-media-image{width:100%;margin-bottom:0}.astra-media-tab .ast-media-btn{display:block;width:100%;border:1px dashed var(--ast-customizer-color-7);box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;text-decoration:none}.astra-media-tab .ast-danger-btn{color:var(--ast-customizer-color-14);margin-top:10px}.astra-media-tab .ast-media-btn:hover{border-color:var(--ast-customizer-color-3)}.astra-media-tab .ast-danger-btn:hover{border-color:var(--ast-customizer-color-14)}.components-base-control.ast-text-control-input{margin-bottom:16px}.ast-payments-text-control-input .components-base-control__label{text-transform:none;color:#334155;font-size:13px}.components-base-control.ast-payments-text-control-input{margin-bottom:20px}.components-base-control.ast-text-control-input input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5)}.astra-popover-color .astra-popover-tabs .components-tab-panel__tabs button.components-tab-panel__tabs-item.active-tab:not(.is-primary):not(.is-tertiary):not(.is-link):hover{color:#fff}.components-popover.astra-popover-color .components-popover__content{min-width:310px;max-height:60vh;padding:0;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.ast-field-settings-modal .components-popover.astra-popover-color .components-popover__content{min-width:320px;min-height:325px}.ast-field-settings-modal .background-wrapper .components-popover.astra-popover-color .components-popover__content{min-height:385px}.ast-field-settings-modal .components-angle-picker-control .components-flex__block{min-width:auto}.customize-control-ast-settings-group .customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-top:0}.ast-top-divider.customize-control-ast-settings-group .ast-toggle-desc-wrap .ast-adv-toggle-icon{top:23px}.ast-fields-wrap .customize-control-ast-responsive-slider .ast-slider-wrap>label,.ast-fields-wrap .customize-control-ast-selector .ast-slider-wrap>label{display:inline-block}.customize-control-ast-slider .wrapper{display:flex}.customize-control-ast-slider .components-range-control{width:100%}.customize-control-ast-responsive-slider .wrapper .ast-range-unit,.customize-control-ast-slider .ast-range-unit{padding:0 0 0 5px;font-size:11px;line-height:1em;font-weight:500;align-self:auto;text-transform:uppercase}.components-range-control__slider[type=range]{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.components-range-control__slider[type=range]::-moz-range-track,.components-range-control__slider[type=range]::-webkit-slider-runnable-track{content:'';height:2px;pointer-events:none}.components-range-control__slider[type=range]::-moz-range-thumb,.components-range-control__slider[type=range]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;margin-top:5px}.customize-control-ast-responsive-slider .components-range-control__wrapper,.customize-control-ast-slider .components-range-control__wrapper{margin-left:0}.customize-control-ast-responsive-slider span[CLASS*="-ThumbWrapper"],.customize-control-ast-slider span[CLASS*="-ThumbWrapper"]{height:17px;width:17px;top:2px;margin-left:0}.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap .ast-resp-slider-reset-wrap{top:68px}.customize-control-ast-responsive-slider .ast-responsive-slider-btns{position:relative;top:-3px;right:-10px;display:inline-block}.customize-control-ast-responsive-slider .ast-responsive-units{position:absolute;top:3px;right:23px;font-size:11px;line-height:normal;border-right:1px solid #ddd;padding-right:5px;text-transform:uppercase;width:auto;display:none}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit{display:inline-block;margin-left:6px;margin-bottom:0;width:16px;text-align:center;user-select:none;opacity:.6;cursor:pointer}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit.active{opacity:1;font-weight:600;color:#0073aa;cursor:default}.ast-field-settings-modal .ast-fields-wrap>.customize-control-ast-responsive-slider+.customize-control-ast-font{margin-top:8px}.customize-control-ast-sortable .sortable{cursor:default}.customize-control-ast-sortable .sortable .dashicons-visibility{cursor:pointer}.customize-control-ast-sortable .sortable .ast-sortable-item,.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{padding:1px 3px 1px 12px;border:1px solid #d1d5db;color:#334155;background:#fff;cursor:move;font-size:14px;line-height:38px;margin:0 0 10px;border-radius:4px}.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{border:none;padding:0 9px 0 0;border-top:1px solid #d1d5db;border-radius:0 0 3px 3px}.customize-control-ast-sortable .sortable div:last-child{margin:0}.customize-control-ast-sortable .sortable div>.dashicons{float:right;position:relative;font-size:16px;padding:9px;line-height:20px;border-left:none}.customize-control-ast-sortable .sortable div.invisible{opacity:.6;visibility:visible}.customize-control-ast-sortable .sortable div.invisible .dashicons.visibility:after{opacity:1;position:absolute;content:'';width:18px;height:2px;top:18px;left:11px;background:#656565;border-radius:5px;transform:rotate(-45deg);box-shadow:0 0 0 1px #fff;transition:opacity .2s ease}.ast-sortable-item.invisible,.ast-sortable-item:hover{opacity:.8}.ast-sortable-item.show:hover{opacity:1}.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{margin-right:-6px}.ast-sortable-item .dashicons-admin-page,.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{cursor:pointer}.ast-sortable-subcontrols{display:none;padding:12px 0;border-top:1px solid #d1d5db}.show .ast-sortable-subcontrols{display:block}.ast-sortable-subfields-wrap .customize-control{box-sizing:border-box;position:relative}.ast-sortable-item.show i.ast-accordion{transform:rotate(180deg);border-left:none;border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button{padding:6px 8px;height:40px;background:#fff}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button:focus{box-shadow:none}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .ahfb-sorter-title{padding-right:20px;max-width:100%;text-overflow:ellipsis;overflow:hidden}.customize-control-ast-list-icons span.feature-label{max-width:100px;text-overflow:ellipsis;font-size:14px;line-height:18px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .dashicons-admin-page{color:#556068}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item-panel-header{border:1px solid #ddd;border-left:0;border-bottom:0;overflow:hidden}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity .ast-media-image-preview,.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:14px;width:14px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity span{display:flex}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:16px;width:16px;fill:#556068}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ast-sorter-item-expand{border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity{border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item{border:1px solid #ddd;border-top:0}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown{width:225px!important;left:-10px;box-shadow:0 5px 15px rgb(0 0 0 / 22%),0 0 5px rgb(0 0 0 / 30%)}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open{height:285px;overflow:hidden;position:absolute}.ast-sortable-item .ahfb-sorter-item-panel-content{border-top:1px solid #ddd}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox:hover>*{transform:scale(1.3)!important}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox{height:32px!important}.ast-sortable-subfields-wrap .ast-color-btn-reset-wrap{top:0}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-title{margin-bottom:16px;font-size:14px}.ast-sortable-subfields-wrap .customize-control-ast-color .ast-control-wrap .astra-popover-color{margin-left:-10px;margin-right:10px;width:calc(100% + 15px)}.customize-control-ast-sortable .ast-sortable-subfields-wrap .ast-responsive-btns{top:7px}.ast-sortable-subfields-wrap .ast-fields-wrap{padding-bottom:16px}.customize-control-content{width:100%;display:flex;flex-direction:column}.ast-sortable-subfields-wrap .ast-fields-wrap{overflow:inherit}.ast-sortable-subfields-wrap .customize-control{float:none}.ast-sortable-item.invisible>.ast-accordion,.ast-sortable-item.invisible>.dashicons-admin-page,.ast-sortable-item.invisible>.dashicons-remove{display:none}.ast-sortable-item.invisible .ast-sortable-subcontrols{display:none}.ast-sortable-item .ahfb-sorter-item .dashicons{font-size:16px;width:16px;height:16px}.ast-sortable-item .ahfb-sorter-item .ahfb-sorter-item-expand:before{left:7px;width:17px}.ahfb-sorter-item:first-child .ahfb-sorter-item-remove,.ast-sortable-item .components-button.item-is-hidden:not(.visibility-item){display:none}.customize-control-ast-sortable .sortable .rfip .rfipbtn__button{margin-left:auto}.ast-sortable-subfields-wrap .customize-control-ast-responsive-slider .ast-responsive-slider-btns{top:-2px}.ast-sortable-item .customize-control-ast-color .ast-color-btn-reset-wrap{top:12px}.ast-sortable-item .customize-control-ast-color .color-button-wrap{top:8px}.ast-sortable-item .customize-control-ast-color .astra-color-picker-wrap{position:relative;top:8px}.ast-sortable-subfields-wrap .customize-control-ast-description{line-height:1}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .dashicons-admin-page{margin-right:0}.customize-control-ast-text-input textarea{display:block;width:100%}.ast-togglecontrol-wrapper .components-base-control__field,.customize-control-ast-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-togglecontrol-wrapper .components-form-toggle,.customize-control-ast-toggle .components-toggle-control .components-form-toggle,.customize-control-ast-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-togglecontrol-wrapper .components-base-control__field{margin:24px 0 0}.ast-togglecontrol-wrapper .components-toggle-control__label,.ast-togglecontrol-wrapper .toggle-control-label{font-size:14px;font-weight:600}.ast-togglecontrol-wrapper label,.customize-control-ast-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.ast-switch~label{position:relative;display:block;width:35px;height:14px;background-color:var(--ast-customizer-color-7);color:transparent;border-radius:50px;cursor:pointer;transition:all .2s ease-in}.ast-switch~label:after{content:'';position:absolute;top:-3px;left:-1px;display:block;width:20px;height:20px;border-radius:50px;background:var(--ast-customizer-color-9);box-shadow:0 2px 4px 0 rgba(72,72,72,.5);transition:all .2s ease-in}.ast-switch:checked~label{background:var(--ast-customizer-color-1)}.ast-switch:checked~label:after{transform:translateX(16px);background:var(--ast-customizer-color-9)}.ast-switch:disabled~label{background:#f0f0f0;pointer-events:none}.ast-switch:disabled~label:after{background:#d1d1d1;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ast-switch:checked,.ast-switch:not(:checked){opacity:0}.customize-control-ast-section-toggle .components-form-toggle{margin-left:5px;text-align:right}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:initial;align-items:center}.dashicons-editor-help[data-title]{z-index:1}.ast-dashicons-custom-tooltip{display:none;opacity:0;position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.ast-dashicons-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:3;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{display:block;opacity:100}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-top-dotted-divider .ast-control-tooltip.dashicons-editor-help{top:22px}.customize-control.ast-bottom-dotted-divider.customize-control-ast-toggle-control .ast-control-tooltip{top:8px}.customize-control.customize-control-ast-select.ast-top-dotted-divider .ast-control-tooltip{top:36px}.customize-control-ast-sortable .customize-control-ast-selector .dashicons.ast-control-tooltip{top:18%;padding:0;font-size:20px}.select2-container{width:100%!important}span.select2-container.select2-container--default.select2-container--open{z-index:999999}span.select2-container.select2-container--default.select2-container--open li.select2-results__option{margin:0}.select2-selection__rendered li{margin-bottom:0}.select2-container--default .select2-selection--single,.select2-container--default.select2-container .select2-selection--multiple{border-color:#ddd;border-radius:0}.select2-container--default .select2-selection--multiple .select2-selection__choice,.select2-dropdown{border-color:#ddd;border-radius:0}.customize-control.customize-control-ast-hidden{margin-top:0}.wp-full-overlay-footer .devices-wrapper .preview-desktop,.wp-full-overlay-footer .devices-wrapper .preview-mobile,.wp-full-overlay-footer .devices-wrapper .preview-tablet{vertical-align:middle}.customize-control-ast-font-variant .ast-variant-select input#react-select-2-input:focus{box-shadow:none}.ast-variant-select [CLASS*="-indicatorContainer"]{padding:2px;display:contents}.ast-variant-select [CLASS*="-multiValue"]>div:first-child{padding:0}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap,.ast-upgrade-pro-wrap .ast-upgrade-trigger{width:100%;-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center;position:relative;overflow:hidden;justify-content:center}.ast-upgrade-pro-wrap .ast-upgrade-cta{position:absolute;top:auto;left:auto;width:auto;height:28px;border-radius:4px;padding:0 8px 0 5px;font-size:1em;line-height:1em;display:inline-flex;color:var(--ast-customizer-color-1);background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-1);align-items:center;align-content:center;white-space:nowrap}a.ast-upgrade-trigger:active,a.ast-upgrade-trigger:focus{box-shadow:none;border:none;outline:0}.ast-upgrade-pro-wrap .ast-upgrade-section-title{margin-left:8px}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap>svg{width:100%;height:100%;filter:blur(4px)}.ast-upgrade-pro-wrap .ast-upgrade-cta svg{width:1.2em;height:1.2em}.customize-control-ast-radio-image .ast-pro-option>:not(.image-clickable){opacity:.4}.ast-radio-img-svg.ast-pro-option .image-clickable::before{display:inline-flex;position:absolute;top:36%;left:41%;content:'';background-size:1.5em 1.5em;height:1.5em;width:1.5em;border:1px solid var(--ast-customizer-color-1);background-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5002 7.2001H11.7002V4.8001C11.7002 3.0401 10.2602 1.6001 8.5002 1.6001C6.7402 1.6001 5.3002 3.0401 5.3002 4.8001V7.2001H4.5002C4.1002 7.2001 3.7002 7.6001 3.7002 8.0001V13.6001C3.7002 14.0001 4.1002 14.4001 4.5002 14.4001H12.5002C12.9002 14.4001 13.3002 14.0001 13.3002 13.6001V8.0001C13.3002 7.6001 12.9002 7.2001 12.5002 7.2001ZM9.3002 12.8001H7.7002L8.0202 11.0401C7.6202 10.8801 7.3002 10.4001 7.3002 10.0001C7.3002 9.3601 7.8602 8.8001 8.5002 8.8001C9.1402 8.8001 9.7002 9.3601 9.7002 10.0001C9.7002 10.4801 9.4602 10.8801 8.9802 11.0401L9.3002 12.8001ZM10.1002 7.2001H6.9002V4.8001C6.9002 3.9201 7.6202 3.2001 8.5002 3.2001C9.3802 3.2001 10.1002 3.9201 10.1002 4.8001V7.2001Z' fill='%230284C7'/%3E%3C/svg%3E")}.ast-upgrade-list-wrapper{text-align:center}.ast-upgrade-list-wrapper .ast-brand-logo{margin:0}.ast-upgrade-list-wrapper svg{width:32px;height:32px}.ast-upgrade-list-items{margin-bottom:1.8em}.ast-upgrade-list-wrapper .ast-upgrade-list-section-title{margin:.5em auto 1.8em;max-width:240px}.ast-pro-upgrade-item svg{vertical-align:middle;margin-right:5px;fill:var(--ast-customizer-color-1)}.ast-pro-upgrade-item span{display:inline-block}.ast-upgrade-list-description{margin:5px 0 0 20px}.ast-upgrade-list-title{font-weight:600}.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available),.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available) *,.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available),.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available) *{color:var(--ast-customizer-color-9);background:var(--ast-customizer-color-1)}.customize-control .button.ahfb-builder-section-shortcut{border-left:1px solid #ddd;border-right:1px solid #ddd}.ast-customize-control-title a.ast-builder-upgrade-link{background:var(--ast-customizer-color-9)!important;color:var(--ast-customizer-color-1)!important;box-shadow:0 4px 8px -4px rgba(0,0,0,.16);margin-left:10px;border-radius:4px;padding:3px 10px 5px;text-decoration:none;vertical-align:top}.ast-pro-upgrade-item p{margin:1.25em 0;line-height:1}li#customize-control-astra-settings-footer-builder-pro-items .ast-upgrade-pro-wrap,li#customize-control-astra-settings-header-builder-pro-items .ast-upgrade-pro-wrap{padding-left:12px;padding-right:12px} \ No newline at end of file +.customize-control-ast-selector .ast-alignment-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-selector .ast-alignment-inner-wrap,.customize-control-ast-selector .ast-selector-responsive-wrap{display:none}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active{flex:1 1 auto;display:flex}.customize-control-ast-selector .components-button.has-icon{padding:6px;min-width:36px;justify-content:center}.ast-alignment-inner-wrap .components-button{white-space:nowrap;color:var(--ast-customizer-color-5);text-decoration:none;text-shadow:none;outline:unset;border:1px solid var(--ast-customizer-color-7);width:100%;height:100%;text-align:center;justify-content:center;border-radius:unset;transition:none;font-weight:400}.ast-alignment-inner-wrap.active .components-button.is-primary{color:var(--ast-customizer-color-10);background:var(--ast-customizer-color-1)}.customize-control-ast-selector .ast-alignment-wrapper .ast-alignment-inner-wrap.active .components-button:not(.is-primary):hover{color:var(--ast-customizer-color-5)!important}.customize-control-ast-selector .components-button .ahfb-icon-set svg{width:16px;height:16px;fill:var(--ast-customizer-color-8)}.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg circle,.customize-control-ast-selector .components-button.is-primary .ahfb-icon-set svg path:not(.ast-hf-account-unfill){fill:var(--ast-customizer-color-10)}.customize-control-ast-selector .ast-alignment-inner-wrap:first-child .components-button{border-radius:3px 0 0 3px}.customize-control-ast-selector .ast-alignment-inner-wrap:last-child .components-button{border-radius:0 3px 3px 0}.ast-alignment-wrapper .ast-alignment-inner-wrap:not(:first-child):not(:last-child) .components-button{border-right:none}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button{border-radius:unset;font-size:12px;padding:9px 0 10px}.customize-control-ast-selector .ast-selector-responsive-wrap.active{display:flex;flex:1 1 0}.customize-control-ast-selector .ast-responsive-btns{position:relative;left:6px;top:0}.customize-control-ast-selector .ast-alignment-inner-wrap .components-button:focus:not(:disabled){box-shadow:none}.customize-control-ast-selector .components-button .ahfb-icon-set{display:flex}.customize-control-ast-selector{margin-bottom:1px}.ast-alignment-inner-wrap.active button.components-button.is-primary{border-color:var(--ast-customizer-color-3)}#customize-controls .customize-control-notifications-container{margin:0}.customize-control-ast-background .screen-reader-text{top:initial}.customize-control-ast-background .background-container h4{font-weight:400}.customize-control-ast-background .background-attachment h4,.customize-control-ast-background .background-color h4,.customize-control-ast-background .background-position h4,.customize-control-ast-background .background-repeat h4,.customize-control-ast-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-background .background-color{margin-bottom:12px}.customize-control-ast-background .background-repeat{margin:15px 0 8px 0}.customize-control-ast-background .background-attachment .buttonset,.customize-control-ast-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-background .background-attachment .buttonset .switch-label,.customize-control-ast-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-right:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-background .background-size .buttonset .switch-label:last-child{margin-right:0}.customize-control-ast-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input:checked+.switch-label,.customize-control-ast-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-background .more-settings .message,.customize-control-ast-responsive-background .more-settings .message{margin-right:5px}.customize-control-ast-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-background .arrow-icon{margin-left:5px}.customize-control-ast-background .customize-control-title{display:block}.customize-control-ast-background .astra-color-picker-wrap{margin-top:18px}.ast-field-settings-modal .customize-control-ast-background.customize-control,.ast-field-settings-modal .customize-control-ast-background.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-background .more-settings{margin-top:6px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .ast-color-btn-reset-wrap{right:59px}.ast-field-settings-modal .customize-control-ast-background .customize-control-content .color-button-wrap{right:16px}.ast-field-settings-modal .customize-control-ast-background .astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 10px}.customize-control-ast-border .customize-control-title{display:inline-block}.customize-control-ast-border .ast-border-outer-wrapper{display:flex;position:relative}.customize-control-ast-border .ast-border-wrapper{display:flex}.customize-control-ast-border .ast-border-btns{display:block;text-align:center;line-height:2;border:1px solid #ddd;background-color:#fff;border-radius:0 3px 3px 0}.customize-control-ast-border .ast-border-btns>li{margin-bottom:0;display:none;width:35px;height:26px}.customize-control-ast-border .ast-border-btns>li.active{display:inline-block}.customize-control-ast-border .ast-border-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;opacity:.75;outline:0;width:100%;height:100%}.customize-control-ast-border .ast-border-btns button[type=button]>i{width:15px;height:15px;font-size:15px;margin-top:1px}.customize-control-ast-border .input-wrapper .ast-border-wrapper{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;margin:0 2px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:first-child{margin-left:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s;-moz-appearance:textfield}.customize-control-ast-border .input-wrapper .ast-border-wrapper li .ast-border-connected{color:#fff}.customize-control-ast-border .input-wrapper .ast-border-wrapper li:last-child input.ast-border-input{border-right-width:1px;border-radius:0 3px 3px 0}.customize-control-ast-border .input-wrapper .ast-border-wrapper.active{display:flex}.customize-control-ast-border .input-wrapper .ast-border-wrapper span.ast-border-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link .ast-border-connected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-disconnected{display:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link.disconnected .ast-border-connected{display:block}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span{width:100%;height:26px;line-height:26px;font-size:14px;background-color:transparent;border-radius:3px}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link span svg{pointer-events:none}.customize-control-ast-border .input-wrapper .ast-border-wrapper .ast-border-input-item-link{margin-top:4px}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus,.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:hover{border-color:var(--ast-customizer-color-2)}.customize-control-ast-border .input-wrapper .ast-border-wrapper li input.ast-border-input:focus{outline:0}.customize-control-ast-border .input-wrapper.ast-border-wrapper{margin-bottom:8px}.customize-control-ast-border .ast-range-unit{position:absolute;right:0;top:0;padding-right:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.ast-upgrade-pro-wrap .ast-button-link,.customize-control-ast-button-link .ast-button-link{display:block;padding:10px 0;border-radius:2px;border:1px solid var(--ast-customizer-color-1);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);font-size:13px!important;font-weight:400;line-height:13px!important;text-align:center;cursor:pointer}.ast-upgrade-pro-wrap .ast-button-link:hover,.customize-control-ast-button-link .ast-button-link:hover{background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-1);border:1px solid var(--ast-customizer-color-1)}.ast-btn-preset-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ast-btn-preset-wrap .ast-btn-style-item{cursor:pointer}.ast-btn-preset-wrap .ast-btn-style-item svg{fill:#646970}.ast-btn-preset-wrap .ast-btn-style-item svg:hover{fill:#565b62}.ast-btn-preset-wrap .ast-btn-style-item.active svg,.ast-btn-preset-wrap .ast-btn-style-item.active svg:hover{fill:#2271b1}.ast-reset-btn-preset-wrap{position:absolute;display:inline-block;line-height:1;right:0;top:0}.ast-reset-btn-preset-wrap .components-button.is-secondary,.ast-reset-btn-preset-wrap .components-button.is-secondary:hover{box-shadow:none;background:0 0;color:var(--ast-customizer-color-1)}.color-group-item .components-tooltip .components-popover__content{border-radius:3px}.color-group-item .components-tooltip .components-popover__content>div{padding:5px 10px;line-height:1}.customize-control.customize-control-ast-color-group{display:flex;flex-wrap:wrap}.customize-control.customize-control-ast-color-group .ast-toggle-desc-wrap{flex:1 1 auto;align-self:center}.customize-control.customize-control-ast-color-group .customize-control-title{margin-bottom:5px}.customize-control.customize-control-ast-color-group .ast-field-color-group-wrap{justify-content:flex-end;display:flex;max-height:28px}.customize-control.customize-control-ast-color-group .color-button-wrap{position:inherit}.customize-control.customize-control-ast-color-group .color-group-item:not(:last-child){margin-right:8px}.customize-control.customize-control-ast-color-group .ast-color-group-reset{right:72px;top:6px;cursor:pointer}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap{display:none}.customize-control.customize-control-ast-color-group .ast-color-group-responsive-wrap.active{justify-content:flex-end;display:flex}.customize-control.customize-control-ast-color-group .ast-responsive-btns{position:relative;right:-5px;top:3px}.customize-control.customize-control-ast-color-group .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control.customize-control-ast-color-group .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset{right:110px}.customize-control-ast-color-group .ast-color-multiple-group-reset.ast-color-group-reset.ast-single-color-group-set{right:112px}#customize-control-astra-settings-woo-single-page-color-group .ast-color-group-reset{right:145px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-control-wrap .ast-color-btn-reset-wrap{top:30px}.ast-top-dotted-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:75px}.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .ast-color-group-reset{top:47px}.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:73px}.astra-color-picker-wrap.picker-open+span{display:none}#customize-control-astra-color-palettes .ast-color-palette-wrap>div{margin-bottom:8px;position:relative}#customize-control-astra-color-palettes .color-button-wrap{display:unset;position:relative;right:unset;top:unset;vertical-align:sub;z-index:10}#customize-control-astra-color-palettes .astra-color-picker-wrap{position:absolute;z-index:1;right:0;width:100%;display:none;margin-top:10px}#customize-control-astra-color-palettes .astra-color-picker-wrap.picker-open{display:block}#customize-control-astra-color-palettes .ast-color-palette-label{width:65%;display:inline-block;margin-right:10px;vertical-align:top}#customize-control-astra-color-palettes .ast-color-palette-label input{background:0 0;border:none}#customize-control-astra-color-palettes .ast-color-palette-label input:focus{border:1px solid #000;outline:0;box-shadow:none;background:#fff}.ast-color-palette-wrapper .ast-single-palette-wrap{display:grid;grid-template-columns:repeat(9,1fr);align-items:center;position:relative;gap:2px}.ast-single-palette-wrap .components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:25px;height:25px}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap:first-child{margin-left:0}#customize-control-astra-color-palettes .ast-color-palette-wrapper .ast-color-picker-wrap{margin-top:12px;cursor:pointer}#customize-control-astra-color-palettes .ast-reset-btn:disabled{opacity:.6}#customize-control-astra-color-palettes .ast-single-color-container{width:25%;height:48px;display:inline-block}#customize-control-astra-color-palettes .ast-color-palette-wrap>section{text-align:center;outline:0;border-radius:3px;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1px #ddd}.ast-color-palette-container{width:100%;display:inline-grid;grid-template-columns:auto auto;column-gap:16px;row-gap:16px}#customize-control-astra-color-palettes .ast-field-settings-modal{display:none;padding:16px}.ast-color-palette-wrap{transition:all .2s}.ast-color-palette-wrap.active{box-shadow:0 12px 20px -8px rgb(30 41 59 / 16%)}#customize-control-astra-color-palettes .ast-color-palette-wrapper{clear:both}#customize-controls .customize-section-title.is-in-view.is-sticky{z-index:99}#customize-control-astra-color-palettes .ast-palette-selection-wrapper{overflow:hidden;padding:2px}@media (min-width:1800px){#customize-control-astra-color-palettes .astra-color-picker-wrap{width:auto}}#customize-control-astra-color-palettes .ast-color-palette-wrap.active>section{box-shadow:0 0 0 1px #334155}.ast-palette-label-wrap{text-align:center;color:#9ca3af;overflow:hidden;width:100%;box-sizing:border-box;padding:0;transition:.15s color ease-in-out,.15s background-color ease-in-out,.15s border-color ease-in-out;font-style:normal;font-weight:600;font-size:10px;line-height:22px;letter-spacing:1.5px;text-transform:uppercase}.ast-color-palette-wrap.active .ast-palette-label-wrap{color:#334155}#customize-control-astra-color-palettes .ast-field-settings-modal{margin-top:-35px}.astra-advanced-color-indicate .global-color{display:none}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color{color:#fff;display:block;opacity:1;position:absolute;left:50%;top:50%;display:block;text-align:center;transform:translate(-50%,-50%)}.color-button-wrap.has-global-palette-color .astra-advanced-color-indicate .global-color svg{width:10px;height:10px;transform:scale(1.5)}#customize-control-astra-color-palettes .ast-adv-toggle-icon{top:-5px}.ast-color-picker-custom-tooltip{position:absolute;top:-30px;bottom:0;left:0;right:0;width:100%;height:100%}.ast-color-picker-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.ast-color-picker-custom-tooltip-wrapper{position:relative}.ast-color-picker-wrap:hover+.ast-color-picker-custom-tooltip-wrapper .ast-color-picker-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-color-palette .components-popover.components-tooltip{position:relative!important;left:5px!important;top:-35px!important;transform:unset!important}.customize-control .components-tooltip{z-index:8!important}.ast-color-palette .components-popover .components-popover__content{bottom:calc(100% + 5px);animation:tooltips-vert .3s ease-out forwards;left:50%;transform:translate(-50%,-.5em)}.astra-control-field.astra-color-control{display:flex}.astra-control-field{position:relative;margin-top:10px;margin-bottom:10px}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.astra-control-field .customize-control-title{font-size:14px;font-weight:600;margin-bottom:0;display:flex;align-items:center;letter-spacing:.1px;line-height:18px}.customize-control-title{display:block;font-size:14px;line-height:1;font-weight:600;margin-bottom:4px}.astra-globe-dashicon{color:#fff;background:rgba(0,0,0,.4);border-radius:100%;border:.1px solid rgba(0,0,0,.1);opacity:.78}.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:28px;height:28px;border-radius:50%;margin:0;background:inherit}.component-color-indicator{width:25px;height:16px;display:inline-block}.astra-advanced-color-indicate.component-color-indicator{border:none}.astra-color-icon-indicate.components-button{height:auto;position:relative;transform:scale(1);transition:none;border-radius:50%;padding:0;background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper{box-sizing:border-box}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type=number].components-text-control__input{min-height:16px;line-height:16px;font-size:12px;width:50px;font-weight:400}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control{flex:1;margin-bottom:0}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label{margin-bottom:0;margin-right:.2em}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field{display:flex;align-items:center;font-size:8px;font-weight:600;font-style:normal;text-transform:uppercase}.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field{justify-content:flex-end}.astra-popover-color .components-popover__content .actions{display:flex;justify-content:center;margin-bottom:10px}.astra-popover-color .components-popover__content .actions .button{flex:1;margin-top:10px}.astra-background-picker-wrap .astra-popover-color .components-popover__content{min-width:300px;min-height:340px;max-height:60vh}.color-button-wrap{display:inline-block;position:absolute;right:0;top:0;transform:scale(1);transition:transform .1s ease;height:28px;width:28px}.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after{content:"";position:absolute;top:-1px;left:-1px;bottom:-1px;right:-1px;border-radius:50%;border:1px solid transparent}.components-button.astra-background-icon-indicate{width:50px;height:50px;border-radius:50%;position:relative;transform:scale(1);transition:transform .1s ease;border-radius:50%;padding:0;background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);border:1px solid #dadada;background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate{width:100%;height:100%;border-radius:4px;margin:0;display:block;position:absolute;border:0;top:0}.components-button.astra-background-icon-indicate>svg.dashicon{position:absolute;transform:translate(-50%,-50%);left:50%;top:50%;color:#fff;background:rgba(0,0,0,.6);border-radius:100%;width:16px;height:16px;border:1px solid rgba(0,0,0,.1)}.components-button.astra-background-icon-indicate>svg.dashicon path{transform:translate(1px,1px)}.components-button.astra-background-icon-indicate img.astra-background-image-preview{display:flex;object-fit:cover;min-width:100%;min-height:100%;position:absolute;top:0}.components-button.astra-background-icon-indicate:hover{box-shadow:none!important}.astra-control-field.astra-color-control{display:flex}.astra-control-field.astra-color-control .customize-control-title{flex-grow:2}.components-popover.astra-popover-color .components-popover__content{padding:15px 15px 0;box-sizing:initial;background:#fff;border:unset;border-radius:4px;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.customize-control-ast-color.customize-control>*{display:inline}.components-popover.astra-popover-color .components-popover__content .sketch-picker{padding:0 0 5px!important;box-shadow:none!important;border-radius:0!important}.components-popover.astra-popover-color .components-popover__content .attachment-media-view{margin-top:10px;margin-bottom:10px}.astra-swatches-wrap .astra-swatche-item-wrap:hover{transform:scale(1.1)!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item{background-image:linear-gradient(45deg,#ddd 25%,transparent 0),linear-gradient(-45deg,#ddd 25%,transparent 0),linear-gradient(45deg,transparent 75%,#ddd 0),linear-gradient(-45deg,transparent 75%,#ddd 0);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0;padding:0;display:flex;justify-content:center}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon{display:none}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active{box-shadow:0 0 0 8px inset!important}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon{display:block;color:#fff;background:rgba(0,0,0,.6);width:16px;height:16px;border:1px solid rgba(0,0,0,.1);border-radius:100%}.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path{transform:translate(1px,1px)}.components-button.astra-color-icon-indicate>.dashicon{position:absolute;transform:translate(-50%,-50%);left:50%;top:50%;color:#fff;background:rgb(85 93 101);border-radius:4px;width:24px;height:24px;font-size:24px;border:1px solid rgba(0,0,0,.1)}.astra-popover-color{margin:5px -5px 0;background-color:#fff;border-radius:4px;box-shadow:0 8px 16px -4px rgba(30,41,59,.16)}.astra-popover-color .components-h-stack.ast-color-palette{padding:14px 5px}.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette,.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette{padding:0 5px 14px}.astra-popover-color .components-h-stack .components-button{flex:inherit}.astra-popover-color .components-circular-option-picker__option:focus::after{width:auto;height:auto}.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{margin-right:0}.astra-popover-color .components-color-picker .react-colorful__alpha,.astra-popover-color .components-color-picker .react-colorful__hue{width:90%}.ast-field-settings-modal .astra-popover-color{margin-left:0;border:1px solid #dedede}.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs{padding:8px}.components-color-picker__saturation-black{border-radius:4px 4px 0 0}.components-color-picker__saturation-color{border-radius:3px}.components-color-picker__saturation-white{border-radius:3px}.astra-color-picker-wrap{position:absolute;z-index:2;top:30px;left:0;right:0;bottom:0;display:none}.astra-color-picker-wrap .astra-popover-color .components-color-picker,.astra-color-picker-wrap .astra-popover-color .react-colorful{width:100%}.astra-popover-color .components-custom-gradient-picker{z-index:1}.astra-popover-color .components-custom-gradient-picker__ui-line{z-index:-1}.astra-color-picker-wrap.picker-open{display:block}.ast-field-settings-modal .astra-color-picker-wrap{position:relative;top:10px}.ast-color-palette .components-circular-option-picker__option-wrapper{margin-right:6px;position:relative;height:25px;width:25px}.ast-color-btn-clear-wrap{position:absolute;top:1.5px;right:65px}.ast-color-btn-clear-wrap .astra-color-clear-button.components-button{padding:10px 3px;width:20px;height:20px}.ast-clear-btn-inside-picker.components-button,.ast-reset-btn-inside-picker.components-button,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 15px;padding:0 8px;border:1px solid #ccc;box-shadow:none}.ast-clear-btn-inside-picker.components-button:active,.ast-clear-btn-inside-picker.components-button:focus,.ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus,.astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover,.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:none!important;background:0 0!important}.ast-clear-btn-inside-picker{padding:0 8px}.ast-color-btn-reset-wrap{position:absolute;right:36px;top:6px}.ast-color-btn-reset-wrap .ast-reset-btn.components-button,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button{color:#006ba1;height:20px;width:20px;padding:4px;background:0 0;box-shadow:none;cursor:pointer}.astra-color-clear-button.components-button:focus:not(:disabled){outline:unset;border:none}.ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus,.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus,.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover{box-shadow:none;border:none;background:0 0}.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled),.astra-color-clear-button.components-button:focus:not(:disabled){box-shadow:0 0 #000;padding:1.5px;border:none}.ast-reset-btn.components-button.is-secondary:disabled span,.astra-color-clear-button.components-button.is-secondary:disabled{color:var(--ast-customizer-color-6)}.ast-field-settings-modal .color-button-wrap{right:16px}.ast-field-settings-modal .ast-color-btn-reset-wrap{right:59px;top:6px}.ast-field-settings-modal .ast-color-btn-clear-wrap{right:78px}.ast-field-settings-modal .customize-control-ast-color.customize-control,.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child{margin-top:25px}.astra-color-picker-wrap .components-color-picker__inputs-wrapper{min-width:unset}.customize-control .ast-gradient-color-picker input[type=number]{width:100%}.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker{align-items:center;flex-direction:inherit}.astra-color-picker-wrap .components-popover__content{width:max-content}.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker,.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful,.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker{width:216px}.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker{flex-direction:column;align-items:start}.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control{margin-bottom:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point{padding:0 16px 16px 16px;border:0}.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus{box-shadow:none;outline:0}.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type=number]{width:100%}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:25px;width:25px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:2.5px;top:0;width:20px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:0;top:0;mix-blend-mode:difference}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches{gap:4px;justify-content:center}.astra-popover-color .components-circular-option-picker__option-wrapper:hover{transform:scale(1.1)}.customize-control-ast-color+.customize-control-ast-color{margin-top:30px}@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{height:22px;width:22px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option{padding:6px 10px}.ast-color-palette .components-circular-option-picker__option.is-pressed+svg{width:20px;top:-2px}.ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:24px;height:24px}.astra-popover-color .ast-color-palette.components-circular-option-picker{width:auto;padding:16px 0 0 8px}.astra-typography-control .typography-button-wrap>button.components-button.astra-typography-preview-indicate{padding:0 2px}.astra-typography-control .typography-button-wrap>button.components-button{padding:0 4px}.ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:auto;height:auto}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:1px;top:-2px;width:18px}}@supports (-moz-appearance:none){@media (max-width:1845px){.ast-color-palette .components-circular-option-picker__option-wrapper{margin-right:5px}.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after{width:21px;height:21px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper{height:20px;width:20px}.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed+svg{left:3px;top:-2px;width:15px}}}.astra-color-icon-indicate.components-button:focus:not(:disabled){box-shadow:unset;outline:unset}.astra-color-icon-indicate.components-button:hover{transform:scale(1.05)}.ast-top-divider.customize-control-ast-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px;display:inline-flex;width:100%;min-height:22px}.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap,.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title+.ast-responsive-toggle-control-wrapper,.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap,.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title+.ast-togglecontrol-wrapper,.customize-control-ast-color-group .ast-divider-title+.ast-control-wrap{margin-top:25px}.ast-top-divider.customize-control-ast-color-group .ast-control-wrap{display:inline-flex;width:100%}.ast-top-divider .ast-divider-title+.ast-control-wrap .ast-color-btn-reset-wrap{top:67px}.ast-top-divider .ast-divider-title+.ast-control-wrap .color-button-wrap{top:61px}.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title+.ast-control-wrap .ast-responsive-btns{top:70px}.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{width:100%}:root{--ast-customizer-color-1:#0284c7;--ast-customizer-color-2:#0ea5e9;--ast-customizer-color-3:#2271b1;--ast-customizer-color-4:#1e293b;--ast-customizer-color-5:#334155;--ast-customizer-color-6:#9CA3AF;--ast-customizer-color-7:#D1D5DB;--ast-customizer-color-8:#4B5563;--ast-customizer-color-9:#fff;--ast-customizer-color-10:#fff;--ast-customizer-color-11:#F5F5F5;--ast-customizer-color-12:#1e293b;--ast-customizer-color-13:#F3F4F6;--ast-customizer-color-14:#cc1818}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{color:var(--ast-customizer-color-5)}.customize-control .ast-spacing-responsive-btns li svg{max-width:13px}.customize-control-ast-customizer-link .customizer-link{font-style:italic;text-decoration:none}.customize-control-ast-customizer-link:empty{display:none}.accordion-section-content::-webkit-scrollbar,.wp-full-overlay-sidebar-content::-webkit-scrollbar{width:6px;background-color:#f1f1f1}.accordion-section-content::-webkit-scrollbar-thumb,.wp-full-overlay-sidebar-content::-webkit-scrollbar-thumb{border-radius:10px;background-color:#d8d8d8}.accordion-section-content::-webkit-scrollbar-track,.wp-full-overlay-sidebar-content::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.3);width:6px}.wp-full-overlay-sidebar:after{display:none}#customize-theme-controls .control-section-ast-section-separator{margin-top:15px;border-top:1px solid #ddd;display:block!important}.customize-control:not(.customize-control-nav_menu_item){position:relative;margin-bottom:0;margin-top:16px}.customize-control-ast-background,.customize-control-ast-responsive-background,.customize-control.customize-control-ast-color,.customize-control.customize-control-ast-color-group{display:flex;align-items:center;min-height:28px;flex-wrap:wrap}.customize-control-ast-responsive-background label{white-space:nowrap}.customize-control .media-position-setting label.components-text{text-transform:capitalize;font-size:12px;font-weight:400}.media-position-setting .astra-popover-tabs .components-tab-panel__tabs{padding-left:0;padding-right:0}.customize-control[ID*="-builder-layout-ast-context-tabs"]{margin-top:0}[ID*="-builder-layout-ast-context-tabs"]{margin-top:10px}.customize-section-title{margin:-12px -24px 0 -24px}#customize-controls .customize-info,#customize-controls .customize-info.section-meta,.customize-section-description-container{margin-bottom:0}#customize-controls #sub-accordion-panel-nav_menus .customize-info{margin-bottom:15px}#customize-control-astra-settings-header-transparent-link-heading{margin-top:15px}.components-base-control .components-base-control__field{margin-bottom:0}.components-base-control .components-base-control__field .components-input-control__backdrop{border-color:#d1d5db!important}.customize-control .customize-inside-control-row{padding-top:0;padding-bottom:0}.customize-control-title{display:inline-block;margin-bottom:16px;vertical-align:middle}.customize-control-ast-background .customize-control-title,.customize-control-ast-color .customize-control-title,.customize-control-ast-responsive-background .customize-control-title,.customize-control-ast-responsive-color .customize-control-title{display:contents}.customize-control .ast-control-tooltip{position:absolute;top:0;right:0;color:var(--ast-customizer-color-6);cursor:help}.customize-control.customize-control-ast-toggle-control .ast-control-tooltip{position:absolute;top:50%;right:40px;transform:translateY(-50%);z-index:1}#customize-control-astra-settings-learndash-distraction-free-learning .ast-control-tooltip{padding-top:32px}.customize-control.customize-control-ast-toggle-control.ast-top-dotted-divider .ast-control-tooltip{position:absolute;top:55%;right:40px;transform:translateY(0)}.customize-control.customize-control-ast-toggle-control.ast-top-divider .ast-control-tooltip{top:calc(50% + 15px)}.customize-control.customize-control-ast-toggle-control.ast-bottom-divider .ast-control-tooltip{top:calc(50% - 11px)}.customize-control.customize-control-ast-toggle-control .ast-description-enabled .components-form-toggle{margin-left:25px}.customize-control.customize-control-ast-divider .ast-control-tooltip{position:absolute;top:auto;bottom:3px;right:0}.ast-fields-wrap .customize-control .ast-control-tooltip{right:15px;top:6px}.customize-control .ast-sortable-subfields-wrap .ast-control-tooltip{position:absolute!important;top:40%;right:0;transform:translateY(-50%);z-index:1}.customize-control .ast-sortable-subfields-wrap .customize-control-ast-toggle .ast-control-tooltip{right:30px;top:50%}.ast-top-dotted-divider .dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{top:24px}.customize-control .select2-search input[type=text].select2-search__field{min-height:17px}input[type=text].select2-search__field{line-height:1;border-radius:0}.ast-customizer-notice{margin:0 -12px;padding:12px}#customize-theme-controls .control-section.open{height:100%;padding:12px 24px 25px 24px}@media not all and (min-resolution:0.001dpcm){@supports (-webkit-appearance:none){#customize-control-astra-settings-ast-header-responsive-logo-width .wrapper{display:inline-block;width:100%}.dashicons-desktop:before,.dashicons-smartphone:before,.dashicons-tablet:before{color:#000;opacity:.75}.ast-reset-btn.components-button svg{padding:0;height:13px}}}@-moz-document url-prefix(){.control-section.open .customize-control:last-child{margin-bottom:20px}}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.control-section.open .customize-control:last-child{padding-bottom:20px}#customize-control-astra-settings-blog-archive-image-height .customize-control-title,#customize-control-astra-settings-blog-archive-image-width .customize-control-title,#customize-control-astra-settings-blog-single-post-image-height .customize-control-title,#customize-control-astra-settings-blog-single-post-image-width .customize-control-title{margin-left:0;margin-right:20px}}.wp-customizer li:not(.customize-control-sidebar_block_editor) h1,.wp-customizer li:not(.customize-control-sidebar_block_editor) h2,.wp-customizer li:not(.customize-control-sidebar_block_editor) h3,.wp-customizer li:not(.customize-control-sidebar_block_editor) h4,.wp-customizer li:not(.customize-control-sidebar_block_editor) h5,.wp-customizer li:not(.customize-control-sidebar_block_editor) h6{font-weight:600}.block-list-appender{margin-bottom:20px}.block-editor-block-inspector .block-editor-block-card{margin-top:12px}.components-circular-option-picker__option-wrapper::before{background:unset}.block-editor-panel-color-gradient-settings .components-circular-option-picker__option-wrapper{position:relative}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-tablet #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-width{display:none}.preview-mobile #customize-control-astra-settings-woo-desktop-cart-flyout-direction{display:none}#customize-controls .control-section.control-section-ast_section .accordion-section-title,#customize-outer-theme-controls .accordion-section-title,#customize-theme-controls .accordion-section-title{border-bottom:1px solid var(--ast-customizer-color-7)}.wp-core-ui #customize-controls .control-section .accordion-section-title:focus,.wp-core-ui #customize-controls .control-section .accordion-section-title:hover,.wp-core-ui #customize-controls .control-section:hover>.accordion-section-title,.wp-core-ui .customize-panel-back:focus,.wp-core-ui .customize-panel-back:hover,.wp-core-ui .customize-section-back:focus,.wp-core-ui .customize-section-back:hover{border-left-color:var(--ast-customizer-color-1)}.ast-section-toggle{display:grid;grid-template-columns:70% 20% 10%;align-items:center;padding:0 0 0 12px;height:100%;align-items:center;align-content:center}.ast-section-toggle label{font-size:14px;line-height:1;font-weight:600;height:100%;display:inline-flex;align-items:center}.ast-section-toggle>label{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;height:auto;line-height:50px}.ast-section-toggle:not(.active)>label{cursor:default}.customize-control.customize-control-ast-section-toggle{border:1px dashed var(--ast-customizer-color-7);background:var(--ast-customizer-color-11);cursor:pointer;box-shadow:none!important;line-height:42px;font-size:14px;display:inline-grid;align-items:center;height:auto;color:var(--ast-customizer-color-5);position:relative;white-space:nowrap;border-radius:4px;transition:all .2s;padding-top:0;padding-bottom:0;margin-bottom:9px}.customize-control.customize-control-ast-section-toggle:hover{background:var(--ast-customizer-color-9);border-style:solid}.ast-section-toggle-icon{color:var(--wp-admin-theme-color);cursor:pointer;line-height:20px;height:100%;display:inline-flex;align-items:center}.ast-section-toggle-icon span{font-size:16px;line-height:20px;width:16px;height:16px}.customize-control-ast-section-toggle{padding-top:25px;padding-bottom:16px}li[ID*=accordion-section-ast-dynamic-archive-].control-section-ast_section,li[ID*=accordion-section-ast-dynamic-single-].control-section-ast_section{display:none!important}.customize-control-ast-description .ast-description{font-style:italic;color:#9ca3af;font-size:11px;line-height:16px;font-weight:400;text-wrap:wrap;display:inline-block}.customize-control-ast-description a.button{margin-top:10px;font-style:normal}.customize-control-ast-description p{margin:0;cursor:initial;font-size:11px;line-height:16px;font-weight:400}.customize-control-ast-divider hr{margin-top:0;margin-bottom:0;border-bottom:none}.customize-control-ast-divider .customize-control-title{font-size:15px;margin:1em 0 .2em}.customize-control-ast-divider .customize-control-suffix{position:absolute;right:0;bottom:0;font-weight:600;color:var(--ast-customizer-color-1);display:inline-block;font-size:11px;text-transform:uppercase}.customize-control-ast-divider .customizer-text{margin-top:-10px;display:block}.ast-field-settings-modal .customize-control-ast-divider{background-color:#f5f5f5;display:block;padding:6px 14px;margin:0;border-width:1px 0;border-style:solid;border-color:#ddd;line-height:1;margin-top:15px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customizer-text{margin-top:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-divider .customize-control-title{font-weight:500;letter-spacing:1px;font-size:11px;margin:0;text-transform:uppercase}.ast-bottom-divider{border-bottom:1px solid var(--ast-customizer-color-7);padding-bottom:25px}.ast-top-divider{border-top:1px solid var(--ast-customizer-color-7);padding-top:25px}.ast-bottom-divider>label.ast-divider-title,.ast-top-divider>label.ast-divider-title,.customize-control-ast-color-group>.ast-divider-title{display:block;width:100%;font-size:15px;font-weight:600}.ast-top-divider .ast-control-wrap .ast-color-btn-reset-wrap{top:25px}.ast-top-divider .ast-control-wrap .astra-color-picker-wrap{top:55px;background-color:transparent}.ast-top-divider .ast-divider-title+.ast-control-wrap .astra-color-picker-wrap{top:100px;background-color:transparent}.ast-top-divider .ast-control-wrap .color-button-wrap{top:20.5px}.ast-top-divider.customize-control-ast-select .ast-divider-title{margin-bottom:25px}.customize-control.ast-bottom-spacing{margin-bottom:16px}.customize-control.ast-top-spacing{margin-top:16px}#customize-control-astra-settings-ast-header-retina-logo,#customize-control-astra-settings-checkout-back-to-cart-button-text,#customize-control-astra-settings-edd-archive-variable-button-text,#customize-control-astra-settings-header-account-create-menu-link,#customize-control-astra-settings-header-account-logged-out-text,#customize-control-astra-settings-product-sale-percent-value,#customize-control-astra-settings-shop-load-more-text,#customize-control-astra-settings-single-product-recently-viewed-text,#customize-control-astra-settings-single-product-shipping-text,#customize-control-astra-settings-sticky-header-retina-logo,#customize-control-astra-settings-woo-cart-button-text,.customize-control.ast-top-dotted-divider{margin-top:24px;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)},#customize-control-blogdescription,#customize-control-blogname{margin-top:16px}#customize-control-astra-settings-product-sale-percent-value .ast-control-tooltip{top:24px}.customize-control.ast-top-dotted-divider .ast-adv-toggle-icon{top:25px}#customize-control-astra-settings-header-account-logged-in-text,.customize-control.ast-bottom-dotted-divider{margin-bottom:8px;padding-bottom:24px;border-bottom:1px dashed var(--ast-customizer-color-7)}.customize-control.ast-bottom-dotted-divider .ast-adv-toggle-icon{bottom:25px}.customize-control.ast-bottom-section-divider,.customize-control.ast-top-section-divider{position:relative}.customize-control.ast-top-section-divider{padding-top:32px;margin-top:32px}.customize-control.ast-bottom-section-divider{padding-bottom:32px;margin-bottom:16px}.customize-control.ast-sub-top-dotted-divider{padding-top:20px}.customize-control.ast-sub-bottom-dotted-divider{padding-bottom:20px;margin-bottom:10px}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-top-section-divider::before{content:'';position:absolute;left:-100%;background-color:var(--ast-customizer-color-7);width:500%;height:1px}.customize-control.ast-sub-top-dotted-divider::before,.customize-control.ast-top-section-divider::before{top:0}.customize-control.ast-bottom-section-divider::after,.customize-control.ast-sub-bottom-dotted-divider::after{bottom:0}.customize-control.ast-sub-bottom-dotted-divider::after,.customize-control.ast-sub-top-dotted-divider::before{content:'';border-top:1px dashed var(--ast-customizer-color-7);width:calc(100% - 30px);height:1px;position:absolute;left:15px}[ID*="-create-menu-link"] .ahfb-builder-item-start{margin-bottom:0}#customize-control-astra-settings-footer-create-menu-link,#customize-control-astra-settings-footer-language-switcher-options,#customize-control-astra-settings-header-above-stick,#customize-control-astra-settings-header-language-switcher-options,#customize-control-astra-settings-header-mobile-menu-create-menu-link,#customize-control-astra-settings-site-icon-link,#customize-control-custom_logo,.customize-control.ast-section-spacing,[ID*=customize-control-astra-settings-footer-button][ID*="-text"],[ID*=customize-control-astra-settings-header-button][ID*="-text"],[ID*=sub-accordion-section-section-hb-menu-] [ID*="-create-menu-link"]{margin-top:32px}#customize-control-body-font-variant,#customize-control-headings-font-variant{margin-top:0}#sub-accordion-section-section-sidebars>.customize-control-ast-heading{margin-top:16px}#sub-accordion-section-section-sidebars>.customize-control-ast-heading~.customize-control-ast-heading{margin-top:32px}.ast-fields-wrap .customize-control.ast-bottom-section-divider::after,.ast-fields-wrap .customize-control.ast-top-section-divider::before{width:100%;left:0}.ast-typo-presets{width:100%;display:flex;align-items:center;flex-wrap:wrap;row-gap:8px;column-gap:8px;justify-content:space-between}.ast-typo-presets .ast-typo-preset-item{padding:0;border-radius:3px;cursor:pointer;border:1px solid var(--ast-customizer-color-7);height:64px;text-align:center;width:47.5%;position:relative}.ast-typo-presets .ast-typo-preset-item:hover{border:1px solid var(--ast-customizer-color-1)}.ast-typo-presets .ast-typo-preset-item svg{transform:scale(1);width:100%;height:100%;padding:0;margin:0}.ast-typo-presets .ast-typo-preset-item.active{border:1px solid var(--ast-customizer-color-1);background:var(--ast-customizer-color-9)}.customize-control-ast-typography-presets .ast-reset-btn-preset-wrap{top:-5px}.ast-typo-preset-item .components-tooltip{margin-top:-8px}.ast-typo-preset-item .components-tooltip::before{border-bottom:none!important;border-left-color:transparent!important;border-right-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-left:-10px;bottom:-8px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #ccc}.ast-typo-preset-item .components-tooltip::after{border-bottom:none!important;border-left-color:transparent!important;border-right-color:transparent!important;border-top-style:solid!important;border-top-color:#1e1e1e!important;margin-left:-10px;bottom:-6px;content:"";position:absolute;height:0;width:0;line-height:0;border:8px solid #fff}.ast-font-styling{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px dashed #d4d4d4}.ast-font-extras-wrapper,.ast-font-spacing-wrapper{display:flex;align-items:center;gap:8px}.ast-font-extras-wrapper .ast-font-extras-input,.ast-font-spacing-wrapper .ast-font-spacing-input{position:relative;display:flex;align-items:center;background:#fff;max-width:72px;width:100%;border:1px solid #d1d5db;border-radius:3px;padding:0 3px}.ast-font-extras-wrapper .ast-font-extras-input input,.ast-font-spacing-wrapper .ast-font-spacing-input input{padding:0;border:none;min-height:32px;border-radius:3px;border:none!important;box-shadow:none!important;text-align:center;padding:0 5px}.ast-font-extras-wrapper .ast-font-extras-input input[type=number],.ast-font-spacing-wrapper .ast-font-spacing-input input[type=number]{-moz-appearance:textfield}.ast-font-extras-input:hover,.ast-font-spacing-input:hover{border-color:var(--ast-customizer-color-2)}.ast-font-extras-wrapper .ast-font-extras-input svg,.ast-font-spacing-wrapper .ast-font-spacing-input svg{width:38px;height:28px}.ast-font-extras-input .plus-minus-control .dashicons,.ast-font-spacing-input .plus-minus-control .dashicons{font-size:10px;color:#9ca3af;width:12px;height:10px;display:inherit;cursor:pointer}div .ast-field-settings-modal .customize-control-ast-font-extras{margin-top:15px}.ast-font-extras-input input[type=number]::-webkit-inner-spin-button,.ast-font-extras-input input[type=number]::-webkit-outer-spin-button,.ast-font-spacing-input input[type=number]::-webkit-inner-spin-button,.ast-font-spacing-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ast-font-unit-wrapper{display:flex;gap:6px;font-size:11px;font-weight:500;color:#9ca3af}.ast-font-unit-wrapper span{cursor:pointer}.ast-font-unit-wrapper span:hover{color:#0284c7}.ast-font-unit-wrapper .active{color:#0284c7;cursor:default}.ast-font-styling-second{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px}.ast-font-decoration-wrapper,.ast-font-transform-wrapper{display:flex;align-items:center;flex:1}.ast-font-decoration-wrapper div,.ast-font-transform-wrapper div{padding:8px 0;width:33%;text-align:center;font-weight:600;font-size:12px;line-height:16px;color:#334155}.ast-font-decoration-wrapper div.active,.ast-font-transform-wrapper div.active{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type{border:1px solid #d1d5db}.ast-font-item-type:hover{background-color:#0284c7;color:#fff;cursor:pointer}.ast-font-item-type:first-child{border:1px solid #d1d5db;border-right:none;border-radius:3px 0 0 3px}.ast-font-item-type:last-child{border:1px solid #d1d5db;border-left:none;border-radius:0 3px 3px 0}.ast-font-item-type.ast-font-deco-underline{text-decoration:underline}.ast-font-item-type.ast-font-deco-linethrough{text-decoration:line-through}.ast-typopreset-custom-tooltip{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.ast-typopreset-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:10em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:1000;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.ast-typopreset-custom-tooltip[data-title]:hover::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-customizer-font-varient-wrap{margin-top:12px}.ast-customizer-font-varient-wrap .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding:2px 5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:12px;padding:2px 2px 2px 2px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px;padding-left:5px}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__label{line-height:normal}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove{color:#4b5563;padding-right:0}.ast-customizer-font-varient-wrap .ast-multi-select__multi-value .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-font-varient-wrap .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-font-varient-wrap .ast-multi-select__control{position:relative;max-height:32px;display:inline-flex;width:100%;align-content:center}.ast-customizer-font-varient-wrap .ast-multi-select__control:after{content:"\f11c";font-family:dashicons;font-size:16px;margin-right:7px;pointer-events:none;z-index:1}.ast-customizer-font-varient-wrap .ast-multi-select__control:before{content:'';position:absolute;top:3px;right:3px;width:50px;height:25px;background:#f7f7f7;background:linear-gradient(90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}#customize-control-astra-settings-ast-body-font-settings .ast-fields-wrap,#customize-control-astra-settings-ast-headings-font-settings .ast-fields-wrap{overflow:visible}.customize-control-ast-font select option[value=normal],.customize-control-ast-font select[data-value=normal] option[value="400"]{display:none}.customize-control-ast-font select[data-value=normal] option[value=normal]{display:block}span.customize-control-title.ast-group-section-title{margin-bottom:4px;font-weight:600}.ast-top-divider.customize-control-ast-group-title .ast-reset-btn-preset-wrap{top:24px}.customize-control-ast-group-title .ast-responsive-btns{margin-left:5px;position:relative;top:3px}.ast-field-settings-wrap .customize-control-ast-heading{margin:0 0 15px 0}.customize-control-ast-heading{margin-top:25px;margin-bottom:0}.customize-control-ast-heading .ast-heading-wrapper{margin:0 -24px}.customize-control-ast-heading .customize-control-title{display:block;padding:15px 24px;margin:0;border-width:1px 0;border-style:solid;border-color:var(--ast-customizer-color-7);background-color:var(--ast-customizer-color-9);color:var(--ast-customizer-color-4);font-size:12px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase!important}.customize-control-ast-heading .customize-control-caption{top:50%;transform:translateY(-50%);position:absolute;right:0;font-size:11px;font-weight:500;letter-spacing:1px}.customize-control-ast-heading .customize-control-description{margin-top:10px}.ast-heading-wrapper label{cursor:default}.customize-control>label{cursor:default}.customize-control .ast-border-input-item-link,.customize-control .ast-spacing-input-item-link{cursor:pointer}.customize-control.customize-control-ast-slider label{cursor:pointer}.customize-control.customize-control-ast-slider label .wrapper input[type=range]{cursor:pointer}.customize-control .ast-control-reduce-top-space{margin-top:-15px}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper{position:relative}.customize-control-ast-input-with-dropdown .components-dropdown-menu{position:absolute;right:0;top:0}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle{width:30px;height:30px;border-radius:0;background-color:var(--wp-admin-theme-color);color:#fff}.customize-control-ast-input-with-dropdown .components-dropdown-menu .components-dropdown-menu__toggle:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:#fff}.customize-control-ast-input-with-dropdown .components-button:focus:not(:disabled){box-shadow:none;outline:0}.customize-control-ast-input-with-dropdown .components-popover__content{min-width:170px}.customize-control-ast-input-with-dropdown .components-popover__content .components-button:not(:disabled):not([aria-disabled=true]):not(.is-secondary):not(.is-primary):not(.is-tertiary):not(.is-link):not(.components-color-picker__saturation-pointer):hover{color:var(--wp-admin-theme-color)}.customize-control-ast-input-with-dropdown .ast-input-with-dropdown-wrapper input.components-text-control__input{padding-right:40px;max-height:30px;min-height:30px;border-color:#ddd}.ast-link-open-in-new-tab-wrapper{margin:24px 0 0;border-top:1px dashed var(--ast-customizer-color-7)}.ast-link-label-wrapper{margin:24px 0;padding-top:24px;border-top:1px dashed var(--ast-customizer-color-7)}.customize-control-ast-multi-selector .input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap{display:flex;justify-content:center;flex:1 1 0;background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-7);padding:.6em 0;cursor:pointer;--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-6);margin-left:-1px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active{--ast-customizer-multiselect-icon-color:var(--ast-customizer-color-1);border-color:var(--ast-customizer-color-3);z-index:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap svg{fill:var(--ast-customizer-color-10)}.ast-multiselector-inner-wrap .ahfb-icon-set{line-height:1}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:last-child{border-radius:0 3px 3px 0}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap:first-child{border-radius:3px 0 0 3px}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap span[label]{color:var(--ast-customizer-color-6)}.customize-control-ast-multi-selector .ast-multiselector-inner-wrap.active span[label]{color:var(--ast-customizer-multiselect-icon-color)}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(50% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap:nth-child(2n){margin-right:0}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(33.33% - 10px);margin:5px}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap:nth-child(3n){margin-right:0}[CLASS*=stack-after-].ast-alignment-wrapper{margin-left:-5px;margin-right:-5px;display:flex;flex-wrap:wrap}[CLASS*=stack-after-].ast-alignment-wrapper .ast-multiselector-inner-wrap{margin:5px;align-items:center;padding:5px;height:30px;border-radius:0}.ast-alignment-wrapper.stack-after-2 .ast-multiselector-inner-wrap{flex:0 0 calc(45% - 10px)}.ast-alignment-wrapper.stack-after-3 .ast-multiselector-inner-wrap{flex:0 0 calc(28% - 10px)}li[ID*="-image-custom-scale-height"],li[ID*="-image-custom-scale-width"]{display:inline-flex;justify-content:center;align-content:center;align-items:center}li[ID*="-image-custom-scale-height"]{float:none;padding:0!important;width:calc(50% + 12px)}li[ID*="-image-custom-scale-width"]{width:calc(50% - 12px)}li[ID*="-image-custom-scale-height"]:before{content:':';padding:0 10px;line-height:30px}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden{float:unset;width:unset}li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before{content:unset}.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}` .customize-control-ast-number input[type=number]{-moz-appearance:textfield;text-align:center}.customize-control-ast-number input[type=number]::-ms-clear,.customize-control-ast-number input[type=number]::-ms-reveal,.customize-control-ast-number input[type=number]::-webkit-inner-spin-button,.customize-control-ast-number input[type=number]::-webkit-outer-spin-button{display:none}.customize-control-ast-radio-icon .ast-control-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}.customize-control-ast-radio-icon .customize-control-title{flex:1;padding-right:.5em}.customize-control-ast-radio-icon .customize-control-title{margin-top:8px;margin-bottom:8px}.customize-control-ast-radio-icon .ast-options{background-color:transparent;margin:0;line-height:0}.customize-control-ast-radio-icon .ast-options li{display:inline-block;position:relative;background-color:transparent;width:42px;height:28px;line-height:28px;margin-bottom:0;border:1px solid var(--ast-customizer-color-7);color:var(--ast-customizer-color-8);cursor:pointer}.customize-control-ast-radio-icon .ast-options li .dashicon{text-align:center;line-height:28px;width:100%;font-size:16px}.customize-control-ast-radio-icon .ast-options li{margin-left:-1px}.customize-control-ast-radio-icon .ast-options li:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px;margin-left:0}.customize-control-ast-radio-icon .ast-options li:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.customize-control-ast-radio-icon .ast-options li.active{background-color:var(--ast-customizer-color-1);color:var(--ast-customizer-color-10);border-color:var(--ast-customizer-color-1);margin-right:1px}.customize-control-ast-row-layout .ast-responsive-btns{position:relative;top:1px}.customize-control-ast-radio-image label{position:relative;display:inline-block;margin-right:12px}.ast-divide-four label{margin-right:0}.customize-control-ast-radio-image input{display:none}.customize-control-ast-radio-image input:checked+label svg{background:var(--ast-customizer-color-1);border-radius:0;box-shadow:0 0 3px 0 rgba(0,133,186,.67)}.customize-control-ast-radio-image input:checked+label svg path{color:var(--ast-customizer-color-10)}.components-button-group.ahfb-radio-container-control .active-radio.ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout input:checked+label svg{background-color:var(--ast-customizer-color-1);border-color:transparent;box-shadow:0 12px 20px -8px rgba(30,41,59,.16);border-bottom-color:#f0f0f1}.ast-divide-four input:checked+label svg{box-shadow:none;color:var(--ast-customizer-color-3)}.customize-control-ast-radio-image input+label .image-clickable{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.image{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:5px;grid-row-gap:5px}.components-button-group.ahfb-radio-container-control,.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.modern-layout{display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:23px;grid-row-gap:23px}.customize-control-ast-radio-image:not(#customize-control-astra-settings-header-trigger-icon)>.ast-divide-four{grid-template-columns:repeat(4,1fr);grid-column-gap:14px;grid-row-gap:10px}.customize-control-ast-radio-image .ast-radio-img-svg svg{width:75px;height:50px}.components-button-group.ahfb-radio-container-control .ast-radio-img-svg svg,.customize-control-ast-radio-image .modern-layout .ast-radio-img-svg svg{margin:0;width:100%;height:auto;background-color:rgba(221,224,226,.5);border:1px solid var(--ast-customizer-color-7);border-radius:4px;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.ast-divide-four .ast-radio-img-svg svg{color:var(--ast-customizer-color-7);width:100%;height:93%}.ast-divide-four .ast-radio-img-svg svg path{color:var(--ast-customizer-color-8)}.image-clickable[data-title]::after{text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.image-clickable[data-title]::after{content:attr(data-title);min-width:3em;max-width:21em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgba(0,0,0,.35);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:9;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards}.image-clickable[data-title]:hover::after{display:block}.image-clickable[data-title='']::after{display:none!important}@keyframes tooltips-vert{to{opacity:.9;transform:translate(-50%,0)}}@keyframes tooltips-horz{to{opacity:.9;transform:translate(0,-50%)}}.ast-upgrade-trigger:hover .image-clickable[data-title]::after{display:block}.customize-control-ast-responsive-background{position:relative;margin-bottom:-5px}.customize-control-ast-responsive-background .background-container h4{font-size:14px;font-weight:600;color:#555d66}.customize-control-ast-responsive-background .background-attachment h4,.customize-control-ast-responsive-background .background-color h4,.customize-control-ast-responsive-background .background-position h4,.customize-control-ast-responsive-background .background-repeat h4,.customize-control-ast-responsive-background .background-size h4{margin-bottom:5px;margin-top:10px}.customize-control-ast-responsive-background .background-color{margin-bottom:12px}.customize-control-ast-responsive-background .background-repeat{margin:15px 0 15px 0}.customize-control-ast-responsive-background .background-attachment .buttonset,.customize-control-ast-responsive-background .background-size .buttonset{display:flex;flex-wrap:wrap}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-label{background:#fff;border:1px solid rgba(0,0,0,.1);color:#555;padding:2px 4px;margin-right:15px;text-align:center;flex-grow:1;transition:background-color 140ms linear}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-label:last-child,.customize-control-ast-responsive-background .background-size .buttonset .switch-label:last-child{margin-right:0}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input:checked+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input:checked+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .background-attachment .buttonset .switch-input[checked=checked]+.switch-label,.customize-control-ast-responsive-background .background-size .buttonset .switch-input[checked=checked]+.switch-label{background-color:#f5f5f5;color:#565e67}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-link{width:100%;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;margin-top:10px;text-decoration:none}.customize-control-ast-responsive-background .ast-bg-img-remove.components-button.is-destructive:hover:not(:disabled){color:#a02222;box-shadow:unset;border-color:#a02222}.customize-control-ast-responsive-background .more-settings{margin-top:12px;display:flex;justify-content:flex-end;padding:5px 0 5px 0;cursor:pointer;float:none;text-decoration:none}.customize-control-ast-responsive-background .more-settings:focus{outline:0;box-shadow:none}.customize-control-ast-responsive-background .arrow-icon{margin-left:5px}.customize-control-ast-responsive-background .background-container{display:none}.customize-control-ast-responsive-background .background-container.active{display:block}.customize-control-ast-responsive-background .wp-picker-container{display:block}.customize-control-ast-responsive-background .wp-picker-container .wp-picker-clear{margin-left:4px;min-height:30px}.customize-control-ast-responsive-background .customize-control-content .astra-color-picker-wrap{width:100%}.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-background .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.customize-control-ast-responsive-background .ast-color-btn-clear-wrap{right:84px}.components-color-picker__inputs-toggle-wrapper .components-color-picker__inputs-toggle{vertical-align:middle;height:32px}.astra-popover-tabs .components-button.upload-button.button-add-media{width:100%;position:relative;text-align:center;color:#555d66;border:1px dashed #b4b9be;box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6}.astra-popover-tabs .components-button.upload-button.button-add-media:hover{color:#555d66;box-sizing:border-box;box-shadow:unset;border-color:#0185ba}.astra-popover-tabs [ID*="-gradient-view"]{padding:0 15px 15px 15px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear{flex:unset;box-shadow:unset;width:auto;padding:0 5px}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:hover{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active{box-shadow:unset}.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:focus{box-shadow:unset}.astra-popover-tabs #tab-panel-0-image-view>div{text-align:center}.astra-popover-tabs #tab-panel-0-image-view>div img{width:200px;margin-bottom:18px}.astra-popover-tabs #tab-panel-0-image-view>div .media-position-setting{text-align:left}.media-position-setting>.components-base-control{margin-bottom:15px}.media-position-setting [CLASS*="-Item-LabelWrapper"]{margin-bottom:5px}.astra-popover-color .components-circular-option-picker{position:relative;margin-top:0}.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{margin-top:10px;justify-content:flex-start}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.astra-popover-color .components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper{width:50px}}.astra-popover-color [ID*="-color-view"] .components-circular-option-picker{width:auto}.astra-popover-color .ast-color-palette{width:auto;padding:16px 0 0 14px}.astra-popover-color .ast-color-palette .components-circular-option-picker__option{width:100%;height:100%;border-radius:100%}.astra-popover-color .ast-color-palette .components-button.is-pressed:focus:not(:disabled){box-shadow:none;border:none}.astra-popover-color .components-custom-gradient-picker{margin-top:0}.astra-popover-color .components-custom-gradient-picker__gradient-bar{box-sizing:border-box;opacity:1}.astra-popover-color .components-custom-gradient-picker__type-picker .components-base-control__label{display:block}.components-custom-gradient-picker .components-base-control__label{padding-top:10px;font-size:12px;display:block;letter-spacing:.1px;line-height:18px}[ID*="-gradient-view"] .components-toolbar.components-custom-gradient-picker__toolbar .components-button.has-icon{border:none}.media-position-setting.hide-settings{display:none}.media-position-setting .astra-popover-tabs [ID*="-gradient-view"]{padding:0 0 15px 0}.ast-field-settings-modal .customize-control-content .color-button-wrap{right:30px;top:0}.ast-field-settings-modal .ast-responsive-btns{position:absolute;right:14px;top:4px}.ast-field-settings-modal .customize-control-content .astra-color-picker-wrap{margin-left:0;margin-top:0}.ast-field-settings-modal .customize-control-content .ast-color-btn-reset-wrap{right:65px;top:7px}.ast-field-settings-modal .customize-control-content .ast-color-btn-clear-wrap{right:91px}.ast-field-settings-modal .customize-control-ast-responsive-background.customize-control:first-child{margin-top:28px}.customize-control-ast-responsive-background .ast-color-btn-reset-wrap,.customize-control-ast-responsive-color .ast-color-btn-reset-wrap{display:inline-block;line-height:1;top:4.5px}.customize-control-ast-responsive-background .ast-responsive-btns,.customize-control-ast-responsive-color .ast-responsive-btns{position:relative;right:-5px;top:2px}.ast-field-settings-modal .customize-control-ast-responsive-background .ast-responsive-btns,.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{right:8px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha{display:none}.customize-control-ast-responsive-color .customize-control-content{display:block;margin-top:5px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-black{border-radius:4px 4px 0 0}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha .astra-color-picker-wrap .components-color-picker__saturation-white{border-radius:3px}.customize-control-ast-responsive-color .customize-control-content .ast-color-picker-alpha.active{display:block}.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-color,.customize-control-ast-responsive-color .customize-control-content .components-color-picker__saturation-white{border-radius:unset}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{right:30px;top:-3px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .astra-color-picker-wrap{margin-left:0;margin-bottom:10px;margin-top:10px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .customize-control-title{display:block;margin-bottom:0}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-responsive-btns{right:7px;top:1px}.ast-field-settings-modal .customize-control-ast-responsive-color.customize-control:first-child{margin-top:28px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-clear-btn-inside-picker.components-button{margin:5px 20px 20px 10px}.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:3.5px}@supports (-moz-appearance:none){.ast-field-settings-modal .customize-control-ast-responsive-color .ast-color-btn-reset-wrap{top:5.5px;right:65px}.ast-field-settings-modal .customize-control-ast-responsive-color .customize-control-content .color-button-wrap{right:27px;top:-2px}}.customize-control-ast-responsive-slider .wrapper,.customize-control-ast-slider .wrapper{position:relative;display:flex}.customize-control-ast-responsive-slider .input-field-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.customize-control-ast-responsive-slider input[type=range]{position:inherit}.customize-control-ast-responsive-slider select,.customize-control.customize-control-select select{color:#32373c}.customize-control-ast-responsive-slider .input-field-wrapper{display:none}.customize-control-ast-responsive-slider .input-field-wrapper.active{display:flex}.customize-control-ast-responsive-slider .components-base-control{width:100%}.customize-control-ast-responsive-slider .slider-control-label,.customize-control-ast-slider .customize-control-title{cursor:default;margin-top:3px}.ast-responsive-slider-btns{position:absolute;right:0;top:5px;right:30px}.ast-responsive-slider-btns>li{margin-bottom:0;display:none}.ast-responsive-slider-btns>li.active{display:inline-block}.ast-responsive-slider-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;line-height:1}.ast-responsive-slider-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.customize-control-ast-responsive-slider .wrapper .components-base-control,.customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active,.customize-control-ast-slider .components-base-control.components-range-control{width:100%;display:inline-block}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-left:5px;margin-top:4px}.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap{top:4px;right:0}.customize-control .ast-reset-btn .dashicons-image-rotate{width:12px;height:12px;font-size:12px}.customize-control-ast-responsive-slider .components-input-control input.components-input-control__input,.customize-control-ast-slider .components-input-control input.components-input-control__input{-moz-appearance:textfield}.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button,.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button{-webkit-appearance:none}.customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input,.customize-control-ast-slider .components-input-control__container input.components-input-control__input{display:block;border-radius:2px 0 0 2px;box-shadow:none;transition:all .3s;border:1px solid var(--ast-customizer-color-7)}.customize-control-ast-responsive-slider input.components-input-control__input:active,.customize-control-ast-responsive-slider input.components-input-control__input:focus,.customize-control-ast-responsive-slider input.components-input-control__input:hover,.customize-control-ast-slider input.components-input-control__input:active,.customize-control-ast-slider input.components-input-control__input:focus,.customize-control-ast-slider input.components-input-control__input:hover{border-color:var(--ast-customizer-color-2);border-radius:2px;outline:0}.customize-control-ast-responsive-slider .ast-slider-wrap,.customize-control-ast-slider .ast-slider-wrap{position:relative}.components-range-control__wrapper .components-range-control__track{color:var(--ast-customizer-color-1)}.components-range-control__wrapper span span{background-color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit,.customize-control-ast-slider .ast-slider-wrap .ast-range-unit{position:absolute;right:23px;top:4px;border-right:1px solid var(--ast-customizer-color-7);padding-right:6px;font-size:11px;font-weight:600;line-height:normal;text-transform:uppercase;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-slider .components-input-control__container,.customize-control-ast-slider .components-input-control__container{margin-left:5px;width:48px}.customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop,.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop{border:none;border-radius:2px 0 0 2px;box-shadow:none}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{position:absolute;display:inline-block;line-height:1;right:0}.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-slider .ast-resp-slider-reset-wrap{top:1px}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number{width:calc(48px)!important}.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{text-align:center}.customize-control-ast-responsive-spacing .customize-control-title{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-outer-wrapper{display:flex;position:relative}.customize-control-ast-responsive-spacing .ast-spacing-input-item{margin:0 2px;-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input[type=number]{-moz-appearance:textfield}.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-inner-spin-button,.customize-control-ast-responsive-spacing .ast-spacing-input-item input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units-screen-wrap{position:relative;top:-5px;right:-10px;display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns{position:relative;top:2px}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li{display:none}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns>li.active{display:inline-block}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0;width:100%}.customize-control-ast-responsive-spacing .ast-spacing-responsive-btns button[type=button]>i{font-size:15px;vertical-align:middle}.customize-control-ast-responsive-spacing .input-wrapper.ast-spacing-responsive-wrapper{display:inline-flex}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units{position:absolute;font-size:12px;line-height:16px;text-transform:uppercase;font-weight:500;top:-32px;right:0}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit{display:inline-block;margin-left:6px;width:18px;text-align:center;user-select:none;opacity:.6}.customize-control-ast-responsive-spacing .ast-spacing-responsive-units li.single-unit.active{opacity:1;color:var(--ast-customizer-color-1)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li{text-align:center;-webkit-box-flex:1;-ms-flex:auto;flex:auto;cursor:pointer}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input{text-align:center;display:block;font-size:12px;padding:15px 0;width:100%;height:28px;border:1px solid var(--ast-customizer-color-7);border-radius:3px;box-shadow:none;transition:all .3s}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:active,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:focus,.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li input.ast-spacing-input:hover{border-color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper li .ast-spacing-connected{color:#1e8cbe}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper.active{display:flex}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper span.ast-spacing-title{text-transform:uppercase;font-size:10px;color:var(--ast-customizer-color-6)}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link{order:2;margin-left:2px;margin-top:4px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .dashicons{padding:2px 0;font-size:12px;line-height:28px}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link .ast-spacing-connected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-disconnected{display:none}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link.disconnected .ast-spacing-connected{display:block}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link span{width:100%;height:32px;line-height:28px;font-size:14px;border-radius:3px 0 0 3px;background-color:transparent}.customize-control-ast-responsive-spacing .input-wrapper .ast-spacing-wrapper .ast-spacing-input-item-link svg{pointer-events:none}.customize-control-ast-responsive-spacing .ast-spacing-wrapper>li:nth-child(2){margin-left:0}.ast-responsive-toggle-control .components-base-control__field,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-responsive-toggle-control .components-form-toggle,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-responsive-toggle-control .components-base-control__field{margin:20px 0}.ast-responsive-toggle-control label,.customize-control-ast-responsive-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control{display:none}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-control.active{position:relative;top:2px;width:91%;display:inline-block;vertical-align:middle}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns{position:relative;float:right;top:4px}.customize-control-ast-responsive-toggle-control .ast-responsive-toggle-control-wrapper .ast-responsive-toggle-btns>li.active{vertical-align:middle}.ast-responsive-toggle-btns>li{margin-bottom:0;display:none}.ast-responsive-toggle-btns>li.active{display:inline-block}.ast-responsive-toggle-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-toggle-btns button[type=button]>i{cursor:pointer;width:15px;height:15px;font-size:15px}.ast-responsive-btns{display:inline-block;line-height:1;vertical-align:top}.ast-responsive-btns>li{margin-bottom:0;display:none}.ast-responsive-btns>li.active{display:inline-block}.ast-responsive-btns button[type=button]{padding:0;cursor:pointer;background:0 0;border:none;outline:0}.ast-responsive-btns button[type=button]>i{width:15px;height:15px;font-size:15px}.input-wrapper.ast-responsive-wrapper{display:inline-flex;justify-content:space-between;margin-right:0;align-items:flex-start;flex:0 1;width:100%}.ast-customizer-select-multi .ast-multi-select__input-container input:focus{box-shadow:none}.ast-customizer-select-multi{position:relative}.ast-customizer-select-multi .ast-multi-select__value-container{overflow-x:hidden;flex-wrap:nowrap;padding-left:10px;padding-right:30px}.ast-customizer-select-multi:before{content:'';position:absolute;top:3px;right:1px;width:50px;height:37px;background:#f7f7f7;background:linear-gradient(90deg,rgba(247,247,247,0) 0,#fff 50%,#fff 100%);pointer-events:none;z-index:1}.ast-customizer-select-multi:after{content:"\f11c";position:absolute;font-family:dashicons;font-size:16px;margin-right:15px;pointer-events:none;z-index:1;top:13px;right:0}.ast-customizer-select-multi .ast-multi-select__multi-value__label{margin-right:.2em}.ast-customizer-select-multi .ast-multi-select__multi-value{margin-top:0;margin-bottom:0;font-size:14px;padding:2px 5px 2px 5px;min-width:auto;color:#4b5563;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:2px}.ast-customizer-select-multi .ast-multi-select__multi-value__remove{color:#4b5563;padding-right:0}.ast-customizer-select-multi .ast-multi-select__multi-value__remove:hover{background-color:transparent;color:#4b5563}.ast-customizer-select-multi .ast-multi-select__menu *,.ast-customizer-select-multi .ast-multi-select__multi-value__remove{cursor:pointer}.ast-customizer-select-multi .ast-multi-select__menu{z-index:2}.ast-variant-select>div{border-color:#ddd}.ast-variant-select>div,.customize-control input,.customize-control select,.customize-control textarea,.customize-control-content .components-text-control__input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5);padding-top:1px;padding-bottom:1px}.ast-variant-select>div:focus,.customize-control input:focus,.customize-control select:focus{border-color:var(--ast-customizer-color-1);color:#0a4b78;box-shadow:0 0 0 1px var(--ast-customizer-color-1)}.ast-adv-toggle-icon{right:2px;position:absolute;width:18px;height:18px;font-size:18px;border-radius:2px;padding:4px;color:var(--ast-customizer-color-8);background:var(--ast-customizer-color-9);cursor:pointer}.ast-adv-toggle-icon:hover{color:var(--ast-customizer-color-1)}.ast-adv-toggle-icon:before{content:"\f464"}.ast-adv-toggle-icon.open:before{content:"\f158"}.ast-field-settings-modal{position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;z-index:8;background-color:#fff}.customize-control-ast-color-palette .ast-field-settings-modal{z-index:11}.ast-field-settings-modal .customize-control-ast-divider:first-child{margin-top:15px}.ast-field-settings-wrap{width:100%}.ast-group-tabs,.ast-tab-content{position:relative}.ast-group-list{overflow:hidden;border-bottom:1px solid #ddd}.ast-group-list:after,.ast-group-list:before{content:"";display:table;border-collapse:collapse}.ui-tabs-anchor{float:left;padding:.5em .5em;color:#555d66;text-decoration:none}.ui-state-active .ui-tabs-anchor{color:#fff}.ui-tabs-anchor:hover{color:#555d66}.ui-state-active .ui-tabs-anchor:hover{color:#fff}.ast-group-tabs .ui-widget-content{overflow:hidden}.ast-group-tabs .ui-widget-content.iris-slider-offset,.ast-group-tabs .ui-widget-content.iris-slider-offset-alpha{overflow:inherit}.ast-fields-wrap{overflow:hidden}.ast-field-settings-wrap{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;background-color:#fff}.ast-field-settings-wrap .ast-field-settings-modal{border-radius:3px;margin-top:10px;margin-bottom:20px}.ast-field-settings-modal::before{content:'';position:absolute;top:-17px;right:8px;border:9px solid transparent;border-bottom-color:#fff;pointer-events:none}.ast-group-tabs .ui-tabs-nav{display:flex;padding:15px 15px 0 15px}.ast-group-tabs .ui-tabs-nav .ui-corner-top{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.ast-group-tabs .ui-tabs-nav .ui-corner-top:first-child{border-radius:3px 0 0 3px}.ast-group-tabs .ui-tabs-nav .ui-corner-top:last-child{border-radius:0 3px 3px 0}.ast-group-tabs .ui-tabs-nav .ui-corner-top .ui-tabs-anchor{width:100%;text-align:center;padding:2px 4px;padding-left:0;padding-right:0;outline:0}.ast-group-tabs ul.ast-group-list .ui-corner-top .ui-tabs-anchor:focus{box-shadow:none}.ast-group-tabs .ui-tabs-nav{border:none}.ast-group-tabs ul.ast-group-list .ui-corner-top.ui-state-active{background-color:#0185ba;border:1px solid rgba(0,0,0,.1)}.ast-group-tabs .ui-tabs-nav{overflow:visible}.ast-group-tabs ul.ast-group-list .ui-corner-top:not(:first-child){border-left-width:0}.wp-core-ui .ast-field-settings-modal .background-image-upload .button{font-size:11px}.ast-field-settings-modal .customize-control{padding-left:16px;padding-right:16px;box-sizing:border-box}.ast-control-wrap .ast-color-picker-alpha{margin-left:-5px;margin-right:-5px}.ast-field-settings-modal .customize-control:first-child{margin-top:16px}.ast-field-settings-modal .ui-tabs-nav .customize-control:first-child{margin-top:0}.ast-field-settings-modal .customize-control:last-child{padding-bottom:16px}.customize-control-ast-settings-group{line-height:27px}.customize-control-ast-settings-group .customize-control-title{margin-bottom:0}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-title{margin-bottom:10px;font-size:13px;margin-top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-range-unit,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-units,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-range-unit{top:6px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-resp-slider-reset-wrap{top:3px}.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-responsive-slider .ast-responsive-slider-btns,.customize-control-ast-settings-group .ast-field-settings-modal .customize-control-ast-slider .ast-responsive-slider-btns{top:2px}.ast-field-settings-modal .customize-control{margin-top:2px}#customize-control-headings-font-extras.ast-sub-top-dotted-divider{margin-top:12px}.astra-popover-tabs{position:relative}.astra-popover-tabs .components-tab-panel__tabs{display:flex;padding:15px;border:none}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item{color:#555d66;font-size:13px;font-weight:400;height:35px;transition:unset;padding:2px 4px;text-decoration:none;border-radius:0;border:1px solid rgba(0,0,0,.1)}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:active{box-shadow:unset}.astra-popover-tabs .components-tab-panel__tabs .components-tab-panel__tabs-item:focus{box-shadow:unset}.astra-popover-tabs [ID*="-image-view"]{padding:15px;border:none}.astra-popover-tabs .components-button{align-items:center;flex:1 1 auto;justify-content:center;margin:0 0;padding:0;border:1px solid #ccc;transition:background-color 140ms linear}.astra-popover-tabs .components-tab-panel__tabs-item:first-child{border-radius:3px 0 0 3px}.astra-popover-tabs .components-tab-panel__tabs-item:last-child{border-radius:0 3px 3px 0}.astra-popover-tabs .components-tab-panel__tabs-item:not(:first-child){border-left-width:0}.astra-popover-tabs .components-tab-panel__tabs-item.active-tab{background-color:#0185ba;color:#fff}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content,.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs{padding:0}.astra-popover-tabs.astra-media-tab .components-tab-panel__tabs-item.active-tab{border-color:var(--ast-customizer-color-3);background:var(--ast-customizer-color-1)}.astra-popover-tabs.astra-media-tab .components-tab-panel__tab-content .ast-social-icon-picker-label{text-align:left}.astra-media-tab .astra-media-image{width:100%;margin-bottom:0}.astra-media-tab .ast-media-btn{display:block;width:100%;border:1px dashed var(--ast-customizer-color-7);box-sizing:border-box;box-shadow:unset;padding:9px 0;line-height:1.6;text-decoration:none}.astra-media-tab .ast-danger-btn{color:var(--ast-customizer-color-14);margin-top:10px}.astra-media-tab .ast-media-btn:hover{border-color:var(--ast-customizer-color-3)}.astra-media-tab .ast-danger-btn:hover{border-color:var(--ast-customizer-color-14)}.components-base-control.ast-text-control-input{margin-bottom:16px}.ast-payments-text-control-input .components-base-control__label{text-transform:none;color:#334155;font-size:13px}.components-base-control.ast-payments-text-control-input{margin-bottom:20px}.components-base-control.ast-text-control-input input{border-color:var(--ast-customizer-color-7);color:var(--ast-customizer-color-5)}.astra-popover-color .astra-popover-tabs .components-tab-panel__tabs button.components-tab-panel__tabs-item.active-tab:not(.is-primary):not(.is-tertiary):not(.is-link):hover{color:#fff}.components-popover.astra-popover-color .components-popover__content{min-width:310px;max-height:60vh;padding:0;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3)}.ast-field-settings-modal .components-popover.astra-popover-color .components-popover__content{min-width:320px;min-height:325px}.ast-field-settings-modal .background-wrapper .components-popover.astra-popover-color .components-popover__content{min-height:385px}.ast-field-settings-modal .components-angle-picker-control .components-flex__block{min-width:auto}.customize-control-ast-settings-group .customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap,.customize-control-ast-settings-group .customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap{margin-top:0}.ast-top-divider.customize-control-ast-settings-group .ast-toggle-desc-wrap .ast-adv-toggle-icon{top:23px}.ast-fields-wrap .customize-control-ast-responsive-slider .ast-slider-wrap>label,.ast-fields-wrap .customize-control-ast-selector .ast-slider-wrap>label{display:inline-block}.customize-control-ast-slider .wrapper{display:flex}.customize-control-ast-slider .components-range-control{width:100%}.customize-control-ast-responsive-slider .wrapper .ast-range-unit,.customize-control-ast-slider .ast-range-unit{padding:0 0 0 5px;font-size:11px;line-height:1em;font-weight:500;align-self:auto;text-transform:uppercase}.components-range-control__slider[type=range]{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.components-range-control__slider[type=range]::-moz-range-track,.components-range-control__slider[type=range]::-webkit-slider-runnable-track{content:'';height:2px;pointer-events:none}.components-range-control__slider[type=range]::-moz-range-thumb,.components-range-control__slider[type=range]::-webkit-slider-thumb{cursor:pointer;-webkit-appearance:none;margin-top:5px}.customize-control-ast-responsive-slider .components-range-control__wrapper,.customize-control-ast-slider .components-range-control__wrapper{margin-left:0}.customize-control-ast-responsive-slider span[CLASS*="-ThumbWrapper"],.customize-control-ast-slider span[CLASS*="-ThumbWrapper"]{height:17px;width:17px;top:2px;margin-left:0}.ast-top-divider.customize-control-ast-slider .ast-divider-title+.ast-slider-wrap .ast-resp-slider-reset-wrap{top:68px}.customize-control-ast-responsive-slider .ast-responsive-slider-btns{position:relative;top:-3px;right:-10px;display:inline-block}.customize-control-ast-responsive-slider .ast-responsive-units{position:absolute;top:3px;right:23px;font-size:11px;line-height:normal;border-right:1px solid #ddd;padding-right:5px;text-transform:uppercase;width:auto;display:none}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit{display:inline-block;margin-left:6px;margin-bottom:0;width:16px;text-align:center;user-select:none;opacity:.6;cursor:pointer}.customize-control-ast-responsive-slider .ast-responsive-units li.single-unit.active{opacity:1;font-weight:600;color:#0073aa;cursor:default}.ast-field-settings-modal .ast-fields-wrap>.customize-control-ast-responsive-slider+.customize-control-ast-font{margin-top:8px}.customize-control-ast-sortable .sortable{cursor:default}.customize-control-ast-sortable .sortable .dashicons-visibility{cursor:pointer}.customize-control-ast-sortable .sortable .ast-sortable-item,.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{padding:1px 3px 1px 12px;border:1px solid #d1d5db;color:#334155;background:#fff;cursor:move;font-size:14px;line-height:38px;margin:0 0 10px;border-radius:4px}.customize-control-ast-sortable .sortable .ast-sortable-subcontrols{border:none;padding:0 9px 0 0;border-top:1px solid #d1d5db;border-radius:0 0 3px 3px}.customize-control-ast-sortable .sortable div:last-child{margin:0}.customize-control-ast-sortable .sortable div>.dashicons{float:right;position:relative;font-size:16px;padding:9px;line-height:20px;border-left:none}.customize-control-ast-sortable .sortable div.invisible{opacity:.6;visibility:visible}.customize-control-ast-sortable .sortable div.invisible .dashicons.visibility:after{opacity:1;position:absolute;content:'';width:18px;height:2px;top:18px;left:11px;background:#656565;border-radius:5px;transform:rotate(-45deg);box-shadow:0 0 0 1px #fff;transition:opacity .2s ease}.ast-sortable-item.invisible,.ast-sortable-item:hover{opacity:.8}.ast-sortable-item.show:hover{opacity:1}.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{margin-right:-6px}.ast-sortable-item .dashicons-admin-page,.ast-sortable-item .dashicons-arrow-down-alt2,.ast-sortable-item .dashicons-remove{cursor:pointer}.ast-sortable-subcontrols{display:none;padding:12px 0;border-top:1px solid #d1d5db}.show .ast-sortable-subcontrols{display:block}.ast-sortable-subfields-wrap .customize-control{box-sizing:border-box;position:relative}.ast-sortable-item.show i.ast-accordion{transform:rotate(180deg);border-left:none;border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button{padding:6px 8px;height:40px;background:#fff}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .components-button:focus{box-shadow:none}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .ahfb-sorter-title{padding-right:20px;max-width:100%;text-overflow:ellipsis;overflow:hidden}.customize-control-ast-list-icons span.feature-label{max-width:100px;text-overflow:ellipsis;font-size:14px;line-height:18px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .dashicons-admin-page{color:#556068}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item-panel-header{border:1px solid #ddd;border-left:0;border-bottom:0;overflow:hidden}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity .ast-media-image-preview,.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:14px;width:14px}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity span{display:flex}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity svg{height:16px;width:16px;fill:#556068}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ast-sorter-item-expand{border-left:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-visiblity{border-right:none}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .ahfb-sorter-item{border:1px solid #ddd;border-top:0}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown{width:225px!important;left:-10px;box-shadow:0 5px 15px rgb(0 0 0 / 22%),0 0 5px rgb(0 0 0 / 30%)}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open{height:285px;overflow:hidden;position:absolute}.ast-sortable-item .ahfb-sorter-item-panel-content{border-top:1px solid #ddd}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox:hover>*{transform:scale(1.3)!important}.ast-sortable-subfields-wrap .customize-control-ast-list-icons .rfipdropdown--open .rfipicons__ibox{height:32px!important}.ast-sortable-subfields-wrap .ast-color-btn-reset-wrap{top:0}.customize-control-ast-sortable .ast-sortable-subfields-wrap .customize-control-title{margin-bottom:16px;font-size:14px}.ast-sortable-subfields-wrap .customize-control-ast-color .ast-control-wrap .astra-popover-color{margin-left:-10px;margin-right:10px;width:calc(100% + 15px)}.customize-control-ast-sortable .ast-sortable-subfields-wrap .ast-responsive-btns{top:7px}.ast-sortable-subfields-wrap .ast-fields-wrap{padding-bottom:16px}.customize-control-content{width:100%;display:flex;flex-direction:column}.ast-sortable-subfields-wrap .ast-fields-wrap{overflow:inherit}.ast-sortable-subfields-wrap .customize-control{float:none}.ast-sortable-item.invisible>.ast-accordion,.ast-sortable-item.invisible>.dashicons-admin-page,.ast-sortable-item.invisible>.dashicons-remove{display:none}.ast-sortable-item.invisible .ast-sortable-subcontrols{display:none}.ast-sortable-item .ahfb-sorter-item .dashicons{font-size:16px;width:16px;height:16px}.ast-sortable-item .ahfb-sorter-item .ahfb-sorter-item-expand:before{left:7px;width:17px}.ahfb-sorter-item:first-child .ahfb-sorter-item-remove,.ast-sortable-item .components-button.item-is-hidden:not(.visibility-item){display:none}.customize-control-ast-sortable .sortable .rfip .rfipbtn__button{margin-left:auto}.ast-sortable-subfields-wrap .customize-control-ast-responsive-slider .ast-responsive-slider-btns{top:-2px}.ast-sortable-item .customize-control-ast-color .ast-color-btn-reset-wrap{top:12px}.ast-sortable-item .customize-control-ast-color .color-button-wrap{top:8px}.ast-sortable-item .customize-control-ast-color .astra-color-picker-wrap{position:relative;top:8px}.ast-sortable-subfields-wrap .customize-control-ast-description{line-height:1}.customize-control-ast-list-icons .ahfb-sorter-item-panel-header .dashicons-admin-page{margin-right:0}.customize-control-ast-text-input textarea{display:block;width:100%}.ast-togglecontrol-wrapper .components-base-control__field,.customize-control-ast-toggle-control .components-toggle-control .components-base-control__field{margin:0}.customize-control-ast-link .ast-togglecontrol-wrapper .components-form-toggle,.customize-control-ast-toggle .components-toggle-control .components-form-toggle,.customize-control-ast-toggle-control .components-toggle-control .components-form-toggle{margin:0;order:2}.customize-control-ast-link .ast-togglecontrol-wrapper .components-base-control__field{margin:24px 0 0}.ast-togglecontrol-wrapper .components-toggle-control__label,.ast-togglecontrol-wrapper .toggle-control-label{font-size:14px;font-weight:600}.ast-togglecontrol-wrapper label,.customize-control-ast-toggle-control .components-toggle-control .components-toggle-control__label{display:flex;flex:1 1 auto;font-size:14px;font-weight:600}.ast-switch~label{position:relative;display:block;width:35px;height:14px;background-color:var(--ast-customizer-color-7);color:transparent;border-radius:50px;cursor:pointer;transition:all .2s ease-in}.ast-switch~label:after{content:'';position:absolute;top:-3px;left:-1px;display:block;width:20px;height:20px;border-radius:50px;background:var(--ast-customizer-color-9);box-shadow:0 2px 4px 0 rgba(72,72,72,.5);transition:all .2s ease-in}.ast-switch:checked~label{background:var(--ast-customizer-color-1)}.ast-switch:checked~label:after{transform:translateX(16px);background:var(--ast-customizer-color-9)}.ast-switch:disabled~label{background:#f0f0f0;pointer-events:none}.ast-switch:disabled~label:after{background:#d1d1d1;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ast-switch:checked,.ast-switch:not(:checked){opacity:0}.customize-control-ast-section-toggle .components-form-toggle{margin-left:5px;text-align:right}.components-toggle-control .components-base-control__field{display:flex;margin-bottom:12px;line-height:initial;align-items:center}.dashicons-editor-help[data-title]{z-index:1}.ast-dashicons-custom-tooltip{display:none;opacity:0;position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.ast-dashicons-custom-tooltip[data-title]::after{content:attr(data-title);min-width:3em;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1ch 1.5ch;border-radius:.3ch;box-shadow:0 1em 2em -.5em rgb(0 0 0 / 35%);background:var(--ast-customizer-color-12);color:var(--ast-customizer-color-10);z-index:3;bottom:calc(100% + 5px);text-align:center;animation:tooltips-vert .3s ease-out forwards;text-transform:none;font-size:.9em;line-height:1;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;left:50%;transform:translate(-50%,-.5em)}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip{display:block;opacity:100}.dashicons-editor-help[data-title]:hover~.ast-dashicons-custom-tooltip[data-title]::after{display:flex;white-space:break-spaces;inline-size:max-content}.ast-top-dotted-divider .ast-control-tooltip.dashicons-editor-help{top:22px}.customize-control.ast-bottom-dotted-divider.customize-control-ast-toggle-control .ast-control-tooltip{top:8px}.customize-control.customize-control-ast-select.ast-top-dotted-divider .ast-control-tooltip{top:36px}.customize-control-ast-sortable .customize-control-ast-selector .dashicons.ast-control-tooltip{top:18%;padding:0;font-size:20px}.select2-container{width:100%!important}span.select2-container.select2-container--default.select2-container--open{z-index:999999}span.select2-container.select2-container--default.select2-container--open li.select2-results__option{margin:0}.select2-selection__rendered li{margin-bottom:0}.select2-container--default .select2-selection--single,.select2-container--default.select2-container .select2-selection--multiple{border-color:#ddd;border-radius:0}.select2-container--default .select2-selection--multiple .select2-selection__choice,.select2-dropdown{border-color:#ddd;border-radius:0}.customize-control.customize-control-ast-hidden{margin-top:0}.wp-full-overlay-footer .devices-wrapper .preview-desktop,.wp-full-overlay-footer .devices-wrapper .preview-mobile,.wp-full-overlay-footer .devices-wrapper .preview-tablet{vertical-align:middle}.customize-control-ast-font-variant .ast-variant-select input#react-select-2-input:focus{box-shadow:none}.ast-variant-select [CLASS*="-indicatorContainer"]{padding:2px;display:contents}.ast-variant-select [CLASS*="-multiValue"]>div:first-child{padding:0}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap,.ast-upgrade-pro-wrap .ast-upgrade-trigger{width:100%;-js-display:inline-flex;display:inline-flex;align-items:center;flex-wrap:wrap;align-content:center;position:relative;overflow:hidden;justify-content:center}.ast-upgrade-pro-wrap .ast-upgrade-cta{position:absolute;top:auto;left:auto;width:auto;height:28px;border-radius:4px;padding:0 8px 0 5px;font-size:1em;line-height:1em;display:inline-flex;color:var(--ast-customizer-color-1);background:var(--ast-customizer-color-9);border:1px solid var(--ast-customizer-color-1);align-items:center;align-content:center;white-space:nowrap}a.ast-upgrade-trigger:active,a.ast-upgrade-trigger:focus{box-shadow:none;border:none;outline:0}.ast-upgrade-pro-wrap .ast-upgrade-section-title{margin-left:8px}.ast-upgrade-pro-wrap .ast-upgrade-pro-innerwrap>svg{width:100%;height:100%;filter:blur(4px)}.ast-upgrade-pro-wrap .ast-upgrade-cta svg{width:1.2em;height:1.2em}.customize-control-ast-radio-image .ast-pro-option>:not(.image-clickable){opacity:.4}.ast-radio-img-svg.ast-pro-option .image-clickable::before{display:inline-flex;position:absolute;top:36%;left:41%;content:'';background-size:1.5em 1.5em;height:1.5em;width:1.5em;border:1px solid var(--ast-customizer-color-1);background-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5002 7.2001H11.7002V4.8001C11.7002 3.0401 10.2602 1.6001 8.5002 1.6001C6.7402 1.6001 5.3002 3.0401 5.3002 4.8001V7.2001H4.5002C4.1002 7.2001 3.7002 7.6001 3.7002 8.0001V13.6001C3.7002 14.0001 4.1002 14.4001 4.5002 14.4001H12.5002C12.9002 14.4001 13.3002 14.0001 13.3002 13.6001V8.0001C13.3002 7.6001 12.9002 7.2001 12.5002 7.2001ZM9.3002 12.8001H7.7002L8.0202 11.0401C7.6202 10.8801 7.3002 10.4001 7.3002 10.0001C7.3002 9.3601 7.8602 8.8001 8.5002 8.8001C9.1402 8.8001 9.7002 9.3601 9.7002 10.0001C9.7002 10.4801 9.4602 10.8801 8.9802 11.0401L9.3002 12.8001ZM10.1002 7.2001H6.9002V4.8001C6.9002 3.9201 7.6202 3.2001 8.5002 3.2001C9.3802 3.2001 10.1002 3.9201 10.1002 4.8001V7.2001Z' fill='%230284C7'/%3E%3C/svg%3E")}.ast-upgrade-list-wrapper{text-align:center}.ast-upgrade-list-wrapper .ast-brand-logo{margin:0}.ast-upgrade-list-wrapper svg{width:32px;height:32px}.ast-upgrade-list-items{margin-bottom:1.8em}.ast-upgrade-list-wrapper .ast-upgrade-list-section-title{margin:.5em auto 1.8em;max-width:240px}.ast-pro-upgrade-item svg{vertical-align:middle;margin-right:5px;fill:var(--ast-customizer-color-1)}.ast-pro-upgrade-item span{display:inline-block}.ast-upgrade-list-description{margin:5px 0 0 20px}.ast-upgrade-list-title{font-weight:600}.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available),.ahfb-footer-builder-active li#customize-control-astra-settings-builder-footer:not(.ast-pro-available) *,.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available),.ahfb-header-builder-active li#customize-control-astra-settings-builder-header:not(.ast-pro-available) *{color:var(--ast-customizer-color-9);background:var(--ast-customizer-color-1)}.customize-control .button.ahfb-builder-section-shortcut{border-left:1px solid #ddd;border-right:1px solid #ddd}.ast-customize-control-title a.ast-builder-upgrade-link{background:var(--ast-customizer-color-9)!important;color:var(--ast-customizer-color-1)!important;box-shadow:0 4px 8px -4px rgba(0,0,0,.16);margin-left:10px;border-radius:4px;padding:3px 10px 5px;text-decoration:none;vertical-align:top}.ast-pro-upgrade-item p{margin:1.25em 0;line-height:1}li#customize-control-astra-settings-footer-builder-pro-items .ast-upgrade-pro-wrap,li#customize-control-astra-settings-header-builder-pro-items .ast-upgrade-pro-wrap{padding-left:12px;padding-right:12px} \ No newline at end of file diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color-rtl.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color-rtl.css index a2a6123bb..96354ce8b 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color-rtl.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color-rtl.css @@ -1,597 +1,597 @@ - /** Remove Button Color */ - -.astra-control-field.astra-color-control { - display: flex; -} - -.astra-control-field { - position: relative; - margin-top: 10px; - margin-bottom: 10px; -} - -.astra-control-field.astra-color-control .customize-control-title { - flex-grow: 2; -} -.astra-control-field .customize-control-title { - font-size: 14px; - font-weight: 600; - margin-bottom: 0; - display: flex; - align-items: center; - letter-spacing: 0.1px; - line-height: 18px; -} -.customize-control-title { - display: block; - font-size: 14px; - line-height: 1; - font-weight: 600; - margin-bottom: 4px; -} - -.astra-globe-dashicon { - color: #ffffff; - background: rgba(0,0,0,0.4); - border-radius: 100%; - border: 0.1px solid rgba(0,0,0,0.1); - opacity: 0.78; -} - -.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate { - width: 28px; - height: 28px; - border-radius: 50%; - margin: 0; - background: inherit; -} -.component-color-indicator { - width: 25px; - height: 16px; - display: inline-block; -} - -.astra-advanced-color-indicate.component-color-indicator { - border: none; -} - -.astra-color-icon-indicate.components-button { - height: auto; - position: relative; - transform: scale(1); - transition: none; - border-radius: 50%; - padding: 0; - background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); - background-size: 10px 10px; - background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; -} - -/** Color */ -.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper { - box-sizing: border-box; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type="number"].components-text-control__input { - min-height: 16px; - line-height: 16px; - font-size: 12px; - width: 50px; - font-weight: normal; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control { - flex: 1; - margin-bottom: 0; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label { - margin-bottom: 0; - margin-left: 0.2em; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field { - display: flex; - align-items: center; - font-size: 8px; - font-weight: 600; - font-style: normal; - text-transform: uppercase; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field { - justify-content: flex-end; -} -.astra-popover-color .components-popover__content .actions { - display: flex; - justify-content: center; - margin-bottom: 10px; -} -.astra-popover-color .components-popover__content .actions .button { - flex: 1; - margin-top: 10px; -} -.astra-background-picker-wrap .astra-popover-color .components-popover__content { - min-width: 300px; - min-height: 340px; - max-height: 60vh; -} -.color-button-wrap { - display: inline-block; - position: absolute; - left: 0; - top: 0; - transform: scale(1); - transition: transform .1s ease; - height: 28px; - width: 28px; -} -.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after { - content: ""; - position: absolute; - top: -1px; - right: -1px; - bottom: -1px; - left: -1px; - border-radius: 50%; - border: 1px solid transparent; -} -.components-button.astra-background-icon-indicate { - width: 50px; - height: 50px; - border-radius: 50%; - position: relative; - transform: scale(1); - transition: transform 0.1s ease; - border-radius: 50%; - padding: 0; - background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); - border: 1px solid #dadada; - background-size: 10px 10px; - background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; -} -.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate { - width: 100%; - height: 100%; - border-radius: 4px; - margin: 0; - display: block; - position: absolute; - border: 0; - top: 0; -} -.components-button.astra-background-icon-indicate > svg.dashicon { - position: absolute; - transform: translate(50%, -50%); - right: 50%; - top: 50%; - color: white; - background: rgba(0, 0, 0, 0.6); - border-radius: 100%; - width: 16px; - height: 16px; - border: 1px solid rgba(0, 0, 0, 0.1); -} -.components-button.astra-background-icon-indicate > svg.dashicon path { - transform: translate(-1px, 1px); -} -.components-button.astra-background-icon-indicate img.astra-background-image-preview { - display: flex; - object-fit: cover; - min-width: 100%; - min-height: 100%; - position: absolute; - top: 0; -} -.components-button.astra-background-icon-indicate:hover { - box-shadow: none !important; -} -.astra-control-field.astra-color-control { - display: flex; -} -.astra-control-field.astra-color-control .customize-control-title { - flex-grow: 2; -} -.components-popover.astra-popover-color .components-popover__content { - padding: 15px 15px 0px; - box-sizing: initial; - background: #fff; - border: unset; - border-radius: 4px; - -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); - box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -} -.customize-control-ast-color.customize-control > * { - display: inline; -} -.components-popover.astra-popover-color .components-popover__content .sketch-picker { - padding: 0 0 5px !important; - box-shadow: none !important; - border-radius: 0px !important; -} -.components-popover.astra-popover-color .components-popover__content .attachment-media-view { - margin-top: 10px; - margin-bottom: 10px; -} -.astra-swatches-wrap .astra-swatche-item-wrap:hover { - transform: scale(1.1) !important; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item { - background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); - background-size: 10px 10px; - background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; - padding: 0; - display: flex; - justify-content: center; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon { - display: none; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active { - box-shadow: 0 0 0 8px inset !important; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon { - display: block; - color: white; - background: rgba(0, 0, 0, 0.6); - width: 16px; - height: 16px; - border: 1px solid rgba(0, 0, 0, 0.1); - border-radius: 100%; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path { - transform: translate(-1px, 1px); -} -.components-button.astra-color-icon-indicate > .dashicon { - position: absolute; - transform: translate(50%, -50%); - right: 50%; - top: 50%; - color: white; - background: rgb(85 93 101); - border-radius: 4px; - width: 24px; - height: 24px; - font-size: 24px; - border: 1px solid rgba(0, 0, 0, 0.1); -} -.astra-popover-color { - margin: 5px -5px 0; - background-color: #ffffff; - border-radius: 4px; - box-shadow: 0px 8px 16px -4px rgba(30, 41, 59, 0.16); -} - -.astra-popover-color .components-h-stack.ast-color-palette { - padding: 14px 5px; -} - -.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette, -.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette { - padding: 0 5px 14px; -} - -.astra-popover-color .components-h-stack .components-button { - flex: inherit; -} - -.astra-popover-color .components-circular-option-picker__option:focus::after{ - width: auto; - height: auto; -} - -.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{ - margin-left: 0; -} - -.astra-popover-color .components-color-picker .react-colorful__hue, -.astra-popover-color .components-color-picker .react-colorful__alpha { - width: 90%; -} - -.ast-field-settings-modal .astra-popover-color { - margin-right: 0px; - border: 1px solid #dedede; -} -.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs { - padding: 8px; -} -.components-color-picker__saturation-black { - border-radius: 4px 4px 0 0; -} -.components-color-picker__saturation-color { - border-radius: 3px; -} -.components-color-picker__saturation-white { - border-radius: 3px; -} -.astra-color-picker-wrap { - position: absolute; - z-index: 2; - top: 30px; - right: 0; - left: 0; - bottom: 0; - display: none; -} - -.astra-color-picker-wrap .astra-popover-color .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .react-colorful { - width: 100%; -} - -.astra-popover-color .components-custom-gradient-picker{ - z-index: 1; -} -.astra-popover-color .components-custom-gradient-picker__ui-line{ - z-index: -1; -} - -.astra-color-picker-wrap.picker-open{ - display: block; -} -.ast-field-settings-modal .astra-color-picker-wrap { - position: relative; - top: 10px; -} -.ast-color-palette .components-circular-option-picker__option-wrapper { - margin-left: 6px; - position: relative; - height: 25px; - width: 25px; -} -/* Clear Button CSS */ -.ast-color-btn-clear-wrap { - position: absolute; - top: 1.5px; - left: 65px; -} -.ast-color-btn-clear-wrap .astra-color-clear-button.components-button { - padding: 10px 3px; - width: 20px; - height: 20px; -} -.ast-clear-btn-inside-picker.components-button, -.ast-reset-btn-inside-picker.components-button, -.astra-popover-tabs .ast-clear-btn-inside-picker.components-button { - margin: 5px 15px 20px 20px; - padding: 0 8px; - border: 1px solid #ccc; - box-shadow: none; -} -.ast-clear-btn-inside-picker.components-button:hover, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover, -.ast-clear-btn-inside-picker.components-button:focus, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus, -.ast-clear-btn-inside-picker.components-button:active, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active, -.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active { - box-shadow: none !important; - background: transparent !important; -} -.ast-clear-btn-inside-picker { - padding: 0 8px; -} -/* Reset Button CSS */ -.ast-color-btn-reset-wrap { - position: absolute; - left: 36px; - top: 6px; -} -.ast-color-btn-reset-wrap .ast-reset-btn.components-button, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button { - color: #006BA1; - height: 20px; - width: 20px; - padding: 4px; - background: transparent; - box-shadow: none; - cursor: pointer; -} -.astra-color-clear-button.components-button:focus:not(:disabled) { - outline: unset; - border: none; -} -.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover, .ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus, -.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus { - box-shadow: none; - border: none; - background: transparent; -} -.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled), -.astra-color-clear-button.components-button:focus:not(:disabled) { - box-shadow: 0 0 black; - padding: 1.5px; - border: none; -} -.astra-color-clear-button.components-button.is-secondary:disabled, .ast-reset-btn.components-button.is-secondary:disabled span { - color: var(--ast-customizer-color-6); -} -/** Inside Setting group popup - Colors */ -.ast-field-settings-modal .color-button-wrap { - left: 16px; -} -.ast-field-settings-modal .ast-color-btn-reset-wrap { - left: 59px; - top: 6px; -} -.ast-field-settings-modal .ast-color-btn-clear-wrap { - left: 78px; -} -.ast-field-settings-modal .customize-control-ast-color.customize-control, -.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child { - margin-top: 25px; -} -.astra-color-picker-wrap .components-color-picker__inputs-wrapper { - min-width: unset; -} -/** Gradient Color Picker */ -.customize-control .ast-gradient-color-picker input[type="number"] { - width: 100%; -} -.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker { - align-items: center; - flex-direction: inherit; -} -.astra-color-picker-wrap .components-popover__content { - width: max-content; -} - -.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful { - width: 216px; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker { - flex-direction: column; - align-items: start; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control { - margin-bottom: 0; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point { - padding: 0 16px 16px 16px; - border: 0; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus { - box-shadow: none; - outline: none; -} - -/** Gradient Color Picker -> RGBA & HSLA range fields */ -.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type="number"] { - width: 100%; -} -/** Modal Color Picker - Group Param */ -.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 24px; - height: 24px; -} -.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 25px; - width: 25px; -} -.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - right: 2.5px; - top: 0px; - width: 20px; -} -.ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - right: 0; - top: 0; - mix-blend-mode: difference; -} -.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches { - gap: 4px; - justify-content: center; -} -.astra-popover-color .components-circular-option-picker__option-wrapper:hover { - transform: scale(1.1); -} - -.customize-control-ast-color + .customize-control-ast-color { - margin-top: 30px; -} -@media (max-width: 1845px) { - /** Responsive Devices - Compatibility CSS */ - .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 22px; - width: 22px; - } - .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option { - padding: 6px 10px; - } - .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - width: 20px; - top: -2px; - } - .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 24px; - height: 24px; - } - .astra-popover-color .ast-color-palette.components-circular-option-picker { - width: auto; - padding: 16px 8px 0px 0px; - } - .astra-typography-control .typography-button-wrap > button.components-button.astra-typography-preview-indicate { - padding: 0 2px; - } - .astra-typography-control .typography-button-wrap > button.components-button { - padding: 0 4px; - } - /** Modal Popup */ - .ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: auto; - height: auto; - } - .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 20px; - width: 20px; - } - .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - right: 1px; - top: -2px; - width: 18px; - } -} -@supports (-moz-appearance:none) { - @media (max-width: 1845px) { - .ast-color-palette .components-circular-option-picker__option-wrapper { - margin-left: 5px; - } - .ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 21px; - height: 21px; - } - .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 20px; - width: 20px; - } - .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - right: 3px; - top: -2px; - width: 15px; - } - } -} - -.astra-color-icon-indicate.components-button:focus:not(:disabled) { - box-shadow: unset; - outline: unset; -} -.astra-color-icon-indicate.components-button:hover { - transform: scale(1.05); -} - -.ast-top-divider.customize-control-ast-color .ast-divider-title + .ast-control-wrap, -.ast-top-divider.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { - margin-top: 25px; - display: inline-flex; - width: 100%; - min-height: 22px; -} - - -.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, -.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, -.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title + .ast-responsive-toggle-control-wrapper, -.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap, -.ast-top-divider.customize-control-ast-slider .ast-divider-title + .ast-slider-wrap, -.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { - margin-top: 25px; -} - -.ast-top-divider.customize-control-ast-color-group .ast-control-wrap { - display: inline-flex; - width: 100%; -} - -.ast-top-divider .ast-divider-title + .ast-control-wrap .ast-color-btn-reset-wrap { - top: 67px; -} - -.ast-top-divider .ast-divider-title + .ast-control-wrap .color-button-wrap { - top: 61px; -} - -.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap .ast-responsive-btns { - top: 70px; -} -.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{ - width: 100%; -} + /** Remove Button Color */ + +.astra-control-field.astra-color-control { + display: flex; +} + +.astra-control-field { + position: relative; + margin-top: 10px; + margin-bottom: 10px; +} + +.astra-control-field.astra-color-control .customize-control-title { + flex-grow: 2; +} +.astra-control-field .customize-control-title { + font-size: 14px; + font-weight: 600; + margin-bottom: 0; + display: flex; + align-items: center; + letter-spacing: 0.1px; + line-height: 18px; +} +.customize-control-title { + display: block; + font-size: 14px; + line-height: 1; + font-weight: 600; + margin-bottom: 4px; +} + +.astra-globe-dashicon { + color: #ffffff; + background: rgba(0,0,0,0.4); + border-radius: 100%; + border: 0.1px solid rgba(0,0,0,0.1); + opacity: 0.78; +} + +.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate { + width: 28px; + height: 28px; + border-radius: 50%; + margin: 0; + background: inherit; +} +.component-color-indicator { + width: 25px; + height: 16px; + display: inline-block; +} + +.astra-advanced-color-indicate.component-color-indicator { + border: none; +} + +.astra-color-icon-indicate.components-button { + height: auto; + position: relative; + transform: scale(1); + transition: none; + border-radius: 50%; + padding: 0; + background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); + background-size: 10px 10px; + background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; +} + +/** Color */ +.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper { + box-sizing: border-box; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type="number"].components-text-control__input { + min-height: 16px; + line-height: 16px; + font-size: 12px; + width: 50px; + font-weight: normal; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control { + flex: 1; + margin-bottom: 0; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label { + margin-bottom: 0; + margin-left: 0.2em; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field { + display: flex; + align-items: center; + font-size: 8px; + font-weight: 600; + font-style: normal; + text-transform: uppercase; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field { + justify-content: flex-end; +} +.astra-popover-color .components-popover__content .actions { + display: flex; + justify-content: center; + margin-bottom: 10px; +} +.astra-popover-color .components-popover__content .actions .button { + flex: 1; + margin-top: 10px; +} +.astra-background-picker-wrap .astra-popover-color .components-popover__content { + min-width: 300px; + min-height: 340px; + max-height: 60vh; +} +.color-button-wrap { + display: inline-block; + position: absolute; + left: 0; + top: 0; + transform: scale(1); + transition: transform .1s ease; + height: 28px; + width: 28px; +} +.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after { + content: ""; + position: absolute; + top: -1px; + right: -1px; + bottom: -1px; + left: -1px; + border-radius: 50%; + border: 1px solid transparent; +} +.components-button.astra-background-icon-indicate { + width: 50px; + height: 50px; + border-radius: 50%; + position: relative; + transform: scale(1); + transition: transform 0.1s ease; + border-radius: 50%; + padding: 0; + background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); + border: 1px solid #dadada; + background-size: 10px 10px; + background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; +} +.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate { + width: 100%; + height: 100%; + border-radius: 4px; + margin: 0; + display: block; + position: absolute; + border: 0; + top: 0; +} +.components-button.astra-background-icon-indicate > svg.dashicon { + position: absolute; + transform: translate(50%, -50%); + right: 50%; + top: 50%; + color: white; + background: rgba(0, 0, 0, 0.6); + border-radius: 100%; + width: 16px; + height: 16px; + border: 1px solid rgba(0, 0, 0, 0.1); +} +.components-button.astra-background-icon-indicate > svg.dashicon path { + transform: translate(-1px, 1px); +} +.components-button.astra-background-icon-indicate img.astra-background-image-preview { + display: flex; + object-fit: cover; + min-width: 100%; + min-height: 100%; + position: absolute; + top: 0; +} +.components-button.astra-background-icon-indicate:hover { + box-shadow: none !important; +} +.astra-control-field.astra-color-control { + display: flex; +} +.astra-control-field.astra-color-control .customize-control-title { + flex-grow: 2; +} +.components-popover.astra-popover-color .components-popover__content { + padding: 15px 15px 0px; + box-sizing: initial; + background: #fff; + border: unset; + border-radius: 4px; + -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); + box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); +} +.customize-control-ast-color.customize-control > * { + display: inline; +} +.components-popover.astra-popover-color .components-popover__content .sketch-picker { + padding: 0 0 5px !important; + box-shadow: none !important; + border-radius: 0px !important; +} +.components-popover.astra-popover-color .components-popover__content .attachment-media-view { + margin-top: 10px; + margin-bottom: 10px; +} +.astra-swatches-wrap .astra-swatche-item-wrap:hover { + transform: scale(1.1) !important; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item { + background-image: linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, transparent 75%, #ddd 0), linear-gradient(45deg, transparent 75%, #ddd 0); + background-size: 10px 10px; + background-position: 100% 0, 100% 5px, 5px -5px, -5px 0; + padding: 0; + display: flex; + justify-content: center; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon { + display: none; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active { + box-shadow: 0 0 0 8px inset !important; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon { + display: block; + color: white; + background: rgba(0, 0, 0, 0.6); + width: 16px; + height: 16px; + border: 1px solid rgba(0, 0, 0, 0.1); + border-radius: 100%; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path { + transform: translate(-1px, 1px); +} +.components-button.astra-color-icon-indicate > .dashicon { + position: absolute; + transform: translate(50%, -50%); + right: 50%; + top: 50%; + color: white; + background: rgb(85 93 101); + border-radius: 4px; + width: 24px; + height: 24px; + font-size: 24px; + border: 1px solid rgba(0, 0, 0, 0.1); +} +.astra-popover-color { + margin: 5px -5px 0; + background-color: #ffffff; + border-radius: 4px; + box-shadow: 0px 8px 16px -4px rgba(30, 41, 59, 0.16); +} + +.astra-popover-color .components-h-stack.ast-color-palette { + padding: 14px 5px; +} + +.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette, +.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette { + padding: 0 5px 14px; +} + +.astra-popover-color .components-h-stack .components-button { + flex: inherit; +} + +.astra-popover-color .components-circular-option-picker__option:focus::after{ + width: auto; + height: auto; +} + +.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{ + margin-left: 0; +} + +.astra-popover-color .components-color-picker .react-colorful__hue, +.astra-popover-color .components-color-picker .react-colorful__alpha { + width: 90%; +} + +.ast-field-settings-modal .astra-popover-color { + margin-right: 0px; + border: 1px solid #dedede; +} +.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs { + padding: 8px; +} +.components-color-picker__saturation-black { + border-radius: 4px 4px 0 0; +} +.components-color-picker__saturation-color { + border-radius: 3px; +} +.components-color-picker__saturation-white { + border-radius: 3px; +} +.astra-color-picker-wrap { + position: absolute; + z-index: 2; + top: 30px; + right: 0; + left: 0; + bottom: 0; + display: none; +} + +.astra-color-picker-wrap .astra-popover-color .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .react-colorful { + width: 100%; +} + +.astra-popover-color .components-custom-gradient-picker{ + z-index: 1; +} +.astra-popover-color .components-custom-gradient-picker__ui-line{ + z-index: -1; +} + +.astra-color-picker-wrap.picker-open{ + display: block; +} +.ast-field-settings-modal .astra-color-picker-wrap { + position: relative; + top: 10px; +} +.ast-color-palette .components-circular-option-picker__option-wrapper { + margin-left: 6px; + position: relative; + height: 25px; + width: 25px; +} +/* Clear Button CSS */ +.ast-color-btn-clear-wrap { + position: absolute; + top: 1.5px; + left: 65px; +} +.ast-color-btn-clear-wrap .astra-color-clear-button.components-button { + padding: 10px 3px; + width: 20px; + height: 20px; +} +.ast-clear-btn-inside-picker.components-button, +.ast-reset-btn-inside-picker.components-button, +.astra-popover-tabs .ast-clear-btn-inside-picker.components-button { + margin: 5px 15px 20px 20px; + padding: 0 8px; + border: 1px solid #ccc; + box-shadow: none; +} +.ast-clear-btn-inside-picker.components-button:hover, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover, +.ast-clear-btn-inside-picker.components-button:focus, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus, +.ast-clear-btn-inside-picker.components-button:active, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active, +.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active { + box-shadow: none !important; + background: transparent !important; +} +.ast-clear-btn-inside-picker { + padding: 0 8px; +} +/* Reset Button CSS */ +.ast-color-btn-reset-wrap { + position: absolute; + left: 36px; + top: 6px; +} +.ast-color-btn-reset-wrap .ast-reset-btn.components-button, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button { + color: #006BA1; + height: 20px; + width: 20px; + padding: 4px; + background: transparent; + box-shadow: none; + cursor: pointer; +} +.astra-color-clear-button.components-button:focus:not(:disabled) { + outline: unset; + border: none; +} +.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover, .ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus, +.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus { + box-shadow: none; + border: none; + background: transparent; +} +.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled), +.astra-color-clear-button.components-button:focus:not(:disabled) { + box-shadow: 0 0 black; + padding: 1.5px; + border: none; +} +.astra-color-clear-button.components-button.is-secondary:disabled, .ast-reset-btn.components-button.is-secondary:disabled span { + color: var(--ast-customizer-color-6); +} +/** Inside Setting group popup - Colors */ +.ast-field-settings-modal .color-button-wrap { + left: 16px; +} +.ast-field-settings-modal .ast-color-btn-reset-wrap { + left: 59px; + top: 6px; +} +.ast-field-settings-modal .ast-color-btn-clear-wrap { + left: 78px; +} +.ast-field-settings-modal .customize-control-ast-color.customize-control, +.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child { + margin-top: 25px; +} +.astra-color-picker-wrap .components-color-picker__inputs-wrapper { + min-width: unset; +} +/** Gradient Color Picker */ +.customize-control .ast-gradient-color-picker input[type="number"] { + width: 100%; +} +.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker { + align-items: center; + flex-direction: inherit; +} +.astra-color-picker-wrap .components-popover__content { + width: max-content; +} + +.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful { + width: 216px; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker { + flex-direction: column; + align-items: start; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control { + margin-bottom: 0; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point { + padding: 0 16px 16px 16px; + border: 0; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus { + box-shadow: none; + outline: none; +} + +/** Gradient Color Picker -> RGBA & HSLA range fields */ +.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type="number"] { + width: 100%; +} +/** Modal Color Picker - Group Param */ +.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 24px; + height: 24px; +} +.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 25px; + width: 25px; +} +.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + right: 2.5px; + top: 0px; + width: 20px; +} +.ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + right: 0; + top: 0; + mix-blend-mode: difference; +} +.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches { + gap: 4px; + justify-content: center; +} +.astra-popover-color .components-circular-option-picker__option-wrapper:hover { + transform: scale(1.1); +} + +.customize-control-ast-color + .customize-control-ast-color { + margin-top: 30px; +} +@media (max-width: 1845px) { + /** Responsive Devices - Compatibility CSS */ + .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 22px; + width: 22px; + } + .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option { + padding: 6px 10px; + } + .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + width: 20px; + top: -2px; + } + .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 24px; + height: 24px; + } + .astra-popover-color .ast-color-palette.components-circular-option-picker { + width: auto; + padding: 16px 8px 0px 0px; + } + .astra-typography-control .typography-button-wrap > button.components-button.astra-typography-preview-indicate { + padding: 0 2px; + } + .astra-typography-control .typography-button-wrap > button.components-button { + padding: 0 4px; + } + /** Modal Popup */ + .ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: auto; + height: auto; + } + .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 20px; + width: 20px; + } + .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + right: 1px; + top: -2px; + width: 18px; + } +} +@supports (-moz-appearance:none) { + @media (max-width: 1845px) { + .ast-color-palette .components-circular-option-picker__option-wrapper { + margin-left: 5px; + } + .ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 21px; + height: 21px; + } + .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 20px; + width: 20px; + } + .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + right: 3px; + top: -2px; + width: 15px; + } + } +} + +.astra-color-icon-indicate.components-button:focus:not(:disabled) { + box-shadow: unset; + outline: unset; +} +.astra-color-icon-indicate.components-button:hover { + transform: scale(1.05); +} + +.ast-top-divider.customize-control-ast-color .ast-divider-title + .ast-control-wrap, +.ast-top-divider.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { + margin-top: 25px; + display: inline-flex; + width: 100%; + min-height: 22px; +} + + +.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, +.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, +.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title + .ast-responsive-toggle-control-wrapper, +.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap, +.ast-top-divider.customize-control-ast-slider .ast-divider-title + .ast-slider-wrap, +.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { + margin-top: 25px; +} + +.ast-top-divider.customize-control-ast-color-group .ast-control-wrap { + display: inline-flex; + width: 100%; +} + +.ast-top-divider .ast-divider-title + .ast-control-wrap .ast-color-btn-reset-wrap { + top: 67px; +} + +.ast-top-divider .ast-divider-title + .ast-control-wrap .color-button-wrap { + top: 61px; +} + +.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap .ast-responsive-btns { + top: 70px; +} +.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{ + width: 100%; +} diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color.css index 366813dd1..c3db11845 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/color.css @@ -1,597 +1,597 @@ - /** Remove Button Color */ - -.astra-control-field.astra-color-control { - display: flex; -} - -.astra-control-field { - position: relative; - margin-top: 10px; - margin-bottom: 10px; -} - -.astra-control-field.astra-color-control .customize-control-title { - flex-grow: 2; -} -.astra-control-field .customize-control-title { - font-size: 14px; - font-weight: 600; - margin-bottom: 0; - display: flex; - align-items: center; - letter-spacing: 0.1px; - line-height: 18px; -} -.customize-control-title { - display: block; - font-size: 14px; - line-height: 1; - font-weight: 600; - margin-bottom: 4px; -} - -.astra-globe-dashicon { - color: #ffffff; - background: rgba(0,0,0,0.4); - border-radius: 100%; - border: 0.1px solid rgba(0,0,0,0.1); - opacity: 0.78; -} - -.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate { - width: 28px; - height: 28px; - border-radius: 50%; - margin: 0; - background: inherit; -} -.component-color-indicator { - width: 25px; - height: 16px; - display: inline-block; -} - -.astra-advanced-color-indicate.component-color-indicator { - border: none; -} - -.astra-color-icon-indicate.components-button { - height: auto; - position: relative; - transform: scale(1); - transition: none; - border-radius: 50%; - padding: 0; - background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); - background-size: 10px 10px; - background-position: 0 0, 0 5px, 5px -5px, -5px 0; -} - -/** Color */ -.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper { - box-sizing: border-box; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type="number"].components-text-control__input { - min-height: 16px; - line-height: 16px; - font-size: 12px; - width: 50px; - font-weight: normal; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control { - flex: 1; - margin-bottom: 0; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label { - margin-bottom: 0; - margin-right: 0.2em; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field { - display: flex; - align-items: center; - font-size: 8px; - font-weight: 600; - font-style: normal; - text-transform: uppercase; -} -.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field { - justify-content: flex-end; -} -.astra-popover-color .components-popover__content .actions { - display: flex; - justify-content: center; - margin-bottom: 10px; -} -.astra-popover-color .components-popover__content .actions .button { - flex: 1; - margin-top: 10px; -} -.astra-background-picker-wrap .astra-popover-color .components-popover__content { - min-width: 300px; - min-height: 340px; - max-height: 60vh; -} -.color-button-wrap { - display: inline-block; - position: absolute; - right: 0; - top: 0; - transform: scale(1); - transition: transform .1s ease; - height: 28px; - width: 28px; -} -.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after { - content: ""; - position: absolute; - top: -1px; - left: -1px; - bottom: -1px; - right: -1px; - border-radius: 50%; - border: 1px solid transparent; -} -.components-button.astra-background-icon-indicate { - width: 50px; - height: 50px; - border-radius: 50%; - position: relative; - transform: scale(1); - transition: transform 0.1s ease; - border-radius: 50%; - padding: 0; - background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); - border: 1px solid #dadada; - background-size: 10px 10px; - background-position: 0 0, 0 5px, 5px -5px, -5px 0; -} -.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate { - width: 100%; - height: 100%; - border-radius: 4px; - margin: 0; - display: block; - position: absolute; - border: 0; - top: 0; -} -.components-button.astra-background-icon-indicate > svg.dashicon { - position: absolute; - transform: translate(-50%, -50%); - left: 50%; - top: 50%; - color: white; - background: rgba(0, 0, 0, 0.6); - border-radius: 100%; - width: 16px; - height: 16px; - border: 1px solid rgba(0, 0, 0, 0.1); -} -.components-button.astra-background-icon-indicate > svg.dashicon path { - transform: translate(1px, 1px); -} -.components-button.astra-background-icon-indicate img.astra-background-image-preview { - display: flex; - object-fit: cover; - min-width: 100%; - min-height: 100%; - position: absolute; - top: 0; -} -.components-button.astra-background-icon-indicate:hover { - box-shadow: none !important; -} -.astra-control-field.astra-color-control { - display: flex; -} -.astra-control-field.astra-color-control .customize-control-title { - flex-grow: 2; -} -.components-popover.astra-popover-color .components-popover__content { - padding: 15px 15px 0px; - box-sizing: initial; - background: #fff; - border: unset; - border-radius: 4px; - -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); - box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); -} -.customize-control-ast-color.customize-control > * { - display: inline; -} -.components-popover.astra-popover-color .components-popover__content .sketch-picker { - padding: 0 0 5px !important; - box-shadow: none !important; - border-radius: 0px !important; -} -.components-popover.astra-popover-color .components-popover__content .attachment-media-view { - margin-top: 10px; - margin-bottom: 10px; -} -.astra-swatches-wrap .astra-swatche-item-wrap:hover { - transform: scale(1.1) !important; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item { - background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); - background-size: 10px 10px; - background-position: 0 0, 0 5px, 5px -5px, -5px 0; - padding: 0; - display: flex; - justify-content: center; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon { - display: none; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active { - box-shadow: 0 0 0 8px inset !important; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon { - display: block; - color: white; - background: rgba(0, 0, 0, 0.6); - width: 16px; - height: 16px; - border: 1px solid rgba(0, 0, 0, 0.1); - border-radius: 100%; -} -.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path { - transform: translate(1px, 1px); -} -.components-button.astra-color-icon-indicate > .dashicon { - position: absolute; - transform: translate(-50%, -50%); - left: 50%; - top: 50%; - color: white; - background: rgb(85 93 101); - border-radius: 4px; - width: 24px; - height: 24px; - font-size: 24px; - border: 1px solid rgba(0, 0, 0, 0.1); -} -.astra-popover-color { - margin: 5px -5px 0; - background-color: #ffffff; - border-radius: 4px; - box-shadow: 0px 8px 16px -4px rgba(30, 41, 59, 0.16); -} - -.astra-popover-color .components-h-stack.ast-color-palette { - padding: 14px 5px; -} - -.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette, -.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette { - padding: 0 5px 14px; -} - -.astra-popover-color .components-h-stack .components-button { - flex: inherit; -} - -.astra-popover-color .components-circular-option-picker__option:focus::after{ - width: auto; - height: auto; -} - -.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{ - margin-right: 0; -} - -.astra-popover-color .components-color-picker .react-colorful__hue, -.astra-popover-color .components-color-picker .react-colorful__alpha { - width: 90%; -} - -.ast-field-settings-modal .astra-popover-color { - margin-left: 0px; - border: 1px solid #dedede; -} -.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs { - padding: 8px; -} -.components-color-picker__saturation-black { - border-radius: 4px 4px 0 0; -} -.components-color-picker__saturation-color { - border-radius: 3px; -} -.components-color-picker__saturation-white { - border-radius: 3px; -} -.astra-color-picker-wrap { - position: absolute; - z-index: 2; - top: 30px; - left: 0; - right: 0; - bottom: 0; - display: none; -} - -.astra-color-picker-wrap .astra-popover-color .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .react-colorful { - width: 100%; -} - -.astra-popover-color .components-custom-gradient-picker{ - z-index: 1; -} -.astra-popover-color .components-custom-gradient-picker__ui-line{ - z-index: -1; -} - -.astra-color-picker-wrap.picker-open{ - display: block; -} -.ast-field-settings-modal .astra-color-picker-wrap { - position: relative; - top: 10px; -} -.ast-color-palette .components-circular-option-picker__option-wrapper { - margin-right: 6px; - position: relative; - height: 25px; - width: 25px; -} -/* Clear Button CSS */ -.ast-color-btn-clear-wrap { - position: absolute; - top: 1.5px; - right: 65px; -} -.ast-color-btn-clear-wrap .astra-color-clear-button.components-button { - padding: 10px 3px; - width: 20px; - height: 20px; -} -.ast-clear-btn-inside-picker.components-button, -.ast-reset-btn-inside-picker.components-button, -.astra-popover-tabs .ast-clear-btn-inside-picker.components-button { - margin: 5px 20px 20px 15px; - padding: 0 8px; - border: 1px solid #ccc; - box-shadow: none; -} -.ast-clear-btn-inside-picker.components-button:hover, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover, -.ast-clear-btn-inside-picker.components-button:focus, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus, -.ast-clear-btn-inside-picker.components-button:active, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active, -.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active { - box-shadow: none !important; - background: transparent !important; -} -.ast-clear-btn-inside-picker { - padding: 0 8px; -} -/* Reset Button CSS */ -.ast-color-btn-reset-wrap { - position: absolute; - right: 36px; - top: 6px; -} -.ast-color-btn-reset-wrap .ast-reset-btn.components-button, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button { - color: #006BA1; - height: 20px; - width: 20px; - padding: 4px; - background: transparent; - box-shadow: none; - cursor: pointer; -} -.astra-color-clear-button.components-button:focus:not(:disabled) { - outline: unset; - border: none; -} -.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover, .ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus, -.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus { - box-shadow: none; - border: none; - background: transparent; -} -.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled), -.astra-color-clear-button.components-button:focus:not(:disabled) { - box-shadow: 0 0 black; - padding: 1.5px; - border: none; -} -.astra-color-clear-button.components-button.is-secondary:disabled, .ast-reset-btn.components-button.is-secondary:disabled span { - color: var(--ast-customizer-color-6); -} -/** Inside Setting group popup - Colors */ -.ast-field-settings-modal .color-button-wrap { - right: 16px; -} -.ast-field-settings-modal .ast-color-btn-reset-wrap { - right: 59px; - top: 6px; -} -.ast-field-settings-modal .ast-color-btn-clear-wrap { - right: 78px; -} -.ast-field-settings-modal .customize-control-ast-color.customize-control, -.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child { - margin-top: 25px; -} -.astra-color-picker-wrap .components-color-picker__inputs-wrapper { - min-width: unset; -} -/** Gradient Color Picker */ -.customize-control .ast-gradient-color-picker input[type="number"] { - width: 100%; -} -.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker { - align-items: center; - flex-direction: inherit; -} -.astra-color-picker-wrap .components-popover__content { - width: max-content; -} - -.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker, -.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful { - width: 216px; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker { - flex-direction: column; - align-items: start; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control { - margin-bottom: 0; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point { - padding: 0 16px 16px 16px; - border: 0; -} - -.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus { - box-shadow: none; - outline: none; -} - -/** Gradient Color Picker -> RGBA & HSLA range fields */ -.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type="number"] { - width: 100%; -} -/** Modal Color Picker - Group Param */ -.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 24px; - height: 24px; -} -.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 25px; - width: 25px; -} -.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - left: 2.5px; - top: 0px; - width: 20px; -} -.ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - left: 0; - top: 0; - mix-blend-mode: difference; -} -.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches { - gap: 4px; - justify-content: center; -} -.astra-popover-color .components-circular-option-picker__option-wrapper:hover { - transform: scale(1.1); -} - -.customize-control-ast-color + .customize-control-ast-color { - margin-top: 30px; -} -@media (max-width: 1845px) { - /** Responsive Devices - Compatibility CSS */ - .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 22px; - width: 22px; - } - .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option { - padding: 6px 10px; - } - .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - width: 20px; - top: -2px; - } - .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 24px; - height: 24px; - } - .astra-popover-color .ast-color-palette.components-circular-option-picker { - width: auto; - padding: 16px 0px 0px 8px; - } - .astra-typography-control .typography-button-wrap > button.components-button.astra-typography-preview-indicate { - padding: 0 2px; - } - .astra-typography-control .typography-button-wrap > button.components-button { - padding: 0 4px; - } - /** Modal Popup */ - .ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: auto; - height: auto; - } - .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 20px; - width: 20px; - } - .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - left: 1px; - top: -2px; - width: 18px; - } -} -@supports (-moz-appearance:none) { - @media (max-width: 1845px) { - .ast-color-palette .components-circular-option-picker__option-wrapper { - margin-right: 5px; - } - .ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { - width: 21px; - height: 21px; - } - .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { - height: 20px; - width: 20px; - } - .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { - left: 3px; - top: -2px; - width: 15px; - } - } -} - -.astra-color-icon-indicate.components-button:focus:not(:disabled) { - box-shadow: unset; - outline: unset; -} -.astra-color-icon-indicate.components-button:hover { - transform: scale(1.05); -} - -.ast-top-divider.customize-control-ast-color .ast-divider-title + .ast-control-wrap, -.ast-top-divider.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { - margin-top: 25px; - display: inline-flex; - width: 100%; - min-height: 22px; -} - - -.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, -.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, -.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title + .ast-responsive-toggle-control-wrapper, -.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap, -.ast-top-divider.customize-control-ast-slider .ast-divider-title + .ast-slider-wrap, -.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { - margin-top: 25px; -} - -.ast-top-divider.customize-control-ast-color-group .ast-control-wrap { - display: inline-flex; - width: 100%; -} - -.ast-top-divider .ast-divider-title + .ast-control-wrap .ast-color-btn-reset-wrap { - top: 67px; -} - -.ast-top-divider .ast-divider-title + .ast-control-wrap .color-button-wrap { - top: 61px; -} - -.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap .ast-responsive-btns { - top: 70px; -} -.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{ - width: 100%; -} + /** Remove Button Color */ + +.astra-control-field.astra-color-control { + display: flex; +} + +.astra-control-field { + position: relative; + margin-top: 10px; + margin-bottom: 10px; +} + +.astra-control-field.astra-color-control .customize-control-title { + flex-grow: 2; +} +.astra-control-field .customize-control-title { + font-size: 14px; + font-weight: 600; + margin-bottom: 0; + display: flex; + align-items: center; + letter-spacing: 0.1px; + line-height: 18px; +} +.customize-control-title { + display: block; + font-size: 14px; + line-height: 1; + font-weight: 600; + margin-bottom: 4px; +} + +.astra-globe-dashicon { + color: #ffffff; + background: rgba(0,0,0,0.4); + border-radius: 100%; + border: 0.1px solid rgba(0,0,0,0.1); + opacity: 0.78; +} + +.components-button.astra-color-icon-indicate .component-color-indicator.astra-advanced-color-indicate { + width: 28px; + height: 28px; + border-radius: 50%; + margin: 0; + background: inherit; +} +.component-color-indicator { + width: 25px; + height: 16px; + display: inline-block; +} + +.astra-advanced-color-indicate.component-color-indicator { + border: none; +} + +.astra-color-icon-indicate.components-button { + height: auto; + position: relative; + transform: scale(1); + transition: none; + border-radius: 50%; + padding: 0; + background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); + background-size: 10px 10px; + background-position: 0 0, 0 5px, 5px -5px, -5px 0; +} + +/** Color */ +.astra-popover-color .components-popover__content .components-focal-point-picker-wrapper { + box-sizing: border-box; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container input[type="number"].components-text-control__input { + min-height: 16px; + line-height: 16px; + font-size: 12px; + width: 50px; + font-weight: normal; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control { + flex: 1; + margin-bottom: 0; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control .components-base-control__label { + margin-bottom: 0; + margin-right: 0.2em; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control__field { + display: flex; + align-items: center; + font-size: 8px; + font-weight: 600; + font-style: normal; + text-transform: uppercase; +} +.astra-popover-color .components-popover__content .components-focal-point-picker_position-display-container .components-base-control:last-child .components-base-control__field { + justify-content: flex-end; +} +.astra-popover-color .components-popover__content .actions { + display: flex; + justify-content: center; + margin-bottom: 10px; +} +.astra-popover-color .components-popover__content .actions .button { + flex: 1; + margin-top: 10px; +} +.astra-background-picker-wrap .astra-popover-color .components-popover__content { + min-width: 300px; + min-height: 340px; + max-height: 60vh; +} +.color-button-wrap { + display: inline-block; + position: absolute; + right: 0; + top: 0; + transform: scale(1); + transition: transform .1s ease; + height: 28px; + width: 28px; +} +.components-button.astra-color-icon-indicate .astra-advanced-color-indicate:after { + content: ""; + position: absolute; + top: -1px; + left: -1px; + bottom: -1px; + right: -1px; + border-radius: 50%; + border: 1px solid transparent; +} +.components-button.astra-background-icon-indicate { + width: 50px; + height: 50px; + border-radius: 50%; + position: relative; + transform: scale(1); + transition: transform 0.1s ease; + border-radius: 50%; + padding: 0; + background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); + border: 1px solid #dadada; + background-size: 10px 10px; + background-position: 0 0, 0 5px, 5px -5px, -5px 0; +} +.components-button.astra-background-icon-indicate .component-color-indicator.astra-advanced-color-indicate { + width: 100%; + height: 100%; + border-radius: 4px; + margin: 0; + display: block; + position: absolute; + border: 0; + top: 0; +} +.components-button.astra-background-icon-indicate > svg.dashicon { + position: absolute; + transform: translate(-50%, -50%); + left: 50%; + top: 50%; + color: white; + background: rgba(0, 0, 0, 0.6); + border-radius: 100%; + width: 16px; + height: 16px; + border: 1px solid rgba(0, 0, 0, 0.1); +} +.components-button.astra-background-icon-indicate > svg.dashicon path { + transform: translate(1px, 1px); +} +.components-button.astra-background-icon-indicate img.astra-background-image-preview { + display: flex; + object-fit: cover; + min-width: 100%; + min-height: 100%; + position: absolute; + top: 0; +} +.components-button.astra-background-icon-indicate:hover { + box-shadow: none !important; +} +.astra-control-field.astra-color-control { + display: flex; +} +.astra-control-field.astra-color-control .customize-control-title { + flex-grow: 2; +} +.components-popover.astra-popover-color .components-popover__content { + padding: 15px 15px 0px; + box-sizing: initial; + background: #fff; + border: unset; + border-radius: 4px; + -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); + box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3); +} +.customize-control-ast-color.customize-control > * { + display: inline; +} +.components-popover.astra-popover-color .components-popover__content .sketch-picker { + padding: 0 0 5px !important; + box-shadow: none !important; + border-radius: 0px !important; +} +.components-popover.astra-popover-color .components-popover__content .attachment-media-view { + margin-top: 10px; + margin-bottom: 10px; +} +.astra-swatches-wrap .astra-swatche-item-wrap:hover { + transform: scale(1.1) !important; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item { + background-image: linear-gradient(45deg, #ddd 25%, transparent 0), linear-gradient(-45deg, #ddd 25%, transparent 0), linear-gradient(45deg, transparent 75%, #ddd 0), linear-gradient(-45deg, transparent 75%, #ddd 0); + background-size: 10px 10px; + background-position: 0 0, 0 5px, 5px -5px, -5px 0; + padding: 0; + display: flex; + justify-content: center; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item .dashicon { + display: none; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active { + box-shadow: 0 0 0 8px inset !important; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon { + display: block; + color: white; + background: rgba(0, 0, 0, 0.6); + width: 16px; + height: 16px; + border: 1px solid rgba(0, 0, 0, 0.1); + border-radius: 100%; +} +.astra-swatches-wrap .astra-swatche-item-wrap .astra-swatch-item.swatch-active .dashicon path { + transform: translate(1px, 1px); +} +.components-button.astra-color-icon-indicate > .dashicon { + position: absolute; + transform: translate(-50%, -50%); + left: 50%; + top: 50%; + color: white; + background: rgb(85 93 101); + border-radius: 4px; + width: 24px; + height: 24px; + font-size: 24px; + border: 1px solid rgba(0, 0, 0, 0.1); +} +.astra-popover-color { + margin: 5px -5px 0; + background-color: #ffffff; + border-radius: 4px; + box-shadow: 0px 8px 16px -4px rgba(30, 41, 59, 0.16); +} + +.astra-popover-color .components-h-stack.ast-color-palette { + padding: 14px 5px; +} + +.customize-control-ast-responsive-background .astra-popover-color .components-h-stack.ast-color-palette, +.customize-control-ast-color-group .astra-popover-color .astra-background-tabs .components-h-stack.ast-color-palette { + padding: 0 5px 14px; +} + +.astra-popover-color .components-h-stack .components-button { + flex: inherit; +} + +.astra-popover-color .components-circular-option-picker__option:focus::after{ + width: auto; + height: auto; +} + +.astra-popover-color .components-h-stack .components-circular-option-picker__option-wrapper{ + margin-right: 0; +} + +.astra-popover-color .components-color-picker .react-colorful__hue, +.astra-popover-color .components-color-picker .react-colorful__alpha { + width: 90%; +} + +.ast-field-settings-modal .astra-popover-color { + margin-left: 0px; + border: 1px solid #dedede; +} +.ast-field-settings-modal .astra-popover-color .components-tab-panel__tabs { + padding: 8px; +} +.components-color-picker__saturation-black { + border-radius: 4px 4px 0 0; +} +.components-color-picker__saturation-color { + border-radius: 3px; +} +.components-color-picker__saturation-white { + border-radius: 3px; +} +.astra-color-picker-wrap { + position: absolute; + z-index: 2; + top: 30px; + left: 0; + right: 0; + bottom: 0; + display: none; +} + +.astra-color-picker-wrap .astra-popover-color .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .react-colorful { + width: 100%; +} + +.astra-popover-color .components-custom-gradient-picker{ + z-index: 1; +} +.astra-popover-color .components-custom-gradient-picker__ui-line{ + z-index: -1; +} + +.astra-color-picker-wrap.picker-open{ + display: block; +} +.ast-field-settings-modal .astra-color-picker-wrap { + position: relative; + top: 10px; +} +.ast-color-palette .components-circular-option-picker__option-wrapper { + margin-right: 6px; + position: relative; + height: 25px; + width: 25px; +} +/* Clear Button CSS */ +.ast-color-btn-clear-wrap { + position: absolute; + top: 1.5px; + right: 65px; +} +.ast-color-btn-clear-wrap .astra-color-clear-button.components-button { + padding: 10px 3px; + width: 20px; + height: 20px; +} +.ast-clear-btn-inside-picker.components-button, +.ast-reset-btn-inside-picker.components-button, +.astra-popover-tabs .ast-clear-btn-inside-picker.components-button { + margin: 5px 20px 20px 15px; + padding: 0 8px; + border: 1px solid #ccc; + box-shadow: none; +} +.ast-clear-btn-inside-picker.components-button:hover, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:hover, +.ast-clear-btn-inside-picker.components-button:focus, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:focus, +.ast-clear-btn-inside-picker.components-button:active, .astra-popover-tabs .ast-clear-btn-inside-picker.components-button:active, +.astra-popover-tabs [ID*="-gradient-view"] .components-circular-option-picker__clear:active { + box-shadow: none !important; + background: transparent !important; +} +.ast-clear-btn-inside-picker { + padding: 0 8px; +} +/* Reset Button CSS */ +.ast-color-btn-reset-wrap { + position: absolute; + right: 36px; + top: 6px; +} +.ast-color-btn-reset-wrap .ast-reset-btn.components-button, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button { + color: #006BA1; + height: 20px; + width: 20px; + padding: 4px; + background: transparent; + box-shadow: none; + cursor: pointer; +} +.astra-color-clear-button.components-button:focus:not(:disabled) { + outline: unset; + border: none; +} +.ast-color-btn-reset-wrap .ast-reset-btn.components-button:hover, .ast-color-btn-reset-wrap .ast-reset-btn.components-button:focus, +.ast-resp-slider-reset-wrap .ast-reset-btn.components-button:hover, .ast-resp-slider-reset-wrap .ast-reset-btn.components-button:focus { + box-shadow: none; + border: none; + background: transparent; +} +.astra-color-clear-button.components-button.is-secondary:hover:not(:disabled), +.astra-color-clear-button.components-button:focus:not(:disabled) { + box-shadow: 0 0 black; + padding: 1.5px; + border: none; +} +.astra-color-clear-button.components-button.is-secondary:disabled, .ast-reset-btn.components-button.is-secondary:disabled span { + color: var(--ast-customizer-color-6); +} +/** Inside Setting group popup - Colors */ +.ast-field-settings-modal .color-button-wrap { + right: 16px; +} +.ast-field-settings-modal .ast-color-btn-reset-wrap { + right: 59px; + top: 6px; +} +.ast-field-settings-modal .ast-color-btn-clear-wrap { + right: 78px; +} +.ast-field-settings-modal .customize-control-ast-color.customize-control, +.ast-field-settings-modal .customize-control-ast-color.customize-control:first-child { + margin-top: 25px; +} +.astra-color-picker-wrap .components-color-picker__inputs-wrapper { + min-width: unset; +} +/** Gradient Color Picker */ +.customize-control .ast-gradient-color-picker input[type="number"] { + width: 100%; +} +.ast-gradient-color-picker .components-select-control.components-custom-gradient-picker__type-picker { + align-items: center; + flex-direction: inherit; +} +.astra-color-picker-wrap .components-popover__content { + width: max-content; +} + +.astra-color-picker-wrap .components-custom-gradient-picker__inserter .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .components-color-picker, +.astra-color-picker-wrap .astra-popover-color .ast-gradient-ui .react-colorful { + width: 216px; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-select-control.components-custom-gradient-picker__type-picker { + flex-direction: column; + align-items: start; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-angle-picker-control { + margin-bottom: 0; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point { + padding: 0 16px 16px 16px; + border: 0; +} + +.astra-color-picker-wrap .ast-gradient-ui .components-custom-gradient-picker__remove-control-point:focus { + box-shadow: none; + outline: none; +} + +/** Gradient Color Picker -> RGBA & HSLA range fields */ +.customize-control .ast-gradient-color-picker .is-alpha-enabled .components-base-control__field [type="number"] { + width: 100%; +} +/** Modal Color Picker - Group Param */ +.ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 24px; + height: 24px; +} +.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 25px; + width: 25px; +} +.ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + left: 2.5px; + top: 0px; + width: 20px; +} +.ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + left: 0; + top: 0; + mix-blend-mode: difference; +} +.astra-popover-color .components-circular-option-picker .components-circular-option-picker__swatches { + gap: 4px; + justify-content: center; +} +.astra-popover-color .components-circular-option-picker__option-wrapper:hover { + transform: scale(1.1); +} + +.customize-control-ast-color + .customize-control-ast-color { + margin-top: 30px; +} +@media (max-width: 1845px) { + /** Responsive Devices - Compatibility CSS */ + .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 22px; + width: 22px; + } + .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option { + padding: 6px 10px; + } + .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + width: 20px; + top: -2px; + } + .ast-color-palette .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 24px; + height: 24px; + } + .astra-popover-color .ast-color-palette.components-circular-option-picker { + width: auto; + padding: 16px 0px 0px 8px; + } + .astra-typography-control .typography-button-wrap > button.components-button.astra-typography-preview-indicate { + padding: 0 2px; + } + .astra-typography-control .typography-button-wrap > button.components-button { + padding: 0 4px; + } + /** Modal Popup */ + .ast-fields-wrap .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: auto; + height: auto; + } + .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 20px; + width: 20px; + } + .ast-fields-wrap .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + left: 1px; + top: -2px; + width: 18px; + } +} +@supports (-moz-appearance:none) { + @media (max-width: 1845px) { + .ast-color-palette .components-circular-option-picker__option-wrapper { + margin-right: 5px; + } + .ast-field-settings-modal .components-circular-option-picker__option-wrapper .components-circular-option-picker__option:focus::after { + width: 21px; + height: 21px; + } + .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option-wrapper { + height: 20px; + width: 20px; + } + .ast-field-settings-modal .ast-color-palette .components-circular-option-picker__option.is-pressed + svg { + left: 3px; + top: -2px; + width: 15px; + } + } +} + +.astra-color-icon-indicate.components-button:focus:not(:disabled) { + box-shadow: unset; + outline: unset; +} +.astra-color-icon-indicate.components-button:hover { + transform: scale(1.05); +} + +.ast-top-divider.customize-control-ast-color .ast-divider-title + .ast-control-wrap, +.ast-top-divider.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { + margin-top: 25px; + display: inline-flex; + width: 100%; + min-height: 22px; +} + + +.ast-top-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, +.ast-bottom-divider.customize-control-ast-toggle-control .ast-divider-title + .ast-togglecontrol-wrapper, +.ast-top-divider.customize-control-ast-responsive-toggle-control .ast-divider-title + .ast-responsive-toggle-control-wrapper, +.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap, +.ast-top-divider.customize-control-ast-slider .ast-divider-title + .ast-slider-wrap, +.customize-control-ast-color-group .ast-divider-title + .ast-control-wrap { + margin-top: 25px; +} + +.ast-top-divider.customize-control-ast-color-group .ast-control-wrap { + display: inline-flex; + width: 100%; +} + +.ast-top-divider .ast-divider-title + .ast-control-wrap .ast-color-btn-reset-wrap { + top: 67px; +} + +.ast-top-divider .ast-divider-title + .ast-control-wrap .color-button-wrap { + top: 61px; +} + +.ast-top-divider.customize-control-ast-responsive-color .ast-divider-title + .ast-control-wrap .ast-responsive-btns { + top: 70px; +} +.ast-color-palette.components-circular-option-picker .components-circular-option-picker__swatches{ + width: 100%; +} diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls-rtl.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls-rtl.css index 68ef62335..365e8e16b 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls-rtl.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls-rtl.css @@ -2636,14 +2636,17 @@ span.customize-control-title.ast-group-section-title { li[ID*="-image-custom-scale-width"], li[ID*="-image-custom-scale-height"] { display: inline-flex; + justify-content: center; + align-content: center; + align-items: center; } li[ID*="-image-custom-scale-height"] { float: none; padding: 0 !important; - width: calc(50% + 10px); + width: calc(50% + 12px); } li[ID*="-image-custom-scale-width"] { - width: calc(50% - 10px); + width: calc(50% - 12px); } li[ID*="-image-custom-scale-height"]:before { content: ':'; @@ -3438,6 +3441,7 @@ li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before { .customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { margin-right: 5px; + width: 48px; } .customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { border: none; diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls.css index 53bc0ed6d..a9072830c 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/custom-controls.css @@ -2636,14 +2636,17 @@ span.customize-control-title.ast-group-section-title { li[ID*="-image-custom-scale-width"], li[ID*="-image-custom-scale-height"] { display: inline-flex; + justify-content: center; + align-content: center; + align-items: center; } li[ID*="-image-custom-scale-height"] { float: none; padding: 0 !important; - width: calc(50% + 10px); + width: calc(50% + 12px); } li[ID*="-image-custom-scale-width"] { - width: calc(50% - 10px); + width: calc(50% - 12px); } li[ID*="-image-custom-scale-height"]:before { content: ':'; @@ -3438,6 +3441,7 @@ li[ID*="-image-custom-scale-height"].customize-control-ast-hidden:before { .customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { margin-left: 5px; + width: 48px; } .customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { border: none; diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number-rtl.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number-rtl.css index 0cfb91319..31c1e2848 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number-rtl.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number-rtl.css @@ -1,13 +1,16 @@ li[ID*="-image-custom-scale-width"], li[ID*="-image-custom-scale-height"] { display: inline-flex; + justify-content: center; + align-content: center; + align-items: center; } li[ID*="-image-custom-scale-height"] { float: none; padding: 0 !important; - width: calc(50% + 10px); + width: calc(50% + 12px); } li[ID*="-image-custom-scale-width"] { - width: calc(50% - 10px); + width: calc(50% - 12px); } li[ID*="-image-custom-scale-height"]:before { content: ':'; diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number.css index 0cfb91319..31c1e2848 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/number.css @@ -1,13 +1,16 @@ li[ID*="-image-custom-scale-width"], li[ID*="-image-custom-scale-height"] { display: inline-flex; + justify-content: center; + align-content: center; + align-items: center; } li[ID*="-image-custom-scale-height"] { float: none; padding: 0 !important; - width: calc(50% + 10px); + width: calc(50% + 12px); } li[ID*="-image-custom-scale-width"] { - width: calc(50% - 10px); + width: calc(50% - 12px); } li[ID*="-image-custom-scale-height"]:before { content: ':'; diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider-rtl.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider-rtl.css index 40a44f663..eb25f0837 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider-rtl.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider-rtl.css @@ -1,172 +1,173 @@ -.customize-control-ast-responsive-slider .wrapper, .customize-control-ast-slider .wrapper { - position: relative; - display: flex; -} - -.customize-control-ast-responsive-slider .input-field-wrapper { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} - -.customize-control-ast-responsive-slider input[type=range] { - position: inherit; -} - -.customize-control-ast-responsive-slider select, .customize-control.customize-control-select select { - color: #32373c; -} - -.customize-control-ast-responsive-slider .input-field-wrapper { - display: none; -} - -.customize-control-ast-responsive-slider .input-field-wrapper.active { - display: flex; -} - -.customize-control-ast-responsive-slider .components-base-control { - width: 100%; -} - -.customize-control-ast-responsive-slider .slider-control-label, -.customize-control-ast-slider .customize-control-title { - cursor: default; - margin-top: 3px; -} - -/** - * Responsive Icons - */ -.ast-responsive-slider-btns { - position: absolute; - left: 0; - top: 5px; - left: 30px; -} - -.ast-responsive-slider-btns > li { - margin-bottom: 0; - display: none; -} - -.ast-responsive-slider-btns > li.active { - display: inline-block; -} - -.ast-responsive-slider-btns button[type="button"] { - padding: 0; - cursor: pointer; - background: none; - border: none; - outline: none; - line-height: 1; -} - -.ast-responsive-slider-btns button[type="button"] > i { - cursor: pointer; - width: 15px; - height: 15px; - font-size: 15px; -} -.customize-control-ast-responsive-slider .wrapper .components-base-control, .customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active, .customize-control-ast-slider .components-base-control.components-range-control { - width: 100%; - display: inline-block; -} -.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap, -.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { - margin-right: 5px; - margin-top: 4px; -} -.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { - top: 4px; - left: 0; -} - -.customize-control .ast-reset-btn .dashicons-image-rotate { - width: 12px; - height: 12px; - font-size: 12px; -} - -.customize-control-ast-slider .components-input-control input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control input.components-input-control__input { - -moz-appearance: textfield; -} -.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button, -.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button, -.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button, -.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button { - -webkit-appearance: none; -} -.customize-control-ast-slider .components-input-control__container input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input { - display: block; - border-radius: 0 2px 2px 0; - box-shadow: none; - transition: all 0.3s; - border: 1px solid var(--ast-customizer-color-7); -} -.customize-control-ast-slider input.components-input-control__input:hover, -.customize-control-ast-slider input.components-input-control__input:focus, -.customize-control-ast-slider input.components-input-control__input:active, -.customize-control-ast-responsive-slider input.components-input-control__input:hover, -.customize-control-ast-responsive-slider input.components-input-control__input:focus, -.customize-control-ast-responsive-slider input.components-input-control__input:active { - border-color: var(--ast-customizer-color-2); - border-radius: 2px; - outline: none; -} - -.customize-control-ast-slider .ast-slider-wrap, .customize-control-ast-responsive-slider .ast-slider-wrap { - position: relative; -} - -.components-range-control__wrapper .components-range-control__track { - color: var(--ast-customizer-color-1); -} - -.components-range-control__wrapper span span { - background-color: var(--ast-customizer-color-1); -} - -.customize-control-ast-slider .ast-slider-wrap .ast-range-unit, .customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit { - position: absolute; - left: 23px; - top: 4px; - border-left: 1px solid var(--ast-customizer-color-7); - padding-left: 6px; - font-size: 11px; - font-weight: 600; - line-height: normal; - text-transform: uppercase; - color: var(--ast-customizer-color-1); -} - -.customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { - margin-right: 5px; -} -.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { - border: none; - border-radius: 0 2px 2px 0; - box-shadow: none; -} -.customize-control-ast-slider .ast-resp-slider-reset-wrap, -.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap { - position: absolute; - display: inline-block; - line-height: 1; - left: 0; -} - -.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap, -.customize-control-ast-slider .ast-resp-slider-reset-wrap { - top: 1px; -} - - -.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number { - width: calc(48px) !important; -} - -.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{ - text-align: center; +.customize-control-ast-responsive-slider .wrapper, .customize-control-ast-slider .wrapper { + position: relative; + display: flex; +} + +.customize-control-ast-responsive-slider .input-field-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.customize-control-ast-responsive-slider input[type=range] { + position: inherit; +} + +.customize-control-ast-responsive-slider select, .customize-control.customize-control-select select { + color: #32373c; +} + +.customize-control-ast-responsive-slider .input-field-wrapper { + display: none; +} + +.customize-control-ast-responsive-slider .input-field-wrapper.active { + display: flex; +} + +.customize-control-ast-responsive-slider .components-base-control { + width: 100%; +} + +.customize-control-ast-responsive-slider .slider-control-label, +.customize-control-ast-slider .customize-control-title { + cursor: default; + margin-top: 3px; +} + +/** + * Responsive Icons + */ +.ast-responsive-slider-btns { + position: absolute; + left: 0; + top: 5px; + left: 30px; +} + +.ast-responsive-slider-btns > li { + margin-bottom: 0; + display: none; +} + +.ast-responsive-slider-btns > li.active { + display: inline-block; +} + +.ast-responsive-slider-btns button[type="button"] { + padding: 0; + cursor: pointer; + background: none; + border: none; + outline: none; + line-height: 1; +} + +.ast-responsive-slider-btns button[type="button"] > i { + cursor: pointer; + width: 15px; + height: 15px; + font-size: 15px; +} +.customize-control-ast-responsive-slider .wrapper .components-base-control, .customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active, .customize-control-ast-slider .components-base-control.components-range-control { + width: 100%; + display: inline-block; +} +.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap, +.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { + margin-right: 5px; + margin-top: 4px; +} +.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { + top: 4px; + left: 0; +} + +.customize-control .ast-reset-btn .dashicons-image-rotate { + width: 12px; + height: 12px; + font-size: 12px; +} + +.customize-control-ast-slider .components-input-control input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control input.components-input-control__input { + -moz-appearance: textfield; +} +.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button, +.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button, +.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button, +.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button { + -webkit-appearance: none; +} +.customize-control-ast-slider .components-input-control__container input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input { + display: block; + border-radius: 0 2px 2px 0; + box-shadow: none; + transition: all 0.3s; + border: 1px solid var(--ast-customizer-color-7); +} +.customize-control-ast-slider input.components-input-control__input:hover, +.customize-control-ast-slider input.components-input-control__input:focus, +.customize-control-ast-slider input.components-input-control__input:active, +.customize-control-ast-responsive-slider input.components-input-control__input:hover, +.customize-control-ast-responsive-slider input.components-input-control__input:focus, +.customize-control-ast-responsive-slider input.components-input-control__input:active { + border-color: var(--ast-customizer-color-2); + border-radius: 2px; + outline: none; +} + +.customize-control-ast-slider .ast-slider-wrap, .customize-control-ast-responsive-slider .ast-slider-wrap { + position: relative; +} + +.components-range-control__wrapper .components-range-control__track { + color: var(--ast-customizer-color-1); +} + +.components-range-control__wrapper span span { + background-color: var(--ast-customizer-color-1); +} + +.customize-control-ast-slider .ast-slider-wrap .ast-range-unit, .customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit { + position: absolute; + left: 23px; + top: 4px; + border-left: 1px solid var(--ast-customizer-color-7); + padding-left: 6px; + font-size: 11px; + font-weight: 600; + line-height: normal; + text-transform: uppercase; + color: var(--ast-customizer-color-1); +} + +.customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { + margin-right: 5px; + width: 48px; +} +.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { + border: none; + border-radius: 0 2px 2px 0; + box-shadow: none; +} +.customize-control-ast-slider .ast-resp-slider-reset-wrap, +.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap { + position: absolute; + display: inline-block; + line-height: 1; + left: 0; +} + +.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap, +.customize-control-ast-slider .ast-resp-slider-reset-wrap { + top: 1px; +} + + +.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number { + width: calc(48px) !important; +} + +.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{ + text-align: center; } \ No newline at end of file diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider.css b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider.css index e5e659bf9..21edf7ed6 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/css/unminified/responsive-slider.css @@ -1,172 +1,173 @@ -.customize-control-ast-responsive-slider .wrapper, .customize-control-ast-slider .wrapper { - position: relative; - display: flex; -} - -.customize-control-ast-responsive-slider .input-field-wrapper { - display: -webkit-box; - display: -ms-flexbox; - display: flex; -} - -.customize-control-ast-responsive-slider input[type=range] { - position: inherit; -} - -.customize-control-ast-responsive-slider select, .customize-control.customize-control-select select { - color: #32373c; -} - -.customize-control-ast-responsive-slider .input-field-wrapper { - display: none; -} - -.customize-control-ast-responsive-slider .input-field-wrapper.active { - display: flex; -} - -.customize-control-ast-responsive-slider .components-base-control { - width: 100%; -} - -.customize-control-ast-responsive-slider .slider-control-label, -.customize-control-ast-slider .customize-control-title { - cursor: default; - margin-top: 3px; -} - -/** - * Responsive Icons - */ -.ast-responsive-slider-btns { - position: absolute; - right: 0; - top: 5px; - right: 30px; -} - -.ast-responsive-slider-btns > li { - margin-bottom: 0; - display: none; -} - -.ast-responsive-slider-btns > li.active { - display: inline-block; -} - -.ast-responsive-slider-btns button[type="button"] { - padding: 0; - cursor: pointer; - background: none; - border: none; - outline: none; - line-height: 1; -} - -.ast-responsive-slider-btns button[type="button"] > i { - cursor: pointer; - width: 15px; - height: 15px; - font-size: 15px; -} -.customize-control-ast-responsive-slider .wrapper .components-base-control, .customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active, .customize-control-ast-slider .components-base-control.components-range-control { - width: 100%; - display: inline-block; -} -.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap, -.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { - margin-left: 5px; - margin-top: 4px; -} -.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { - top: 4px; - right: 0; -} - -.customize-control .ast-reset-btn .dashicons-image-rotate { - width: 12px; - height: 12px; - font-size: 12px; -} - -.customize-control-ast-slider .components-input-control input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control input.components-input-control__input { - -moz-appearance: textfield; -} -.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button, -.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button, -.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button, -.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button { - -webkit-appearance: none; -} -.customize-control-ast-slider .components-input-control__container input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input { - display: block; - border-radius: 2px 0 0 2px; - box-shadow: none; - transition: all 0.3s; - border: 1px solid var(--ast-customizer-color-7); -} -.customize-control-ast-slider input.components-input-control__input:hover, -.customize-control-ast-slider input.components-input-control__input:focus, -.customize-control-ast-slider input.components-input-control__input:active, -.customize-control-ast-responsive-slider input.components-input-control__input:hover, -.customize-control-ast-responsive-slider input.components-input-control__input:focus, -.customize-control-ast-responsive-slider input.components-input-control__input:active { - border-color: var(--ast-customizer-color-2); - border-radius: 2px; - outline: none; -} - -.customize-control-ast-slider .ast-slider-wrap, .customize-control-ast-responsive-slider .ast-slider-wrap { - position: relative; -} - -.components-range-control__wrapper .components-range-control__track { - color: var(--ast-customizer-color-1); -} - -.components-range-control__wrapper span span { - background-color: var(--ast-customizer-color-1); -} - -.customize-control-ast-slider .ast-slider-wrap .ast-range-unit, .customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit { - position: absolute; - right: 23px; - top: 4px; - border-right: 1px solid var(--ast-customizer-color-7); - padding-right: 6px; - font-size: 11px; - font-weight: 600; - line-height: normal; - text-transform: uppercase; - color: var(--ast-customizer-color-1); -} - -.customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { - margin-left: 5px; -} -.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { - border: none; - border-radius: 2px 0 0 2px; - box-shadow: none; -} -.customize-control-ast-slider .ast-resp-slider-reset-wrap, -.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap { - position: absolute; - display: inline-block; - line-height: 1; - right: 0; -} - -.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap, -.customize-control-ast-slider .ast-resp-slider-reset-wrap { - top: 1px; -} - - -.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number { - width: calc(48px) !important; -} - -.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{ - text-align: center; +.customize-control-ast-responsive-slider .wrapper, .customize-control-ast-slider .wrapper { + position: relative; + display: flex; +} + +.customize-control-ast-responsive-slider .input-field-wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.customize-control-ast-responsive-slider input[type=range] { + position: inherit; +} + +.customize-control-ast-responsive-slider select, .customize-control.customize-control-select select { + color: #32373c; +} + +.customize-control-ast-responsive-slider .input-field-wrapper { + display: none; +} + +.customize-control-ast-responsive-slider .input-field-wrapper.active { + display: flex; +} + +.customize-control-ast-responsive-slider .components-base-control { + width: 100%; +} + +.customize-control-ast-responsive-slider .slider-control-label, +.customize-control-ast-slider .customize-control-title { + cursor: default; + margin-top: 3px; +} + +/** + * Responsive Icons + */ +.ast-responsive-slider-btns { + position: absolute; + right: 0; + top: 5px; + right: 30px; +} + +.ast-responsive-slider-btns > li { + margin-bottom: 0; + display: none; +} + +.ast-responsive-slider-btns > li.active { + display: inline-block; +} + +.ast-responsive-slider-btns button[type="button"] { + padding: 0; + cursor: pointer; + background: none; + border: none; + outline: none; + line-height: 1; +} + +.ast-responsive-slider-btns button[type="button"] > i { + cursor: pointer; + width: 15px; + height: 15px; + font-size: 15px; +} +.customize-control-ast-responsive-slider .wrapper .components-base-control, .customize-control-ast-responsive-slider .wrapper .input-field-wrapper.active, .customize-control-ast-slider .components-base-control.components-range-control { + width: 100%; + display: inline-block; +} +.customize-control-ast-slider .wrapper .ast-resp-slider-reset-wrap, +.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { + margin-left: 5px; + margin-top: 4px; +} +.customize-control-ast-responsive-slider .wrapper .ast-resp-slider-reset-wrap { + top: 4px; + right: 0; +} + +.customize-control .ast-reset-btn .dashicons-image-rotate { + width: 12px; + height: 12px; + font-size: 12px; +} + +.customize-control-ast-slider .components-input-control input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control input.components-input-control__input { + -moz-appearance: textfield; +} +.customize-control-ast-slider input.components-input-control__input::-webkit-inner-spin-button, +.customize-control-ast-slider input.components-input-control__input::-webkit-outer-spin-button, +.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-inner-spin-button, +.customize-control-ast-responsive-slider input.components-input-control__input::-webkit-outer-spin-button { + -webkit-appearance: none; +} +.customize-control-ast-slider .components-input-control__container input.components-input-control__input, .customize-control-ast-responsive-slider .components-input-control__container input.components-input-control__input { + display: block; + border-radius: 2px 0 0 2px; + box-shadow: none; + transition: all 0.3s; + border: 1px solid var(--ast-customizer-color-7); +} +.customize-control-ast-slider input.components-input-control__input:hover, +.customize-control-ast-slider input.components-input-control__input:focus, +.customize-control-ast-slider input.components-input-control__input:active, +.customize-control-ast-responsive-slider input.components-input-control__input:hover, +.customize-control-ast-responsive-slider input.components-input-control__input:focus, +.customize-control-ast-responsive-slider input.components-input-control__input:active { + border-color: var(--ast-customizer-color-2); + border-radius: 2px; + outline: none; +} + +.customize-control-ast-slider .ast-slider-wrap, .customize-control-ast-responsive-slider .ast-slider-wrap { + position: relative; +} + +.components-range-control__wrapper .components-range-control__track { + color: var(--ast-customizer-color-1); +} + +.components-range-control__wrapper span span { + background-color: var(--ast-customizer-color-1); +} + +.customize-control-ast-slider .ast-slider-wrap .ast-range-unit, .customize-control-ast-responsive-slider .ast-slider-wrap .ast-range-unit { + position: absolute; + right: 23px; + top: 4px; + border-right: 1px solid var(--ast-customizer-color-7); + padding-right: 6px; + font-size: 11px; + font-weight: 600; + line-height: normal; + text-transform: uppercase; + color: var(--ast-customizer-color-1); +} + +.customize-control-ast-slider .components-input-control__container, .customize-control-ast-responsive-slider .components-input-control__container { + margin-left: 5px; + width: 48px; +} +.customize-control-ast-slider .components-input-control__container div.components-input-control__backdrop, .customize-control-ast-responsive-slider .components-input-control__container div.components-input-control__backdrop { + border: none; + border-radius: 2px 0 0 2px; + box-shadow: none; +} +.customize-control-ast-slider .ast-resp-slider-reset-wrap, +.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap { + position: absolute; + display: inline-block; + line-height: 1; + right: 0; +} + +.customize-control-ast-responsive-slider .ast-resp-slider-reset-wrap, +.customize-control-ast-slider .ast-resp-slider-reset-wrap { + top: 1px; +} + + +.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number { + width: calc(48px) !important; +} + +.customize-control-ast-responsive-slider .ast-slider-wrap .components-range-control__number input{ + text-align: center; } \ No newline at end of file diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/assets/js/unminified/custom-controls-plain.js b/wp-content/themes/astra/inc/customizer/custom-controls/assets/js/unminified/custom-controls-plain.js index 0db348efc..2e170b0c0 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/assets/js/unminified/custom-controls-plain.js +++ b/wp-content/themes/astra/inc/customizer/custom-controls/assets/js/unminified/custom-controls-plain.js @@ -1,6104 +1,6110 @@ -/** - * File typography.js - * - * Handles Typography of the site - * - * @package Astra - */ - -( function( $ ) { - - /* Internal shorthand */ - var api = wp.customize; - - /** - * Helper class for the main Customizer interface. - * - * @since 1.0.0 - * @class AstTypography - */ - AstTypography = { - - /** - * Initializes our custom logic for the Customizer. - * - * @since 1.0.0 - * @method init - */ - init: function() { - AstTypography._initFonts(); - }, - - /** - * Initializes logic for font controls. - * - * @since 1.0.0 - * @access private - * @method _initFonts - */ - _initFonts: function() - { - $( '.customize-control-ast-font-family select' ).each( function(e) { - - if( 'undefined' != typeof astra.customizer ) { - var fonts = astra.customizer.settings.google_fonts; - var optionName = $(this).data('name'); - - $(this).html( fonts ); - - // Set inherit option text defined in control parameters. - $("select[data-name='" + optionName + "'] option[value='inherit']").text( $(this).data('inherit') ); - - var font_val = $(this).data('value'); - - $(this).val( font_val ); - } - }); - - $( '.customize-control-ast-font-family select' ).each( AstTypography._initFont ); - // Added select2 for all font family & font variant. - $('.customize-control-ast-font-family select').selectWoo(); - }, - - /** - * Initializes logic for a single font control. - * - * @since 1.0.0 - * @access private - * @method _initFont - */ - _initFont: function() - { - var select = $( this ), - link = select.data( 'customize-setting-link' ), - weight = select.data( 'connected-control' ), - variant = select.data( 'connected-variant' ); - - if ( 'undefined' != typeof weight ) { - api( link ).bind( AstTypography._fontSelectChange ); - AstTypography._setFontWeightOptions.apply( api( link ), [ true ] ); - } - - if ( 'undefined' != typeof variant ) { - api( link ).bind( AstTypography._fontSelectChange ); - } - }, - - /** - * Callback for when a font control changes. - * - * @since 1.0.0 - * @access private - * @method _fontSelectChange - */ - _fontSelectChange: function() - { - var fontSelect = api.control( this.id ).container.find( 'select' ), - variants = fontSelect.data( 'connected-variant' ); - - AstTypography._setFontWeightOptions.apply( this, [ false ] ); - }, - - /** - * Clean font name. - * - * Google Fonts are saved as {'Font Name', Category}. This function cleanes this up to retreive only the {Font Name}. - * - * @since 1.3.0 - * @param {String} fontValue Name of the font. - * - * @return {String} Font name where commas and inverted commas are removed if the font is a Google Font. - */ - _cleanGoogleFonts: function(fontValue) - { - // Bail if fontVAlue does not contain a comma. - if ( ! fontValue.includes(',') ) return fontValue; - - var splitFont = fontValue.split(','); - var pattern = new RegExp("'", 'gi'); - - // Check if the cleaned font exists in the Google fonts array. - var googleFontValue = splitFont[0].replace(pattern, ''); - if ( 'undefined' != typeof AstFontFamilies.google[ googleFontValue ] ) { - fontValue = googleFontValue; - } - - return fontValue; - }, - - /** - * Get font Weights. - * - * This function gets the font weights values respective to the selected fonts family{Font Name}. - * - * @since 1.5.2 - * @param {String} fontValue Name of the font. - * - * @return {String} Available font weights for the selected fonts. - */ - _getWeightObject: function(fontValue) - { - var weightObject = [ '400', '600' ]; - if ( fontValue == 'inherit' ) { - weightObject = [ '100','200','300','400','normal','500','600','700','800','900' ]; - } else if ( 'undefined' != typeof AstFontFamilies.system[ fontValue ] ) { - weightObject = AstFontFamilies.system[ fontValue ].weights; - } else if ( 'undefined' != typeof AstFontFamilies.google[ fontValue ] ) { - weightObject = AstFontFamilies.google[ fontValue ][0]; - weightObject = Object.keys(weightObject).map(function(k) { - return weightObject[k]; - }); - } else if ( 'undefined' != typeof AstFontFamilies.custom[ fontValue ] ) { - weightObject = AstFontFamilies.custom[ fontValue ].weights; - } - - return weightObject; - }, - - /** - * Sets the options for a font weight control when a - * font family control changes. - * - * @since 1.0.0 - * @access private - * @method _setFontWeightOptions - * @param {Boolean} init Whether or not we're initializing this font weight control. - */ - _setFontWeightOptions: function( init ) - { - var i = 0, - fontSelect = api.control( this.id ).container.find( 'select' ), - fontValue = this(), - selected = '', - weightKey = fontSelect.data( 'connected-control' ), - weightSelect = api.control( weightKey ).container.find( 'select' ), - currentWeightTitle = weightSelect.data( 'inherit' ), - weightValue = init ? weightSelect.val() : '400', - inheritWeightObject = [ 'inherit' ], - weightObject = [ '400', '600' ], - weightOptions = '', - weightMap = astraTypo; - if ( fontValue == 'inherit' ) { - weightValue = init ? weightSelect.val() : 'inherit'; - } - - var fontValue = AstTypography._cleanGoogleFonts(fontValue); - var weightObject = AstTypography._getWeightObject( fontValue ); - - weightObject = $.merge( inheritWeightObject, weightObject ) - weightMap[ 'inherit' ] = currentWeightTitle; - for ( ; i < weightObject.length; i++ ) { - - if ( 0 === i && -1 === $.inArray( weightValue, weightObject ) ) { - weightValue = weightObject[ 0 ]; - selected = ' selected="selected"'; - } else { - selected = weightObject[ i ] == weightValue ? ' selected="selected"' : ''; - } - if( ! weightObject[ i ].includes( "italic" ) ){ - weightOptions += ''; - } - } - - weightSelect.html( weightOptions ); - - if ( ! init ) { - api( weightKey ).set( '' ); - api( weightKey ).set( weightValue ); - } - }, - - setOption: function( optionName, value, isSelect2 ) { - $( "[data-name='"+ optionName + "']" ).val(value); - if( isSelect2 ) { - $( "[data-name='"+ optionName + "']" ).select2().trigger('change'); - } else { - $( "[data-name='"+ optionName + "']" ).trigger('change'); - } - } - }; - -})( jQuery ); - -/*! - * SelectWoo 1.0.1 - * https://github.com/woocommerce/selectWoo - * - * Released under the MIT license - * https://github.com/woocommerce/selectWoo/blob/master/LICENSE.md - */ -(function (factory) { - if (typeof define === 'function' && define.amd) { - // AMD. Register as an anonymous module. - define(['jquery'], factory); - } else if (typeof module === 'object' && module.exports) { - // Node/CommonJS - module.exports = function (root, jQuery) { - if (jQuery === undefined) { - // require('jQuery') returns a factory that requires window to - // build a jQuery instance, we normalize how we use modules - // that require this pattern but the window provided is a noop - // if it's defined (how jquery works) - if (typeof window !== 'undefined') { - jQuery = require('jquery'); - } - else { - jQuery = require('jquery')(root); - } - } - factory(jQuery); - return jQuery; - }; - } else { - // Browser globals - factory(jQuery); - } -} (function (jQuery) { - // This is needed so we can catch the AMD loader configuration and use it - // The inner file should be wrapped (by `banner.start.js`) in a function that - // returns the AMD loader references. - var S2 =(function () { - // Restore the Select2 AMD loader so it can be used - // Needed mostly in the language files, where the loader is not inserted - if (jQuery && jQuery.fn && jQuery.fn.select2 && jQuery.fn.select2.amd) { - var S2 = jQuery.fn.select2.amd; - } -var S2;(function () { if (!S2 || !S2.requirejs) { -if (!S2) { S2 = {}; } else { require = S2; } -/** - * @license almond 0.3.3 Copyright jQuery Foundation and other contributors. - * Released under MIT license, http://github.com/requirejs/almond/LICENSE - */ -//Going sloppy to avoid 'use strict' string cost, but strict practices should -//be followed. -/*global setTimeout: false */ - -var requirejs, require, define; -(function (undef) { - var main, req, makeMap, handlers, - defined = {}, - waiting = {}, - config = {}, - defining = {}, - hasOwn = Object.prototype.hasOwnProperty, - aps = [].slice, - jsSuffixRegExp = /\.js$/; - - function hasProp(obj, prop) { - return hasOwn.call(obj, prop); - } - - /** - * Given a relative module name, like ./something, normalize it to - * a real name that can be mapped to a path. - * @param {String} name the relative name - * @param {String} baseName a real name that the name arg is relative - * to. - * @returns {String} normalized name - */ - function normalize(name, baseName) { - var nameParts, nameSegment, mapValue, foundMap, lastIndex, - foundI, foundStarMap, starI, i, j, part, normalizedBaseParts, - baseParts = baseName && baseName.split("/"), - map = config.map, - starMap = (map && map['*']) || {}; - - //Adjust any relative paths. - if (name) { - name = name.split('/'); - lastIndex = name.length - 1; - - // If wanting node ID compatibility, strip .js from end - // of IDs. Have to do this here, and not in nameToUrl - // because node allows either .js or non .js to map - // to same file. - if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) { - name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, ''); - } - - // Starts with a '.' so need the baseName - if (name[0].charAt(0) === '.' && baseParts) { - //Convert baseName to array, and lop off the last part, - //so that . matches that 'directory' and not name of the baseName's - //module. For instance, baseName of 'one/two/three', maps to - //'one/two/three.js', but we want the directory, 'one/two' for - //this normalization. - normalizedBaseParts = baseParts.slice(0, baseParts.length - 1); - name = normalizedBaseParts.concat(name); - } - - //start trimDots - for (i = 0; i < name.length; i++) { - part = name[i]; - if (part === '.') { - name.splice(i, 1); - i -= 1; - } else if (part === '..') { - // If at the start, or previous value is still .., - // keep them so that when converted to a path it may - // still work when converted to a path, even though - // as an ID it is less than ideal. In larger point - // releases, may be better to just kick out an error. - if (i === 0 || (i === 1 && name[2] === '..') || name[i - 1] === '..') { - continue; - } else if (i > 0) { - name.splice(i - 1, 2); - i -= 2; - } - } - } - //end trimDots - - name = name.join('/'); - } - - //Apply map config if available. - if ((baseParts || starMap) && map) { - nameParts = name.split('/'); - - for (i = nameParts.length; i > 0; i -= 1) { - nameSegment = nameParts.slice(0, i).join("/"); - - if (baseParts) { - //Find the longest baseName segment match in the config. - //So, do joins on the biggest to smallest lengths of baseParts. - for (j = baseParts.length; j > 0; j -= 1) { - mapValue = map[baseParts.slice(0, j).join('/')]; - - //baseName segment has config, find if it has one for - //this name. - if (mapValue) { - mapValue = mapValue[nameSegment]; - if (mapValue) { - //Match, update name to the new value. - foundMap = mapValue; - foundI = i; - break; - } - } - } - } - - if (foundMap) { - break; - } - - //Check for a star map match, but just hold on to it, - //if there is a shorter segment match later in a matching - //config, then favor over this star map. - if (!foundStarMap && starMap && starMap[nameSegment]) { - foundStarMap = starMap[nameSegment]; - starI = i; - } - } - - if (!foundMap && foundStarMap) { - foundMap = foundStarMap; - foundI = starI; - } - - if (foundMap) { - nameParts.splice(0, foundI, foundMap); - name = nameParts.join('/'); - } - } - - return name; - } - - function makeRequire(relName, forceSync) { - return function () { - //A version of a require function that passes a moduleName - //value for items that may need to - //look up paths relative to the moduleName - var args = aps.call(arguments, 0); - - //If first arg is not require('string'), and there is only - //one arg, it is the array form without a callback. Insert - //a null so that the following concat is correct. - if (typeof args[0] !== 'string' && args.length === 1) { - args.push(null); - } - return req.apply(undef, args.concat([relName, forceSync])); - }; - } - - function makeNormalize(relName) { - return function (name) { - return normalize(name, relName); - }; - } - - function makeLoad(depName) { - return function (value) { - defined[depName] = value; - }; - } - - function callDep(name) { - if (hasProp(waiting, name)) { - var args = waiting[name]; - delete waiting[name]; - defining[name] = true; - main.apply(undef, args); - } - - if (!hasProp(defined, name) && !hasProp(defining, name)) { - throw new Error('No ' + name); - } - return defined[name]; - } - - //Turns a plugin!resource to [plugin, resource] - //with the plugin being undefined if the name - //did not have a plugin prefix. - function splitPrefix(name) { - var prefix, - index = name ? name.indexOf('!') : -1; - if (index > -1) { - prefix = name.substring(0, index); - name = name.substring(index + 1, name.length); - } - return [prefix, name]; - } - - //Creates a parts array for a relName where first part is plugin ID, - //second part is resource ID. Assumes relName has already been normalized. - function makeRelParts(relName) { - return relName ? splitPrefix(relName) : []; - } - - /** - * Makes a name map, normalizing the name, and using a plugin - * for normalization if necessary. Grabs a ref to plugin - * too, as an optimization. - */ - makeMap = function (name, relParts) { - var plugin, - parts = splitPrefix(name), - prefix = parts[0], - relResourceName = relParts[1]; - - name = parts[1]; - - if (prefix) { - prefix = normalize(prefix, relResourceName); - plugin = callDep(prefix); - } - - //Normalize according - if (prefix) { - if (plugin && plugin.normalize) { - name = plugin.normalize(name, makeNormalize(relResourceName)); - } else { - name = normalize(name, relResourceName); - } - } else { - name = normalize(name, relResourceName); - parts = splitPrefix(name); - prefix = parts[0]; - name = parts[1]; - if (prefix) { - plugin = callDep(prefix); - } - } - - //Using ridiculous property names for space reasons - return { - f: prefix ? prefix + '!' + name : name, //fullName - n: name, - pr: prefix, - p: plugin - }; - }; - - function makeConfig(name) { - return function () { - return (config && config.config && config.config[name]) || {}; - }; - } - - handlers = { - require: function (name) { - return makeRequire(name); - }, - exports: function (name) { - var e = defined[name]; - if (typeof e !== 'undefined') { - return e; - } else { - return (defined[name] = {}); - } - }, - module: function (name) { - return { - id: name, - uri: '', - exports: defined[name], - config: makeConfig(name) - }; - } - }; - - main = function (name, deps, callback, relName) { - var cjsModule, depName, ret, map, i, relParts, - args = [], - callbackType = typeof callback, - usingExports; - - //Use name if no relName - relName = relName || name; - relParts = makeRelParts(relName); - - //Call the callback to define the module, if necessary. - if (callbackType === 'undefined' || callbackType === 'function') { - //Pull out the defined dependencies and pass the ordered - //values to the callback. - //Default to [require, exports, module] if no deps - deps = !deps.length && callback.length ? ['require', 'exports', 'module'] : deps; - for (i = 0; i < deps.length; i += 1) { - map = makeMap(deps[i], relParts); - depName = map.f; - - //Fast path CommonJS standard dependencies. - if (depName === "require") { - args[i] = handlers.require(name); - } else if (depName === "exports") { - //CommonJS module spec 1.1 - args[i] = handlers.exports(name); - usingExports = true; - } else if (depName === "module") { - //CommonJS module spec 1.1 - cjsModule = args[i] = handlers.module(name); - } else if (hasProp(defined, depName) || - hasProp(waiting, depName) || - hasProp(defining, depName)) { - args[i] = callDep(depName); - } else if (map.p) { - map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {}); - args[i] = defined[depName]; - } else { - throw new Error(name + ' missing ' + depName); - } - } - - ret = callback ? callback.apply(defined[name], args) : undefined; - - if (name) { - //If setting exports via "module" is in play, - //favor that over return value and exports. After that, - //favor a non-undefined return value over exports use. - if (cjsModule && cjsModule.exports !== undef && - cjsModule.exports !== defined[name]) { - defined[name] = cjsModule.exports; - } else if (ret !== undef || !usingExports) { - //Use the return value from the function. - defined[name] = ret; - } - } - } else if (name) { - //May just be an object definition for the module. Only - //worry about defining if have a module name. - defined[name] = callback; - } - }; - - requirejs = require = req = function (deps, callback, relName, forceSync, alt) { - if (typeof deps === "string") { - if (handlers[deps]) { - //callback in this case is really relName - return handlers[deps](callback); - } - //Just return the module wanted. In this scenario, the - //deps arg is the module name, and second arg (if passed) - //is just the relName. - //Normalize module name, if it contains . or .. - return callDep(makeMap(deps, makeRelParts(callback)).f); - } else if (!deps.splice) { - //deps is a config object, not an array. - config = deps; - if (config.deps) { - req(config.deps, config.callback); - } - if (!callback) { - return; - } - - if (callback.splice) { - //callback is an array, which means it is a dependency list. - //Adjust args if there are dependencies - deps = callback; - callback = relName; - relName = null; - } else { - deps = undef; - } - } - - //Support require(['a']) - callback = callback || function () {}; - - //If relName is a function, it is an errback handler, - //so remove it. - if (typeof relName === 'function') { - relName = forceSync; - forceSync = alt; - } - - //Simulate async callback; - if (forceSync) { - main(undef, deps, callback, relName); - } else { - //Using a non-zero value because of concern for what old browsers - //do, and latest browsers "upgrade" to 4 if lower value is used: - //http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout: - //If want a value immediately, use require('id') instead -- something - //that works in almond on the global level, but not guaranteed and - //unlikely to work in other AMD implementations. - setTimeout(function () { - main(undef, deps, callback, relName); - }, 4); - } - - return req; - }; - - /** - * Just drops the config on the floor, but returns req in case - * the config return value is used. - */ - req.config = function (cfg) { - return req(cfg); - }; - - /** - * Expose module registry for debugging and tooling - */ - requirejs._defined = defined; - - define = function (name, deps, callback) { - if (typeof name !== 'string') { - throw new Error('See almond README: incorrect module build, no module name'); - } - - //This module may not have dependencies - if (!deps.splice) { - //deps is not an array, so probably means - //an object literal or factory function for - //the value. Adjust args. - callback = deps; - deps = []; - } - - if (!hasProp(defined, name) && !hasProp(waiting, name)) { - waiting[name] = [name, deps, callback]; - } - }; - - define.amd = { - jQuery: true - }; -}()); - -S2.requirejs = requirejs;S2.require = require;S2.define = define; -} -}()); -S2.define("almond", function(){}); - -/* global jQuery:false, $:false */ -S2.define('jquery',[],function () { - var _$ = jQuery || $; - - if (_$ == null && console && console.error) { - console.error( - 'Select2: An instance of jQuery or a jQuery-compatible library was not ' + - 'found. Make sure that you are including jQuery before Select2 on your ' + - 'web page.' - ); - } - - return _$; -}); - -S2.define('select2/utils',[ - 'jquery' -], function ($) { - var Utils = {}; - - Utils.Extend = function (ChildClass, SuperClass) { - var __hasProp = {}.hasOwnProperty; - - function BaseConstructor () { - this.constructor = ChildClass; - } - - for (var key in SuperClass) { - if (__hasProp.call(SuperClass, key)) { - ChildClass[key] = SuperClass[key]; - } - } - - BaseConstructor.prototype = SuperClass.prototype; - ChildClass.prototype = new BaseConstructor(); - ChildClass.__super__ = SuperClass.prototype; - - return ChildClass; - }; - - function getMethods (theClass) { - var proto = theClass.prototype; - - var methods = []; - - for (var methodName in proto) { - var m = proto[methodName]; - - if (typeof m !== 'function') { - continue; - } - - if (methodName === 'constructor') { - continue; - } - - methods.push(methodName); - } - - return methods; - } - - Utils.Decorate = function (SuperClass, DecoratorClass) { - var decoratedMethods = getMethods(DecoratorClass); - var superMethods = getMethods(SuperClass); - - function DecoratedClass () { - var unshift = Array.prototype.unshift; - - var argCount = DecoratorClass.prototype.constructor.length; - - var calledConstructor = SuperClass.prototype.constructor; - - if (argCount > 0) { - unshift.call(arguments, SuperClass.prototype.constructor); - - calledConstructor = DecoratorClass.prototype.constructor; - } - - calledConstructor.apply(this, arguments); - } - - DecoratorClass.displayName = SuperClass.displayName; - - function ctr () { - this.constructor = DecoratedClass; - } - - DecoratedClass.prototype = new ctr(); - - for (var m = 0; m < superMethods.length; m++) { - var superMethod = superMethods[m]; - - DecoratedClass.prototype[superMethod] = - SuperClass.prototype[superMethod]; - } - - var calledMethod = function (methodName) { - // Stub out the original method if it's not decorating an actual method - var originalMethod = function () {}; - - if (methodName in DecoratedClass.prototype) { - originalMethod = DecoratedClass.prototype[methodName]; - } - - var decoratedMethod = DecoratorClass.prototype[methodName]; - - return function () { - var unshift = Array.prototype.unshift; - - unshift.call(arguments, originalMethod); - - return decoratedMethod.apply(this, arguments); - }; - }; - - for (var d = 0; d < decoratedMethods.length; d++) { - var decoratedMethod = decoratedMethods[d]; - - DecoratedClass.prototype[decoratedMethod] = calledMethod(decoratedMethod); - } - - return DecoratedClass; - }; - - var Observable = function () { - this.listeners = {}; - }; - - Observable.prototype.on = function (event, callback) { - this.listeners = this.listeners || {}; - - if (event in this.listeners) { - this.listeners[event].push(callback); - } else { - this.listeners[event] = [callback]; - } - }; - - Observable.prototype.trigger = function (event) { - var slice = Array.prototype.slice; - var params = slice.call(arguments, 1); - - this.listeners = this.listeners || {}; - - // Params should always come in as an array - if (params == null) { - params = []; - } - - // If there are no arguments to the event, use a temporary object - if (params.length === 0) { - params.push({}); - } - - // Set the `_type` of the first object to the event - params[0]._type = event; - - if (event in this.listeners) { - this.invoke(this.listeners[event], slice.call(arguments, 1)); - } - - if ('*' in this.listeners) { - this.invoke(this.listeners['*'], arguments); - } - }; - - Observable.prototype.invoke = function (listeners, params) { - for (var i = 0, len = listeners.length; i < len; i++) { - listeners[i].apply(this, params); - } - }; - - Utils.Observable = Observable; - - Utils.generateChars = function (length) { - var chars = ''; - - for (var i = 0; i < length; i++) { - var randomChar = Math.floor(Math.random() * 36); - chars += randomChar.toString(36); - } - - return chars; - }; - - Utils.bind = function (func, context) { - return function () { - func.apply(context, arguments); - }; - }; - - Utils._convertData = function (data) { - for (var originalKey in data) { - var keys = originalKey.split('-'); - - var dataLevel = data; - - if (keys.length === 1) { - continue; - } - - for (var k = 0; k < keys.length; k++) { - var key = keys[k]; - - // Lowercase the first letter - // By default, dash-separated becomes camelCase - key = key.substring(0, 1).toLowerCase() + key.substring(1); - - if (!(key in dataLevel)) { - dataLevel[key] = {}; - } - - if (k == keys.length - 1) { - dataLevel[key] = data[originalKey]; - } - - dataLevel = dataLevel[key]; - } - - delete data[originalKey]; - } - - return data; - }; - - Utils.hasScroll = function (index, el) { - // Adapted from the function created by @ShadowScripter - // and adapted by @BillBarry on the Stack Exchange Code Review website. - // The original code can be found at - // http://codereview.stackexchange.com/q/13338 - // and was designed to be used with the Sizzle selector engine. - - var $el = $(el); - var overflowX = el.style.overflowX; - var overflowY = el.style.overflowY; - - //Check both x and y declarations - if (overflowX === overflowY && - (overflowY === 'hidden' || overflowY === 'visible')) { - return false; - } - - if (overflowX === 'scroll' || overflowY === 'scroll') { - return true; - } - - return ($el.innerHeight() < el.scrollHeight || - $el.innerWidth() < el.scrollWidth); - }; - - Utils.escapeMarkup = function (markup) { - var replaceMap = { - '\\': '\', - '&': '&', - '<': '<', - '>': '>', - '"': '"', - '\'': ''', - '/': '/' - }; - - // Do not try to escape the markup if it's not a string - if (typeof markup !== 'string') { - return markup; - } - - // Replace special characters with string. - return String(markup).replace(/[&<>"'\/\\]/g, function (match) { - return replaceMap[match]; - }); - }; - - Utils.entityDecode = function(html) { - var txt = document.createElement("textarea"); - txt.innerHTML = html; - return txt.value; - } - - // Append an array of jQuery nodes to a given element. - Utils.appendMany = function ($element, $nodes) { - // jQuery 1.7.x does not support $.fn.append() with an array - // Fall back to a jQuery object collection using $.fn.add() - if ($.fn.jquery.substr(0, 3) === '1.7') { - var $jqNodes = $(); - - $.map($nodes, function (node) { - $jqNodes = $jqNodes.add(node); - }); - - $nodes = $jqNodes; - } - - $element.append($nodes); - }; - - // Determine whether the browser is on a touchscreen device. - Utils.isTouchscreen = function() { - if ('undefined' === typeof Utils._isTouchscreenCache) { - Utils._isTouchscreenCache = 'ontouchstart' in document.documentElement; - } - return Utils._isTouchscreenCache; - } - - return Utils; -}); - -S2.define('select2/results',[ - 'jquery', - './utils' -], function ($, Utils) { - function Results ($element, options, dataAdapter) { - this.$element = $element; - this.data = dataAdapter; - this.options = options; - - Results.__super__.constructor.call(this); - } - - Utils.Extend(Results, Utils.Observable); - - Results.prototype.render = function () { - var $results = $( - '
    ' - ); - - if (this.options.get('multiple')) { - $results.attr('aria-multiselectable', 'true'); - } - - this.$results = $results; - - return $results; - }; - - Results.prototype.clear = function () { - this.$results.empty(); - }; - - Results.prototype.displayMessage = function (params) { - var escapeMarkup = this.options.get('escapeMarkup'); - - this.clear(); - this.hideLoading(); - - var $message = $( - '' - ); - - var message = this.options.get('translations').get(params.message); - - $message.append( - escapeMarkup( - message(params.args) - ) - ); - - $message[0].className += ' select2-results__message'; - - this.$results.append($message); - }; - - Results.prototype.hideMessages = function () { - this.$results.find('.select2-results__message').remove(); - }; - - Results.prototype.append = function (data) { - this.hideLoading(); - - var $options = []; - - if (data.results == null || data.results.length === 0) { - if (this.$results.children().length === 0) { - this.trigger('results:message', { - message: 'noResults' - }); - } - - return; - } - - data.results = this.sort(data.results); - - for (var d = 0; d < data.results.length; d++) { - var item = data.results[d]; - - var $option = this.option(item); - - $options.push($option); - } - - this.$results.append($options); - }; - - Results.prototype.position = function ($results, $dropdown) { - var $resultsContainer = $dropdown.find('.select2-results'); - $resultsContainer.append($results); - }; - - Results.prototype.sort = function (data) { - var sorter = this.options.get('sorter'); - - return sorter(data); - }; - - Results.prototype.highlightFirstItem = function () { - var $options = this.$results - .find('.select2-results__option[data-selected]'); - - var $selected = $options.filter('[data-selected=true]'); - - // Check if there are any selected options - if ($selected.length > 0) { - // If there are selected options, highlight the first - $selected.first().trigger('mouseenter'); - } else { - // If there are no selected options, highlight the first option - // in the dropdown - $options.first().trigger('mouseenter'); - } - - this.ensureHighlightVisible(); - }; - - Results.prototype.setClasses = function () { - var self = this; - - this.data.current(function (selected) { - var selectedIds = $.map(selected, function (s) { - return s.id.toString(); - }); - - var $options = self.$results - .find('.select2-results__option[data-selected]'); - - $options.each(function () { - var $option = $(this); - - var item = $.data(this, 'data'); - - // id needs to be converted to a string when comparing - var id = '' + item.id; - - if ((item.element != null && item.element.selected) || - (item.element == null && $.inArray(id, selectedIds) > -1)) { - $option.attr('data-selected', 'true'); - } else { - $option.attr('data-selected', 'false'); - } - }); - - }); - }; - - Results.prototype.showLoading = function (params) { - this.hideLoading(); - - var loadingMore = this.options.get('translations').get('searching'); - - var loading = { - disabled: true, - loading: true, - text: loadingMore(params) - }; - var $loading = this.option(loading); - $loading.className += ' loading-results'; - - this.$results.prepend($loading); - }; - - Results.prototype.hideLoading = function () { - this.$results.find('.loading-results').remove(); - }; - - Results.prototype.option = function (data) { - var option = document.createElement('li'); - option.className = 'select2-results__option'; - - var attrs = { - 'role': 'option', - 'data-selected': 'false', - 'tabindex': -1 - }; - - if (data.disabled) { - delete attrs['data-selected']; - attrs['aria-disabled'] = 'true'; - } - - if (data.id == null) { - delete attrs['data-selected']; - } - - if (data._resultId != null) { - option.id = data._resultId; - } - - if (data.title) { - option.title = data.title; - } - - if (data.children) { - attrs['aria-label'] = data.text; - delete attrs['data-selected']; - } - - for (var attr in attrs) { - var val = attrs[attr]; - - option.setAttribute(attr, val); - } - - if (data.children) { - var $option = $(option); - - var label = document.createElement('strong'); - label.className = 'select2-results__group'; - - var $label = $(label); - this.template(data, label); - $label.attr('role', 'presentation'); - - var $children = []; - - for (var c = 0; c < data.children.length; c++) { - var child = data.children[c]; - - var $child = this.option(child); - - $children.push($child); - } - - var $childrenContainer = $('
      ', { - 'class': 'select2-results__options select2-results__options--nested', - 'role': 'listbox' - }); - $childrenContainer.append($children); - $option.attr('role', 'list'); - - $option.append(label); - $option.append($childrenContainer); - } else { - this.template(data, option); - } - - $.data(option, 'data', data); - - return option; - }; - - Results.prototype.bind = function (container, $container) { - var self = this; - - var id = container.id + '-results'; - - this.$results.attr('id', id); - - container.on('results:all', function (params) { - self.clear(); - self.append(params.data); - - if (container.isOpen()) { - self.setClasses(); - self.highlightFirstItem(); - } - }); - - container.on('results:append', function (params) { - self.append(params.data); - - if (container.isOpen()) { - self.setClasses(); - } - }); - - container.on('query', function (params) { - self.hideMessages(); - self.showLoading(params); - }); - - container.on('select', function () { - if (!container.isOpen()) { - return; - } - - self.setClasses(); - self.highlightFirstItem(); - }); - - container.on('unselect', function () { - if (!container.isOpen()) { - return; - } - - self.setClasses(); - self.highlightFirstItem(); - }); - - container.on('open', function () { - // When the dropdown is open, aria-expended="true" - self.$results.attr('aria-expanded', 'true'); - self.$results.attr('aria-hidden', 'false'); - - self.setClasses(); - self.ensureHighlightVisible(); - }); - - container.on('close', function () { - // When the dropdown is closed, aria-expended="false" - self.$results.attr('aria-expanded', 'false'); - self.$results.attr('aria-hidden', 'true'); - self.$results.removeAttr('aria-activedescendant'); - }); - - container.on('results:toggle', function () { - var $highlighted = self.getHighlightedResults(); - - if ($highlighted.length === 0) { - return; - } - - $highlighted.trigger('mouseup'); - }); - - container.on('results:select', function () { - var $highlighted = self.getHighlightedResults(); - - if ($highlighted.length === 0) { - return; - } - - var data = $highlighted.data('data'); - - if ($highlighted.attr('data-selected') == 'true') { - self.trigger('close', {}); - } else { - self.trigger('select', { - data: data - }); - } - }); - - container.on('results:previous', function () { - var $highlighted = self.getHighlightedResults(); - - var $options = self.$results.find('[data-selected]'); - - var currentIndex = $options.index($highlighted); - - // If we are already at te top, don't move further - if (currentIndex === 0) { - return; - } - - var nextIndex = currentIndex - 1; - - // If none are highlighted, highlight the first - if ($highlighted.length === 0) { - nextIndex = 0; - } - - var $next = $options.eq(nextIndex); - - $next.trigger('mouseenter'); - - var currentOffset = self.$results.offset().top; - var nextTop = $next.offset().top; - var nextOffset = self.$results.scrollTop() + (nextTop - currentOffset); - - if (nextIndex === 0) { - self.$results.scrollTop(0); - } else if (nextTop - currentOffset < 0) { - self.$results.scrollTop(nextOffset); - } - }); - - container.on('results:next', function () { - var $highlighted = self.getHighlightedResults(); - - var $options = self.$results.find('[data-selected]'); - - var currentIndex = $options.index($highlighted); - - var nextIndex = currentIndex + 1; - - // If we are at the last option, stay there - if (nextIndex >= $options.length) { - return; - } - - var $next = $options.eq(nextIndex); - - $next.trigger('mouseenter'); - - var currentOffset = self.$results.offset().top + - self.$results.outerHeight(false); - var nextBottom = $next.offset().top + $next.outerHeight(false); - var nextOffset = self.$results.scrollTop() + nextBottom - currentOffset; - - if (nextIndex === 0) { - self.$results.scrollTop(0); - } else if (nextBottom > currentOffset) { - self.$results.scrollTop(nextOffset); - } - }); - - container.on('results:focus', function (params) { - params.element.addClass('select2-results__option--highlighted').attr('aria-selected', 'true'); - self.$results.attr('aria-activedescendant', params.element.attr('id')); - }); - - container.on('results:message', function (params) { - self.displayMessage(params); - }); - - if ($.fn.mousewheel) { - this.$results.on('mousewheel', function (e) { - var top = self.$results.scrollTop(); - - var bottom = self.$results.get(0).scrollHeight - top + e.deltaY; - - var isAtTop = e.deltaY > 0 && top - e.deltaY <= 0; - var isAtBottom = e.deltaY < 0 && bottom <= self.$results.height(); - - if (isAtTop) { - self.$results.scrollTop(0); - - e.preventDefault(); - e.stopPropagation(); - } else if (isAtBottom) { - self.$results.scrollTop( - self.$results.get(0).scrollHeight - self.$results.height() - ); - - e.preventDefault(); - e.stopPropagation(); - } - }); - } - - this.$results.on('mouseup', '.select2-results__option[data-selected]', - function (evt) { - var $this = $(this); - - var data = $this.data('data'); - - if ($this.attr('data-selected') === 'true') { - if (self.options.get('multiple')) { - self.trigger('unselect', { - originalEvent: evt, - data: data - }); - } else { - self.trigger('close', {}); - } - - return; - } - - self.trigger('select', { - originalEvent: evt, - data: data - }); - }); - - this.$results.on('mouseenter', '.select2-results__option[data-selected]', - function (evt) { - var data = $(this).data('data'); - - self.getHighlightedResults() - .removeClass('select2-results__option--highlighted') - .attr('aria-selected', 'false'); - - self.trigger('results:focus', { - data: data, - element: $(this) - }); - }); - }; - - Results.prototype.getHighlightedResults = function () { - var $highlighted = this.$results - .find('.select2-results__option--highlighted'); - - return $highlighted; - }; - - Results.prototype.destroy = function () { - this.$results.remove(); - }; - - Results.prototype.ensureHighlightVisible = function () { - var $highlighted = this.getHighlightedResults(); - - if ($highlighted.length === 0) { - return; - } - - var $options = this.$results.find('[data-selected]'); - - var currentIndex = $options.index($highlighted); - - var currentOffset = this.$results.offset().top; - var nextTop = $highlighted.offset().top; - var nextOffset = this.$results.scrollTop() + (nextTop - currentOffset); - - var offsetDelta = nextTop - currentOffset; - nextOffset -= $highlighted.outerHeight(false) * 2; - - if (currentIndex <= 2) { - this.$results.scrollTop(0); - } else if (offsetDelta > this.$results.outerHeight() || offsetDelta < 0) { - this.$results.scrollTop(nextOffset); - } - }; - - Results.prototype.template = function (result, container) { - var template = this.options.get('templateResult'); - var escapeMarkup = this.options.get('escapeMarkup'); - - var content = template(result, container); - - if (content == null) { - container.style.display = 'none'; - } else if (typeof content === 'string') { - container.innerHTML = escapeMarkup(content); - } else { - $(container).append(content); - } - }; - - return Results; -}); - -S2.define('select2/keys',[ - -], function () { - var KEYS = { - BACKSPACE: 8, - TAB: 9, - ENTER: 13, - SHIFT: 16, - CTRL: 17, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46 - }; - - return KEYS; -}); - -S2.define('select2/selection/base',[ - 'jquery', - '../utils', - '../keys' -], function ($, Utils, KEYS) { - function BaseSelection ($element, options) { - this.$element = $element; - this.options = options; - - BaseSelection.__super__.constructor.call(this); - } - - Utils.Extend(BaseSelection, Utils.Observable); - - BaseSelection.prototype.render = function () { - var $selection = $( - '' - ); - - this._tabindex = 0; - - if (this.$element.data('old-tabindex') != null) { - this._tabindex = this.$element.data('old-tabindex'); - } else if (this.$element.attr('tabindex') != null) { - this._tabindex = this.$element.attr('tabindex'); - } - - $selection.attr('title', this.$element.attr('title')); - $selection.attr('tabindex', this._tabindex); - - this.$selection = $selection; - - return $selection; - }; - - BaseSelection.prototype.bind = function (container, $container) { - var self = this; - - var resultsId = container.id + '-results'; - - this.container = container; - - this.$selection.on('focus', function (evt) { - self.trigger('focus', evt); - }); - - this.$selection.on('blur', function (evt) { - self._handleBlur(evt); - }); - - this.$selection.on('keydown', function (evt) { - self.trigger('keypress', evt); - - if (evt.which === KEYS.SPACE) { - evt.preventDefault(); - } - }); - - container.on('results:focus', function (params) { - self.$selection.attr('aria-activedescendant', params.data._resultId); - }); - - container.on('selection:update', function (params) { - self.update(params.data); - }); - - container.on('open', function () { - // When the dropdown is open, aria-expanded="true" - self.$selection.attr('aria-expanded', 'true'); - self.$selection.attr('aria-owns', resultsId); - - self._attachCloseHandler(container); - }); - - container.on('close', function () { - // When the dropdown is closed, aria-expanded="false" - self.$selection.attr('aria-expanded', 'false'); - self.$selection.removeAttr('aria-activedescendant'); - self.$selection.removeAttr('aria-owns'); - - // This needs to be delayed as the active element is the body when the - // key is pressed. - window.setTimeout(function () { - self.$selection.focus(); - }, 1); - - self._detachCloseHandler(container); - }); - - container.on('enable', function () { - self.$selection.attr('tabindex', self._tabindex); - }); - - container.on('disable', function () { - self.$selection.attr('tabindex', '-1'); - }); - }; - - BaseSelection.prototype._handleBlur = function (evt) { - var self = this; - - // This needs to be delayed as the active element is the body when the tab - // key is pressed, possibly along with others. - window.setTimeout(function () { - // Don't trigger `blur` if the focus is still in the selection - if ( - (document.activeElement == self.$selection[0]) || - ($.contains(self.$selection[0], document.activeElement)) - ) { - return; - } - - self.trigger('blur', evt); - }, 1); - }; - - BaseSelection.prototype._attachCloseHandler = function (container) { - - $(document.body).on('mousedown.select2.' + container.id, function (e) { - var $target = $(e.target); - - var $select = $target.closest('.select2'); - - var $all = $('.select2.select2-container--open'); - - $all.each(function () { - var $this = $(this); - - if (this == $select[0]) { - return; - } - - var $element = $this.data('element'); - $element.select2('close'); - - // Remove any focus when dropdown is closed by clicking outside the select area. - // Timeout of 1 required for close to finish wrapping up. - setTimeout(function(){ - $this.find('*:focus').blur(); - $target.focus(); - }, 1); - }); - }); - }; - - BaseSelection.prototype._detachCloseHandler = function (container) { - $(document.body).off('mousedown.select2.' + container.id); - }; - - BaseSelection.prototype.position = function ($selection, $container) { - var $selectionContainer = $container.find('.selection'); - $selectionContainer.append($selection); - }; - - BaseSelection.prototype.destroy = function () { - this._detachCloseHandler(this.container); - }; - - BaseSelection.prototype.update = function (data) { - throw new Error('The `update` method must be defined in child classes.'); - }; - - return BaseSelection; -}); - -S2.define('select2/selection/single',[ - 'jquery', - './base', - '../utils', - '../keys' -], function ($, BaseSelection, Utils, KEYS) { - function SingleSelection () { - SingleSelection.__super__.constructor.apply(this, arguments); - } - - Utils.Extend(SingleSelection, BaseSelection); - - SingleSelection.prototype.render = function () { - var $selection = SingleSelection.__super__.render.call(this); - - $selection.addClass('select2-selection--single'); - - $selection.html( - '' + - '' + - '' + - '' - ); - - return $selection; - }; - - SingleSelection.prototype.bind = function (container, $container) { - var self = this; - - SingleSelection.__super__.bind.apply(this, arguments); - - var id = container.id + '-container'; - - this.$selection.find('.select2-selection__rendered') - .attr('id', id) - .attr('role', 'textbox') - .attr('aria-readonly', 'true'); - this.$selection.attr('aria-labelledby', id); - - // This makes single non-search selects work in screen readers. If it causes problems elsewhere, remove. - this.$selection.attr('role', 'combobox'); - - this.$selection.on('mousedown', function (evt) { - // Only respond to left clicks - if (evt.which !== 1) { - return; - } - - self.trigger('toggle', { - originalEvent: evt - }); - }); - - this.$selection.on('focus', function (evt) { - // User focuses on the container - }); - - this.$selection.on('keydown', function (evt) { - // If user starts typing an alphanumeric key on the keyboard, open if not opened. - if (!container.isOpen() && evt.which >= 48 && evt.which <= 90) { - container.open(); - } - }); - - this.$selection.on('blur', function (evt) { - // User exits the container - }); - - container.on('focus', function (evt) { - if (!container.isOpen()) { - self.$selection.focus(); - } - }); - - container.on('selection:update', function (params) { - self.update(params.data); - }); - }; - - SingleSelection.prototype.clear = function () { - this.$selection.find('.select2-selection__rendered').empty(); - }; - - SingleSelection.prototype.display = function (data, container) { - var template = this.options.get('templateSelection'); - var escapeMarkup = this.options.get('escapeMarkup'); - - return escapeMarkup(template(data, container)); - }; - - SingleSelection.prototype.selectionContainer = function () { - return $(''); - }; - - SingleSelection.prototype.update = function (data) { - if (data.length === 0) { - this.clear(); - return; - } - - var selection = data[0]; - - var $rendered = this.$selection.find('.select2-selection__rendered'); - var formatted = Utils.entityDecode(this.display(selection, $rendered)); - - $rendered.empty().text(formatted); - $rendered.prop('title', selection.title || selection.text); - }; - - return SingleSelection; -}); - -S2.define('select2/selection/multiple',[ - 'jquery', - './base', - '../utils' -], function ($, BaseSelection, Utils) { - function MultipleSelection ($element, options) { - MultipleSelection.__super__.constructor.apply(this, arguments); - } - - Utils.Extend(MultipleSelection, BaseSelection); - - MultipleSelection.prototype.render = function () { - var $selection = MultipleSelection.__super__.render.call(this); - - $selection.addClass('select2-selection--multiple'); - - $selection.html( - '
        ' - ); - - return $selection; - }; - - MultipleSelection.prototype.bind = function (container, $container) { - var self = this; - - MultipleSelection.__super__.bind.apply(this, arguments); - - this.$selection.on('click', function (evt) { - self.trigger('toggle', { - originalEvent: evt - }); - }); - - this.$selection.on( - 'click', - '.select2-selection__choice__remove', - function (evt) { - // Ignore the event if it is disabled - if (self.options.get('disabled')) { - return; - } - - var $remove = $(this); - var $selection = $remove.parent(); - - var data = $selection.data('data'); - - self.trigger('unselect', { - originalEvent: evt, - data: data - }); - } - ); - - this.$selection.on('keydown', function (evt) { - // If user starts typing an alphanumeric key on the keyboard, open if not opened. - if (!container.isOpen() && evt.which >= 48 && evt.which <= 90) { - container.open(); - } - }); - - // Focus on the search field when the container is focused instead of the main container. - container.on( 'focus', function(){ - self.focusOnSearch(); - }); - }; - - MultipleSelection.prototype.clear = function () { - this.$selection.find('.select2-selection__rendered').empty(); - }; - - MultipleSelection.prototype.display = function (data, container) { - var template = this.options.get('templateSelection'); - var escapeMarkup = this.options.get('escapeMarkup'); - - return escapeMarkup(template(data, container)); - }; - - MultipleSelection.prototype.selectionContainer = function () { - var $container = $( - '
      • ' + - '' + - '
      • ' - ); - - return $container; - }; - - /** - * Focus on the search field instead of the main multiselect container. - */ - MultipleSelection.prototype.focusOnSearch = function() { - var self = this; - - if ('undefined' !== typeof self.$search) { - // Needs 1 ms delay because of other 1 ms setTimeouts when rendering. - setTimeout(function(){ - // Prevent the dropdown opening again when focused from this. - // This gets reset automatically when focus is triggered. - self._keyUpPrevented = true; - - self.$search.focus(); - }, 1); - } - } - - MultipleSelection.prototype.update = function (data) { - this.clear(); - - if (data.length === 0) { - return; - } - - var $selections = []; - - for (var d = 0; d < data.length; d++) { - var selection = data[d]; - - var $selection = this.selectionContainer(); - var formatted = this.display(selection, $selection); - if ('string' === typeof formatted) { - formatted = Utils.entityDecode(formatted.trim()); - } - - $selection.text(formatted); - $selection.append(''); - $selection.prop('title', selection.title || selection.text); - - $selection.data('data', selection); - - $selections.push($selection); - } - - var $rendered = this.$selection.find('.select2-selection__rendered'); - - Utils.appendMany($rendered, $selections); - }; - - return MultipleSelection; -}); - -S2.define('select2/selection/placeholder',[ - '../utils' -], function (Utils) { - function Placeholder (decorated, $element, options) { - this.placeholder = this.normalizePlaceholder(options.get('placeholder')); - - decorated.call(this, $element, options); - } - - Placeholder.prototype.normalizePlaceholder = function (_, placeholder) { - if (typeof placeholder === 'string') { - placeholder = { - id: '', - text: placeholder - }; - } - - return placeholder; - }; - - Placeholder.prototype.createPlaceholder = function (decorated, placeholder) { - var $placeholder = this.selectionContainer(); - - $placeholder.text(Utils.entityDecode(this.display(placeholder))); - $placeholder.addClass('select2-selection__placeholder') - .removeClass('select2-selection__choice'); - - return $placeholder; - }; - - Placeholder.prototype.update = function (decorated, data) { - var singlePlaceholder = ( - data.length == 1 && data[0].id != this.placeholder.id - ); - var multipleSelections = data.length > 1; - - if (multipleSelections || singlePlaceholder) { - return decorated.call(this, data); - } - - this.clear(); - - var $placeholder = this.createPlaceholder(this.placeholder); - - this.$selection.find('.select2-selection__rendered').append($placeholder); - }; - - return Placeholder; -}); - -S2.define('select2/selection/allowClear',[ - 'jquery', - '../keys' -], function ($, KEYS) { - function AllowClear () { } - - AllowClear.prototype.bind = function (decorated, container, $container) { - var self = this; - - decorated.call(this, container, $container); - - if (this.placeholder == null) { - if (this.options.get('debug') && window.console && console.error) { - console.error( - 'Select2: The `allowClear` option should be used in combination ' + - 'with the `placeholder` option.' - ); - } - } - - this.$selection.on('mousedown', '.select2-selection__clear', - function (evt) { - self._handleClear(evt); - }); - - container.on('keypress', function (evt) { - self._handleKeyboardClear(evt, container); - }); - }; - - AllowClear.prototype._handleClear = function (_, evt) { - // Ignore the event if it is disabled - if (this.options.get('disabled')) { - return; - } - - var $clear = this.$selection.find('.select2-selection__clear'); - - // Ignore the event if nothing has been selected - if ($clear.length === 0) { - return; - } - - evt.stopPropagation(); - - var data = $clear.data('data'); - - for (var d = 0; d < data.length; d++) { - var unselectData = { - data: data[d] - }; - - // Trigger the `unselect` event, so people can prevent it from being - // cleared. - this.trigger('unselect', unselectData); - - // If the event was prevented, don't clear it out. - if (unselectData.prevented) { - return; - } - } - - this.$element.val(this.placeholder.id).trigger('change'); - - this.trigger('toggle', {}); - }; - - AllowClear.prototype._handleKeyboardClear = function (_, evt, container) { - if (container.isOpen()) { - return; - } - - if (evt.which == KEYS.DELETE || evt.which == KEYS.BACKSPACE) { - this._handleClear(evt); - } - }; - - AllowClear.prototype.update = function (decorated, data) { - decorated.call(this, data); - - if (this.$selection.find('.select2-selection__placeholder').length > 0 || - data.length === 0) { - return; - } - - var $remove = $( - '' + - '×' + - '' - ); - $remove.data('data', data); - - this.$selection.find('.select2-selection__rendered').prepend($remove); - }; - - return AllowClear; -}); - -S2.define('select2/selection/search',[ - 'jquery', - '../utils', - '../keys' -], function ($, Utils, KEYS) { - function Search (decorated, $element, options) { - decorated.call(this, $element, options); - } - - Search.prototype.render = function (decorated) { - var $search = $( - '' - ); - - this.$searchContainer = $search; - this.$search = $search.find('input'); - - var $rendered = decorated.call(this); - - this._transferTabIndex(); - - return $rendered; - }; - - Search.prototype.bind = function (decorated, container, $container) { - var self = this; - var resultsId = container.id + '-results'; - - decorated.call(this, container, $container); - - container.on('open', function () { - self.$search.attr('aria-owns', resultsId); - self.$search.trigger('focus'); - }); - - container.on('close', function () { - self.$search.val(''); - self.$search.removeAttr('aria-activedescendant'); - self.$search.removeAttr('aria-owns'); - self.$search.trigger('focus'); - }); - - container.on('enable', function () { - self.$search.prop('disabled', false); - - self._transferTabIndex(); - }); - - container.on('disable', function () { - self.$search.prop('disabled', true); - }); - - container.on('focus', function (evt) { - self.$search.trigger('focus'); - }); - - container.on('results:focus', function (params) { - self.$search.attr('aria-activedescendant', params.data._resultId); - }); - - this.$selection.on('focusin', '.select2-search--inline', function (evt) { - self.trigger('focus', evt); - }); - - this.$selection.on('focusout', '.select2-search--inline', function (evt) { - self._handleBlur(evt); - }); - - this.$selection.on('keydown', '.select2-search--inline', function (evt) { - evt.stopPropagation(); - - self.trigger('keypress', evt); - - self._keyUpPrevented = evt.isDefaultPrevented(); - - var key = evt.which; - - if (key === KEYS.BACKSPACE && self.$search.val() === '') { - var $previousChoice = self.$searchContainer - .prev('.select2-selection__choice'); - - if ($previousChoice.length > 0) { - var item = $previousChoice.data('data'); - - self.searchRemoveChoice(item); - - evt.preventDefault(); - } - } else if (evt.which === KEYS.ENTER) { - container.open(); - evt.preventDefault(); - } - }); - - // Try to detect the IE version should the `documentMode` property that - // is stored on the document. This is only implemented in IE and is - // slightly cleaner than doing a user agent check. - // This property is not available in Edge, but Edge also doesn't have - // this bug. - var msie = document.documentMode; - var disableInputEvents = msie && msie <= 11; - - // Workaround for browsers which do not support the `input` event - // This will prevent double-triggering of events for browsers which support - // both the `keyup` and `input` events. - this.$selection.on( - 'input.searchcheck', - '.select2-search--inline', - function (evt) { - // IE will trigger the `input` event when a placeholder is used on a - // search box. To get around this issue, we are forced to ignore all - // `input` events in IE and keep using `keyup`. - if (disableInputEvents) { - self.$selection.off('input.search input.searchcheck'); - return; - } - - // Unbind the duplicated `keyup` event - self.$selection.off('keyup.search'); - } - ); - - this.$selection.on( - 'keyup.search input.search', - '.select2-search--inline', - function (evt) { - // IE will trigger the `input` event when a placeholder is used on a - // search box. To get around this issue, we are forced to ignore all - // `input` events in IE and keep using `keyup`. - if (disableInputEvents && evt.type === 'input') { - self.$selection.off('input.search input.searchcheck'); - return; - } - - var key = evt.which; - - // We can freely ignore events from modifier keys - if (key == KEYS.SHIFT || key == KEYS.CTRL || key == KEYS.ALT) { - return; - } - - // Tabbing will be handled during the `keydown` phase - if (key == KEYS.TAB) { - return; - } - - self.handleSearch(evt); - } - ); - }; - - /** - * This method will transfer the tabindex attribute from the rendered - * selection to the search box. This allows for the search box to be used as - * the primary focus instead of the selection container. - * - * @private - */ - Search.prototype._transferTabIndex = function (decorated) { - this.$search.attr('tabindex', this.$selection.attr('tabindex')); - this.$selection.attr('tabindex', '-1'); - }; - - Search.prototype.createPlaceholder = function (decorated, placeholder) { - this.$search.attr('placeholder', placeholder.text); - }; - - Search.prototype.update = function (decorated, data) { - var searchHadFocus = this.$search[0] == document.activeElement; - - this.$search.attr('placeholder', ''); - - decorated.call(this, data); - - this.$selection.find('.select2-selection__rendered') - .append(this.$searchContainer); - - this.resizeSearch(); - if (searchHadFocus) { - this.$search.focus(); - } - }; - - Search.prototype.handleSearch = function () { - this.resizeSearch(); - - if (!this._keyUpPrevented) { - var input = this.$search.val(); - - this.trigger('query', { - term: input - }); - } - - this._keyUpPrevented = false; - }; - - Search.prototype.searchRemoveChoice = function (decorated, item) { - this.trigger('unselect', { - data: item - }); - - this.$search.val(item.text); - this.handleSearch(); - }; - - Search.prototype.resizeSearch = function () { - this.$search.css('width', '25px'); - - var width = ''; - - if (this.$search.attr('placeholder') !== '') { - width = this.$selection.find('.select2-selection__rendered').innerWidth(); - } else { - var minimumWidth = this.$search.val().length + 1; - - width = (minimumWidth * 0.75) + 'em'; - } - - this.$search.css('width', width); - }; - - return Search; -}); - -S2.define('select2/selection/eventRelay',[ - 'jquery' -], function ($) { - function EventRelay () { } - - EventRelay.prototype.bind = function (decorated, container, $container) { - var self = this; - var relayEvents = [ - 'open', 'opening', - 'close', 'closing', - 'select', 'selecting', - 'unselect', 'unselecting' - ]; - - var preventableEvents = ['opening', 'closing', 'selecting', 'unselecting']; - - decorated.call(this, container, $container); - - container.on('*', function (name, params) { - // Ignore events that should not be relayed - if ($.inArray(name, relayEvents) === -1) { - return; - } - - // The parameters should always be an object - params = params || {}; - - // Generate the jQuery event for the Select2 event - var evt = $.Event('select2:' + name, { - params: params - }); - - self.$element.trigger(evt); - - // Only handle preventable events if it was one - if ($.inArray(name, preventableEvents) === -1) { - return; - } - - params.prevented = evt.isDefaultPrevented(); - }); - }; - - return EventRelay; -}); - -S2.define('select2/translation',[ - 'jquery', - 'require' -], function ($, require) { - function Translation (dict) { - this.dict = dict || {}; - } - - Translation.prototype.all = function () { - return this.dict; - }; - - Translation.prototype.get = function (key) { - return this.dict[key]; - }; - - Translation.prototype.extend = function (translation) { - this.dict = $.extend({}, translation.all(), this.dict); - }; - - // Static functions - - Translation._cache = {}; - - Translation.loadPath = function (path) { - if (!(path in Translation._cache)) { - var translations = require(path); - - Translation._cache[path] = translations; - } - - return new Translation(Translation._cache[path]); - }; - - return Translation; -}); - -S2.define('select2/diacritics',[ - -], function () { - var diacritics = { - '\u24B6': 'A', - '\uFF21': 'A', - '\u00C0': 'A', - '\u00C1': 'A', - '\u00C2': 'A', - '\u1EA6': 'A', - '\u1EA4': 'A', - '\u1EAA': 'A', - '\u1EA8': 'A', - '\u00C3': 'A', - '\u0100': 'A', - '\u0102': 'A', - '\u1EB0': 'A', - '\u1EAE': 'A', - '\u1EB4': 'A', - '\u1EB2': 'A', - '\u0226': 'A', - '\u01E0': 'A', - '\u00C4': 'A', - '\u01DE': 'A', - '\u1EA2': 'A', - '\u00C5': 'A', - '\u01FA': 'A', - '\u01CD': 'A', - '\u0200': 'A', - '\u0202': 'A', - '\u1EA0': 'A', - '\u1EAC': 'A', - '\u1EB6': 'A', - '\u1E00': 'A', - '\u0104': 'A', - '\u023A': 'A', - '\u2C6F': 'A', - '\uA732': 'AA', - '\u00C6': 'AE', - '\u01FC': 'AE', - '\u01E2': 'AE', - '\uA734': 'AO', - '\uA736': 'AU', - '\uA738': 'AV', - '\uA73A': 'AV', - '\uA73C': 'AY', - '\u24B7': 'B', - '\uFF22': 'B', - '\u1E02': 'B', - '\u1E04': 'B', - '\u1E06': 'B', - '\u0243': 'B', - '\u0182': 'B', - '\u0181': 'B', - '\u24B8': 'C', - '\uFF23': 'C', - '\u0106': 'C', - '\u0108': 'C', - '\u010A': 'C', - '\u010C': 'C', - '\u00C7': 'C', - '\u1E08': 'C', - '\u0187': 'C', - '\u023B': 'C', - '\uA73E': 'C', - '\u24B9': 'D', - '\uFF24': 'D', - '\u1E0A': 'D', - '\u010E': 'D', - '\u1E0C': 'D', - '\u1E10': 'D', - '\u1E12': 'D', - '\u1E0E': 'D', - '\u0110': 'D', - '\u018B': 'D', - '\u018A': 'D', - '\u0189': 'D', - '\uA779': 'D', - '\u01F1': 'DZ', - '\u01C4': 'DZ', - '\u01F2': 'Dz', - '\u01C5': 'Dz', - '\u24BA': 'E', - '\uFF25': 'E', - '\u00C8': 'E', - '\u00C9': 'E', - '\u00CA': 'E', - '\u1EC0': 'E', - '\u1EBE': 'E', - '\u1EC4': 'E', - '\u1EC2': 'E', - '\u1EBC': 'E', - '\u0112': 'E', - '\u1E14': 'E', - '\u1E16': 'E', - '\u0114': 'E', - '\u0116': 'E', - '\u00CB': 'E', - '\u1EBA': 'E', - '\u011A': 'E', - '\u0204': 'E', - '\u0206': 'E', - '\u1EB8': 'E', - '\u1EC6': 'E', - '\u0228': 'E', - '\u1E1C': 'E', - '\u0118': 'E', - '\u1E18': 'E', - '\u1E1A': 'E', - '\u0190': 'E', - '\u018E': 'E', - '\u24BB': 'F', - '\uFF26': 'F', - '\u1E1E': 'F', - '\u0191': 'F', - '\uA77B': 'F', - '\u24BC': 'G', - '\uFF27': 'G', - '\u01F4': 'G', - '\u011C': 'G', - '\u1E20': 'G', - '\u011E': 'G', - '\u0120': 'G', - '\u01E6': 'G', - '\u0122': 'G', - '\u01E4': 'G', - '\u0193': 'G', - '\uA7A0': 'G', - '\uA77D': 'G', - '\uA77E': 'G', - '\u24BD': 'H', - '\uFF28': 'H', - '\u0124': 'H', - '\u1E22': 'H', - '\u1E26': 'H', - '\u021E': 'H', - '\u1E24': 'H', - '\u1E28': 'H', - '\u1E2A': 'H', - '\u0126': 'H', - '\u2C67': 'H', - '\u2C75': 'H', - '\uA78D': 'H', - '\u24BE': 'I', - '\uFF29': 'I', - '\u00CC': 'I', - '\u00CD': 'I', - '\u00CE': 'I', - '\u0128': 'I', - '\u012A': 'I', - '\u012C': 'I', - '\u0130': 'I', - '\u00CF': 'I', - '\u1E2E': 'I', - '\u1EC8': 'I', - '\u01CF': 'I', - '\u0208': 'I', - '\u020A': 'I', - '\u1ECA': 'I', - '\u012E': 'I', - '\u1E2C': 'I', - '\u0197': 'I', - '\u24BF': 'J', - '\uFF2A': 'J', - '\u0134': 'J', - '\u0248': 'J', - '\u24C0': 'K', - '\uFF2B': 'K', - '\u1E30': 'K', - '\u01E8': 'K', - '\u1E32': 'K', - '\u0136': 'K', - '\u1E34': 'K', - '\u0198': 'K', - '\u2C69': 'K', - '\uA740': 'K', - '\uA742': 'K', - '\uA744': 'K', - '\uA7A2': 'K', - '\u24C1': 'L', - '\uFF2C': 'L', - '\u013F': 'L', - '\u0139': 'L', - '\u013D': 'L', - '\u1E36': 'L', - '\u1E38': 'L', - '\u013B': 'L', - '\u1E3C': 'L', - '\u1E3A': 'L', - '\u0141': 'L', - '\u023D': 'L', - '\u2C62': 'L', - '\u2C60': 'L', - '\uA748': 'L', - '\uA746': 'L', - '\uA780': 'L', - '\u01C7': 'LJ', - '\u01C8': 'Lj', - '\u24C2': 'M', - '\uFF2D': 'M', - '\u1E3E': 'M', - '\u1E40': 'M', - '\u1E42': 'M', - '\u2C6E': 'M', - '\u019C': 'M', - '\u24C3': 'N', - '\uFF2E': 'N', - '\u01F8': 'N', - '\u0143': 'N', - '\u00D1': 'N', - '\u1E44': 'N', - '\u0147': 'N', - '\u1E46': 'N', - '\u0145': 'N', - '\u1E4A': 'N', - '\u1E48': 'N', - '\u0220': 'N', - '\u019D': 'N', - '\uA790': 'N', - '\uA7A4': 'N', - '\u01CA': 'NJ', - '\u01CB': 'Nj', - '\u24C4': 'O', - '\uFF2F': 'O', - '\u00D2': 'O', - '\u00D3': 'O', - '\u00D4': 'O', - '\u1ED2': 'O', - '\u1ED0': 'O', - '\u1ED6': 'O', - '\u1ED4': 'O', - '\u00D5': 'O', - '\u1E4C': 'O', - '\u022C': 'O', - '\u1E4E': 'O', - '\u014C': 'O', - '\u1E50': 'O', - '\u1E52': 'O', - '\u014E': 'O', - '\u022E': 'O', - '\u0230': 'O', - '\u00D6': 'O', - '\u022A': 'O', - '\u1ECE': 'O', - '\u0150': 'O', - '\u01D1': 'O', - '\u020C': 'O', - '\u020E': 'O', - '\u01A0': 'O', - '\u1EDC': 'O', - '\u1EDA': 'O', - '\u1EE0': 'O', - '\u1EDE': 'O', - '\u1EE2': 'O', - '\u1ECC': 'O', - '\u1ED8': 'O', - '\u01EA': 'O', - '\u01EC': 'O', - '\u00D8': 'O', - '\u01FE': 'O', - '\u0186': 'O', - '\u019F': 'O', - '\uA74A': 'O', - '\uA74C': 'O', - '\u01A2': 'OI', - '\uA74E': 'OO', - '\u0222': 'OU', - '\u24C5': 'P', - '\uFF30': 'P', - '\u1E54': 'P', - '\u1E56': 'P', - '\u01A4': 'P', - '\u2C63': 'P', - '\uA750': 'P', - '\uA752': 'P', - '\uA754': 'P', - '\u24C6': 'Q', - '\uFF31': 'Q', - '\uA756': 'Q', - '\uA758': 'Q', - '\u024A': 'Q', - '\u24C7': 'R', - '\uFF32': 'R', - '\u0154': 'R', - '\u1E58': 'R', - '\u0158': 'R', - '\u0210': 'R', - '\u0212': 'R', - '\u1E5A': 'R', - '\u1E5C': 'R', - '\u0156': 'R', - '\u1E5E': 'R', - '\u024C': 'R', - '\u2C64': 'R', - '\uA75A': 'R', - '\uA7A6': 'R', - '\uA782': 'R', - '\u24C8': 'S', - '\uFF33': 'S', - '\u1E9E': 'S', - '\u015A': 'S', - '\u1E64': 'S', - '\u015C': 'S', - '\u1E60': 'S', - '\u0160': 'S', - '\u1E66': 'S', - '\u1E62': 'S', - '\u1E68': 'S', - '\u0218': 'S', - '\u015E': 'S', - '\u2C7E': 'S', - '\uA7A8': 'S', - '\uA784': 'S', - '\u24C9': 'T', - '\uFF34': 'T', - '\u1E6A': 'T', - '\u0164': 'T', - '\u1E6C': 'T', - '\u021A': 'T', - '\u0162': 'T', - '\u1E70': 'T', - '\u1E6E': 'T', - '\u0166': 'T', - '\u01AC': 'T', - '\u01AE': 'T', - '\u023E': 'T', - '\uA786': 'T', - '\uA728': 'TZ', - '\u24CA': 'U', - '\uFF35': 'U', - '\u00D9': 'U', - '\u00DA': 'U', - '\u00DB': 'U', - '\u0168': 'U', - '\u1E78': 'U', - '\u016A': 'U', - '\u1E7A': 'U', - '\u016C': 'U', - '\u00DC': 'U', - '\u01DB': 'U', - '\u01D7': 'U', - '\u01D5': 'U', - '\u01D9': 'U', - '\u1EE6': 'U', - '\u016E': 'U', - '\u0170': 'U', - '\u01D3': 'U', - '\u0214': 'U', - '\u0216': 'U', - '\u01AF': 'U', - '\u1EEA': 'U', - '\u1EE8': 'U', - '\u1EEE': 'U', - '\u1EEC': 'U', - '\u1EF0': 'U', - '\u1EE4': 'U', - '\u1E72': 'U', - '\u0172': 'U', - '\u1E76': 'U', - '\u1E74': 'U', - '\u0244': 'U', - '\u24CB': 'V', - '\uFF36': 'V', - '\u1E7C': 'V', - '\u1E7E': 'V', - '\u01B2': 'V', - '\uA75E': 'V', - '\u0245': 'V', - '\uA760': 'VY', - '\u24CC': 'W', - '\uFF37': 'W', - '\u1E80': 'W', - '\u1E82': 'W', - '\u0174': 'W', - '\u1E86': 'W', - '\u1E84': 'W', - '\u1E88': 'W', - '\u2C72': 'W', - '\u24CD': 'X', - '\uFF38': 'X', - '\u1E8A': 'X', - '\u1E8C': 'X', - '\u24CE': 'Y', - '\uFF39': 'Y', - '\u1EF2': 'Y', - '\u00DD': 'Y', - '\u0176': 'Y', - '\u1EF8': 'Y', - '\u0232': 'Y', - '\u1E8E': 'Y', - '\u0178': 'Y', - '\u1EF6': 'Y', - '\u1EF4': 'Y', - '\u01B3': 'Y', - '\u024E': 'Y', - '\u1EFE': 'Y', - '\u24CF': 'Z', - '\uFF3A': 'Z', - '\u0179': 'Z', - '\u1E90': 'Z', - '\u017B': 'Z', - '\u017D': 'Z', - '\u1E92': 'Z', - '\u1E94': 'Z', - '\u01B5': 'Z', - '\u0224': 'Z', - '\u2C7F': 'Z', - '\u2C6B': 'Z', - '\uA762': 'Z', - '\u24D0': 'a', - '\uFF41': 'a', - '\u1E9A': 'a', - '\u00E0': 'a', - '\u00E1': 'a', - '\u00E2': 'a', - '\u1EA7': 'a', - '\u1EA5': 'a', - '\u1EAB': 'a', - '\u1EA9': 'a', - '\u00E3': 'a', - '\u0101': 'a', - '\u0103': 'a', - '\u1EB1': 'a', - '\u1EAF': 'a', - '\u1EB5': 'a', - '\u1EB3': 'a', - '\u0227': 'a', - '\u01E1': 'a', - '\u00E4': 'a', - '\u01DF': 'a', - '\u1EA3': 'a', - '\u00E5': 'a', - '\u01FB': 'a', - '\u01CE': 'a', - '\u0201': 'a', - '\u0203': 'a', - '\u1EA1': 'a', - '\u1EAD': 'a', - '\u1EB7': 'a', - '\u1E01': 'a', - '\u0105': 'a', - '\u2C65': 'a', - '\u0250': 'a', - '\uA733': 'aa', - '\u00E6': 'ae', - '\u01FD': 'ae', - '\u01E3': 'ae', - '\uA735': 'ao', - '\uA737': 'au', - '\uA739': 'av', - '\uA73B': 'av', - '\uA73D': 'ay', - '\u24D1': 'b', - '\uFF42': 'b', - '\u1E03': 'b', - '\u1E05': 'b', - '\u1E07': 'b', - '\u0180': 'b', - '\u0183': 'b', - '\u0253': 'b', - '\u24D2': 'c', - '\uFF43': 'c', - '\u0107': 'c', - '\u0109': 'c', - '\u010B': 'c', - '\u010D': 'c', - '\u00E7': 'c', - '\u1E09': 'c', - '\u0188': 'c', - '\u023C': 'c', - '\uA73F': 'c', - '\u2184': 'c', - '\u24D3': 'd', - '\uFF44': 'd', - '\u1E0B': 'd', - '\u010F': 'd', - '\u1E0D': 'd', - '\u1E11': 'd', - '\u1E13': 'd', - '\u1E0F': 'd', - '\u0111': 'd', - '\u018C': 'd', - '\u0256': 'd', - '\u0257': 'd', - '\uA77A': 'd', - '\u01F3': 'dz', - '\u01C6': 'dz', - '\u24D4': 'e', - '\uFF45': 'e', - '\u00E8': 'e', - '\u00E9': 'e', - '\u00EA': 'e', - '\u1EC1': 'e', - '\u1EBF': 'e', - '\u1EC5': 'e', - '\u1EC3': 'e', - '\u1EBD': 'e', - '\u0113': 'e', - '\u1E15': 'e', - '\u1E17': 'e', - '\u0115': 'e', - '\u0117': 'e', - '\u00EB': 'e', - '\u1EBB': 'e', - '\u011B': 'e', - '\u0205': 'e', - '\u0207': 'e', - '\u1EB9': 'e', - '\u1EC7': 'e', - '\u0229': 'e', - '\u1E1D': 'e', - '\u0119': 'e', - '\u1E19': 'e', - '\u1E1B': 'e', - '\u0247': 'e', - '\u025B': 'e', - '\u01DD': 'e', - '\u24D5': 'f', - '\uFF46': 'f', - '\u1E1F': 'f', - '\u0192': 'f', - '\uA77C': 'f', - '\u24D6': 'g', - '\uFF47': 'g', - '\u01F5': 'g', - '\u011D': 'g', - '\u1E21': 'g', - '\u011F': 'g', - '\u0121': 'g', - '\u01E7': 'g', - '\u0123': 'g', - '\u01E5': 'g', - '\u0260': 'g', - '\uA7A1': 'g', - '\u1D79': 'g', - '\uA77F': 'g', - '\u24D7': 'h', - '\uFF48': 'h', - '\u0125': 'h', - '\u1E23': 'h', - '\u1E27': 'h', - '\u021F': 'h', - '\u1E25': 'h', - '\u1E29': 'h', - '\u1E2B': 'h', - '\u1E96': 'h', - '\u0127': 'h', - '\u2C68': 'h', - '\u2C76': 'h', - '\u0265': 'h', - '\u0195': 'hv', - '\u24D8': 'i', - '\uFF49': 'i', - '\u00EC': 'i', - '\u00ED': 'i', - '\u00EE': 'i', - '\u0129': 'i', - '\u012B': 'i', - '\u012D': 'i', - '\u00EF': 'i', - '\u1E2F': 'i', - '\u1EC9': 'i', - '\u01D0': 'i', - '\u0209': 'i', - '\u020B': 'i', - '\u1ECB': 'i', - '\u012F': 'i', - '\u1E2D': 'i', - '\u0268': 'i', - '\u0131': 'i', - '\u24D9': 'j', - '\uFF4A': 'j', - '\u0135': 'j', - '\u01F0': 'j', - '\u0249': 'j', - '\u24DA': 'k', - '\uFF4B': 'k', - '\u1E31': 'k', - '\u01E9': 'k', - '\u1E33': 'k', - '\u0137': 'k', - '\u1E35': 'k', - '\u0199': 'k', - '\u2C6A': 'k', - '\uA741': 'k', - '\uA743': 'k', - '\uA745': 'k', - '\uA7A3': 'k', - '\u24DB': 'l', - '\uFF4C': 'l', - '\u0140': 'l', - '\u013A': 'l', - '\u013E': 'l', - '\u1E37': 'l', - '\u1E39': 'l', - '\u013C': 'l', - '\u1E3D': 'l', - '\u1E3B': 'l', - '\u017F': 'l', - '\u0142': 'l', - '\u019A': 'l', - '\u026B': 'l', - '\u2C61': 'l', - '\uA749': 'l', - '\uA781': 'l', - '\uA747': 'l', - '\u01C9': 'lj', - '\u24DC': 'm', - '\uFF4D': 'm', - '\u1E3F': 'm', - '\u1E41': 'm', - '\u1E43': 'm', - '\u0271': 'm', - '\u026F': 'm', - '\u24DD': 'n', - '\uFF4E': 'n', - '\u01F9': 'n', - '\u0144': 'n', - '\u00F1': 'n', - '\u1E45': 'n', - '\u0148': 'n', - '\u1E47': 'n', - '\u0146': 'n', - '\u1E4B': 'n', - '\u1E49': 'n', - '\u019E': 'n', - '\u0272': 'n', - '\u0149': 'n', - '\uA791': 'n', - '\uA7A5': 'n', - '\u01CC': 'nj', - '\u24DE': 'o', - '\uFF4F': 'o', - '\u00F2': 'o', - '\u00F3': 'o', - '\u00F4': 'o', - '\u1ED3': 'o', - '\u1ED1': 'o', - '\u1ED7': 'o', - '\u1ED5': 'o', - '\u00F5': 'o', - '\u1E4D': 'o', - '\u022D': 'o', - '\u1E4F': 'o', - '\u014D': 'o', - '\u1E51': 'o', - '\u1E53': 'o', - '\u014F': 'o', - '\u022F': 'o', - '\u0231': 'o', - '\u00F6': 'o', - '\u022B': 'o', - '\u1ECF': 'o', - '\u0151': 'o', - '\u01D2': 'o', - '\u020D': 'o', - '\u020F': 'o', - '\u01A1': 'o', - '\u1EDD': 'o', - '\u1EDB': 'o', - '\u1EE1': 'o', - '\u1EDF': 'o', - '\u1EE3': 'o', - '\u1ECD': 'o', - '\u1ED9': 'o', - '\u01EB': 'o', - '\u01ED': 'o', - '\u00F8': 'o', - '\u01FF': 'o', - '\u0254': 'o', - '\uA74B': 'o', - '\uA74D': 'o', - '\u0275': 'o', - '\u01A3': 'oi', - '\u0223': 'ou', - '\uA74F': 'oo', - '\u24DF': 'p', - '\uFF50': 'p', - '\u1E55': 'p', - '\u1E57': 'p', - '\u01A5': 'p', - '\u1D7D': 'p', - '\uA751': 'p', - '\uA753': 'p', - '\uA755': 'p', - '\u24E0': 'q', - '\uFF51': 'q', - '\u024B': 'q', - '\uA757': 'q', - '\uA759': 'q', - '\u24E1': 'r', - '\uFF52': 'r', - '\u0155': 'r', - '\u1E59': 'r', - '\u0159': 'r', - '\u0211': 'r', - '\u0213': 'r', - '\u1E5B': 'r', - '\u1E5D': 'r', - '\u0157': 'r', - '\u1E5F': 'r', - '\u024D': 'r', - '\u027D': 'r', - '\uA75B': 'r', - '\uA7A7': 'r', - '\uA783': 'r', - '\u24E2': 's', - '\uFF53': 's', - '\u00DF': 's', - '\u015B': 's', - '\u1E65': 's', - '\u015D': 's', - '\u1E61': 's', - '\u0161': 's', - '\u1E67': 's', - '\u1E63': 's', - '\u1E69': 's', - '\u0219': 's', - '\u015F': 's', - '\u023F': 's', - '\uA7A9': 's', - '\uA785': 's', - '\u1E9B': 's', - '\u24E3': 't', - '\uFF54': 't', - '\u1E6B': 't', - '\u1E97': 't', - '\u0165': 't', - '\u1E6D': 't', - '\u021B': 't', - '\u0163': 't', - '\u1E71': 't', - '\u1E6F': 't', - '\u0167': 't', - '\u01AD': 't', - '\u0288': 't', - '\u2C66': 't', - '\uA787': 't', - '\uA729': 'tz', - '\u24E4': 'u', - '\uFF55': 'u', - '\u00F9': 'u', - '\u00FA': 'u', - '\u00FB': 'u', - '\u0169': 'u', - '\u1E79': 'u', - '\u016B': 'u', - '\u1E7B': 'u', - '\u016D': 'u', - '\u00FC': 'u', - '\u01DC': 'u', - '\u01D8': 'u', - '\u01D6': 'u', - '\u01DA': 'u', - '\u1EE7': 'u', - '\u016F': 'u', - '\u0171': 'u', - '\u01D4': 'u', - '\u0215': 'u', - '\u0217': 'u', - '\u01B0': 'u', - '\u1EEB': 'u', - '\u1EE9': 'u', - '\u1EEF': 'u', - '\u1EED': 'u', - '\u1EF1': 'u', - '\u1EE5': 'u', - '\u1E73': 'u', - '\u0173': 'u', - '\u1E77': 'u', - '\u1E75': 'u', - '\u0289': 'u', - '\u24E5': 'v', - '\uFF56': 'v', - '\u1E7D': 'v', - '\u1E7F': 'v', - '\u028B': 'v', - '\uA75F': 'v', - '\u028C': 'v', - '\uA761': 'vy', - '\u24E6': 'w', - '\uFF57': 'w', - '\u1E81': 'w', - '\u1E83': 'w', - '\u0175': 'w', - '\u1E87': 'w', - '\u1E85': 'w', - '\u1E98': 'w', - '\u1E89': 'w', - '\u2C73': 'w', - '\u24E7': 'x', - '\uFF58': 'x', - '\u1E8B': 'x', - '\u1E8D': 'x', - '\u24E8': 'y', - '\uFF59': 'y', - '\u1EF3': 'y', - '\u00FD': 'y', - '\u0177': 'y', - '\u1EF9': 'y', - '\u0233': 'y', - '\u1E8F': 'y', - '\u00FF': 'y', - '\u1EF7': 'y', - '\u1E99': 'y', - '\u1EF5': 'y', - '\u01B4': 'y', - '\u024F': 'y', - '\u1EFF': 'y', - '\u24E9': 'z', - '\uFF5A': 'z', - '\u017A': 'z', - '\u1E91': 'z', - '\u017C': 'z', - '\u017E': 'z', - '\u1E93': 'z', - '\u1E95': 'z', - '\u01B6': 'z', - '\u0225': 'z', - '\u0240': 'z', - '\u2C6C': 'z', - '\uA763': 'z', - '\u0386': '\u0391', - '\u0388': '\u0395', - '\u0389': '\u0397', - '\u038A': '\u0399', - '\u03AA': '\u0399', - '\u038C': '\u039F', - '\u038E': '\u03A5', - '\u03AB': '\u03A5', - '\u038F': '\u03A9', - '\u03AC': '\u03B1', - '\u03AD': '\u03B5', - '\u03AE': '\u03B7', - '\u03AF': '\u03B9', - '\u03CA': '\u03B9', - '\u0390': '\u03B9', - '\u03CC': '\u03BF', - '\u03CD': '\u03C5', - '\u03CB': '\u03C5', - '\u03B0': '\u03C5', - '\u03C9': '\u03C9', - '\u03C2': '\u03C3' - }; - - return diacritics; -}); - -S2.define('select2/data/base',[ - '../utils' -], function (Utils) { - function BaseAdapter ($element, options) { - BaseAdapter.__super__.constructor.call(this); - } - - Utils.Extend(BaseAdapter, Utils.Observable); - - BaseAdapter.prototype.current = function (callback) { - throw new Error('The `current` method must be defined in child classes.'); - }; - - BaseAdapter.prototype.query = function (params, callback) { - throw new Error('The `query` method must be defined in child classes.'); - }; - - BaseAdapter.prototype.bind = function (container, $container) { - // Can be implemented in subclasses - }; - - BaseAdapter.prototype.destroy = function () { - // Can be implemented in subclasses - }; - - BaseAdapter.prototype.generateResultId = function (container, data) { - var id = ''; - - if (container != null) { - id += container.id - } else { - id += Utils.generateChars(4); - } - - id += '-result-'; - id += Utils.generateChars(4); - - if (data.id != null) { - id += '-' + data.id.toString(); - } else { - id += '-' + Utils.generateChars(4); - } - return id; - }; - - return BaseAdapter; -}); - -S2.define('select2/data/select',[ - './base', - '../utils', - 'jquery' -], function (BaseAdapter, Utils, $) { - function SelectAdapter ($element, options) { - this.$element = $element; - this.options = options; - - SelectAdapter.__super__.constructor.call(this); - } - - Utils.Extend(SelectAdapter, BaseAdapter); - - SelectAdapter.prototype.current = function (callback) { - var data = []; - var self = this; - - this.$element.find(':selected').each(function () { - var $option = $(this); - - var option = self.item($option); - - data.push(option); - }); - - callback(data); - }; - - SelectAdapter.prototype.select = function (data) { - var self = this; - - data.selected = true; - - // If data.element is a DOM node, use it instead - if ($(data.element).is('option')) { - data.element.selected = true; - - this.$element.trigger('change'); - - return; - } - - if (this.$element.prop('multiple')) { - this.current(function (currentData) { - var val = []; - - data = [data]; - data.push.apply(data, currentData); - - for (var d = 0; d < data.length; d++) { - var id = data[d].id; - - if ($.inArray(id, val) === -1) { - val.push(id); - } - } - - self.$element.val(val); - self.$element.trigger('change'); - }); - } else { - var val = data.id; - - this.$element.val(val); - this.$element.trigger('change'); - } - }; - - SelectAdapter.prototype.unselect = function (data) { - var self = this; - - if (!this.$element.prop('multiple')) { - return; - } - - data.selected = false; - - if ($(data.element).is('option')) { - data.element.selected = false; - - this.$element.trigger('change'); - - return; - } - - this.current(function (currentData) { - var val = []; - - for (var d = 0; d < currentData.length; d++) { - var id = currentData[d].id; - - if (id !== data.id && $.inArray(id, val) === -1) { - val.push(id); - } - } - - self.$element.val(val); - - self.$element.trigger('change'); - }); - }; - - SelectAdapter.prototype.bind = function (container, $container) { - var self = this; - - this.container = container; - - container.on('select', function (params) { - self.select(params.data); - }); - - container.on('unselect', function (params) { - self.unselect(params.data); - }); - }; - - SelectAdapter.prototype.destroy = function () { - // Remove anything added to child elements - this.$element.find('*').each(function () { - // Remove any custom data set by Select2 - $.removeData(this, 'data'); - }); - }; - - SelectAdapter.prototype.query = function (params, callback) { - var data = []; - var self = this; - - var $options = this.$element.children(); - - $options.each(function () { - var $option = $(this); - - if (!$option.is('option') && !$option.is('optgroup')) { - return; - } - - var option = self.item($option); - - var matches = self.matches(params, option); - - if (matches !== null) { - data.push(matches); - } - }); - - callback({ - results: data - }); - }; - - SelectAdapter.prototype.addOptions = function ($options) { - Utils.appendMany(this.$element, $options); - }; - - SelectAdapter.prototype.option = function (data) { - var option; - - if (data.children) { - option = document.createElement('optgroup'); - option.label = data.text; - } else { - option = document.createElement('option'); - - if (option.textContent !== undefined) { - option.textContent = data.text; - } else { - option.innerText = data.text; - } - } - - if (data.id !== undefined) { - option.value = data.id; - } - - if (data.disabled) { - option.disabled = true; - } - - if (data.selected) { - option.selected = true; - } - - if (data.title) { - option.title = data.title; - } - - var $option = $(option); - - var normalizedData = this._normalizeItem(data); - normalizedData.element = option; - - // Override the option's data with the combined data - $.data(option, 'data', normalizedData); - - return $option; - }; - - SelectAdapter.prototype.item = function ($option) { - var data = {}; - - data = $.data($option[0], 'data'); - - if (data != null) { - return data; - } - - if ($option.is('option')) { - data = { - id: $option.val(), - text: $option.text(), - disabled: $option.prop('disabled'), - selected: $option.prop('selected'), - title: $option.prop('title') - }; - } else if ($option.is('optgroup')) { - data = { - text: $option.prop('label'), - children: [], - title: $option.prop('title') - }; - - var $children = $option.children('option'); - var children = []; - - for (var c = 0; c < $children.length; c++) { - var $child = $($children[c]); - - var child = this.item($child); - - children.push(child); - } - - data.children = children; - } - - data = this._normalizeItem(data); - data.element = $option[0]; - - $.data($option[0], 'data', data); - - return data; - }; - - SelectAdapter.prototype._normalizeItem = function (item) { - if (!$.isPlainObject(item)) { - item = { - id: item, - text: item - }; - } - - item = $.extend({}, { - text: '' - }, item); - - var defaults = { - selected: false, - disabled: false - }; - - if (item.id != null) { - item.id = item.id.toString(); - } - - if (item.text != null) { - item.text = item.text.toString(); - } - - if (item._resultId == null && item.id) { - item._resultId = this.generateResultId(this.container, item); - } - - return $.extend({}, defaults, item); - }; - - SelectAdapter.prototype.matches = function (params, data) { - var matcher = this.options.get('matcher'); - - return matcher(params, data); - }; - - return SelectAdapter; -}); - -S2.define('select2/data/array',[ - './select', - '../utils', - 'jquery' -], function (SelectAdapter, Utils, $) { - function ArrayAdapter ($element, options) { - var data = options.get('data') || []; - - ArrayAdapter.__super__.constructor.call(this, $element, options); - - this.addOptions(this.convertToOptions(data)); - } - - Utils.Extend(ArrayAdapter, SelectAdapter); - - ArrayAdapter.prototype.select = function (data) { - var $option = this.$element.find('option').filter(function (i, elm) { - return elm.value == data.id.toString(); - }); - - if ($option.length === 0) { - $option = this.option(data); - - this.addOptions($option); - } - - ArrayAdapter.__super__.select.call(this, data); - }; - - ArrayAdapter.prototype.convertToOptions = function (data) { - var self = this; - - var $existing = this.$element.find('option'); - var existingIds = $existing.map(function () { - return self.item($(this)).id; - }).get(); - - var $options = []; - - // Filter out all items except for the one passed in the argument - function onlyItem (item) { - return function () { - return $(this).val() == item.id; - }; - } - - for (var d = 0; d < data.length; d++) { - var item = this._normalizeItem(data[d]); - - // Skip items which were pre-loaded, only merge the data - if ($.inArray(item.id, existingIds) >= 0) { - var $existingOption = $existing.filter(onlyItem(item)); - - var existingData = this.item($existingOption); - var newData = $.extend(true, {}, item, existingData); - - var $newOption = this.option(newData); - - $existingOption.replaceWith($newOption); - - continue; - } - - var $option = this.option(item); - - if (item.children) { - var $children = this.convertToOptions(item.children); - - Utils.appendMany($option, $children); - } - - $options.push($option); - } - - return $options; - }; - - return ArrayAdapter; -}); - -S2.define('select2/data/ajax',[ - './array', - '../utils', - 'jquery' -], function (ArrayAdapter, Utils, $) { - function AjaxAdapter ($element, options) { - this.ajaxOptions = this._applyDefaults(options.get('ajax')); - - if (this.ajaxOptions.processResults != null) { - this.processResults = this.ajaxOptions.processResults; - } - - AjaxAdapter.__super__.constructor.call(this, $element, options); - } - - Utils.Extend(AjaxAdapter, ArrayAdapter); - - AjaxAdapter.prototype._applyDefaults = function (options) { - var defaults = { - data: function (params) { - return $.extend({}, params, { - q: params.term - }); - }, - transport: function (params, success, failure) { - var $request = $.ajax(params); - - $request.then(success); - $request.fail(failure); - - return $request; - } - }; - - return $.extend({}, defaults, options, true); - }; - - AjaxAdapter.prototype.processResults = function (results) { - return results; - }; - - AjaxAdapter.prototype.query = function (params, callback) { - var matches = []; - var self = this; - - if (this._request != null) { - // JSONP requests cannot always be aborted - if ($.isFunction(this._request.abort)) { - this._request.abort(); - } - - this._request = null; - } - - var options = $.extend({ - type: 'GET' - }, this.ajaxOptions); - - if (typeof options.url === 'function') { - options.url = options.url.call(this.$element, params); - } - - if (typeof options.data === 'function') { - options.data = options.data.call(this.$element, params); - } - - function request () { - var $request = options.transport(options, function (data) { - var results = self.processResults(data, params); - - if (self.options.get('debug') && window.console && console.error) { - // Check to make sure that the response included a `results` key. - if (!results || !results.results || !Array.isArray(results.results)) { - console.error( - 'Select2: The AJAX results did not return an array in the ' + - '`results` key of the response.' - ); - } - } - - callback(results); - self.container.focusOnActiveElement(); - }, function () { - // Attempt to detect if a request was aborted - // Only works if the transport exposes a status property - if ($request.status && $request.status === '0') { - return; - } - - self.trigger('results:message', { - message: 'errorLoading' - }); - }); - - self._request = $request; - } - - if (this.ajaxOptions.delay && params.term != null) { - if (this._queryTimeout) { - window.clearTimeout(this._queryTimeout); - } - - this._queryTimeout = window.setTimeout(request, this.ajaxOptions.delay); - } else { - request(); - } - }; - - return AjaxAdapter; -}); - -S2.define('select2/data/tags',[ - 'jquery' -], function ($) { - function Tags (decorated, $element, options) { - var tags = options.get('tags'); - - var createTag = options.get('createTag'); - - if (createTag !== undefined) { - this.createTag = createTag; - } - - var insertTag = options.get('insertTag'); - - if (insertTag !== undefined) { - this.insertTag = insertTag; - } - - decorated.call(this, $element, options); - - if (Array.isArray(tags)) { - for (var t = 0; t < tags.length; t++) { - var tag = tags[t]; - var item = this._normalizeItem(tag); - - var $option = this.option(item); - - this.$element.append($option); - } - } - } - - Tags.prototype.query = function (decorated, params, callback) { - var self = this; - - this._removeOldTags(); - - if (params.term == null || params.page != null) { - decorated.call(this, params, callback); - return; - } - - function wrapper (obj, child) { - var data = obj.results; - - for (var i = 0; i < data.length; i++) { - var option = data[i]; - - var checkChildren = ( - option.children != null && - !wrapper({ - results: option.children - }, true) - ); - - var optionText = (option.text || '').toUpperCase(); - var paramsTerm = (params.term || '').toUpperCase(); - - var checkText = optionText === paramsTerm; - - if (checkText || checkChildren) { - if (child) { - return false; - } - - obj.data = data; - callback(obj); - - return; - } - } - - if (child) { - return true; - } - - var tag = self.createTag(params); - - if (tag != null) { - var $option = self.option(tag); - $option.attr('data-select2-tag', true); - - self.addOptions([$option]); - - self.insertTag(data, tag); - } - - obj.results = data; - - callback(obj); - } - - decorated.call(this, params, wrapper); - }; - - Tags.prototype.createTag = function (decorated, params) { - var term = $.trim(params.term); - - if (term === '') { - return null; - } - - return { - id: term, - text: term - }; - }; - - Tags.prototype.insertTag = function (_, data, tag) { - data.unshift(tag); - }; - - Tags.prototype._removeOldTags = function (_) { - var tag = this._lastTag; - - var $options = this.$element.find('option[data-select2-tag]'); - - $options.each(function () { - if (this.selected) { - return; - } - - $(this).remove(); - }); - }; - - return Tags; -}); - -S2.define('select2/data/tokenizer',[ - 'jquery' -], function ($) { - function Tokenizer (decorated, $element, options) { - var tokenizer = options.get('tokenizer'); - - if (tokenizer !== undefined) { - this.tokenizer = tokenizer; - } - - decorated.call(this, $element, options); - } - - Tokenizer.prototype.bind = function (decorated, container, $container) { - decorated.call(this, container, $container); - - this.$search = container.dropdown.$search || container.selection.$search || - $container.find('.select2-search__field'); - }; - - Tokenizer.prototype.query = function (decorated, params, callback) { - var self = this; - - function createAndSelect (data) { - // Normalize the data object so we can use it for checks - var item = self._normalizeItem(data); - - // Check if the data object already exists as a tag - // Select it if it doesn't - var $existingOptions = self.$element.find('option').filter(function () { - return $(this).val() === item.id; - }); - - // If an existing option wasn't found for it, create the option - if (!$existingOptions.length) { - var $option = self.option(item); - $option.attr('data-select2-tag', true); - - self._removeOldTags(); - self.addOptions([$option]); - } - - // Select the item, now that we know there is an option for it - select(item); - } - - function select (data) { - self.trigger('select', { - data: data - }); - } - - params.term = params.term || ''; - - var tokenData = this.tokenizer(params, this.options, createAndSelect); - - if (tokenData.term !== params.term) { - // Replace the search term if we have the search box - if (this.$search.length) { - this.$search.val(tokenData.term); - this.$search.focus(); - } - - params.term = tokenData.term; - } - - decorated.call(this, params, callback); - }; - - Tokenizer.prototype.tokenizer = function (_, params, options, callback) { - var separators = options.get('tokenSeparators') || []; - var term = params.term; - var i = 0; - - var createTag = this.createTag || function (params) { - return { - id: params.term, - text: params.term - }; - }; - - while (i < term.length) { - var termChar = term[i]; - - if ($.inArray(termChar, separators) === -1) { - i++; - - continue; - } - - var part = term.substr(0, i); - var partParams = $.extend({}, params, { - term: part - }); - - var data = createTag(partParams); - - if (data == null) { - i++; - continue; - } - - callback(data); - - // Reset the term to not include the tokenized portion - term = term.substr(i + 1) || ''; - i = 0; - } - - return { - term: term - }; - }; - - return Tokenizer; -}); - -S2.define('select2/data/minimumInputLength',[ - -], function () { - function MinimumInputLength (decorated, $e, options) { - this.minimumInputLength = options.get('minimumInputLength'); - - decorated.call(this, $e, options); - } - - MinimumInputLength.prototype.query = function (decorated, params, callback) { - params.term = params.term || ''; - - if (params.term.length < this.minimumInputLength) { - this.trigger('results:message', { - message: 'inputTooShort', - args: { - minimum: this.minimumInputLength, - input: params.term, - params: params - } - }); - - return; - } - - decorated.call(this, params, callback); - }; - - return MinimumInputLength; -}); - -S2.define('select2/data/maximumInputLength',[ - -], function () { - function MaximumInputLength (decorated, $e, options) { - this.maximumInputLength = options.get('maximumInputLength'); - - decorated.call(this, $e, options); - } - - MaximumInputLength.prototype.query = function (decorated, params, callback) { - params.term = params.term || ''; - - if (this.maximumInputLength > 0 && - params.term.length > this.maximumInputLength) { - this.trigger('results:message', { - message: 'inputTooLong', - args: { - maximum: this.maximumInputLength, - input: params.term, - params: params - } - }); - - return; - } - - decorated.call(this, params, callback); - }; - - return MaximumInputLength; -}); - -S2.define('select2/data/maximumSelectionLength',[ - -], function (){ - function MaximumSelectionLength (decorated, $e, options) { - this.maximumSelectionLength = options.get('maximumSelectionLength'); - - decorated.call(this, $e, options); - } - - MaximumSelectionLength.prototype.query = - function (decorated, params, callback) { - var self = this; - - this.current(function (currentData) { - var count = currentData != null ? currentData.length : 0; - if (self.maximumSelectionLength > 0 && - count >= self.maximumSelectionLength) { - self.trigger('results:message', { - message: 'maximumSelected', - args: { - maximum: self.maximumSelectionLength - } - }); - return; - } - decorated.call(self, params, callback); - }); - }; - - return MaximumSelectionLength; -}); - -S2.define('select2/dropdown',[ - 'jquery', - './utils' -], function ($, Utils) { - function Dropdown ($element, options) { - this.$element = $element; - this.options = options; - - Dropdown.__super__.constructor.call(this); - } - - Utils.Extend(Dropdown, Utils.Observable); - - Dropdown.prototype.render = function () { - var $dropdown = $( - '' + - '' + - '' - ); - - $dropdown.attr('dir', this.options.get('dir')); - - this.$dropdown = $dropdown; - - return $dropdown; - }; - - Dropdown.prototype.bind = function () { - // Should be implemented in subclasses - }; - - Dropdown.prototype.position = function ($dropdown, $container) { - // Should be implmented in subclasses - }; - - Dropdown.prototype.destroy = function () { - // Remove the dropdown from the DOM - this.$dropdown.remove(); - }; - - return Dropdown; -}); - -S2.define('select2/dropdown/search',[ - 'jquery', - '../utils' -], function ($, Utils) { - function Search () { } - - Search.prototype.render = function (decorated) { - var $rendered = decorated.call(this); - - var $search = $( - '' + - '' + - '' - ); - - this.$searchContainer = $search; - this.$search = $search.find('input'); - - $rendered.prepend($search); - - return $rendered; - }; - - Search.prototype.bind = function (decorated, container, $container) { - var self = this; - var resultsId = container.id + '-results'; - - decorated.call(this, container, $container); - - this.$search.on('keydown', function (evt) { - self.trigger('keypress', evt); - - self._keyUpPrevented = evt.isDefaultPrevented(); - }); - - // Workaround for browsers which do not support the `input` event - // This will prevent double-triggering of events for browsers which support - // both the `keyup` and `input` events. - this.$search.on('input', function (evt) { - // Unbind the duplicated `keyup` event - $(this).off('keyup'); - }); - - this.$search.on('keyup input', function (evt) { - self.handleSearch(evt); - }); - - container.on('open', function () { - self.$search.attr('tabindex', 0); - self.$search.attr('aria-owns', resultsId); - self.$search.focus(); - - window.setTimeout(function () { - self.$search.focus(); - }, 0); - }); - - container.on('close', function () { - self.$search.attr('tabindex', -1); - self.$search.removeAttr('aria-activedescendant'); - self.$search.removeAttr('aria-owns'); - self.$search.val(''); - }); - - container.on('focus', function () { - if (!container.isOpen()) { - self.$search.focus(); - } - }); - - container.on('results:all', function (params) { - if (params.query.term == null || params.query.term === '') { - var showSearch = self.showSearch(params); - - if (showSearch) { - self.$searchContainer.removeClass('select2-search--hide'); - } else { - self.$searchContainer.addClass('select2-search--hide'); - } - } - }); - - container.on('results:focus', function (params) { - self.$search.attr('aria-activedescendant', params.data._resultId); - }); - }; - - Search.prototype.handleSearch = function (evt) { - if (!this._keyUpPrevented) { - var input = this.$search.val(); - - this.trigger('query', { - term: input - }); - } - - this._keyUpPrevented = false; - }; - - Search.prototype.showSearch = function (_, params) { - return true; - }; - - return Search; -}); - -S2.define('select2/dropdown/hidePlaceholder',[ - -], function () { - function HidePlaceholder (decorated, $element, options, dataAdapter) { - this.placeholder = this.normalizePlaceholder(options.get('placeholder')); - - decorated.call(this, $element, options, dataAdapter); - } - - HidePlaceholder.prototype.append = function (decorated, data) { - data.results = this.removePlaceholder(data.results); - - decorated.call(this, data); - }; - - HidePlaceholder.prototype.normalizePlaceholder = function (_, placeholder) { - if (typeof placeholder === 'string') { - placeholder = { - id: '', - text: placeholder - }; - } - - return placeholder; - }; - - HidePlaceholder.prototype.removePlaceholder = function (_, data) { - var modifiedData = data.slice(0); - - for (var d = data.length - 1; d >= 0; d--) { - var item = data[d]; - - if (this.placeholder.id === item.id) { - modifiedData.splice(d, 1); - } - } - - return modifiedData; - }; - - return HidePlaceholder; -}); - -S2.define('select2/dropdown/infiniteScroll',[ - 'jquery' -], function ($) { - function InfiniteScroll (decorated, $element, options, dataAdapter) { - this.lastParams = {}; - - decorated.call(this, $element, options, dataAdapter); - - this.$loadingMore = this.createLoadingMore(); - this.loading = false; - } - - InfiniteScroll.prototype.append = function (decorated, data) { - this.$loadingMore.remove(); - this.loading = false; - - decorated.call(this, data); - - if (this.showLoadingMore(data)) { - this.$results.append(this.$loadingMore); - } - }; - - InfiniteScroll.prototype.bind = function (decorated, container, $container) { - var self = this; - - decorated.call(this, container, $container); - - container.on('query', function (params) { - self.lastParams = params; - self.loading = true; - }); - - container.on('query:append', function (params) { - self.lastParams = params; - self.loading = true; - }); - - this.$results.on('scroll', function () { - var isLoadMoreVisible = $.contains( - document.documentElement, - self.$loadingMore[0] - ); - - if (self.loading || !isLoadMoreVisible) { - return; - } - - var currentOffset = self.$results.offset().top + - self.$results.outerHeight(false); - var loadingMoreOffset = self.$loadingMore.offset().top + - self.$loadingMore.outerHeight(false); - - if (currentOffset + 50 >= loadingMoreOffset) { - self.loadMore(); - } - }); - }; - - InfiniteScroll.prototype.loadMore = function () { - this.loading = true; - - var params = $.extend({}, {page: 1}, this.lastParams); - - params.page++; - - this.trigger('query:append', params); - }; - - InfiniteScroll.prototype.showLoadingMore = function (_, data) { - return data.pagination && data.pagination.more; - }; - - InfiniteScroll.prototype.createLoadingMore = function () { - var $option = $( - '
      • ' - ); - - var message = this.options.get('translations').get('loadingMore'); - - $option.html(message(this.lastParams)); - - return $option; - }; - - return InfiniteScroll; -}); - -S2.define('select2/dropdown/attachBody',[ - 'jquery', - '../utils' -], function ($, Utils) { - function AttachBody (decorated, $element, options) { - this.$dropdownParent = options.get('dropdownParent') || $(document.body); - - decorated.call(this, $element, options); - } - - AttachBody.prototype.bind = function (decorated, container, $container) { - var self = this; - - var setupResultsEvents = false; - - decorated.call(this, container, $container); - - container.on('open', function () { - self._showDropdown(); - self._attachPositioningHandler(container); - - if (!setupResultsEvents) { - setupResultsEvents = true; - - container.on('results:all', function () { - self._positionDropdown(); - self._resizeDropdown(); - }); - - container.on('results:append', function () { - self._positionDropdown(); - self._resizeDropdown(); - }); - } - }); - - container.on('close', function () { - self._hideDropdown(); - self._detachPositioningHandler(container); - }); - - this.$dropdownContainer.on('mousedown', function (evt) { - evt.stopPropagation(); - }); - }; - - AttachBody.prototype.destroy = function (decorated) { - decorated.call(this); - - this.$dropdownContainer.remove(); - }; - - AttachBody.prototype.position = function (decorated, $dropdown, $container) { - // Clone all of the container classes - $dropdown.attr('class', $container.attr('class')); - - $dropdown.removeClass('select2'); - $dropdown.addClass('select2-container--open'); - - $dropdown.css({ - position: 'absolute', - top: -999999 - }); - - this.$container = $container; - }; - - AttachBody.prototype.render = function (decorated) { - var $container = $(''); - - var $dropdown = decorated.call(this); - $container.append($dropdown); - - this.$dropdownContainer = $container; - - return $container; - }; - - AttachBody.prototype._hideDropdown = function (decorated) { - this.$dropdownContainer.detach(); - }; - - AttachBody.prototype._attachPositioningHandler = - function (decorated, container) { - var self = this; - - var scrollEvent = 'scroll.select2.' + container.id; - var resizeEvent = 'resize.select2.' + container.id; - var orientationEvent = 'orientationchange.select2.' + container.id; - - var $watchers = this.$container.parents().filter(Utils.hasScroll); - $watchers.each(function () { - $(this).data('select2-scroll-position', { - x: $(this).scrollLeft(), - y: $(this).scrollTop() - }); - }); - - $watchers.on(scrollEvent, function (ev) { - var position = $(this).data('select2-scroll-position'); - $(this).scrollTop(position.y); - }); - - $(window).on(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent, - function (e) { - self._positionDropdown(); - self._resizeDropdown(); - }); - }; - - AttachBody.prototype._detachPositioningHandler = - function (decorated, container) { - var scrollEvent = 'scroll.select2.' + container.id; - var resizeEvent = 'resize.select2.' + container.id; - var orientationEvent = 'orientationchange.select2.' + container.id; - - var $watchers = this.$container.parents().filter(Utils.hasScroll); - $watchers.off(scrollEvent); - - $(window).off(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent); - }; - - AttachBody.prototype._positionDropdown = function () { - var $window = $(window); - - var isCurrentlyAbove = this.$dropdown.hasClass('select2-dropdown--above'); - var isCurrentlyBelow = this.$dropdown.hasClass('select2-dropdown--below'); - - var newDirection = null; - - var offset = this.$container.offset(); - - offset.bottom = offset.top + this.$container.outerHeight(false); - - var container = { - height: this.$container.outerHeight(false) - }; - - container.top = offset.top; - container.bottom = offset.top + container.height; - - var dropdown = { - height: this.$dropdown.outerHeight(false) - }; - - var viewport = { - top: $window.scrollTop(), - bottom: $window.scrollTop() + $window.height() - }; - - var enoughRoomAbove = viewport.top < (offset.top - dropdown.height); - var enoughRoomBelow = viewport.bottom > (offset.bottom + dropdown.height); - - var css = { - left: offset.left, - top: container.bottom - }; - - // Determine what the parent element is to use for calciulating the offset - var $offsetParent = this.$dropdownParent; - - // For statically positoned elements, we need to get the element - // that is determining the offset - if ($offsetParent.css('position') === 'static') { - $offsetParent = $offsetParent.offsetParent(); - } - - var parentOffset = $offsetParent.offset(); - - css.top -= parentOffset.top; - css.left -= parentOffset.left; - - if (!isCurrentlyAbove && !isCurrentlyBelow) { - newDirection = 'below'; - } - - if (!enoughRoomBelow && enoughRoomAbove && !isCurrentlyAbove) { - newDirection = 'above'; - } else if (!enoughRoomAbove && enoughRoomBelow && isCurrentlyAbove) { - newDirection = 'below'; - } - - if (newDirection == 'above' || - (isCurrentlyAbove && newDirection !== 'below')) { - css.top = container.top - parentOffset.top - dropdown.height; - } - - if (newDirection != null) { - this.$dropdown - .removeClass('select2-dropdown--below select2-dropdown--above') - .addClass('select2-dropdown--' + newDirection); - this.$container - .removeClass('select2-container--below select2-container--above') - .addClass('select2-container--' + newDirection); - } - - this.$dropdownContainer.css(css); - }; - - AttachBody.prototype._resizeDropdown = function () { - var css = { - width: this.$container.outerWidth(false) + 'px' - }; - - if (this.options.get('dropdownAutoWidth')) { - css.minWidth = css.width; - css.position = 'relative'; - css.width = 'auto'; - } - - this.$dropdown.css(css); - }; - - AttachBody.prototype._showDropdown = function (decorated) { - this.$dropdownContainer.appendTo(this.$dropdownParent); - - this._positionDropdown(); - this._resizeDropdown(); - }; - - return AttachBody; -}); - -S2.define('select2/dropdown/minimumResultsForSearch',[ - -], function () { - function countResults (data) { - var count = 0; - - for (var d = 0; d < data.length; d++) { - var item = data[d]; - - if (item.children) { - count += countResults(item.children); - } else { - count++; - } - } - - return count; - } - - function MinimumResultsForSearch (decorated, $element, options, dataAdapter) { - this.minimumResultsForSearch = options.get('minimumResultsForSearch'); - - if (this.minimumResultsForSearch < 0) { - this.minimumResultsForSearch = Infinity; - } - - decorated.call(this, $element, options, dataAdapter); - } - - MinimumResultsForSearch.prototype.showSearch = function (decorated, params) { - if (countResults(params.data.results) < this.minimumResultsForSearch) { - return false; - } - - return decorated.call(this, params); - }; - - return MinimumResultsForSearch; -}); - -S2.define('select2/dropdown/selectOnClose',[ - -], function () { - function SelectOnClose () { } - - SelectOnClose.prototype.bind = function (decorated, container, $container) { - var self = this; - - decorated.call(this, container, $container); - - container.on('close', function (params) { - self._handleSelectOnClose(params); - }); - }; - - SelectOnClose.prototype._handleSelectOnClose = function (_, params) { - if (params && params.originalSelect2Event != null) { - var event = params.originalSelect2Event; - - // Don't select an item if the close event was triggered from a select or - // unselect event - if (event._type === 'select' || event._type === 'unselect') { - return; - } - } - - var $highlightedResults = this.getHighlightedResults(); - - // Only select highlighted results - if ($highlightedResults.length < 1) { - return; - } - - var data = $highlightedResults.data('data'); - - // Don't re-select already selected resulte - if ( - (data.element != null && data.element.selected) || - (data.element == null && data.selected) - ) { - return; - } - - this.trigger('select', { - data: data - }); - }; - - return SelectOnClose; -}); - -S2.define('select2/dropdown/closeOnSelect',[ - -], function () { - function CloseOnSelect () { } - - CloseOnSelect.prototype.bind = function (decorated, container, $container) { - var self = this; - - decorated.call(this, container, $container); - - container.on('select', function (evt) { - self._selectTriggered(evt); - }); - - container.on('unselect', function (evt) { - self._selectTriggered(evt); - }); - }; - - CloseOnSelect.prototype._selectTriggered = function (_, evt) { - var originalEvent = evt.originalEvent; - - // Don't close if the control key is being held - if (originalEvent && originalEvent.ctrlKey) { - return; - } - - this.trigger('close', { - originalEvent: originalEvent, - originalSelect2Event: evt - }); - }; - - return CloseOnSelect; -}); - -S2.define('select2/i18n/en',[],function () { - // English - return { - errorLoading: function () { - return 'The results could not be loaded.'; - }, - inputTooLong: function (args) { - var overChars = args.input.length - args.maximum; - - var message = 'Please delete ' + overChars + ' character'; - - if (overChars != 1) { - message += 's'; - } - - return message; - }, - inputTooShort: function (args) { - var remainingChars = args.minimum - args.input.length; - - var message = 'Please enter ' + remainingChars + ' or more characters'; - - return message; - }, - loadingMore: function () { - return 'Loading more results…'; - }, - maximumSelected: function (args) { - var message = 'You can only select ' + args.maximum + ' item'; - - if (args.maximum != 1) { - message += 's'; - } - - return message; - }, - noResults: function () { - return 'No results found'; - }, - searching: function () { - return 'Searching…'; - } - }; -}); - -S2.define('select2/defaults',[ - 'jquery', - 'require', - - './results', - - './selection/single', - './selection/multiple', - './selection/placeholder', - './selection/allowClear', - './selection/search', - './selection/eventRelay', - - './utils', - './translation', - './diacritics', - - './data/select', - './data/array', - './data/ajax', - './data/tags', - './data/tokenizer', - './data/minimumInputLength', - './data/maximumInputLength', - './data/maximumSelectionLength', - - './dropdown', - './dropdown/search', - './dropdown/hidePlaceholder', - './dropdown/infiniteScroll', - './dropdown/attachBody', - './dropdown/minimumResultsForSearch', - './dropdown/selectOnClose', - './dropdown/closeOnSelect', - - './i18n/en' -], function ($, require, - - ResultsList, - - SingleSelection, MultipleSelection, Placeholder, AllowClear, - SelectionSearch, EventRelay, - - Utils, Translation, DIACRITICS, - - SelectData, ArrayData, AjaxData, Tags, Tokenizer, - MinimumInputLength, MaximumInputLength, MaximumSelectionLength, - - Dropdown, DropdownSearch, HidePlaceholder, InfiniteScroll, - AttachBody, MinimumResultsForSearch, SelectOnClose, CloseOnSelect, - - EnglishTranslation) { - function Defaults () { - this.reset(); - } - - Defaults.prototype.apply = function (options) { - options = $.extend(true, {}, this.defaults, options); - - if (options.dataAdapter == null) { - if (options.ajax != null) { - options.dataAdapter = AjaxData; - } else if (options.data != null) { - options.dataAdapter = ArrayData; - } else { - options.dataAdapter = SelectData; - } - - if (options.minimumInputLength > 0) { - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - MinimumInputLength - ); - } - - if (options.maximumInputLength > 0) { - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - MaximumInputLength - ); - } - - if (options.maximumSelectionLength > 0) { - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - MaximumSelectionLength - ); - } - - if (options.tags) { - options.dataAdapter = Utils.Decorate(options.dataAdapter, Tags); - } - - if (options.tokenSeparators != null || options.tokenizer != null) { - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - Tokenizer - ); - } - - if (options.query != null) { - var Query = require(options.amdBase + 'compat/query'); - - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - Query - ); - } - - if (options.initSelection != null) { - var InitSelection = require(options.amdBase + 'compat/initSelection'); - - options.dataAdapter = Utils.Decorate( - options.dataAdapter, - InitSelection - ); - } - } - - if (options.resultsAdapter == null) { - options.resultsAdapter = ResultsList; - - if (options.ajax != null) { - options.resultsAdapter = Utils.Decorate( - options.resultsAdapter, - InfiniteScroll - ); - } - - if (options.placeholder != null) { - options.resultsAdapter = Utils.Decorate( - options.resultsAdapter, - HidePlaceholder - ); - } - - if (options.selectOnClose) { - options.resultsAdapter = Utils.Decorate( - options.resultsAdapter, - SelectOnClose - ); - } - } - - if (options.dropdownAdapter == null) { - if (options.multiple) { - options.dropdownAdapter = Dropdown; - } else { - var SearchableDropdown = Utils.Decorate(Dropdown, DropdownSearch); - - options.dropdownAdapter = SearchableDropdown; - } - - if (options.minimumResultsForSearch !== 0) { - options.dropdownAdapter = Utils.Decorate( - options.dropdownAdapter, - MinimumResultsForSearch - ); - } - - if (options.closeOnSelect) { - options.dropdownAdapter = Utils.Decorate( - options.dropdownAdapter, - CloseOnSelect - ); - } - - if ( - options.dropdownCssClass != null || - options.dropdownCss != null || - options.adaptDropdownCssClass != null - ) { - var DropdownCSS = require(options.amdBase + 'compat/dropdownCss'); - - options.dropdownAdapter = Utils.Decorate( - options.dropdownAdapter, - DropdownCSS - ); - } - - options.dropdownAdapter = Utils.Decorate( - options.dropdownAdapter, - AttachBody - ); - } - - if (options.selectionAdapter == null) { - if (options.multiple) { - options.selectionAdapter = MultipleSelection; - } else { - options.selectionAdapter = SingleSelection; - } - - // Add the placeholder mixin if a placeholder was specified - if (options.placeholder != null) { - options.selectionAdapter = Utils.Decorate( - options.selectionAdapter, - Placeholder - ); - } - - if (options.allowClear) { - options.selectionAdapter = Utils.Decorate( - options.selectionAdapter, - AllowClear - ); - } - - if (options.multiple) { - options.selectionAdapter = Utils.Decorate( - options.selectionAdapter, - SelectionSearch - ); - } - - if ( - options.containerCssClass != null || - options.containerCss != null || - options.adaptContainerCssClass != null - ) { - var ContainerCSS = require(options.amdBase + 'compat/containerCss'); - - options.selectionAdapter = Utils.Decorate( - options.selectionAdapter, - ContainerCSS - ); - } - - options.selectionAdapter = Utils.Decorate( - options.selectionAdapter, - EventRelay - ); - } - - if (typeof options.language === 'string') { - // Check if the language is specified with a region - if (options.language.indexOf('-') > 0) { - // Extract the region information if it is included - var languageParts = options.language.split('-'); - var baseLanguage = languageParts[0]; - - options.language = [options.language, baseLanguage]; - } else { - options.language = [options.language]; - } - } - - if (Array.isArray(options.language)) { - var languages = new Translation(); - options.language.push('en'); - - var languageNames = options.language; - - for (var l = 0; l < languageNames.length; l++) { - var name = languageNames[l]; - var language = {}; - - try { - // Try to load it with the original name - language = Translation.loadPath(name); - } catch (e) { - try { - // If we couldn't load it, check if it wasn't the full path - name = this.defaults.amdLanguageBase + name; - language = Translation.loadPath(name); - } catch (ex) { - // The translation could not be loaded at all. Sometimes this is - // because of a configuration problem, other times this can be - // because of how Select2 helps load all possible translation files. - if (options.debug && window.console && console.warn) { - console.warn( - 'Select2: The language file for "' + name + '" could not be ' + - 'automatically loaded. A fallback will be used instead.' - ); - } - - continue; - } - } - - languages.extend(language); - } - - options.translations = languages; - } else { - var baseTranslation = Translation.loadPath( - this.defaults.amdLanguageBase + 'en' - ); - var customTranslation = new Translation(options.language); - - customTranslation.extend(baseTranslation); - - options.translations = customTranslation; - } - - return options; - }; - - Defaults.prototype.reset = function () { - function stripDiacritics (text) { - // Used 'uni range + named function' from http://jsperf.com/diacritics/18 - function match(a) { - return DIACRITICS[a] || a; - } - - // Replace uni range characters with matched string. - return text.replace(/[^\u0000-\u007E]/g, match); - } - - function matcher (params, data) { - // Always return the object if there is nothing to compare - if ($.trim(params.term) === '') { - return data; - } - - // Do a recursive check for options with children - if (data.children && data.children.length > 0) { - // Clone the data object if there are children - // This is required as we modify the object to remove any non-matches - var match = $.extend(true, {}, data); - - // Check each child of the option - for (var c = data.children.length - 1; c >= 0; c--) { - var child = data.children[c]; - - var matches = matcher(params, child); - - // If there wasn't a match, remove the object in the array - if (matches == null) { - match.children.splice(c, 1); - } - } - - // If any children matched, return the new object - if (match.children.length > 0) { - return match; - } - - // If there were no matching children, check just the plain object - return matcher(params, match); - } - - var original = stripDiacritics(data.text).toUpperCase(); - var term = stripDiacritics(params.term).toUpperCase(); - - // Check if the text contains the term - if (original.indexOf(term) > -1) { - return data; - } - - // If it doesn't contain the term, don't return anything - return null; - } - - this.defaults = { - amdBase: './', - amdLanguageBase: './i18n/', - closeOnSelect: true, - debug: false, - dropdownAutoWidth: false, - escapeMarkup: Utils.escapeMarkup, - language: EnglishTranslation, - matcher: matcher, - minimumInputLength: 0, - maximumInputLength: 0, - maximumSelectionLength: 0, - minimumResultsForSearch: 0, - selectOnClose: false, - sorter: function (data) { - return data; - }, - templateResult: function (result) { - return result.text; - }, - templateSelection: function (selection) { - return selection.text; - }, - theme: 'default', - width: 'resolve' - }; - }; - - Defaults.prototype.set = function (key, value) { - var camelKey = $.camelCase(key); - - var data = {}; - data[camelKey] = value; - - var convertedData = Utils._convertData(data); - - $.extend(this.defaults, convertedData); - }; - - var defaults = new Defaults(); - - return defaults; -}); - -S2.define('select2/options',[ - 'require', - 'jquery', - './defaults', - './utils' -], function (require, $, Defaults, Utils) { - function Options (options, $element) { - this.options = options; - - if ($element != null) { - this.fromElement($element); - } - - this.options = Defaults.apply(this.options); - - if ($element && $element.is('input')) { - var InputCompat = require(this.get('amdBase') + 'compat/inputData'); - - this.options.dataAdapter = Utils.Decorate( - this.options.dataAdapter, - InputCompat - ); - } - } - - Options.prototype.fromElement = function ($e) { - var excludedData = ['select2']; - - if (this.options.multiple == null) { - this.options.multiple = $e.prop('multiple'); - } - - if (this.options.disabled == null) { - this.options.disabled = $e.prop('disabled'); - } - - if (this.options.language == null) { - if ($e.prop('lang')) { - this.options.language = $e.prop('lang').toLowerCase(); - } else if ($e.closest('[lang]').prop('lang')) { - this.options.language = $e.closest('[lang]').prop('lang'); - } - } - - if (this.options.dir == null) { - if ($e.prop('dir')) { - this.options.dir = $e.prop('dir'); - } else if ($e.closest('[dir]').prop('dir')) { - this.options.dir = $e.closest('[dir]').prop('dir'); - } else { - this.options.dir = 'ltr'; - } - } - - $e.prop('disabled', this.options.disabled); - $e.prop('multiple', this.options.multiple); - - if ($e.data('select2Tags')) { - if (this.options.debug && window.console && console.warn) { - console.warn( - 'Select2: The `data-select2-tags` attribute has been changed to ' + - 'use the `data-data` and `data-tags="true"` attributes and will be ' + - 'removed in future versions of Select2.' - ); - } - - $e.data('data', $e.data('select2Tags')); - $e.data('tags', true); - } - - if ($e.data('ajaxUrl')) { - if (this.options.debug && window.console && console.warn) { - console.warn( - 'Select2: The `data-ajax-url` attribute has been changed to ' + - '`data-ajax--url` and support for the old attribute will be removed' + - ' in future versions of Select2.' - ); - } - - $e.attr('ajax--url', $e.data('ajaxUrl')); - $e.data('ajax--url', $e.data('ajaxUrl')); - } - - var dataset = {}; - - // Prefer the element's `dataset` attribute if it exists - // jQuery 1.x does not correctly handle data attributes with multiple dashes - if ($.fn.jquery && $.fn.jquery.substr(0, 2) == '1.' && $e[0].dataset) { - dataset = $.extend(true, {}, $e[0].dataset, $e.data()); - } else { - dataset = $e.data(); - } - - var data = $.extend(true, {}, dataset); - - data = Utils._convertData(data); - - for (var key in data) { - if ($.inArray(key, excludedData) > -1) { - continue; - } - - if ($.isPlainObject(this.options[key])) { - $.extend(this.options[key], data[key]); - } else { - this.options[key] = data[key]; - } - } - - return this; - }; - - Options.prototype.get = function (key) { - return this.options[key]; - }; - - Options.prototype.set = function (key, val) { - this.options[key] = val; - }; - - return Options; -}); - -S2.define('select2/core',[ - 'jquery', - './options', - './utils', - './keys' -], function ($, Options, Utils, KEYS) { - var Select2 = function ($element, options) { - if ($element.data('select2') != null) { - $element.data('select2').destroy(); - } - - this.$element = $element; - - this.id = this._generateId($element); - - options = options || {}; - - this.options = new Options(options, $element); - - Select2.__super__.constructor.call(this); - - // Set up the tabindex - - var tabindex = $element.attr('tabindex') || 0; - $element.data('old-tabindex', tabindex); - $element.attr('tabindex', '-1'); - - // Set up containers and adapters - - var DataAdapter = this.options.get('dataAdapter'); - this.dataAdapter = new DataAdapter($element, this.options); - - var $container = this.render(); - - this._placeContainer($container); - - var SelectionAdapter = this.options.get('selectionAdapter'); - this.selection = new SelectionAdapter($element, this.options); - this.$selection = this.selection.render(); - - this.selection.position(this.$selection, $container); - - var DropdownAdapter = this.options.get('dropdownAdapter'); - this.dropdown = new DropdownAdapter($element, this.options); - this.$dropdown = this.dropdown.render(); - - this.dropdown.position(this.$dropdown, $container); - - var ResultsAdapter = this.options.get('resultsAdapter'); - this.results = new ResultsAdapter($element, this.options, this.dataAdapter); - this.$results = this.results.render(); - - this.results.position(this.$results, this.$dropdown); - - // Bind events - - var self = this; - - // Bind the container to all of the adapters - this._bindAdapters(); - - // Register any DOM event handlers - this._registerDomEvents(); - - // Register any internal event handlers - this._registerDataEvents(); - this._registerSelectionEvents(); - this._registerDropdownEvents(); - this._registerResultsEvents(); - this._registerEvents(); - - // Set the initial state - this.dataAdapter.current(function (initialData) { - self.trigger('selection:update', { - data: initialData - }); - }); - - // Hide the original select - $element.addClass('select2-hidden-accessible'); - $element.attr('aria-hidden', 'true'); - - // Synchronize any monitored attributes - this._syncAttributes(); - - $element.data('select2', this); - }; - - Utils.Extend(Select2, Utils.Observable); - - Select2.prototype._generateId = function ($element) { - var id = ''; - - if ($element.attr('id') != null) { - id = $element.attr('id'); - } else if ($element.attr('name') != null) { - id = $element.attr('name') + '-' + Utils.generateChars(2); - } else { - id = Utils.generateChars(4); - } - - // Replace special characters with empty string. - id = id.replace(/(:|\.|\[|\]|,)/g, ''); - id = 'select2-' + id; - - return id; - }; - - Select2.prototype._placeContainer = function ($container) { - $container.insertAfter(this.$element); - - var width = this._resolveWidth(this.$element, this.options.get('width')); - - if (width != null) { - $container.css('width', width); - } - }; - - Select2.prototype._resolveWidth = function ($element, method) { - var WIDTH = /^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i; - - if (method == 'resolve') { - var styleWidth = this._resolveWidth($element, 'style'); - - if (styleWidth != null) { - return styleWidth; - } - - return this._resolveWidth($element, 'element'); - } - - if (method == 'element') { - var elementWidth = $element.outerWidth(false); - - if (elementWidth <= 0) { - return 'auto'; - } - - return elementWidth + 'px'; - } - - if (method == 'style') { - var style = $element.attr('style'); - - if (typeof(style) !== 'string') { - return null; - } - - var attrs = style.split(';'); - - for (var i = 0, l = attrs.length; i < l; i = i + 1) { - var attr = attrs[i].replace(/\s/g, ''); - var matches = attr.match(WIDTH); - - if (matches !== null && matches.length >= 1) { - return matches[1]; - } - } - - return null; - } - - return method; - }; - - Select2.prototype._bindAdapters = function () { - this.dataAdapter.bind(this, this.$container); - this.selection.bind(this, this.$container); - - this.dropdown.bind(this, this.$container); - this.results.bind(this, this.$container); - }; - - Select2.prototype._registerDomEvents = function () { - var self = this; - - this.$element.on('change.select2', function () { - self.dataAdapter.current(function (data) { - self.trigger('selection:update', { - data: data - }); - }); - }); - - this.$element.on('focus.select2', function (evt) { - self.trigger('focus', evt); - }); - - this._syncA = Utils.bind(this._syncAttributes, this); - this._syncS = Utils.bind(this._syncSubtree, this); - - if (this.$element[0].attachEvent) { - this.$element[0].attachEvent('onpropertychange', this._syncA); - } - - var observer = window.MutationObserver || - window.WebKitMutationObserver || - window.MozMutationObserver - ; - - if (observer != null) { - this._observer = new observer(function (mutations) { - $.each(mutations, self._syncA); - $.each(mutations, self._syncS); - }); - this._observer.observe(this.$element[0], { - attributes: true, - childList: true, - subtree: false - }); - } else if (this.$element[0].addEventListener) { - this.$element[0].addEventListener( - 'DOMAttrModified', - self._syncA, - false - ); - this.$element[0].addEventListener( - 'DOMNodeInserted', - self._syncS, - false - ); - this.$element[0].addEventListener( - 'DOMNodeRemoved', - self._syncS, - false - ); - } - }; - - Select2.prototype._registerDataEvents = function () { - var self = this; - - this.dataAdapter.on('*', function (name, params) { - self.trigger(name, params); - }); - }; - - Select2.prototype._registerSelectionEvents = function () { - var self = this; - var nonRelayEvents = ['toggle', 'focus']; - - this.selection.on('toggle', function () { - self.toggleDropdown(); - }); - - this.selection.on('focus', function (params) { - self.focus(params); - }); - - this.selection.on('*', function (name, params) { - if ($.inArray(name, nonRelayEvents) !== -1) { - return; - } - - self.trigger(name, params); - }); - }; - - Select2.prototype._registerDropdownEvents = function () { - var self = this; - - this.dropdown.on('*', function (name, params) { - self.trigger(name, params); - }); - }; - - Select2.prototype._registerResultsEvents = function () { - var self = this; - - this.results.on('*', function (name, params) { - self.trigger(name, params); - }); - }; - - Select2.prototype._registerEvents = function () { - var self = this; - - this.on('open', function () { - self.$container.addClass('select2-container--open'); - }); - - this.on('close', function () { - self.$container.removeClass('select2-container--open'); - }); - - this.on('enable', function () { - self.$container.removeClass('select2-container--disabled'); - }); - - this.on('disable', function () { - self.$container.addClass('select2-container--disabled'); - }); - - this.on('blur', function () { - self.$container.removeClass('select2-container--focus'); - }); - - this.on('query', function (params) { - if (!self.isOpen()) { - self.trigger('open', {}); - } - - this.dataAdapter.query(params, function (data) { - self.trigger('results:all', { - data: data, - query: params - }); - }); - }); - - this.on('query:append', function (params) { - this.dataAdapter.query(params, function (data) { - self.trigger('results:append', { - data: data, - query: params - }); - }); - }); - - this.on('open', function(){ - // Focus on the active element when opening dropdown. - // Needs 1 ms delay because of other 1 ms setTimeouts when rendering. - setTimeout(function(){ - self.focusOnActiveElement(); - }, 1); - }); - - $(document).on('keydown', function (evt) { - var key = evt.which; - if (self.isOpen()) { - if (key === KEYS.ESC || key === KEYS.TAB || - (key === KEYS.UP && evt.altKey)) { - self.close(); - - evt.preventDefault(); - } else if (key === KEYS.ENTER) { - self.trigger('results:select', {}); - - evt.preventDefault(); - } else if ((key === KEYS.SPACE && evt.ctrlKey)) { - self.trigger('results:toggle', {}); - - evt.preventDefault(); - } else if (key === KEYS.UP) { - self.trigger('results:previous', {}); - - evt.preventDefault(); - } else if (key === KEYS.DOWN) { - self.trigger('results:next', {}); - - evt.preventDefault(); - } - - var $searchField = self.$dropdown.find('.select2-search__field'); - if (! $searchField.length) { - $searchField = self.$container.find('.select2-search__field'); - } - - // Move the focus to the selected element on keyboard navigation. - // Required for screen readers to work properly. - if (key === KEYS.DOWN || key === KEYS.UP) { - self.focusOnActiveElement(); - } else { - // Focus on the search if user starts typing. - $searchField.focus(); - // Focus back to active selection when finished typing. - // Small delay so typed character can be read by screen reader. - setTimeout(function(){ - self.focusOnActiveElement(); - }, 1000); - } - } else if (self.hasFocus()) { - if (key === KEYS.ENTER || key === KEYS.SPACE || - key === KEYS.DOWN) { - self.open(); - evt.preventDefault(); - } - } - }); - }; - - Select2.prototype.focusOnActiveElement = function () { - // Don't mess with the focus on touchscreens because it causes havoc with on-screen keyboards. - if (this.isOpen() && ! Utils.isTouchscreen()) { - this.$results.find('li.select2-results__option--highlighted').focus(); - } - }; - - Select2.prototype._syncAttributes = function () { - this.options.set('disabled', this.$element.prop('disabled')); - - if (this.options.get('disabled')) { - if (this.isOpen()) { - this.close(); - } - - this.trigger('disable', {}); - } else { - this.trigger('enable', {}); - } - }; - - Select2.prototype._syncSubtree = function (evt, mutations) { - var changed = false; - var self = this; - - // Ignore any mutation events raised for elements that aren't options or - // optgroups. This handles the case when the select element is destroyed - if ( - evt && evt.target && ( - evt.target.nodeName !== 'OPTION' && evt.target.nodeName !== 'OPTGROUP' - ) - ) { - return; - } - - if (!mutations) { - // If mutation events aren't supported, then we can only assume that the - // change affected the selections - changed = true; - } else if (mutations.addedNodes && mutations.addedNodes.length > 0) { - for (var n = 0; n < mutations.addedNodes.length; n++) { - var node = mutations.addedNodes[n]; - - if (node.selected) { - changed = true; - } - } - } else if (mutations.removedNodes && mutations.removedNodes.length > 0) { - changed = true; - } - - // Only re-pull the data if we think there is a change - if (changed) { - this.dataAdapter.current(function (currentData) { - self.trigger('selection:update', { - data: currentData - }); - }); - } - }; - - /** - * Override the trigger method to automatically trigger pre-events when - * there are events that can be prevented. - */ - Select2.prototype.trigger = function (name, args) { - var actualTrigger = Select2.__super__.trigger; - var preTriggerMap = { - 'open': 'opening', - 'close': 'closing', - 'select': 'selecting', - 'unselect': 'unselecting' - }; - - if (args === undefined) { - args = {}; - } - - if (name in preTriggerMap) { - var preTriggerName = preTriggerMap[name]; - var preTriggerArgs = { - prevented: false, - name: name, - args: args - }; - - actualTrigger.call(this, preTriggerName, preTriggerArgs); - - if (preTriggerArgs.prevented) { - args.prevented = true; - - return; - } - } - - actualTrigger.call(this, name, args); - }; - - Select2.prototype.toggleDropdown = function () { - if (this.options.get('disabled')) { - return; - } - - if (this.isOpen()) { - this.close(); - } else { - this.open(); - } - }; - - Select2.prototype.open = function () { - if (this.isOpen()) { - return; - } - - this.trigger('query', {}); - }; - - Select2.prototype.close = function () { - if (!this.isOpen()) { - return; - } - - this.trigger('close', {}); - }; - - Select2.prototype.isOpen = function () { - return this.$container.hasClass('select2-container--open'); - }; - - Select2.prototype.hasFocus = function () { - return this.$container.hasClass('select2-container--focus'); - }; - - Select2.prototype.focus = function (data) { - // No need to re-trigger focus events if we are already focused - if (this.hasFocus()) { - return; - } - - this.$container.addClass('select2-container--focus'); - this.trigger('focus', {}); - }; - - Select2.prototype.enable = function (args) { - if (this.options.get('debug') && window.console && console.warn) { - console.warn( - 'Select2: The `select2("enable")` method has been deprecated and will' + - ' be removed in later Select2 versions. Use $element.prop("disabled")' + - ' instead.' - ); - } - - if (args == null || args.length === 0) { - args = [true]; - } - - var disabled = !args[0]; - - this.$element.prop('disabled', disabled); - }; - - Select2.prototype.data = function () { - if (this.options.get('debug') && - arguments.length > 0 && window.console && console.warn) { - console.warn( - 'Select2: Data can no longer be set using `select2("data")`. You ' + - 'should consider setting the value instead using `$element.val()`.' - ); - } - - var data = []; - - this.dataAdapter.current(function (currentData) { - data = currentData; - }); - - return data; - }; - - Select2.prototype.val = function (args) { - if (this.options.get('debug') && window.console && console.warn) { - console.warn( - 'Select2: The `select2("val")` method has been deprecated and will be' + - ' removed in later Select2 versions. Use $element.val() instead.' - ); - } - - if (args == null || args.length === 0) { - return this.$element.val(); - } - - var newVal = args[0]; - - if (Array.isArray(newVal)) { - newVal = $.map(newVal, function (obj) { - return obj.toString(); - }); - } - - this.$element.val(newVal).trigger('change'); - }; - - Select2.prototype.destroy = function () { - this.$container.remove(); - - if (this.$element[0].detachEvent) { - this.$element[0].detachEvent('onpropertychange', this._syncA); - } - - if (this._observer != null) { - this._observer.disconnect(); - this._observer = null; - } else if (this.$element[0].removeEventListener) { - this.$element[0] - .removeEventListener('DOMAttrModified', this._syncA, false); - this.$element[0] - .removeEventListener('DOMNodeInserted', this._syncS, false); - this.$element[0] - .removeEventListener('DOMNodeRemoved', this._syncS, false); - } - - this._syncA = null; - this._syncS = null; - - this.$element.off('.select2'); - this.$element.attr('tabindex', this.$element.data('old-tabindex')); - - this.$element.removeClass('select2-hidden-accessible'); - this.$element.attr('aria-hidden', 'false'); - this.$element.removeData('select2'); - - this.dataAdapter.destroy(); - this.selection.destroy(); - this.dropdown.destroy(); - this.results.destroy(); - - this.dataAdapter = null; - this.selection = null; - this.dropdown = null; - this.results = null; - }; - - Select2.prototype.render = function () { - var $container = $( - '' + - '' + - '' + - '' - ); - - $container.attr('dir', this.options.get('dir')); - - this.$container = $container; - - this.$container.addClass('select2-container--' + this.options.get('theme')); - - $container.data('element', this.$element); - - return $container; - }; - - return Select2; -}); - -S2.define('jquery-mousewheel',[ - 'jquery' -], function ($) { - // Used to shim jQuery.mousewheel for non-full builds. - return $; -}); - -S2.define('jquery.select2',[ - 'jquery', - 'jquery-mousewheel', - - './select2/core', - './select2/defaults' -], function ($, _, Select2, Defaults) { - if ($.fn.selectWoo == null) { - // All methods that should return the element - var thisMethods = ['open', 'close', 'destroy']; - - $.fn.selectWoo = function (options) { - options = options || {}; - - if (typeof options === 'object') { - this.each(function () { - var instanceOptions = $.extend(true, {}, options); - - var instance = new Select2($(this), instanceOptions); - }); - - return this; - } else if (typeof options === 'string') { - var ret; - var args = Array.prototype.slice.call(arguments, 1); - - this.each(function () { - var instance = $(this).data('select2'); - - if (instance == null && window.console && console.error) { - console.error( - 'The select2(\'' + options + '\') method was called on an ' + - 'element that is not using Select2.' - ); - } - - ret = instance[options].apply(instance, args); - }); - - // Check if we should be returning `this` - if ($.inArray(options, thisMethods) > -1) { - return this; - } - - return ret; - } else { - throw new Error('Invalid arguments for Select2: ' + options); - } - }; - } - - if ($.fn.select2 != null && $.fn.select2.defaults != null) { - $.fn.selectWoo.defaults = $.fn.select2.defaults; - } - - if ($.fn.selectWoo.defaults == null) { - $.fn.selectWoo.defaults = Defaults; - } - - // Also register selectWoo under select2 if select2 is not already present. - $.fn.select2 = $.fn.select2 || $.fn.selectWoo; - - return Select2; -}); - - // Return the AMD loader configuration so it can be used outside of this file - return { - define: S2.define, - require: S2.require - }; -}()); - - // Autoload the jQuery bindings - // We know that all of the modules exist above this, so we're safe - var select2 = S2.require('jquery.select2'); - - // Hold the AMD module references on the jQuery function that was just loaded - // This allows Select2 to use the internal loader outside of this file, such - // as in the language files. - jQuery.fn.select2.amd = S2; - jQuery.fn.selectWoo.amd = S2; - - // Return the Select2 instance for anyone who is importing it. - return select2; -})); +/** + * File typography.js + * + * Handles Typography of the site + * + * @package Astra + */ + +( function( $ ) { + + /* Internal shorthand */ + var api = wp.customize; + + /** + * Helper class for the main Customizer interface. + * + * @since 1.0.0 + * @class AstTypography + */ + AstTypography = { + + /** + * Initializes our custom logic for the Customizer. + * + * @since 1.0.0 + * @method init + */ + init: function() { + AstTypography._initFonts(); + }, + + /** + * Initializes logic for font controls. + * + * @since 1.0.0 + * @access private + * @method _initFonts + */ + _initFonts: function() + { + $( '.customize-control-ast-font-family select' ).each( function(e) { + + if( 'undefined' != typeof astra.customizer ) { + var fonts = astra.customizer.settings.google_fonts; + var optionName = $(this).data('name'); + + $(this).html( fonts ); + + // Set inherit option text defined in control parameters. + $("select[data-name='" + optionName + "'] option[value='inherit']").text( $(this).data('inherit') ); + + var font_val = $(this).data('value'); + + $(this).val( font_val ); + } + }); + + $( '.customize-control-ast-font-family select' ).each( AstTypography._initFont ); + // Added select2 for all font family & font variant. + $('.customize-control-ast-font-family select').selectWoo(); + }, + + /** + * Initializes logic for a single font control. + * + * @since 1.0.0 + * @access private + * @method _initFont + */ + _initFont: function() + { + var select = $( this ), + link = select.data( 'customize-setting-link' ), + weight = select.data( 'connected-control' ), + variant = select.data( 'connected-variant' ); + + if ( 'undefined' != typeof weight ) { + api( link ).bind( AstTypography._fontSelectChange ); + AstTypography._setFontWeightOptions.apply( api( link ), [ true ] ); + } + + if ( 'undefined' != typeof variant ) { + api( link ).bind( AstTypography._fontSelectChange ); + } + }, + + /** + * Callback for when a font control changes. + * + * @since 1.0.0 + * @access private + * @method _fontSelectChange + */ + _fontSelectChange: function() + { + var fontSelect = api.control( this.id ).container.find( 'select' ), + variants = fontSelect.data( 'connected-variant' ); + + AstTypography._setFontWeightOptions.apply( this, [ false ] ); + }, + + /** + * Clean font name. + * + * Google Fonts are saved as {'Font Name', Category}. This function cleanes this up to retreive only the {Font Name}. + * + * @since 1.3.0 + * @param {String} fontValue Name of the font. + * + * @return {String} Font name where commas and inverted commas are removed if the font is a Google Font. + */ + _cleanGoogleFonts: function(fontValue) + { + // Bail if fontVAlue does not contain a comma. + if ( ! fontValue.includes(',') ) return fontValue; + + var splitFont = fontValue.split(','); + var pattern = new RegExp("'", 'gi'); + + // Check if the cleaned font exists in the Google fonts array. + var googleFontValue = splitFont[0].replace(pattern, ''); + if ( 'undefined' != typeof AstFontFamilies.google[ googleFontValue ] ) { + fontValue = googleFontValue; + } + + return fontValue; + }, + + /** + * Get font Weights. + * + * This function gets the font weights values respective to the selected fonts family{Font Name}. + * + * @since 1.5.2 + * @param {String} fontValue Name of the font. + * + * @return {String} Available font weights for the selected fonts. + */ + _getWeightObject: function(fontValue) + { + var weightObject = [ '400', '600' ]; + if ( fontValue == 'inherit' ) { + weightObject = [ '100','200','300','400','normal','500','600','700','800','900' ]; + } else if ( 'undefined' != typeof AstFontFamilies.system[ fontValue ] ) { + weightObject = AstFontFamilies.system[ fontValue ].weights; + } else if ( 'undefined' != typeof AstFontFamilies.google[ fontValue ] ) { + weightObject = AstFontFamilies.google[ fontValue ][0]; + weightObject = Object.keys(weightObject).map(function(k) { + return weightObject[k]; + }); + } else if ( 'undefined' != typeof AstFontFamilies.custom[ fontValue ] ) { + weightObject = AstFontFamilies.custom[ fontValue ].weights; + } + + return weightObject; + }, + + /** + * Sets the options for a font weight control when a + * font family control changes. + * + * @since 1.0.0 + * @access private + * @method _setFontWeightOptions + * @param {Boolean} init Whether or not we're initializing this font weight control. + */ + _setFontWeightOptions: function( init ) + { + var i = 0, + fontSelect = api.control( this.id ).container.find( 'select' ), + fontValue = this(), + selected = '', + weightKey = fontSelect.data( 'connected-control' ), + weightSelect = api.control( weightKey ).container.find( 'select' ), + currentWeightTitle = weightSelect.data( 'inherit' ), + weightValue = init ? weightSelect.val() : '400', + inheritWeightObject = [ 'inherit' ], + weightObject = [ '400', '600' ], + weightOptions = '', + weightMap = astraTypo; + if ( fontValue == 'inherit' ) { + weightValue = init ? weightSelect.val() : 'inherit'; + } + + var fontValue = AstTypography._cleanGoogleFonts(fontValue); + var weightObject = AstTypography._getWeightObject( fontValue ); + + weightObject = $.merge( inheritWeightObject, weightObject ) + weightMap[ 'inherit' ] = currentWeightTitle; + for ( ; i < weightObject.length; i++ ) { + + if ( 0 === i && -1 === $.inArray( weightValue, weightObject ) ) { + weightValue = weightObject[ 0 ]; + selected = ' selected="selected"'; + } else { + selected = weightObject[ i ] == weightValue ? ' selected="selected"' : ''; + } + if( ! weightObject[ i ].includes( "italic" ) ){ + weightOptions += ''; + } + } + + weightSelect.html( weightOptions ); + + if ( ! init ) { + api( weightKey ).set( '' ); + api( weightKey ).set( weightValue ); + } + }, + + setOption: function( optionName, value, isSelect2 ) { + $( "[data-name='"+ optionName + "']" ).val(value); + if( isSelect2 ) { + $( "[data-name='"+ optionName + "']" ).select2().trigger('change'); + } else { + $( "[data-name='"+ optionName + "']" ).trigger('change'); + } + } + }; + +})( jQuery ); + +/*! + * SelectWoo 1.0.10 + * https://github.com/woocommerce/selectWoo + * + * Released under the MIT license + * https://github.com/woocommerce/selectWoo/blob/master/LICENSE.md + */ +(function (factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['jquery'], factory); + } else if (typeof module === 'object' && module.exports) { + // Node/CommonJS + module.exports = function (root, jQuery) { + if (jQuery === undefined) { + // require('jQuery') returns a factory that requires window to + // build a jQuery instance, we normalize how we use modules + // that require this pattern but the window provided is a noop + // if it's defined (how jquery works) + if (typeof window !== 'undefined') { + jQuery = require('jquery'); + } + else { + jQuery = require('jquery')(root); + } + } + factory(jQuery); + return jQuery; + }; + } else { + // Browser globals + factory(jQuery); + } + } (function (jQuery) { + // This is needed so we can catch the AMD loader configuration and use it + // The inner file should be wrapped (by `banner.start.js`) in a function that + // returns the AMD loader references. + var S2 =(function () { + // Restore the Select2 AMD loader so it can be used + // Needed mostly in the language files, where the loader is not inserted + if (jQuery && jQuery.fn && jQuery.fn.select2 && jQuery.fn.select2.amd) { + var S2 = jQuery.fn.select2.amd; + } + var S2;(function () { if (!S2 || !S2.requirejs) { + if (!S2) { S2 = {}; } else { require = S2; } + /** + * @license almond 0.3.3 Copyright jQuery Foundation and other contributors. + * Released under MIT license, http://github.com/requirejs/almond/LICENSE + */ + //Going sloppy to avoid 'use strict' string cost, but strict practices should + //be followed. + /*global setTimeout: false */ + + var requirejs, require, define; + (function (undef) { + var main, req, makeMap, handlers, + defined = {}, + waiting = {}, + config = {}, + defining = {}, + hasOwn = Object.prototype.hasOwnProperty, + aps = [].slice, + jsSuffixRegExp = /\.js$/; + + function hasProp(obj, prop) { + return hasOwn.call(obj, prop); + } + + /** + * Given a relative module name, like ./something, normalize it to + * a real name that can be mapped to a path. + * @param {String} name the relative name + * @param {String} baseName a real name that the name arg is relative + * to. + * @returns {String} normalized name + */ + function normalize(name, baseName) { + var nameParts, nameSegment, mapValue, foundMap, lastIndex, + foundI, foundStarMap, starI, i, j, part, normalizedBaseParts, + baseParts = baseName && baseName.split("/"), + map = config.map, + starMap = (map && map['*']) || {}; + + //Adjust any relative paths. + if (name) { + name = name.split('/'); + lastIndex = name.length - 1; + + // If wanting node ID compatibility, strip .js from end + // of IDs. Have to do this here, and not in nameToUrl + // because node allows either .js or non .js to map + // to same file. + if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) { + name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, ''); + } + + // Starts with a '.' so need the baseName + if (name[0].charAt(0) === '.' && baseParts) { + //Convert baseName to array, and lop off the last part, + //so that . matches that 'directory' and not name of the baseName's + //module. For instance, baseName of 'one/two/three', maps to + //'one/two/three.js', but we want the directory, 'one/two' for + //this normalization. + normalizedBaseParts = baseParts.slice(0, baseParts.length - 1); + name = normalizedBaseParts.concat(name); + } + + //start trimDots + for (i = 0; i < name.length; i++) { + part = name[i]; + if (part === '.') { + name.splice(i, 1); + i -= 1; + } else if (part === '..') { + // If at the start, or previous value is still .., + // keep them so that when converted to a path it may + // still work when converted to a path, even though + // as an ID it is less than ideal. In larger point + // releases, may be better to just kick out an error. + if (i === 0 || (i === 1 && name[2] === '..') || name[i - 1] === '..') { + continue; + } else if (i > 0) { + name.splice(i - 1, 2); + i -= 2; + } + } + } + //end trimDots + + name = name.join('/'); + } + + //Apply map config if available. + if ((baseParts || starMap) && map) { + nameParts = name.split('/'); + + for (i = nameParts.length; i > 0; i -= 1) { + nameSegment = nameParts.slice(0, i).join("/"); + + if (baseParts) { + //Find the longest baseName segment match in the config. + //So, do joins on the biggest to smallest lengths of baseParts. + for (j = baseParts.length; j > 0; j -= 1) { + mapValue = map[baseParts.slice(0, j).join('/')]; + + //baseName segment has config, find if it has one for + //this name. + if (mapValue) { + mapValue = mapValue[nameSegment]; + if (mapValue) { + //Match, update name to the new value. + foundMap = mapValue; + foundI = i; + break; + } + } + } + } + + if (foundMap) { + break; + } + + //Check for a star map match, but just hold on to it, + //if there is a shorter segment match later in a matching + //config, then favor over this star map. + if (!foundStarMap && starMap && starMap[nameSegment]) { + foundStarMap = starMap[nameSegment]; + starI = i; + } + } + + if (!foundMap && foundStarMap) { + foundMap = foundStarMap; + foundI = starI; + } + + if (foundMap) { + nameParts.splice(0, foundI, foundMap); + name = nameParts.join('/'); + } + } + + return name; + } + + function makeRequire(relName, forceSync) { + return function () { + //A version of a require function that passes a moduleName + //value for items that may need to + //look up paths relative to the moduleName + var args = aps.call(arguments, 0); + + //If first arg is not require('string'), and there is only + //one arg, it is the array form without a callback. Insert + //a null so that the following concat is correct. + if (typeof args[0] !== 'string' && args.length === 1) { + args.push(null); + } + return req.apply(undef, args.concat([relName, forceSync])); + }; + } + + function makeNormalize(relName) { + return function (name) { + return normalize(name, relName); + }; + } + + function makeLoad(depName) { + return function (value) { + defined[depName] = value; + }; + } + + function callDep(name) { + if (hasProp(waiting, name)) { + var args = waiting[name]; + delete waiting[name]; + defining[name] = true; + main.apply(undef, args); + } + + if (!hasProp(defined, name) && !hasProp(defining, name)) { + throw new Error('No ' + name); + } + return defined[name]; + } + + //Turns a plugin!resource to [plugin, resource] + //with the plugin being undefined if the name + //did not have a plugin prefix. + function splitPrefix(name) { + var prefix, + index = name ? name.indexOf('!') : -1; + if (index > -1) { + prefix = name.substring(0, index); + name = name.substring(index + 1, name.length); + } + return [prefix, name]; + } + + //Creates a parts array for a relName where first part is plugin ID, + //second part is resource ID. Assumes relName has already been normalized. + function makeRelParts(relName) { + return relName ? splitPrefix(relName) : []; + } + + /** + * Makes a name map, normalizing the name, and using a plugin + * for normalization if necessary. Grabs a ref to plugin + * too, as an optimization. + */ + makeMap = function (name, relParts) { + var plugin, + parts = splitPrefix(name), + prefix = parts[0], + relResourceName = relParts[1]; + + name = parts[1]; + + if (prefix) { + prefix = normalize(prefix, relResourceName); + plugin = callDep(prefix); + } + + //Normalize according + if (prefix) { + if (plugin && plugin.normalize) { + name = plugin.normalize(name, makeNormalize(relResourceName)); + } else { + name = normalize(name, relResourceName); + } + } else { + name = normalize(name, relResourceName); + parts = splitPrefix(name); + prefix = parts[0]; + name = parts[1]; + if (prefix) { + plugin = callDep(prefix); + } + } + + //Using ridiculous property names for space reasons + return { + f: prefix ? prefix + '!' + name : name, //fullName + n: name, + pr: prefix, + p: plugin + }; + }; + + function makeConfig(name) { + return function () { + return (config && config.config && config.config[name]) || {}; + }; + } + + handlers = { + require: function (name) { + return makeRequire(name); + }, + exports: function (name) { + var e = defined[name]; + if (typeof e !== 'undefined') { + return e; + } else { + return (defined[name] = {}); + } + }, + module: function (name) { + return { + id: name, + uri: '', + exports: defined[name], + config: makeConfig(name) + }; + } + }; + + main = function (name, deps, callback, relName) { + var cjsModule, depName, ret, map, i, relParts, + args = [], + callbackType = typeof callback, + usingExports; + + //Use name if no relName + relName = relName || name; + relParts = makeRelParts(relName); + + //Call the callback to define the module, if necessary. + if (callbackType === 'undefined' || callbackType === 'function') { + //Pull out the defined dependencies and pass the ordered + //values to the callback. + //Default to [require, exports, module] if no deps + deps = !deps.length && callback.length ? ['require', 'exports', 'module'] : deps; + for (i = 0; i < deps.length; i += 1) { + map = makeMap(deps[i], relParts); + depName = map.f; + + //Fast path CommonJS standard dependencies. + if (depName === "require") { + args[i] = handlers.require(name); + } else if (depName === "exports") { + //CommonJS module spec 1.1 + args[i] = handlers.exports(name); + usingExports = true; + } else if (depName === "module") { + //CommonJS module spec 1.1 + cjsModule = args[i] = handlers.module(name); + } else if (hasProp(defined, depName) || + hasProp(waiting, depName) || + hasProp(defining, depName)) { + args[i] = callDep(depName); + } else if (map.p) { + map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {}); + args[i] = defined[depName]; + } else { + throw new Error(name + ' missing ' + depName); + } + } + + ret = callback ? callback.apply(defined[name], args) : undefined; + + if (name) { + //If setting exports via "module" is in play, + //favor that over return value and exports. After that, + //favor a non-undefined return value over exports use. + if (cjsModule && cjsModule.exports !== undef && + cjsModule.exports !== defined[name]) { + defined[name] = cjsModule.exports; + } else if (ret !== undef || !usingExports) { + //Use the return value from the function. + defined[name] = ret; + } + } + } else if (name) { + //May just be an object definition for the module. Only + //worry about defining if have a module name. + defined[name] = callback; + } + }; + + requirejs = require = req = function (deps, callback, relName, forceSync, alt) { + if (typeof deps === "string") { + if (handlers[deps]) { + //callback in this case is really relName + return handlers[deps](callback); + } + //Just return the module wanted. In this scenario, the + //deps arg is the module name, and second arg (if passed) + //is just the relName. + //Normalize module name, if it contains . or .. + return callDep(makeMap(deps, makeRelParts(callback)).f); + } else if (!deps.splice) { + //deps is a config object, not an array. + config = deps; + if (config.deps) { + req(config.deps, config.callback); + } + if (!callback) { + return; + } + + if (callback.splice) { + //callback is an array, which means it is a dependency list. + //Adjust args if there are dependencies + deps = callback; + callback = relName; + relName = null; + } else { + deps = undef; + } + } + + //Support require(['a']) + callback = callback || function () {}; + + //If relName is a function, it is an errback handler, + //so remove it. + if (typeof relName === 'function') { + relName = forceSync; + forceSync = alt; + } + + //Simulate async callback; + if (forceSync) { + main(undef, deps, callback, relName); + } else { + //Using a non-zero value because of concern for what old browsers + //do, and latest browsers "upgrade" to 4 if lower value is used: + //http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout: + //If want a value immediately, use require('id') instead -- something + //that works in almond on the global level, but not guaranteed and + //unlikely to work in other AMD implementations. + setTimeout(function () { + main(undef, deps, callback, relName); + }, 4); + } + + return req; + }; + + /** + * Just drops the config on the floor, but returns req in case + * the config return value is used. + */ + req.config = function (cfg) { + return req(cfg); + }; + + /** + * Expose module registry for debugging and tooling + */ + requirejs._defined = defined; + + define = function (name, deps, callback) { + if (typeof name !== 'string') { + throw new Error('See almond README: incorrect module build, no module name'); + } + + //This module may not have dependencies + if (!deps.splice) { + //deps is not an array, so probably means + //an object literal or factory function for + //the value. Adjust args. + callback = deps; + deps = []; + } + + if (!hasProp(defined, name) && !hasProp(waiting, name)) { + waiting[name] = [name, deps, callback]; + } + }; + + define.amd = { + jQuery: true + }; + }()); + + S2.requirejs = requirejs;S2.require = require;S2.define = define; + } + }()); + S2.define("almond", function(){}); + + /* global jQuery:false, $:false */ + S2.define('jquery',[],function () { + var _$ = jQuery || $; + + if (_$ == null && console && console.error) { + console.error( + 'Select2: An instance of jQuery or a jQuery-compatible library was not ' + + 'found. Make sure that you are including jQuery before Select2 on your ' + + 'web page.' + ); + } + + return _$; + }); + + S2.define('select2/utils',[ + 'jquery' + ], function ($) { + var Utils = {}; + + Utils.Extend = function (ChildClass, SuperClass) { + var __hasProp = {}.hasOwnProperty; + + function BaseConstructor () { + this.constructor = ChildClass; + } + + for (var key in SuperClass) { + if (__hasProp.call(SuperClass, key)) { + ChildClass[key] = SuperClass[key]; + } + } + + BaseConstructor.prototype = SuperClass.prototype; + ChildClass.prototype = new BaseConstructor(); + ChildClass.__super__ = SuperClass.prototype; + + return ChildClass; + }; + + function getMethods (theClass) { + var proto = theClass.prototype; + + var methods = []; + + for (var methodName in proto) { + var m = proto[methodName]; + + if (typeof m !== 'function') { + continue; + } + + if (methodName === 'constructor') { + continue; + } + + methods.push(methodName); + } + + return methods; + } + + Utils.Decorate = function (SuperClass, DecoratorClass) { + var decoratedMethods = getMethods(DecoratorClass); + var superMethods = getMethods(SuperClass); + + function DecoratedClass () { + var unshift = Array.prototype.unshift; + + var argCount = DecoratorClass.prototype.constructor.length; + + var calledConstructor = SuperClass.prototype.constructor; + + if (argCount > 0) { + unshift.call(arguments, SuperClass.prototype.constructor); + + calledConstructor = DecoratorClass.prototype.constructor; + } + + calledConstructor.apply(this, arguments); + } + + DecoratorClass.displayName = SuperClass.displayName; + + function ctr () { + this.constructor = DecoratedClass; + } + + DecoratedClass.prototype = new ctr(); + + for (var m = 0; m < superMethods.length; m++) { + var superMethod = superMethods[m]; + + DecoratedClass.prototype[superMethod] = + SuperClass.prototype[superMethod]; + } + + var calledMethod = function (methodName) { + // Stub out the original method if it's not decorating an actual method + var originalMethod = function () {}; + + if (methodName in DecoratedClass.prototype) { + originalMethod = DecoratedClass.prototype[methodName]; + } + + var decoratedMethod = DecoratorClass.prototype[methodName]; + + return function () { + var unshift = Array.prototype.unshift; + + unshift.call(arguments, originalMethod); + + return decoratedMethod.apply(this, arguments); + }; + }; + + for (var d = 0; d < decoratedMethods.length; d++) { + var decoratedMethod = decoratedMethods[d]; + + DecoratedClass.prototype[decoratedMethod] = calledMethod(decoratedMethod); + } + + return DecoratedClass; + }; + + var Observable = function () { + this.listeners = {}; + }; + + Observable.prototype.on = function (event, callback) { + this.listeners = this.listeners || {}; + + if (event in this.listeners) { + this.listeners[event].push(callback); + } else { + this.listeners[event] = [callback]; + } + }; + + Observable.prototype.trigger = function (event) { + var slice = Array.prototype.slice; + var params = slice.call(arguments, 1); + + this.listeners = this.listeners || {}; + + // Params should always come in as an array + if (params == null) { + params = []; + } + + // If there are no arguments to the event, use a temporary object + if (params.length === 0) { + params.push({}); + } + + // Set the `_type` of the first object to the event + params[0]._type = event; + + if (event in this.listeners) { + this.invoke(this.listeners[event], slice.call(arguments, 1)); + } + + if ('*' in this.listeners) { + this.invoke(this.listeners['*'], arguments); + } + }; + + Observable.prototype.invoke = function (listeners, params) { + for (var i = 0, len = listeners.length; i < len; i++) { + listeners[i].apply(this, params); + } + }; + + Utils.Observable = Observable; + + Utils.generateChars = function (length) { + var chars = ''; + + for (var i = 0; i < length; i++) { + var randomChar = Math.floor(Math.random() * 36); + chars += randomChar.toString(36); + } + + return chars; + }; + + Utils.bind = function (func, context) { + return function () { + func.apply(context, arguments); + }; + }; + + Utils._convertData = function (data) { + for (var originalKey in data) { + var keys = originalKey.split('-'); + + var dataLevel = data; + + if (keys.length === 1) { + continue; + } + + for (var k = 0; k < keys.length; k++) { + var key = keys[k]; + + // Lowercase the first letter + // By default, dash-separated becomes camelCase + key = key.substring(0, 1).toLowerCase() + key.substring(1); + + if (!(key in dataLevel)) { + dataLevel[key] = {}; + } + + if (k == keys.length - 1) { + dataLevel[key] = data[originalKey]; + } + + dataLevel = dataLevel[key]; + } + + delete data[originalKey]; + } + + return data; + }; + + Utils.hasScroll = function (index, el) { + // Adapted from the function created by @ShadowScripter + // and adapted by @BillBarry on the Stack Exchange Code Review website. + // The original code can be found at + // http://codereview.stackexchange.com/q/13338 + // and was designed to be used with the Sizzle selector engine. + + var $el = $(el); + var overflowX = el.style.overflowX; + var overflowY = el.style.overflowY; + + //Check both x and y declarations + if (overflowX === overflowY && + (overflowY === 'hidden' || overflowY === 'visible')) { + return false; + } + + if (overflowX === 'scroll' || overflowY === 'scroll') { + return true; + } + + return ($el.innerHeight() < el.scrollHeight || + $el.innerWidth() < el.scrollWidth); + }; + + Utils.escapeMarkup = function (markup) { + var replaceMap = { + '\\': '\', + '&': '&', + '<': '<', + '>': '>', + '"': '"', + '\'': ''', + '/': '/' + }; + + // Do not try to escape the markup if it's not a string + if (typeof markup !== 'string') { + return markup; + } + + return String(markup).replace(/[&<>"'\/\\]/g, function (match) { + return replaceMap[match]; + }); + }; + + Utils.entityDecode = function (html) { + var txt = document.createElement('textarea'); + txt.innerHTML = html; + return txt.value; + } + + // Append an array of jQuery nodes to a given element. + Utils.appendMany = function ($element, $nodes) { + // jQuery 1.7.x does not support $.fn.append() with an array + // Fall back to a jQuery object collection using $.fn.add() + if ($.fn.jquery.substr(0, 3) === '1.7') { + var $jqNodes = $(); + + $.map($nodes, function (node) { + $jqNodes = $jqNodes.add(node); + }); + + $nodes = $jqNodes; + } + + $element.append($nodes); + }; + + // Determine whether the browser is on a touchscreen device. + Utils.isTouchscreen = function() { + if ('undefined' === typeof Utils._isTouchscreenCache) { + Utils._isTouchscreenCache = 'ontouchstart' in document.documentElement; + } + return Utils._isTouchscreenCache; + } + + return Utils; + }); + + S2.define('select2/results',[ + 'jquery', + './utils' + ], function ($, Utils) { + function Results ($element, options, dataAdapter) { + this.$element = $element; + this.data = dataAdapter; + this.options = options; + + Results.__super__.constructor.call(this); + } + + Utils.Extend(Results, Utils.Observable); + + Results.prototype.render = function () { + var $results = $( + '
          ' + ); + + if (this.options.get('multiple')) { + $results.attr('aria-multiselectable', 'true'); + } + + this.$results = $results; + + return $results; + }; + + Results.prototype.clear = function () { + this.$results.empty(); + }; + + Results.prototype.displayMessage = function (params) { + var escapeMarkup = this.options.get('escapeMarkup'); + + this.clear(); + this.hideLoading(); + + var $message = $( + '' + ); + + var message = this.options.get('translations').get(params.message); + + $message.append( + escapeMarkup( + message(params.args) + ) + ); + + $message[0].className += ' select2-results__message'; + + this.$results.append($message); + }; + + Results.prototype.hideMessages = function () { + this.$results.find('.select2-results__message').remove(); + }; + + Results.prototype.append = function (data) { + this.hideLoading(); + + var $options = []; + + if (data.results == null || data.results.length === 0) { + if (this.$results.children().length === 0) { + this.trigger('results:message', { + message: 'noResults' + }); + } + + return; + } + + data.results = this.sort(data.results); + + for (var d = 0; d < data.results.length; d++) { + var item = data.results[d]; + + var $option = this.option(item); + + $options.push($option); + } + + this.$results.append($options); + }; + + Results.prototype.position = function ($results, $dropdown) { + var $resultsContainer = $dropdown.find('.select2-results'); + $resultsContainer.append($results); + }; + + Results.prototype.sort = function (data) { + var sorter = this.options.get('sorter'); + + return sorter(data); + }; + + Results.prototype.highlightFirstItem = function () { + var $options = this.$results + .find('.select2-results__option[data-selected]'); + + var $selected = $options.filter('[data-selected=true]'); + + // Check if there are any selected options + if ($selected.length > 0) { + // If there are selected options, highlight the first + $selected.first().trigger('mouseenter'); + } else { + // If there are no selected options, highlight the first option + // in the dropdown + $options.first().trigger('mouseenter'); + } + + this.ensureHighlightVisible(); + }; + + Results.prototype.setClasses = function () { + var self = this; + + this.data.current(function (selected) { + var selectedIds = $.map(selected, function (s) { + return s.id.toString(); + }); + + var $options = self.$results + .find('.select2-results__option[data-selected]'); + + $options.each(function () { + var $option = $(this); + + var item = $.data(this, 'data'); + + // id needs to be converted to a string when comparing + var id = '' + item.id; + + if ((item.element != null && item.element.selected) || + (item.element == null && $.inArray(id, selectedIds) > -1)) { + $option.attr('data-selected', 'true'); + } else { + $option.attr('data-selected', 'false'); + } + }); + + }); + }; + + Results.prototype.showLoading = function (params) { + this.hideLoading(); + + var loadingMore = this.options.get('translations').get('searching'); + + var loading = { + disabled: true, + loading: true, + text: loadingMore(params) + }; + var $loading = this.option(loading); + $loading.className += ' loading-results'; + + this.$results.prepend($loading); + }; + + Results.prototype.hideLoading = function () { + this.$results.find('.loading-results').remove(); + }; + + Results.prototype.option = function (data) { + var option = document.createElement('li'); + option.className = 'select2-results__option'; + + var attrs = { + 'role': 'option', + 'data-selected': 'false', + 'tabindex': -1 + }; + + if (data.disabled) { + delete attrs['data-selected']; + attrs['aria-disabled'] = 'true'; + } + + if (data.id == null) { + delete attrs['data-selected']; + } + + if (data._resultId != null) { + option.id = data._resultId; + } + + if (data.title) { + option.title = data.title; + } + + if (data.children) { + attrs['aria-label'] = data.text; + delete attrs['data-selected']; + } + + for (var attr in attrs) { + var val = attrs[attr]; + + option.setAttribute(attr, val); + } + + if (data.children) { + var $option = $(option); + + var label = document.createElement('strong'); + label.className = 'select2-results__group'; + + var $label = $(label); + this.template(data, label); + $label.attr('role', 'presentation'); + + var $children = []; + + for (var c = 0; c < data.children.length; c++) { + var child = data.children[c]; + + var $child = this.option(child); + + $children.push($child); + } + + var $childrenContainer = $('
            ', { + 'class': 'select2-results__options select2-results__options--nested', + 'role': 'listbox' + }); + $childrenContainer.append($children); + $option.attr('role', 'list'); + + $option.append(label); + $option.append($childrenContainer); + } else { + this.template(data, option); + } + + $.data(option, 'data', data); + + return option; + }; + + Results.prototype.bind = function (container, $container) { + var self = this; + + var id = container.id + '-results'; + + this.$results.attr('id', id); + + container.on('results:all', function (params) { + self.clear(); + self.append(params.data); + + if (container.isOpen()) { + self.setClasses(); + self.highlightFirstItem(); + } + }); + + container.on('results:append', function (params) { + self.append(params.data); + + if (container.isOpen()) { + self.setClasses(); + } + }); + + container.on('query', function (params) { + self.hideMessages(); + self.showLoading(params); + }); + + container.on('select', function () { + if (!container.isOpen()) { + return; + } + + self.setClasses(); + self.highlightFirstItem(); + }); + + container.on('unselect', function () { + if (!container.isOpen()) { + return; + } + + self.setClasses(); + self.highlightFirstItem(); + }); + + container.on('open', function () { + // When the dropdown is open, aria-expended="true" + self.$results.attr('aria-expanded', 'true'); + self.$results.attr('aria-hidden', 'false'); + + self.setClasses(); + self.ensureHighlightVisible(); + }); + + container.on('close', function () { + // When the dropdown is closed, aria-expended="false" + self.$results.attr('aria-expanded', 'false'); + self.$results.attr('aria-hidden', 'true'); + self.$results.removeAttr('aria-activedescendant'); + }); + + container.on('results:toggle', function () { + var $highlighted = self.getHighlightedResults(); + + if ($highlighted.length === 0) { + return; + } + + $highlighted.trigger('mouseup'); + }); + + container.on('results:select', function () { + var $highlighted = self.getHighlightedResults(); + + if ($highlighted.length === 0) { + return; + } + + var data = $highlighted.data('data'); + + if ($highlighted.attr('data-selected') == 'true') { + self.trigger('close', {}); + } else { + self.trigger('select', { + data: data + }); + } + }); + + container.on('results:previous', function () { + var $highlighted = self.getHighlightedResults(); + + var $options = self.$results.find('[data-selected]'); + + var currentIndex = $options.index($highlighted); + + // If we are already at te top, don't move further + if (currentIndex === 0) { + return; + } + + var nextIndex = currentIndex - 1; + + // If none are highlighted, highlight the first + if ($highlighted.length === 0) { + nextIndex = 0; + } + + var $next = $options.eq(nextIndex); + + $next.trigger('mouseenter'); + + var currentOffset = self.$results.offset().top; + var nextTop = $next.offset().top; + var nextOffset = self.$results.scrollTop() + (nextTop - currentOffset); + + if (nextIndex === 0) { + self.$results.scrollTop(0); + } else if (nextTop - currentOffset < 0) { + self.$results.scrollTop(nextOffset); + } + }); + + container.on('results:next', function () { + var $highlighted = self.getHighlightedResults(); + + var $options = self.$results.find('[data-selected]'); + + var currentIndex = $options.index($highlighted); + + var nextIndex = currentIndex + 1; + + // If we are at the last option, stay there + if (nextIndex >= $options.length) { + return; + } + + var $next = $options.eq(nextIndex); + + $next.trigger('mouseenter'); + + var currentOffset = self.$results.offset().top + + self.$results.outerHeight(false); + var nextBottom = $next.offset().top + $next.outerHeight(false); + var nextOffset = self.$results.scrollTop() + nextBottom - currentOffset; + + if (nextIndex === 0) { + self.$results.scrollTop(0); + } else if (nextBottom > currentOffset) { + self.$results.scrollTop(nextOffset); + } + }); + + container.on('results:focus', function (params) { + params.element.addClass('select2-results__option--highlighted').attr('aria-selected', 'true'); + self.$results.attr('aria-activedescendant', params.element.attr('id')); + }); + + container.on('results:message', function (params) { + self.displayMessage(params); + }); + + if ($.fn.mousewheel) { + this.$results.on('mousewheel', function (e) { + var top = self.$results.scrollTop(); + + var bottom = self.$results.get(0).scrollHeight - top + e.deltaY; + + var isAtTop = e.deltaY > 0 && top - e.deltaY <= 0; + var isAtBottom = e.deltaY < 0 && bottom <= self.$results.height(); + + if (isAtTop) { + self.$results.scrollTop(0); + + e.preventDefault(); + e.stopPropagation(); + } else if (isAtBottom) { + self.$results.scrollTop( + self.$results.get(0).scrollHeight - self.$results.height() + ); + + e.preventDefault(); + e.stopPropagation(); + } + }); + } + + this.$results.on('mouseup', '.select2-results__option[data-selected]', + function (evt) { + var $this = $(this); + + var data = $this.data('data'); + + if ($this.attr('data-selected') === 'true') { + if (self.options.get('multiple')) { + self.trigger('unselect', { + originalEvent: evt, + data: data + }); + } else { + self.trigger('close', {}); + } + + return; + } + + self.trigger('select', { + originalEvent: evt, + data: data + }); + }); + + this.$results.on('mouseenter', '.select2-results__option[data-selected]', + function (evt) { + var data = $(this).data('data'); + + self.getHighlightedResults() + .removeClass('select2-results__option--highlighted') + .attr('aria-selected', 'false'); + + self.trigger('results:focus', { + data: data, + element: $(this) + }); + }); + }; + + Results.prototype.getHighlightedResults = function () { + var $highlighted = this.$results + .find('.select2-results__option--highlighted'); + + return $highlighted; + }; + + Results.prototype.destroy = function () { + this.$results.remove(); + }; + + Results.prototype.ensureHighlightVisible = function () { + var $highlighted = this.getHighlightedResults(); + + if ($highlighted.length === 0) { + return; + } + + var $options = this.$results.find('[data-selected]'); + + var currentIndex = $options.index($highlighted); + + var currentOffset = this.$results.offset().top; + var nextTop = $highlighted.offset().top; + var nextOffset = this.$results.scrollTop() + (nextTop - currentOffset); + + var offsetDelta = nextTop - currentOffset; + nextOffset -= $highlighted.outerHeight(false) * 2; + + if (currentIndex <= 2) { + this.$results.scrollTop(0); + } else if (offsetDelta > this.$results.outerHeight() || offsetDelta < 0) { + this.$results.scrollTop(nextOffset); + } + }; + + Results.prototype.template = function (result, container) { + var template = this.options.get('templateResult'); + var escapeMarkup = this.options.get('escapeMarkup'); + + var content = template(result, container); + + if (content == null) { + container.style.display = 'none'; + } else if (typeof content === 'string') { + container.innerHTML = escapeMarkup(content); + } else { + $(container).append(content); + } + }; + + return Results; + }); + + S2.define('select2/keys',[ + + ], function () { + var KEYS = { + BACKSPACE: 8, + TAB: 9, + ENTER: 13, + SHIFT: 16, + CTRL: 17, + ALT: 18, + ESC: 27, + SPACE: 32, + PAGE_UP: 33, + PAGE_DOWN: 34, + END: 35, + HOME: 36, + LEFT: 37, + UP: 38, + RIGHT: 39, + DOWN: 40, + DELETE: 46 + }; + + return KEYS; + }); + + S2.define('select2/selection/base',[ + 'jquery', + '../utils', + '../keys' + ], function ($, Utils, KEYS) { + function BaseSelection ($element, options) { + this.$element = $element; + this.options = options; + + BaseSelection.__super__.constructor.call(this); + } + + Utils.Extend(BaseSelection, Utils.Observable); + + BaseSelection.prototype.render = function () { + var $selection = $( + '' + ); + + this._tabindex = 0; + + if (this.$element.data('old-tabindex') != null) { + this._tabindex = this.$element.data('old-tabindex'); + } else if (this.$element.attr('tabindex') != null) { + this._tabindex = this.$element.attr('tabindex'); + } + + $selection.attr('title', this.$element.attr('title')); + $selection.attr('tabindex', this._tabindex); + + this.$selection = $selection; + + return $selection; + }; + + BaseSelection.prototype.bind = function (container, $container) { + var self = this; + + var id = container.id + '-container'; + var resultsId = container.id + '-results'; + var searchHidden = this.options.get('minimumResultsForSearch') === Infinity; + + this.container = container; + + this.$selection.on('focus', function (evt) { + self.trigger('focus', evt); + }); + + this.$selection.on('blur', function (evt) { + self._handleBlur(evt); + }); + + this.$selection.on('keydown', function (evt) { + self.trigger('keypress', evt); + + if (evt.which === KEYS.SPACE) { + evt.preventDefault(); + } + }); + + container.on('results:focus', function (params) { + self.$selection.attr('aria-activedescendant', params.data._resultId); + }); + + container.on('selection:update', function (params) { + self.update(params.data); + }); + + container.on('open', function () { + // When the dropdown is open, aria-expanded="true" + self.$selection.attr('aria-expanded', 'true'); + self.$selection.attr('aria-owns', resultsId); + + self._attachCloseHandler(container); + }); + + container.on('close', function () { + // When the dropdown is closed, aria-expanded="false" + self.$selection.attr('aria-expanded', 'false'); + self.$selection.removeAttr('aria-activedescendant'); + self.$selection.removeAttr('aria-owns'); + + // This needs to be delayed as the active element is the body when the + // key is pressed. + window.setTimeout(function () { + self.$selection.focus(); + }, 1); + + self._detachCloseHandler(container); + }); + + container.on('enable', function () { + self.$selection.attr('tabindex', self._tabindex); + }); + + container.on('disable', function () { + self.$selection.attr('tabindex', '-1'); + }); + }; + + BaseSelection.prototype._handleBlur = function (evt) { + var self = this; + + // This needs to be delayed as the active element is the body when the tab + // key is pressed, possibly along with others. + window.setTimeout(function () { + // Don't trigger `blur` if the focus is still in the selection + if ( + (document.activeElement == self.$selection[0]) || + ($.contains(self.$selection[0], document.activeElement)) + ) { + return; + } + + self.trigger('blur', evt); + }, 1); + }; + + BaseSelection.prototype._attachCloseHandler = function (container) { + var self = this; + + $(document.body).on('mousedown.select2.' + container.id, function (e) { + var $target = $(e.target); + + var $select = $target.closest('.select2'); + + var $all = $('.select2.select2-container--open'); + + $all.each(function () { + var $this = $(this); + + if (this == $select[0]) { + return; + } + + var $element = $this.data('element'); + $element.select2('close'); + + // Remove any focus when dropdown is closed by clicking outside the select area. + // Timeout of 1 required for close to finish wrapping up. + setTimeout(function(){ + $this.find('*:focus').blur(); + $target.focus(); + }, 1); + }); + }); + }; + + BaseSelection.prototype._detachCloseHandler = function (container) { + $(document.body).off('mousedown.select2.' + container.id); + }; + + BaseSelection.prototype.position = function ($selection, $container) { + var $selectionContainer = $container.find('.selection'); + $selectionContainer.append($selection); + }; + + BaseSelection.prototype.destroy = function () { + this._detachCloseHandler(this.container); + }; + + BaseSelection.prototype.update = function (data) { + throw new Error('The `update` method must be defined in child classes.'); + }; + + return BaseSelection; + }); + + S2.define('select2/selection/single',[ + 'jquery', + './base', + '../utils', + '../keys' + ], function ($, BaseSelection, Utils, KEYS) { + function SingleSelection () { + SingleSelection.__super__.constructor.apply(this, arguments); + } + + Utils.Extend(SingleSelection, BaseSelection); + + SingleSelection.prototype.render = function () { + var $selection = SingleSelection.__super__.render.call(this); + + $selection.addClass('select2-selection--single'); + + $selection.html( + '' + + '' + + '' + + '' + ); + + return $selection; + }; + + SingleSelection.prototype.bind = function (container, $container) { + var self = this; + + SingleSelection.__super__.bind.apply(this, arguments); + + var id = container.id + '-container'; + + this.$selection.find('.select2-selection__rendered') + .attr('id', id) + .attr('role', 'textbox') + .attr('aria-readonly', 'true'); + + var label = this.options.get( 'label' ); + + if ( typeof( label ) === 'string' ) { + this.$selection.attr( 'aria-label', label ); + } else { + this.$selection.attr( 'aria-labelledby', id ); + } + + // This makes single non-search selects work in screen readers. If it causes problems elsewhere, remove. + this.$selection.attr('role', 'combobox'); + + this.$selection.on('mousedown', function (evt) { + // Only respond to left clicks + if (evt.which !== 1) { + return; + } + + self.trigger('toggle', { + originalEvent: evt + }); + }); + + this.$selection.on('focus', function (evt) { + // User focuses on the container + }); + + this.$selection.on('keydown', function (evt) { + // If user starts typing an alphanumeric key on the keyboard, open if not opened. + if (!container.isOpen() && evt.which >= 48 && evt.which <= 90) { + container.open(); + } + }); + + this.$selection.on('blur', function (evt) { + // User exits the container + }); + + container.on('focus', function (evt) { + if (!container.isOpen()) { + self.$selection.focus(); + } + }); + + container.on('selection:update', function (params) { + self.update(params.data); + }); + }; + + SingleSelection.prototype.clear = function () { + this.$selection.find('.select2-selection__rendered').empty(); + }; + + SingleSelection.prototype.display = function (data, container) { + var template = this.options.get('templateSelection'); + var escapeMarkup = this.options.get('escapeMarkup'); + + return escapeMarkup(template(data, container)); + }; + + SingleSelection.prototype.selectionContainer = function () { + return $(''); + }; + + SingleSelection.prototype.update = function (data) { + if (data.length === 0) { + this.clear(); + return; + } + + var selection = data[0]; + + var $rendered = this.$selection.find('.select2-selection__rendered'); + var formatted = Utils.entityDecode(this.display(selection, $rendered)); + + $rendered.empty().text(formatted); + $rendered.prop('title', selection.title || selection.text); + }; + + return SingleSelection; + }); + + S2.define('select2/selection/multiple',[ + 'jquery', + './base', + '../utils' + ], function ($, BaseSelection, Utils) { + function MultipleSelection ($element, options) { + MultipleSelection.__super__.constructor.apply(this, arguments); + } + + Utils.Extend(MultipleSelection, BaseSelection); + + MultipleSelection.prototype.render = function () { + var $selection = MultipleSelection.__super__.render.call(this); + + $selection.addClass('select2-selection--multiple'); + + $selection.html( + '
              ' + ); + + return $selection; + }; + + MultipleSelection.prototype.bind = function (container, $container) { + var self = this; + + MultipleSelection.__super__.bind.apply(this, arguments); + + this.$selection.on('click', function (evt) { + self.trigger('toggle', { + originalEvent: evt + }); + }); + + this.$selection.on( + 'click', + '.select2-selection__choice__remove', + function (evt) { + // Ignore the event if it is disabled + if (self.options.get('disabled')) { + return; + } + + var $remove = $(this); + var $selection = $remove.parent(); + + var data = $selection.data('data'); + + self.trigger('unselect', { + originalEvent: evt, + data: data + }); + } + ); + + this.$selection.on('keydown', function (evt) { + // If user starts typing an alphanumeric key on the keyboard, open if not opened. + if (!container.isOpen() && evt.which >= 48 && evt.which <= 90) { + container.open(); + } + }); + + // Focus on the search field when the container is focused instead of the main container. + container.on( 'focus', function(){ + self.focusOnSearch(); + }); + }; + + MultipleSelection.prototype.clear = function () { + this.$selection.find('.select2-selection__rendered').empty(); + }; + + MultipleSelection.prototype.display = function (data, container) { + var template = this.options.get('templateSelection'); + var escapeMarkup = this.options.get('escapeMarkup'); + + return escapeMarkup(template(data, container)); + }; + + MultipleSelection.prototype.selectionContainer = function () { + var $container = $( + '
            • ' + + '' + + '
            • ' + ); + + return $container; + }; + + /** + * Focus on the search field instead of the main multiselect container. + */ + MultipleSelection.prototype.focusOnSearch = function() { + var self = this; + + if ('undefined' !== typeof self.$search) { + // Needs 1 ms delay because of other 1 ms setTimeouts when rendering. + setTimeout(function(){ + // Prevent the dropdown opening again when focused from this. + // This gets reset automatically when focus is triggered. + self._keyUpPrevented = true; + + self.$search.focus(); + }, 1); + } + } + + MultipleSelection.prototype.update = function (data) { + this.clear(); + + if (data.length === 0) { + return; + } + + var $selections = []; + + for (var d = 0; d < data.length; d++) { + var selection = data[d]; + + var $selection = this.selectionContainer(); + var removeItemTag = $selection.html(); + var formatted = this.display(selection, $selection); + if ('string' === typeof formatted) { + formatted = Utils.entityDecode(formatted.trim()); + } + + $selection.text(formatted); + $selection.prepend(removeItemTag); + $selection.prop('title', selection.title || selection.text); + + $selection.data('data', selection); + + $selections.push($selection); + } + + var $rendered = this.$selection.find('.select2-selection__rendered'); + + Utils.appendMany($rendered, $selections); + }; + + return MultipleSelection; + }); + + S2.define('select2/selection/placeholder',[ + '../utils' + ], function (Utils) { + function Placeholder (decorated, $element, options) { + this.placeholder = this.normalizePlaceholder(options.get('placeholder')); + + decorated.call(this, $element, options); + } + + Placeholder.prototype.normalizePlaceholder = function (_, placeholder) { + if (typeof placeholder === 'string') { + placeholder = { + id: '', + text: placeholder + }; + } + + return placeholder; + }; + + Placeholder.prototype.createPlaceholder = function (decorated, placeholder) { + var $placeholder = this.selectionContainer(); + + $placeholder.text(Utils.entityDecode(this.display(placeholder))); + $placeholder.addClass('select2-selection__placeholder') + .removeClass('select2-selection__choice'); + + return $placeholder; + }; + + Placeholder.prototype.update = function (decorated, data) { + var singlePlaceholder = ( + data.length == 1 && data[0].id != this.placeholder.id + ); + var multipleSelections = data.length > 1; + + if (multipleSelections || singlePlaceholder) { + return decorated.call(this, data); + } + + this.clear(); + + var $placeholder = this.createPlaceholder(this.placeholder); + + this.$selection.find('.select2-selection__rendered').append($placeholder); + }; + + return Placeholder; + }); + + S2.define('select2/selection/allowClear',[ + 'jquery', + '../keys' + ], function ($, KEYS) { + function AllowClear () { } + + AllowClear.prototype.bind = function (decorated, container, $container) { + var self = this; + + decorated.call(this, container, $container); + + if (this.placeholder == null) { + if (this.options.get('debug') && window.console && console.error) { + console.error( + 'Select2: The `allowClear` option should be used in combination ' + + 'with the `placeholder` option.' + ); + } + } + + this.$selection.on('mousedown', '.select2-selection__clear', + function (evt) { + self._handleClear(evt); + }); + + container.on('keypress', function (evt) { + self._handleKeyboardClear(evt, container); + }); + }; + + AllowClear.prototype._handleClear = function (_, evt) { + // Ignore the event if it is disabled + if (this.options.get('disabled')) { + return; + } + + var $clear = this.$selection.find('.select2-selection__clear'); + + // Ignore the event if nothing has been selected + if ($clear.length === 0) { + return; + } + + evt.stopPropagation(); + + var data = $clear.data('data'); + + for (var d = 0; d < data.length; d++) { + var unselectData = { + data: data[d] + }; + + // Trigger the `unselect` event, so people can prevent it from being + // cleared. + this.trigger('unselect', unselectData); + + // If the event was prevented, don't clear it out. + if (unselectData.prevented) { + return; + } + } + + this.$element.val(this.placeholder.id).trigger('change'); + + this.trigger('toggle', {}); + }; + + AllowClear.prototype._handleKeyboardClear = function (_, evt, container) { + if (container.isOpen()) { + return; + } + + if (evt.which == KEYS.DELETE || evt.which == KEYS.BACKSPACE) { + this._handleClear(evt); + } + }; + + AllowClear.prototype.update = function (decorated, data) { + decorated.call(this, data); + + if (this.$selection.find('.select2-selection__placeholder').length > 0 || + data.length === 0) { + return; + } + + var $remove = $( + '' + + '×' + + '' + ); + $remove.data('data', data); + + this.$selection.find('.select2-selection__rendered').prepend($remove); + }; + + return AllowClear; + }); + + S2.define('select2/selection/search',[ + 'jquery', + '../utils', + '../keys' + ], function ($, Utils, KEYS) { + function Search (decorated, $element, options) { + decorated.call(this, $element, options); + } + + Search.prototype.render = function (decorated) { + var $search = $( + '' + ); + + this.$searchContainer = $search; + this.$search = $search.find('input'); + + var $rendered = decorated.call(this); + + this._transferTabIndex(); + + return $rendered; + }; + + Search.prototype.bind = function (decorated, container, $container) { + var self = this; + var resultsId = container.id + '-results'; + + decorated.call(this, container, $container); + + container.on('open', function () { + self.$search.attr('aria-owns', resultsId); + self.$search.trigger('focus'); + }); + + container.on('close', function () { + self.$search.val(''); + self.$search.removeAttr('aria-activedescendant'); + self.$search.removeAttr('aria-owns'); + self.$search.trigger('focus'); + }); + + container.on('enable', function () { + self.$search.prop('disabled', false); + + self._transferTabIndex(); + }); + + container.on('disable', function () { + self.$search.prop('disabled', true); + }); + + container.on('focus', function (evt) { + self.$search.trigger('focus'); + }); + + container.on('results:focus', function (params) { + self.$search.attr('aria-activedescendant', params.data._resultId); + }); + + this.$selection.on('focusin', '.select2-search--inline', function (evt) { + self.trigger('focus', evt); + }); + + this.$selection.on('focusout', '.select2-search--inline', function (evt) { + self._handleBlur(evt); + }); + + this.$selection.on('keydown', '.select2-search--inline', function (evt) { + evt.stopPropagation(); + + self.trigger('keypress', evt); + + self._keyUpPrevented = evt.isDefaultPrevented(); + + var key = evt.which; + + if (key === KEYS.BACKSPACE && self.$search.val() === '') { + var $previousChoice = self.$searchContainer + .prev('.select2-selection__choice'); + + if ($previousChoice.length > 0) { + var item = $previousChoice.data('data'); + + self.searchRemoveChoice(item); + + evt.preventDefault(); + } + } else if (evt.which === KEYS.ENTER) { + container.open(); + evt.preventDefault(); + } + }); + + // Try to detect the IE version should the `documentMode` property that + // is stored on the document. This is only implemented in IE and is + // slightly cleaner than doing a user agent check. + // This property is not available in Edge, but Edge also doesn't have + // this bug. + var msie = document.documentMode; + var disableInputEvents = msie && msie <= 11; + + // Workaround for browsers which do not support the `input` event + // This will prevent double-triggering of events for browsers which support + // both the `keyup` and `input` events. + this.$selection.on( + 'input.searchcheck', + '.select2-search--inline', + function (evt) { + // IE will trigger the `input` event when a placeholder is used on a + // search box. To get around this issue, we are forced to ignore all + // `input` events in IE and keep using `keyup`. + if (disableInputEvents) { + self.$selection.off('input.search input.searchcheck'); + return; + } + + // Unbind the duplicated `keyup` event + self.$selection.off('keyup.search'); + } + ); + + this.$selection.on( + 'keyup.search input.search', + '.select2-search--inline', + function (evt) { + // IE will trigger the `input` event when a placeholder is used on a + // search box. To get around this issue, we are forced to ignore all + // `input` events in IE and keep using `keyup`. + if (disableInputEvents && evt.type === 'input') { + self.$selection.off('input.search input.searchcheck'); + return; + } + + var key = evt.which; + + // We can freely ignore events from modifier keys + if (key == KEYS.SHIFT || key == KEYS.CTRL || key == KEYS.ALT) { + return; + } + + // Tabbing will be handled during the `keydown` phase + if (key == KEYS.TAB) { + return; + } + + self.handleSearch(evt); + } + ); + }; + + /** + * This method will transfer the tabindex attribute from the rendered + * selection to the search box. This allows for the search box to be used as + * the primary focus instead of the selection container. + * + * @private + */ + Search.prototype._transferTabIndex = function (decorated) { + this.$search.attr('tabindex', this.$selection.attr('tabindex')); + this.$selection.attr('tabindex', '-1'); + }; + + Search.prototype.createPlaceholder = function (decorated, placeholder) { + this.$search.attr('placeholder', placeholder.text); + }; + + Search.prototype.update = function (decorated, data) { + var searchHadFocus = this.$search[0] == document.activeElement; + + this.$search.attr('placeholder', ''); + + decorated.call(this, data); + + this.$selection.find('.select2-selection__rendered') + .append(this.$searchContainer); + + this.resizeSearch(); + if (searchHadFocus) { + this.$search.focus(); + } + }; + + Search.prototype.handleSearch = function () { + this.resizeSearch(); + + if (!this._keyUpPrevented) { + var input = this.$search.val(); + + this.trigger('query', { + term: input + }); + } + + this._keyUpPrevented = false; + }; + + Search.prototype.searchRemoveChoice = function (decorated, item) { + this.trigger('unselect', { + data: item + }); + + this.$search.val(item.text); + this.handleSearch(); + }; + + Search.prototype.resizeSearch = function () { + this.$search.css('width', '25px'); + + var width = ''; + + if (this.$search.attr('placeholder') !== '') { + width = this.$selection.find('.select2-selection__rendered').innerWidth(); + } else { + var minimumWidth = this.$search.val().length + 1; + + width = (minimumWidth * 0.75) + 'em'; + } + + this.$search.css('width', width); + }; + + return Search; + }); + + S2.define('select2/selection/eventRelay',[ + 'jquery' + ], function ($) { + function EventRelay () { } + + EventRelay.prototype.bind = function (decorated, container, $container) { + var self = this; + var relayEvents = [ + 'open', 'opening', + 'close', 'closing', + 'select', 'selecting', + 'unselect', 'unselecting' + ]; + + var preventableEvents = ['opening', 'closing', 'selecting', 'unselecting']; + + decorated.call(this, container, $container); + + container.on('*', function (name, params) { + // Ignore events that should not be relayed + if ($.inArray(name, relayEvents) === -1) { + return; + } + + // The parameters should always be an object + params = params || {}; + + // Generate the jQuery event for the Select2 event + var evt = $.Event('select2:' + name, { + params: params + }); + + self.$element.trigger(evt); + + // Only handle preventable events if it was one + if ($.inArray(name, preventableEvents) === -1) { + return; + } + + params.prevented = evt.isDefaultPrevented(); + }); + }; + + return EventRelay; + }); + + S2.define('select2/translation',[ + 'jquery', + 'require' + ], function ($, require) { + function Translation (dict) { + this.dict = dict || {}; + } + + Translation.prototype.all = function () { + return this.dict; + }; + + Translation.prototype.get = function (key) { + return this.dict[key]; + }; + + Translation.prototype.extend = function (translation) { + this.dict = $.extend({}, translation.all(), this.dict); + }; + + // Static functions + + Translation._cache = {}; + + Translation.loadPath = function (path) { + if (!(path in Translation._cache)) { + var translations = require(path); + + Translation._cache[path] = translations; + } + + return new Translation(Translation._cache[path]); + }; + + return Translation; + }); + + S2.define('select2/diacritics',[ + + ], function () { + var diacritics = { + '\u24B6': 'A', + '\uFF21': 'A', + '\u00C0': 'A', + '\u00C1': 'A', + '\u00C2': 'A', + '\u1EA6': 'A', + '\u1EA4': 'A', + '\u1EAA': 'A', + '\u1EA8': 'A', + '\u00C3': 'A', + '\u0100': 'A', + '\u0102': 'A', + '\u1EB0': 'A', + '\u1EAE': 'A', + '\u1EB4': 'A', + '\u1EB2': 'A', + '\u0226': 'A', + '\u01E0': 'A', + '\u00C4': 'A', + '\u01DE': 'A', + '\u1EA2': 'A', + '\u00C5': 'A', + '\u01FA': 'A', + '\u01CD': 'A', + '\u0200': 'A', + '\u0202': 'A', + '\u1EA0': 'A', + '\u1EAC': 'A', + '\u1EB6': 'A', + '\u1E00': 'A', + '\u0104': 'A', + '\u023A': 'A', + '\u2C6F': 'A', + '\uA732': 'AA', + '\u00C6': 'AE', + '\u01FC': 'AE', + '\u01E2': 'AE', + '\uA734': 'AO', + '\uA736': 'AU', + '\uA738': 'AV', + '\uA73A': 'AV', + '\uA73C': 'AY', + '\u24B7': 'B', + '\uFF22': 'B', + '\u1E02': 'B', + '\u1E04': 'B', + '\u1E06': 'B', + '\u0243': 'B', + '\u0182': 'B', + '\u0181': 'B', + '\u24B8': 'C', + '\uFF23': 'C', + '\u0106': 'C', + '\u0108': 'C', + '\u010A': 'C', + '\u010C': 'C', + '\u00C7': 'C', + '\u1E08': 'C', + '\u0187': 'C', + '\u023B': 'C', + '\uA73E': 'C', + '\u24B9': 'D', + '\uFF24': 'D', + '\u1E0A': 'D', + '\u010E': 'D', + '\u1E0C': 'D', + '\u1E10': 'D', + '\u1E12': 'D', + '\u1E0E': 'D', + '\u0110': 'D', + '\u018B': 'D', + '\u018A': 'D', + '\u0189': 'D', + '\uA779': 'D', + '\u01F1': 'DZ', + '\u01C4': 'DZ', + '\u01F2': 'Dz', + '\u01C5': 'Dz', + '\u24BA': 'E', + '\uFF25': 'E', + '\u00C8': 'E', + '\u00C9': 'E', + '\u00CA': 'E', + '\u1EC0': 'E', + '\u1EBE': 'E', + '\u1EC4': 'E', + '\u1EC2': 'E', + '\u1EBC': 'E', + '\u0112': 'E', + '\u1E14': 'E', + '\u1E16': 'E', + '\u0114': 'E', + '\u0116': 'E', + '\u00CB': 'E', + '\u1EBA': 'E', + '\u011A': 'E', + '\u0204': 'E', + '\u0206': 'E', + '\u1EB8': 'E', + '\u1EC6': 'E', + '\u0228': 'E', + '\u1E1C': 'E', + '\u0118': 'E', + '\u1E18': 'E', + '\u1E1A': 'E', + '\u0190': 'E', + '\u018E': 'E', + '\u24BB': 'F', + '\uFF26': 'F', + '\u1E1E': 'F', + '\u0191': 'F', + '\uA77B': 'F', + '\u24BC': 'G', + '\uFF27': 'G', + '\u01F4': 'G', + '\u011C': 'G', + '\u1E20': 'G', + '\u011E': 'G', + '\u0120': 'G', + '\u01E6': 'G', + '\u0122': 'G', + '\u01E4': 'G', + '\u0193': 'G', + '\uA7A0': 'G', + '\uA77D': 'G', + '\uA77E': 'G', + '\u24BD': 'H', + '\uFF28': 'H', + '\u0124': 'H', + '\u1E22': 'H', + '\u1E26': 'H', + '\u021E': 'H', + '\u1E24': 'H', + '\u1E28': 'H', + '\u1E2A': 'H', + '\u0126': 'H', + '\u2C67': 'H', + '\u2C75': 'H', + '\uA78D': 'H', + '\u24BE': 'I', + '\uFF29': 'I', + '\u00CC': 'I', + '\u00CD': 'I', + '\u00CE': 'I', + '\u0128': 'I', + '\u012A': 'I', + '\u012C': 'I', + '\u0130': 'I', + '\u00CF': 'I', + '\u1E2E': 'I', + '\u1EC8': 'I', + '\u01CF': 'I', + '\u0208': 'I', + '\u020A': 'I', + '\u1ECA': 'I', + '\u012E': 'I', + '\u1E2C': 'I', + '\u0197': 'I', + '\u24BF': 'J', + '\uFF2A': 'J', + '\u0134': 'J', + '\u0248': 'J', + '\u24C0': 'K', + '\uFF2B': 'K', + '\u1E30': 'K', + '\u01E8': 'K', + '\u1E32': 'K', + '\u0136': 'K', + '\u1E34': 'K', + '\u0198': 'K', + '\u2C69': 'K', + '\uA740': 'K', + '\uA742': 'K', + '\uA744': 'K', + '\uA7A2': 'K', + '\u24C1': 'L', + '\uFF2C': 'L', + '\u013F': 'L', + '\u0139': 'L', + '\u013D': 'L', + '\u1E36': 'L', + '\u1E38': 'L', + '\u013B': 'L', + '\u1E3C': 'L', + '\u1E3A': 'L', + '\u0141': 'L', + '\u023D': 'L', + '\u2C62': 'L', + '\u2C60': 'L', + '\uA748': 'L', + '\uA746': 'L', + '\uA780': 'L', + '\u01C7': 'LJ', + '\u01C8': 'Lj', + '\u24C2': 'M', + '\uFF2D': 'M', + '\u1E3E': 'M', + '\u1E40': 'M', + '\u1E42': 'M', + '\u2C6E': 'M', + '\u019C': 'M', + '\u24C3': 'N', + '\uFF2E': 'N', + '\u01F8': 'N', + '\u0143': 'N', + '\u00D1': 'N', + '\u1E44': 'N', + '\u0147': 'N', + '\u1E46': 'N', + '\u0145': 'N', + '\u1E4A': 'N', + '\u1E48': 'N', + '\u0220': 'N', + '\u019D': 'N', + '\uA790': 'N', + '\uA7A4': 'N', + '\u01CA': 'NJ', + '\u01CB': 'Nj', + '\u24C4': 'O', + '\uFF2F': 'O', + '\u00D2': 'O', + '\u00D3': 'O', + '\u00D4': 'O', + '\u1ED2': 'O', + '\u1ED0': 'O', + '\u1ED6': 'O', + '\u1ED4': 'O', + '\u00D5': 'O', + '\u1E4C': 'O', + '\u022C': 'O', + '\u1E4E': 'O', + '\u014C': 'O', + '\u1E50': 'O', + '\u1E52': 'O', + '\u014E': 'O', + '\u022E': 'O', + '\u0230': 'O', + '\u00D6': 'O', + '\u022A': 'O', + '\u1ECE': 'O', + '\u0150': 'O', + '\u01D1': 'O', + '\u020C': 'O', + '\u020E': 'O', + '\u01A0': 'O', + '\u1EDC': 'O', + '\u1EDA': 'O', + '\u1EE0': 'O', + '\u1EDE': 'O', + '\u1EE2': 'O', + '\u1ECC': 'O', + '\u1ED8': 'O', + '\u01EA': 'O', + '\u01EC': 'O', + '\u00D8': 'O', + '\u01FE': 'O', + '\u0186': 'O', + '\u019F': 'O', + '\uA74A': 'O', + '\uA74C': 'O', + '\u01A2': 'OI', + '\uA74E': 'OO', + '\u0222': 'OU', + '\u24C5': 'P', + '\uFF30': 'P', + '\u1E54': 'P', + '\u1E56': 'P', + '\u01A4': 'P', + '\u2C63': 'P', + '\uA750': 'P', + '\uA752': 'P', + '\uA754': 'P', + '\u24C6': 'Q', + '\uFF31': 'Q', + '\uA756': 'Q', + '\uA758': 'Q', + '\u024A': 'Q', + '\u24C7': 'R', + '\uFF32': 'R', + '\u0154': 'R', + '\u1E58': 'R', + '\u0158': 'R', + '\u0210': 'R', + '\u0212': 'R', + '\u1E5A': 'R', + '\u1E5C': 'R', + '\u0156': 'R', + '\u1E5E': 'R', + '\u024C': 'R', + '\u2C64': 'R', + '\uA75A': 'R', + '\uA7A6': 'R', + '\uA782': 'R', + '\u24C8': 'S', + '\uFF33': 'S', + '\u1E9E': 'S', + '\u015A': 'S', + '\u1E64': 'S', + '\u015C': 'S', + '\u1E60': 'S', + '\u0160': 'S', + '\u1E66': 'S', + '\u1E62': 'S', + '\u1E68': 'S', + '\u0218': 'S', + '\u015E': 'S', + '\u2C7E': 'S', + '\uA7A8': 'S', + '\uA784': 'S', + '\u24C9': 'T', + '\uFF34': 'T', + '\u1E6A': 'T', + '\u0164': 'T', + '\u1E6C': 'T', + '\u021A': 'T', + '\u0162': 'T', + '\u1E70': 'T', + '\u1E6E': 'T', + '\u0166': 'T', + '\u01AC': 'T', + '\u01AE': 'T', + '\u023E': 'T', + '\uA786': 'T', + '\uA728': 'TZ', + '\u24CA': 'U', + '\uFF35': 'U', + '\u00D9': 'U', + '\u00DA': 'U', + '\u00DB': 'U', + '\u0168': 'U', + '\u1E78': 'U', + '\u016A': 'U', + '\u1E7A': 'U', + '\u016C': 'U', + '\u00DC': 'U', + '\u01DB': 'U', + '\u01D7': 'U', + '\u01D5': 'U', + '\u01D9': 'U', + '\u1EE6': 'U', + '\u016E': 'U', + '\u0170': 'U', + '\u01D3': 'U', + '\u0214': 'U', + '\u0216': 'U', + '\u01AF': 'U', + '\u1EEA': 'U', + '\u1EE8': 'U', + '\u1EEE': 'U', + '\u1EEC': 'U', + '\u1EF0': 'U', + '\u1EE4': 'U', + '\u1E72': 'U', + '\u0172': 'U', + '\u1E76': 'U', + '\u1E74': 'U', + '\u0244': 'U', + '\u24CB': 'V', + '\uFF36': 'V', + '\u1E7C': 'V', + '\u1E7E': 'V', + '\u01B2': 'V', + '\uA75E': 'V', + '\u0245': 'V', + '\uA760': 'VY', + '\u24CC': 'W', + '\uFF37': 'W', + '\u1E80': 'W', + '\u1E82': 'W', + '\u0174': 'W', + '\u1E86': 'W', + '\u1E84': 'W', + '\u1E88': 'W', + '\u2C72': 'W', + '\u24CD': 'X', + '\uFF38': 'X', + '\u1E8A': 'X', + '\u1E8C': 'X', + '\u24CE': 'Y', + '\uFF39': 'Y', + '\u1EF2': 'Y', + '\u00DD': 'Y', + '\u0176': 'Y', + '\u1EF8': 'Y', + '\u0232': 'Y', + '\u1E8E': 'Y', + '\u0178': 'Y', + '\u1EF6': 'Y', + '\u1EF4': 'Y', + '\u01B3': 'Y', + '\u024E': 'Y', + '\u1EFE': 'Y', + '\u24CF': 'Z', + '\uFF3A': 'Z', + '\u0179': 'Z', + '\u1E90': 'Z', + '\u017B': 'Z', + '\u017D': 'Z', + '\u1E92': 'Z', + '\u1E94': 'Z', + '\u01B5': 'Z', + '\u0224': 'Z', + '\u2C7F': 'Z', + '\u2C6B': 'Z', + '\uA762': 'Z', + '\u24D0': 'a', + '\uFF41': 'a', + '\u1E9A': 'a', + '\u00E0': 'a', + '\u00E1': 'a', + '\u00E2': 'a', + '\u1EA7': 'a', + '\u1EA5': 'a', + '\u1EAB': 'a', + '\u1EA9': 'a', + '\u00E3': 'a', + '\u0101': 'a', + '\u0103': 'a', + '\u1EB1': 'a', + '\u1EAF': 'a', + '\u1EB5': 'a', + '\u1EB3': 'a', + '\u0227': 'a', + '\u01E1': 'a', + '\u00E4': 'a', + '\u01DF': 'a', + '\u1EA3': 'a', + '\u00E5': 'a', + '\u01FB': 'a', + '\u01CE': 'a', + '\u0201': 'a', + '\u0203': 'a', + '\u1EA1': 'a', + '\u1EAD': 'a', + '\u1EB7': 'a', + '\u1E01': 'a', + '\u0105': 'a', + '\u2C65': 'a', + '\u0250': 'a', + '\uA733': 'aa', + '\u00E6': 'ae', + '\u01FD': 'ae', + '\u01E3': 'ae', + '\uA735': 'ao', + '\uA737': 'au', + '\uA739': 'av', + '\uA73B': 'av', + '\uA73D': 'ay', + '\u24D1': 'b', + '\uFF42': 'b', + '\u1E03': 'b', + '\u1E05': 'b', + '\u1E07': 'b', + '\u0180': 'b', + '\u0183': 'b', + '\u0253': 'b', + '\u24D2': 'c', + '\uFF43': 'c', + '\u0107': 'c', + '\u0109': 'c', + '\u010B': 'c', + '\u010D': 'c', + '\u00E7': 'c', + '\u1E09': 'c', + '\u0188': 'c', + '\u023C': 'c', + '\uA73F': 'c', + '\u2184': 'c', + '\u24D3': 'd', + '\uFF44': 'd', + '\u1E0B': 'd', + '\u010F': 'd', + '\u1E0D': 'd', + '\u1E11': 'd', + '\u1E13': 'd', + '\u1E0F': 'd', + '\u0111': 'd', + '\u018C': 'd', + '\u0256': 'd', + '\u0257': 'd', + '\uA77A': 'd', + '\u01F3': 'dz', + '\u01C6': 'dz', + '\u24D4': 'e', + '\uFF45': 'e', + '\u00E8': 'e', + '\u00E9': 'e', + '\u00EA': 'e', + '\u1EC1': 'e', + '\u1EBF': 'e', + '\u1EC5': 'e', + '\u1EC3': 'e', + '\u1EBD': 'e', + '\u0113': 'e', + '\u1E15': 'e', + '\u1E17': 'e', + '\u0115': 'e', + '\u0117': 'e', + '\u00EB': 'e', + '\u1EBB': 'e', + '\u011B': 'e', + '\u0205': 'e', + '\u0207': 'e', + '\u1EB9': 'e', + '\u1EC7': 'e', + '\u0229': 'e', + '\u1E1D': 'e', + '\u0119': 'e', + '\u1E19': 'e', + '\u1E1B': 'e', + '\u0247': 'e', + '\u025B': 'e', + '\u01DD': 'e', + '\u24D5': 'f', + '\uFF46': 'f', + '\u1E1F': 'f', + '\u0192': 'f', + '\uA77C': 'f', + '\u24D6': 'g', + '\uFF47': 'g', + '\u01F5': 'g', + '\u011D': 'g', + '\u1E21': 'g', + '\u011F': 'g', + '\u0121': 'g', + '\u01E7': 'g', + '\u0123': 'g', + '\u01E5': 'g', + '\u0260': 'g', + '\uA7A1': 'g', + '\u1D79': 'g', + '\uA77F': 'g', + '\u24D7': 'h', + '\uFF48': 'h', + '\u0125': 'h', + '\u1E23': 'h', + '\u1E27': 'h', + '\u021F': 'h', + '\u1E25': 'h', + '\u1E29': 'h', + '\u1E2B': 'h', + '\u1E96': 'h', + '\u0127': 'h', + '\u2C68': 'h', + '\u2C76': 'h', + '\u0265': 'h', + '\u0195': 'hv', + '\u24D8': 'i', + '\uFF49': 'i', + '\u00EC': 'i', + '\u00ED': 'i', + '\u00EE': 'i', + '\u0129': 'i', + '\u012B': 'i', + '\u012D': 'i', + '\u00EF': 'i', + '\u1E2F': 'i', + '\u1EC9': 'i', + '\u01D0': 'i', + '\u0209': 'i', + '\u020B': 'i', + '\u1ECB': 'i', + '\u012F': 'i', + '\u1E2D': 'i', + '\u0268': 'i', + '\u0131': 'i', + '\u24D9': 'j', + '\uFF4A': 'j', + '\u0135': 'j', + '\u01F0': 'j', + '\u0249': 'j', + '\u24DA': 'k', + '\uFF4B': 'k', + '\u1E31': 'k', + '\u01E9': 'k', + '\u1E33': 'k', + '\u0137': 'k', + '\u1E35': 'k', + '\u0199': 'k', + '\u2C6A': 'k', + '\uA741': 'k', + '\uA743': 'k', + '\uA745': 'k', + '\uA7A3': 'k', + '\u24DB': 'l', + '\uFF4C': 'l', + '\u0140': 'l', + '\u013A': 'l', + '\u013E': 'l', + '\u1E37': 'l', + '\u1E39': 'l', + '\u013C': 'l', + '\u1E3D': 'l', + '\u1E3B': 'l', + '\u017F': 'l', + '\u0142': 'l', + '\u019A': 'l', + '\u026B': 'l', + '\u2C61': 'l', + '\uA749': 'l', + '\uA781': 'l', + '\uA747': 'l', + '\u01C9': 'lj', + '\u24DC': 'm', + '\uFF4D': 'm', + '\u1E3F': 'm', + '\u1E41': 'm', + '\u1E43': 'm', + '\u0271': 'm', + '\u026F': 'm', + '\u24DD': 'n', + '\uFF4E': 'n', + '\u01F9': 'n', + '\u0144': 'n', + '\u00F1': 'n', + '\u1E45': 'n', + '\u0148': 'n', + '\u1E47': 'n', + '\u0146': 'n', + '\u1E4B': 'n', + '\u1E49': 'n', + '\u019E': 'n', + '\u0272': 'n', + '\u0149': 'n', + '\uA791': 'n', + '\uA7A5': 'n', + '\u01CC': 'nj', + '\u24DE': 'o', + '\uFF4F': 'o', + '\u00F2': 'o', + '\u00F3': 'o', + '\u00F4': 'o', + '\u1ED3': 'o', + '\u1ED1': 'o', + '\u1ED7': 'o', + '\u1ED5': 'o', + '\u00F5': 'o', + '\u1E4D': 'o', + '\u022D': 'o', + '\u1E4F': 'o', + '\u014D': 'o', + '\u1E51': 'o', + '\u1E53': 'o', + '\u014F': 'o', + '\u022F': 'o', + '\u0231': 'o', + '\u00F6': 'o', + '\u022B': 'o', + '\u1ECF': 'o', + '\u0151': 'o', + '\u01D2': 'o', + '\u020D': 'o', + '\u020F': 'o', + '\u01A1': 'o', + '\u1EDD': 'o', + '\u1EDB': 'o', + '\u1EE1': 'o', + '\u1EDF': 'o', + '\u1EE3': 'o', + '\u1ECD': 'o', + '\u1ED9': 'o', + '\u01EB': 'o', + '\u01ED': 'o', + '\u00F8': 'o', + '\u01FF': 'o', + '\u0254': 'o', + '\uA74B': 'o', + '\uA74D': 'o', + '\u0275': 'o', + '\u01A3': 'oi', + '\u0223': 'ou', + '\uA74F': 'oo', + '\u24DF': 'p', + '\uFF50': 'p', + '\u1E55': 'p', + '\u1E57': 'p', + '\u01A5': 'p', + '\u1D7D': 'p', + '\uA751': 'p', + '\uA753': 'p', + '\uA755': 'p', + '\u24E0': 'q', + '\uFF51': 'q', + '\u024B': 'q', + '\uA757': 'q', + '\uA759': 'q', + '\u24E1': 'r', + '\uFF52': 'r', + '\u0155': 'r', + '\u1E59': 'r', + '\u0159': 'r', + '\u0211': 'r', + '\u0213': 'r', + '\u1E5B': 'r', + '\u1E5D': 'r', + '\u0157': 'r', + '\u1E5F': 'r', + '\u024D': 'r', + '\u027D': 'r', + '\uA75B': 'r', + '\uA7A7': 'r', + '\uA783': 'r', + '\u24E2': 's', + '\uFF53': 's', + '\u00DF': 's', + '\u015B': 's', + '\u1E65': 's', + '\u015D': 's', + '\u1E61': 's', + '\u0161': 's', + '\u1E67': 's', + '\u1E63': 's', + '\u1E69': 's', + '\u0219': 's', + '\u015F': 's', + '\u023F': 's', + '\uA7A9': 's', + '\uA785': 's', + '\u1E9B': 's', + '\u24E3': 't', + '\uFF54': 't', + '\u1E6B': 't', + '\u1E97': 't', + '\u0165': 't', + '\u1E6D': 't', + '\u021B': 't', + '\u0163': 't', + '\u1E71': 't', + '\u1E6F': 't', + '\u0167': 't', + '\u01AD': 't', + '\u0288': 't', + '\u2C66': 't', + '\uA787': 't', + '\uA729': 'tz', + '\u24E4': 'u', + '\uFF55': 'u', + '\u00F9': 'u', + '\u00FA': 'u', + '\u00FB': 'u', + '\u0169': 'u', + '\u1E79': 'u', + '\u016B': 'u', + '\u1E7B': 'u', + '\u016D': 'u', + '\u00FC': 'u', + '\u01DC': 'u', + '\u01D8': 'u', + '\u01D6': 'u', + '\u01DA': 'u', + '\u1EE7': 'u', + '\u016F': 'u', + '\u0171': 'u', + '\u01D4': 'u', + '\u0215': 'u', + '\u0217': 'u', + '\u01B0': 'u', + '\u1EEB': 'u', + '\u1EE9': 'u', + '\u1EEF': 'u', + '\u1EED': 'u', + '\u1EF1': 'u', + '\u1EE5': 'u', + '\u1E73': 'u', + '\u0173': 'u', + '\u1E77': 'u', + '\u1E75': 'u', + '\u0289': 'u', + '\u24E5': 'v', + '\uFF56': 'v', + '\u1E7D': 'v', + '\u1E7F': 'v', + '\u028B': 'v', + '\uA75F': 'v', + '\u028C': 'v', + '\uA761': 'vy', + '\u24E6': 'w', + '\uFF57': 'w', + '\u1E81': 'w', + '\u1E83': 'w', + '\u0175': 'w', + '\u1E87': 'w', + '\u1E85': 'w', + '\u1E98': 'w', + '\u1E89': 'w', + '\u2C73': 'w', + '\u24E7': 'x', + '\uFF58': 'x', + '\u1E8B': 'x', + '\u1E8D': 'x', + '\u24E8': 'y', + '\uFF59': 'y', + '\u1EF3': 'y', + '\u00FD': 'y', + '\u0177': 'y', + '\u1EF9': 'y', + '\u0233': 'y', + '\u1E8F': 'y', + '\u00FF': 'y', + '\u1EF7': 'y', + '\u1E99': 'y', + '\u1EF5': 'y', + '\u01B4': 'y', + '\u024F': 'y', + '\u1EFF': 'y', + '\u24E9': 'z', + '\uFF5A': 'z', + '\u017A': 'z', + '\u1E91': 'z', + '\u017C': 'z', + '\u017E': 'z', + '\u1E93': 'z', + '\u1E95': 'z', + '\u01B6': 'z', + '\u0225': 'z', + '\u0240': 'z', + '\u2C6C': 'z', + '\uA763': 'z', + '\u0386': '\u0391', + '\u0388': '\u0395', + '\u0389': '\u0397', + '\u038A': '\u0399', + '\u03AA': '\u0399', + '\u038C': '\u039F', + '\u038E': '\u03A5', + '\u03AB': '\u03A5', + '\u038F': '\u03A9', + '\u03AC': '\u03B1', + '\u03AD': '\u03B5', + '\u03AE': '\u03B7', + '\u03AF': '\u03B9', + '\u03CA': '\u03B9', + '\u0390': '\u03B9', + '\u03CC': '\u03BF', + '\u03CD': '\u03C5', + '\u03CB': '\u03C5', + '\u03B0': '\u03C5', + '\u03C9': '\u03C9', + '\u03C2': '\u03C3' + }; + + return diacritics; + }); + + S2.define('select2/data/base',[ + '../utils' + ], function (Utils) { + function BaseAdapter ($element, options) { + BaseAdapter.__super__.constructor.call(this); + } + + Utils.Extend(BaseAdapter, Utils.Observable); + + BaseAdapter.prototype.current = function (callback) { + throw new Error('The `current` method must be defined in child classes.'); + }; + + BaseAdapter.prototype.query = function (params, callback) { + throw new Error('The `query` method must be defined in child classes.'); + }; + + BaseAdapter.prototype.bind = function (container, $container) { + // Can be implemented in subclasses + }; + + BaseAdapter.prototype.destroy = function () { + // Can be implemented in subclasses + }; + + BaseAdapter.prototype.generateResultId = function (container, data) { + var id = ''; + + if (container != null) { + id += container.id + } else { + id += Utils.generateChars(4); + } + + id += '-result-'; + id += Utils.generateChars(4); + + if (data.id != null) { + id += '-' + data.id.toString(); + } else { + id += '-' + Utils.generateChars(4); + } + return id; + }; + + return BaseAdapter; + }); + + S2.define('select2/data/select',[ + './base', + '../utils', + 'jquery' + ], function (BaseAdapter, Utils, $) { + function SelectAdapter ($element, options) { + this.$element = $element; + this.options = options; + + SelectAdapter.__super__.constructor.call(this); + } + + Utils.Extend(SelectAdapter, BaseAdapter); + + SelectAdapter.prototype.current = function (callback) { + var data = []; + var self = this; + + this.$element.find(':selected').each(function () { + var $option = $(this); + + var option = self.item($option); + + data.push(option); + }); + + callback(data); + }; + + SelectAdapter.prototype.select = function (data) { + var self = this; + + data.selected = true; + + // If data.element is a DOM node, use it instead + if ($(data.element).is('option')) { + data.element.selected = true; + + this.$element.trigger('change'); + + return; + } + + if (this.$element.prop('multiple')) { + this.current(function (currentData) { + var val = []; + + data = [data]; + data.push.apply(data, currentData); + + for (var d = 0; d < data.length; d++) { + var id = data[d].id; + + if ($.inArray(id, val) === -1) { + val.push(id); + } + } + + self.$element.val(val); + self.$element.trigger('change'); + }); + } else { + var val = data.id; + + this.$element.val(val); + this.$element.trigger('change'); + } + }; + + SelectAdapter.prototype.unselect = function (data) { + var self = this; + + if (!this.$element.prop('multiple')) { + return; + } + + data.selected = false; + + if ($(data.element).is('option')) { + data.element.selected = false; + + this.$element.trigger('change'); + + return; + } + + this.current(function (currentData) { + var val = []; + + for (var d = 0; d < currentData.length; d++) { + var id = currentData[d].id; + + if (id !== data.id && $.inArray(id, val) === -1) { + val.push(id); + } + } + + self.$element.val(val); + + self.$element.trigger('change'); + }); + }; + + SelectAdapter.prototype.bind = function (container, $container) { + var self = this; + + this.container = container; + + container.on('select', function (params) { + self.select(params.data); + }); + + container.on('unselect', function (params) { + self.unselect(params.data); + }); + }; + + SelectAdapter.prototype.destroy = function () { + // Remove anything added to child elements + this.$element.find('*').each(function () { + // Remove any custom data set by Select2 + $.removeData(this, 'data'); + }); + }; + + SelectAdapter.prototype.query = function (params, callback) { + var data = []; + var self = this; + + var $options = this.$element.children(); + + $options.each(function () { + var $option = $(this); + + if (!$option.is('option') && !$option.is('optgroup')) { + return; + } + + var option = self.item($option); + + var matches = self.matches(params, option); + + if (matches !== null) { + data.push(matches); + } + }); + + callback({ + results: data + }); + }; + + SelectAdapter.prototype.addOptions = function ($options) { + Utils.appendMany(this.$element, $options); + }; + + SelectAdapter.prototype.option = function (data) { + var option; + + if (data.children) { + option = document.createElement('optgroup'); + option.label = data.text; + } else { + option = document.createElement('option'); + + if (option.textContent !== undefined) { + option.textContent = data.text; + } else { + option.innerText = data.text; + } + } + + if (data.id !== undefined) { + option.value = data.id; + } + + if (data.disabled) { + option.disabled = true; + } + + if (data.selected) { + option.selected = true; + } + + if (data.title) { + option.title = data.title; + } + + var $option = $(option); + + var normalizedData = this._normalizeItem(data); + normalizedData.element = option; + + // Override the option's data with the combined data + $.data(option, 'data', normalizedData); + + return $option; + }; + + SelectAdapter.prototype.item = function ($option) { + var data = {}; + + data = $.data($option[0], 'data'); + + if (data != null) { + return data; + } + + if ($option.is('option')) { + data = { + id: $option.val(), + text: $option.text(), + disabled: $option.prop('disabled'), + selected: $option.prop('selected'), + title: $option.prop('title') + }; + } else if ($option.is('optgroup')) { + data = { + text: $option.prop('label'), + children: [], + title: $option.prop('title') + }; + + var $children = $option.children('option'); + var children = []; + + for (var c = 0; c < $children.length; c++) { + var $child = $($children[c]); + + var child = this.item($child); + + children.push(child); + } + + data.children = children; + } + + data = this._normalizeItem(data); + data.element = $option[0]; + + $.data($option[0], 'data', data); + + return data; + }; + + SelectAdapter.prototype._normalizeItem = function (item) { + if (!$.isPlainObject(item)) { + item = { + id: item, + text: item + }; + } + + item = $.extend({}, { + text: '' + }, item); + + var defaults = { + selected: false, + disabled: false + }; + + if (item.id != null) { + item.id = item.id.toString(); + } + + if (item.text != null) { + item.text = item.text.toString(); + } + + if (item._resultId == null && item.id) { + item._resultId = this.generateResultId(this.container, item); + } + + return $.extend({}, defaults, item); + }; + + SelectAdapter.prototype.matches = function (params, data) { + var matcher = this.options.get('matcher'); + + return matcher(params, data); + }; + + return SelectAdapter; + }); + + S2.define('select2/data/array',[ + './select', + '../utils', + 'jquery' + ], function (SelectAdapter, Utils, $) { + function ArrayAdapter ($element, options) { + var data = options.get('data') || []; + + ArrayAdapter.__super__.constructor.call(this, $element, options); + + this.addOptions(this.convertToOptions(data)); + } + + Utils.Extend(ArrayAdapter, SelectAdapter); + + ArrayAdapter.prototype.select = function (data) { + var $option = this.$element.find('option').filter(function (i, elm) { + return elm.value == data.id.toString(); + }); + + if ($option.length === 0) { + $option = this.option(data); + + this.addOptions($option); + } + + ArrayAdapter.__super__.select.call(this, data); + }; + + ArrayAdapter.prototype.convertToOptions = function (data) { + var self = this; + + var $existing = this.$element.find('option'); + var existingIds = $existing.map(function () { + return self.item($(this)).id; + }).get(); + + var $options = []; + + // Filter out all items except for the one passed in the argument + function onlyItem (item) { + return function () { + return $(this).val() == item.id; + }; + } + + for (var d = 0; d < data.length; d++) { + var item = this._normalizeItem(data[d]); + + // Skip items which were pre-loaded, only merge the data + if ($.inArray(item.id, existingIds) >= 0) { + var $existingOption = $existing.filter(onlyItem(item)); + + var existingData = this.item($existingOption); + var newData = $.extend(true, {}, item, existingData); + + var $newOption = this.option(newData); + + $existingOption.replaceWith($newOption); + + continue; + } + + var $option = this.option(item); + + if (item.children) { + var $children = this.convertToOptions(item.children); + + Utils.appendMany($option, $children); + } + + $options.push($option); + } + + return $options; + }; + + return ArrayAdapter; + }); + + S2.define('select2/data/ajax',[ + './array', + '../utils', + 'jquery' + ], function (ArrayAdapter, Utils, $) { + function AjaxAdapter ($element, options) { + this.ajaxOptions = this._applyDefaults(options.get('ajax')); + + if (this.ajaxOptions.processResults != null) { + this.processResults = this.ajaxOptions.processResults; + } + + AjaxAdapter.__super__.constructor.call(this, $element, options); + } + + Utils.Extend(AjaxAdapter, ArrayAdapter); + + AjaxAdapter.prototype._applyDefaults = function (options) { + var defaults = { + data: function (params) { + return $.extend({}, params, { + q: params.term + }); + }, + transport: function (params, success, failure) { + var $request = $.ajax(params); + + $request.then(success); + $request.fail(failure); + + return $request; + } + }; + + return $.extend({}, defaults, options, true); + }; + + AjaxAdapter.prototype.processResults = function (results) { + return results; + }; + + AjaxAdapter.prototype.query = function (params, callback) { + var matches = []; + var self = this; + + if (this._request != null) { + // JSONP requests cannot always be aborted + if ($.isFunction(this._request.abort)) { + this._request.abort(); + } + + this._request = null; + } + + var options = $.extend({ + type: 'GET' + }, this.ajaxOptions); + + if (typeof options.url === 'function') { + options.url = options.url.call(this.$element, params); + } + + if (typeof options.data === 'function') { + options.data = options.data.call(this.$element, params); + } + + function request () { + var $request = options.transport(options, function (data) { + var results = self.processResults(data, params); + + if (self.options.get('debug') && window.console && console.error) { + // Check to make sure that the response included a `results` key. + if (!results || !results.results || !$.isArray(results.results)) { + console.error( + 'Select2: The AJAX results did not return an array in the ' + + '`results` key of the response.' + ); + } + } + + callback(results); + self.container.focusOnActiveElement(); + }, function () { + // Attempt to detect if a request was aborted + // Only works if the transport exposes a status property + if ($request.status && $request.status === '0') { + return; + } + + self.trigger('results:message', { + message: 'errorLoading' + }); + }); + + self._request = $request; + } + + if (this.ajaxOptions.delay && params.term != null) { + if (this._queryTimeout) { + window.clearTimeout(this._queryTimeout); + } + + this._queryTimeout = window.setTimeout(request, this.ajaxOptions.delay); + } else { + request(); + } + }; + + return AjaxAdapter; + }); + + S2.define('select2/data/tags',[ + 'jquery' + ], function ($) { + function Tags (decorated, $element, options) { + var tags = options.get('tags'); + + var createTag = options.get('createTag'); + + if (createTag !== undefined) { + this.createTag = createTag; + } + + var insertTag = options.get('insertTag'); + + if (insertTag !== undefined) { + this.insertTag = insertTag; + } + + decorated.call(this, $element, options); + + if ($.isArray(tags)) { + for (var t = 0; t < tags.length; t++) { + var tag = tags[t]; + var item = this._normalizeItem(tag); + + var $option = this.option(item); + + this.$element.append($option); + } + } + } + + Tags.prototype.query = function (decorated, params, callback) { + var self = this; + + this._removeOldTags(); + + if (params.term == null || params.page != null) { + decorated.call(this, params, callback); + return; + } + + function wrapper (obj, child) { + var data = obj.results; + + for (var i = 0; i < data.length; i++) { + var option = data[i]; + + var checkChildren = ( + option.children != null && + !wrapper({ + results: option.children + }, true) + ); + + var optionText = (option.text || '').toUpperCase(); + var paramsTerm = (params.term || '').toUpperCase(); + + var checkText = optionText === paramsTerm; + + if (checkText || checkChildren) { + if (child) { + return false; + } + + obj.data = data; + callback(obj); + + return; + } + } + + if (child) { + return true; + } + + var tag = self.createTag(params); + + if (tag != null) { + var $option = self.option(tag); + $option.attr('data-select2-tag', true); + + self.addOptions([$option]); + + self.insertTag(data, tag); + } + + obj.results = data; + + callback(obj); + } + + decorated.call(this, params, wrapper); + }; + + Tags.prototype.createTag = function (decorated, params) { + var term = $.trim(params.term); + + if (term === '') { + return null; + } + + return { + id: term, + text: term + }; + }; + + Tags.prototype.insertTag = function (_, data, tag) { + data.unshift(tag); + }; + + Tags.prototype._removeOldTags = function (_) { + var tag = this._lastTag; + + var $options = this.$element.find('option[data-select2-tag]'); + + $options.each(function () { + if (this.selected) { + return; + } + + $(this).remove(); + }); + }; + + return Tags; + }); + + S2.define('select2/data/tokenizer',[ + 'jquery' + ], function ($) { + function Tokenizer (decorated, $element, options) { + var tokenizer = options.get('tokenizer'); + + if (tokenizer !== undefined) { + this.tokenizer = tokenizer; + } + + decorated.call(this, $element, options); + } + + Tokenizer.prototype.bind = function (decorated, container, $container) { + decorated.call(this, container, $container); + + this.$search = container.dropdown.$search || container.selection.$search || + $container.find('.select2-search__field'); + }; + + Tokenizer.prototype.query = function (decorated, params, callback) { + var self = this; + + function createAndSelect (data) { + // Normalize the data object so we can use it for checks + var item = self._normalizeItem(data); + + // Check if the data object already exists as a tag + // Select it if it doesn't + var $existingOptions = self.$element.find('option').filter(function () { + return $(this).val() === item.id; + }); + + // If an existing option wasn't found for it, create the option + if (!$existingOptions.length) { + var $option = self.option(item); + $option.attr('data-select2-tag', true); + + self._removeOldTags(); + self.addOptions([$option]); + } + + // Select the item, now that we know there is an option for it + select(item); + } + + function select (data) { + self.trigger('select', { + data: data + }); + } + + params.term = params.term || ''; + + var tokenData = this.tokenizer(params, this.options, createAndSelect); + + if (tokenData.term !== params.term) { + // Replace the search term if we have the search box + if (this.$search.length) { + this.$search.val(tokenData.term); + this.$search.focus(); + } + + params.term = tokenData.term; + } + + decorated.call(this, params, callback); + }; + + Tokenizer.prototype.tokenizer = function (_, params, options, callback) { + var separators = options.get('tokenSeparators') || []; + var term = params.term; + var i = 0; + + var createTag = this.createTag || function (params) { + return { + id: params.term, + text: params.term + }; + }; + + while (i < term.length) { + var termChar = term[i]; + + if ($.inArray(termChar, separators) === -1) { + i++; + + continue; + } + + var part = term.substr(0, i); + var partParams = $.extend({}, params, { + term: part + }); + + var data = createTag(partParams); + + if (data == null) { + i++; + continue; + } + + callback(data); + + // Reset the term to not include the tokenized portion + term = term.substr(i + 1) || ''; + i = 0; + } + + return { + term: term + }; + }; + + return Tokenizer; + }); + + S2.define('select2/data/minimumInputLength',[ + + ], function () { + function MinimumInputLength (decorated, $e, options) { + this.minimumInputLength = options.get('minimumInputLength'); + + decorated.call(this, $e, options); + } + + MinimumInputLength.prototype.query = function (decorated, params, callback) { + params.term = params.term || ''; + + if (params.term.length < this.minimumInputLength) { + this.trigger('results:message', { + message: 'inputTooShort', + args: { + minimum: this.minimumInputLength, + input: params.term, + params: params + } + }); + + return; + } + + decorated.call(this, params, callback); + }; + + return MinimumInputLength; + }); + + S2.define('select2/data/maximumInputLength',[ + + ], function () { + function MaximumInputLength (decorated, $e, options) { + this.maximumInputLength = options.get('maximumInputLength'); + + decorated.call(this, $e, options); + } + + MaximumInputLength.prototype.query = function (decorated, params, callback) { + params.term = params.term || ''; + + if (this.maximumInputLength > 0 && + params.term.length > this.maximumInputLength) { + this.trigger('results:message', { + message: 'inputTooLong', + args: { + maximum: this.maximumInputLength, + input: params.term, + params: params + } + }); + + return; + } + + decorated.call(this, params, callback); + }; + + return MaximumInputLength; + }); + + S2.define('select2/data/maximumSelectionLength',[ + + ], function (){ + function MaximumSelectionLength (decorated, $e, options) { + this.maximumSelectionLength = options.get('maximumSelectionLength'); + + decorated.call(this, $e, options); + } + + MaximumSelectionLength.prototype.query = + function (decorated, params, callback) { + var self = this; + + this.current(function (currentData) { + var count = currentData != null ? currentData.length : 0; + if (self.maximumSelectionLength > 0 && + count >= self.maximumSelectionLength) { + self.trigger('results:message', { + message: 'maximumSelected', + args: { + maximum: self.maximumSelectionLength + } + }); + return; + } + decorated.call(self, params, callback); + }); + }; + + return MaximumSelectionLength; + }); + + S2.define('select2/dropdown',[ + 'jquery', + './utils' + ], function ($, Utils) { + function Dropdown ($element, options) { + this.$element = $element; + this.options = options; + + Dropdown.__super__.constructor.call(this); + } + + Utils.Extend(Dropdown, Utils.Observable); + + Dropdown.prototype.render = function () { + var $dropdown = $( + '' + + '' + + '' + ); + + $dropdown.attr('dir', this.options.get('dir')); + + this.$dropdown = $dropdown; + + return $dropdown; + }; + + Dropdown.prototype.bind = function () { + // Should be implemented in subclasses + }; + + Dropdown.prototype.position = function ($dropdown, $container) { + // Should be implmented in subclasses + }; + + Dropdown.prototype.destroy = function () { + // Remove the dropdown from the DOM + this.$dropdown.remove(); + }; + + return Dropdown; + }); + + S2.define('select2/dropdown/search',[ + 'jquery', + '../utils' + ], function ($, Utils) { + function Search () { } + + Search.prototype.render = function (decorated) { + var $rendered = decorated.call(this); + + var $search = $( + '' + + '' + + '' + ); + + this.$searchContainer = $search; + this.$search = $search.find('input'); + + $rendered.prepend($search); + + return $rendered; + }; + + Search.prototype.bind = function (decorated, container, $container) { + var self = this; + var resultsId = container.id + '-results'; + + decorated.call(this, container, $container); + + this.$search.on('keydown', function (evt) { + self.trigger('keypress', evt); + + self._keyUpPrevented = evt.isDefaultPrevented(); + }); + + // Workaround for browsers which do not support the `input` event + // This will prevent double-triggering of events for browsers which support + // both the `keyup` and `input` events. + this.$search.on('input', function (evt) { + // Unbind the duplicated `keyup` event + $(this).off('keyup'); + }); + + this.$search.on('keyup input', function (evt) { + self.handleSearch(evt); + }); + + container.on('open', function () { + self.$search.attr('tabindex', 0); + self.$search.attr('aria-owns', resultsId); + self.$search.focus(); + + window.setTimeout(function () { + self.$search.focus(); + }, 0); + }); + + container.on('close', function () { + self.$search.attr('tabindex', -1); + self.$search.removeAttr('aria-activedescendant'); + self.$search.removeAttr('aria-owns'); + self.$search.val(''); + }); + + container.on('focus', function () { + if (!container.isOpen()) { + self.$search.focus(); + } + }); + + container.on('results:all', function (params) { + if (params.query.term == null || params.query.term === '') { + var showSearch = self.showSearch(params); + + if (showSearch) { + self.$searchContainer.removeClass('select2-search--hide'); + } else { + self.$searchContainer.addClass('select2-search--hide'); + } + } + }); + + container.on('results:focus', function (params) { + self.$search.attr('aria-activedescendant', params.data._resultId); + }); + }; + + Search.prototype.handleSearch = function (evt) { + if (!this._keyUpPrevented) { + var input = this.$search.val(); + + this.trigger('query', { + term: input + }); + } + + this._keyUpPrevented = false; + }; + + Search.prototype.showSearch = function (_, params) { + return true; + }; + + return Search; + }); + + S2.define('select2/dropdown/hidePlaceholder',[ + + ], function () { + function HidePlaceholder (decorated, $element, options, dataAdapter) { + this.placeholder = this.normalizePlaceholder(options.get('placeholder')); + + decorated.call(this, $element, options, dataAdapter); + } + + HidePlaceholder.prototype.append = function (decorated, data) { + data.results = this.removePlaceholder(data.results); + + decorated.call(this, data); + }; + + HidePlaceholder.prototype.normalizePlaceholder = function (_, placeholder) { + if (typeof placeholder === 'string') { + placeholder = { + id: '', + text: placeholder + }; + } + + return placeholder; + }; + + HidePlaceholder.prototype.removePlaceholder = function (_, data) { + var modifiedData = data.slice(0); + + for (var d = data.length - 1; d >= 0; d--) { + var item = data[d]; + + if (this.placeholder.id === item.id) { + modifiedData.splice(d, 1); + } + } + + return modifiedData; + }; + + return HidePlaceholder; + }); + + S2.define('select2/dropdown/infiniteScroll',[ + 'jquery' + ], function ($) { + function InfiniteScroll (decorated, $element, options, dataAdapter) { + this.lastParams = {}; + + decorated.call(this, $element, options, dataAdapter); + + this.$loadingMore = this.createLoadingMore(); + this.loading = false; + } + + InfiniteScroll.prototype.append = function (decorated, data) { + this.$loadingMore.remove(); + this.loading = false; + + decorated.call(this, data); + + if (this.showLoadingMore(data)) { + this.$results.append(this.$loadingMore); + } + }; + + InfiniteScroll.prototype.bind = function (decorated, container, $container) { + var self = this; + + decorated.call(this, container, $container); + + container.on('query', function (params) { + self.lastParams = params; + self.loading = true; + }); + + container.on('query:append', function (params) { + self.lastParams = params; + self.loading = true; + }); + + this.$results.on('scroll', function () { + var isLoadMoreVisible = $.contains( + document.documentElement, + self.$loadingMore[0] + ); + + if (self.loading || !isLoadMoreVisible) { + return; + } + + var currentOffset = self.$results.offset().top + + self.$results.outerHeight(false); + var loadingMoreOffset = self.$loadingMore.offset().top + + self.$loadingMore.outerHeight(false); + + if (currentOffset + 50 >= loadingMoreOffset) { + self.loadMore(); + } + }); + }; + + InfiniteScroll.prototype.loadMore = function () { + this.loading = true; + + var params = $.extend({}, {page: 1}, this.lastParams); + + params.page++; + + this.trigger('query:append', params); + }; + + InfiniteScroll.prototype.showLoadingMore = function (_, data) { + return data.pagination && data.pagination.more; + }; + + InfiniteScroll.prototype.createLoadingMore = function () { + var $option = $( + '
            • ' + ); + + var message = this.options.get('translations').get('loadingMore'); + + $option.html(message(this.lastParams)); + + return $option; + }; + + return InfiniteScroll; + }); + + S2.define('select2/dropdown/attachBody',[ + 'jquery', + '../utils' + ], function ($, Utils) { + function AttachBody (decorated, $element, options) { + this.$dropdownParent = options.get('dropdownParent') || $(document.body); + + decorated.call(this, $element, options); + } + + AttachBody.prototype.bind = function (decorated, container, $container) { + var self = this; + + var setupResultsEvents = false; + + decorated.call(this, container, $container); + + container.on('open', function () { + self._showDropdown(); + self._attachPositioningHandler(container); + + if (!setupResultsEvents) { + setupResultsEvents = true; + + container.on('results:all', function () { + self._positionDropdown(); + self._resizeDropdown(); + }); + + container.on('results:append', function () { + self._positionDropdown(); + self._resizeDropdown(); + }); + } + }); + + container.on('close', function () { + self._hideDropdown(); + self._detachPositioningHandler(container); + }); + + this.$dropdownContainer.on('mousedown', function (evt) { + evt.stopPropagation(); + }); + }; + + AttachBody.prototype.destroy = function (decorated) { + decorated.call(this); + + this.$dropdownContainer.remove(); + }; + + AttachBody.prototype.position = function (decorated, $dropdown, $container) { + // Clone all of the container classes + $dropdown.attr('class', $container.attr('class')); + + $dropdown.removeClass('select2'); + $dropdown.addClass('select2-container--open'); + + $dropdown.css({ + position: 'absolute', + top: -999999 + }); + + this.$container = $container; + }; + + AttachBody.prototype.render = function (decorated) { + var $container = $(''); + + var $dropdown = decorated.call(this); + $container.append($dropdown); + + this.$dropdownContainer = $container; + + return $container; + }; + + AttachBody.prototype._hideDropdown = function (decorated) { + this.$dropdownContainer.detach(); + }; + + AttachBody.prototype._attachPositioningHandler = + function (decorated, container) { + var self = this; + + var scrollEvent = 'scroll.select2.' + container.id; + var resizeEvent = 'resize.select2.' + container.id; + var orientationEvent = 'orientationchange.select2.' + container.id; + + var $watchers = this.$container.parents().filter(Utils.hasScroll); + $watchers.each(function () { + $(this).data('select2-scroll-position', { + x: $(this).scrollLeft(), + y: $(this).scrollTop() + }); + }); + + $watchers.on(scrollEvent, function (ev) { + var position = $(this).data('select2-scroll-position'); + $(this).scrollTop(position.y); + }); + + $(window).on(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent, + function (e) { + self._positionDropdown(); + self._resizeDropdown(); + }); + }; + + AttachBody.prototype._detachPositioningHandler = + function (decorated, container) { + var scrollEvent = 'scroll.select2.' + container.id; + var resizeEvent = 'resize.select2.' + container.id; + var orientationEvent = 'orientationchange.select2.' + container.id; + + var $watchers = this.$container.parents().filter(Utils.hasScroll); + $watchers.off(scrollEvent); + + $(window).off(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent); + }; + + AttachBody.prototype._positionDropdown = function () { + var $window = $(window); + + var isCurrentlyAbove = this.$dropdown.hasClass('select2-dropdown--above'); + var isCurrentlyBelow = this.$dropdown.hasClass('select2-dropdown--below'); + + var newDirection = null; + + var offset = this.$container.offset(); + + offset.bottom = offset.top + this.$container.outerHeight(false); + + var container = { + height: this.$container.outerHeight(false) + }; + + container.top = offset.top; + container.bottom = offset.top + container.height; + + var dropdown = { + height: this.$dropdown.outerHeight(false) + }; + + var viewport = { + top: $window.scrollTop(), + bottom: $window.scrollTop() + $window.height() + }; + + var enoughRoomAbove = viewport.top < (offset.top - dropdown.height); + var enoughRoomBelow = viewport.bottom > (offset.bottom + dropdown.height); + + var css = { + left: offset.left, + top: container.bottom + }; + + // Determine what the parent element is to use for calciulating the offset + var $offsetParent = this.$dropdownParent; + + // For statically positoned elements, we need to get the element + // that is determining the offset + if ($offsetParent.css('position') === 'static') { + $offsetParent = $offsetParent.offsetParent(); + } + + var parentOffset = $offsetParent.offset(); + + css.left -= parentOffset.left; + + if (!isCurrentlyAbove && !isCurrentlyBelow) { + newDirection = 'below'; + } + + if (!enoughRoomBelow && enoughRoomAbove && !isCurrentlyAbove) { + newDirection = 'above'; + } else if (!enoughRoomAbove && enoughRoomBelow && isCurrentlyAbove) { + newDirection = 'below'; + } + + if (newDirection == 'above' || + (isCurrentlyAbove && newDirection !== 'below')) { + css.top = container.top - dropdown.height; + } + + if (newDirection != null) { + this.$dropdown + .removeClass('select2-dropdown--below select2-dropdown--above') + .addClass('select2-dropdown--' + newDirection); + this.$container + .removeClass('select2-container--below select2-container--above') + .addClass('select2-container--' + newDirection); + } + + this.$dropdownContainer.css(css); + }; + + AttachBody.prototype._resizeDropdown = function () { + var css = { + width: this.$container.outerWidth(false) + 'px' + }; + + if (this.options.get('dropdownAutoWidth')) { + css.minWidth = css.width; + css.position = 'relative'; + css.width = 'auto'; + } + + this.$dropdown.css(css); + }; + + AttachBody.prototype._showDropdown = function (decorated) { + this.$dropdownContainer.appendTo(this.$dropdownParent); + + this._positionDropdown(); + this._resizeDropdown(); + }; + + return AttachBody; + }); + + S2.define('select2/dropdown/minimumResultsForSearch',[ + + ], function () { + function countResults (data) { + var count = 0; + + for (var d = 0; d < data.length; d++) { + var item = data[d]; + + if (item.children) { + count += countResults(item.children); + } else { + count++; + } + } + + return count; + } + + function MinimumResultsForSearch (decorated, $element, options, dataAdapter) { + this.minimumResultsForSearch = options.get('minimumResultsForSearch'); + + if (this.minimumResultsForSearch < 0) { + this.minimumResultsForSearch = Infinity; + } + + decorated.call(this, $element, options, dataAdapter); + } + + MinimumResultsForSearch.prototype.showSearch = function (decorated, params) { + if (countResults(params.data.results) < this.minimumResultsForSearch) { + return false; + } + + return decorated.call(this, params); + }; + + return MinimumResultsForSearch; + }); + + S2.define('select2/dropdown/selectOnClose',[ + + ], function () { + function SelectOnClose () { } + + SelectOnClose.prototype.bind = function (decorated, container, $container) { + var self = this; + + decorated.call(this, container, $container); + + container.on('close', function (params) { + self._handleSelectOnClose(params); + }); + }; + + SelectOnClose.prototype._handleSelectOnClose = function (_, params) { + if (params && params.originalSelect2Event != null) { + var event = params.originalSelect2Event; + + // Don't select an item if the close event was triggered from a select or + // unselect event + if (event._type === 'select' || event._type === 'unselect') { + return; + } + } + + var $highlightedResults = this.getHighlightedResults(); + + // Only select highlighted results + if ($highlightedResults.length < 1) { + return; + } + + var data = $highlightedResults.data('data'); + + // Don't re-select already selected resulte + if ( + (data.element != null && data.element.selected) || + (data.element == null && data.selected) + ) { + return; + } + + this.trigger('select', { + data: data + }); + }; + + return SelectOnClose; + }); + + S2.define('select2/dropdown/closeOnSelect',[ + + ], function () { + function CloseOnSelect () { } + + CloseOnSelect.prototype.bind = function (decorated, container, $container) { + var self = this; + + decorated.call(this, container, $container); + + container.on('select', function (evt) { + self._selectTriggered(evt); + }); + + container.on('unselect', function (evt) { + self._selectTriggered(evt); + }); + }; + + CloseOnSelect.prototype._selectTriggered = function (_, evt) { + var originalEvent = evt.originalEvent; + + // Don't close if the control key is being held + if (originalEvent && originalEvent.ctrlKey) { + return; + } + + this.trigger('close', { + originalEvent: originalEvent, + originalSelect2Event: evt + }); + }; + + return CloseOnSelect; + }); + + S2.define('select2/i18n/en',[],function () { + // English + return { + errorLoading: function () { + return 'The results could not be loaded.'; + }, + inputTooLong: function (args) { + var overChars = args.input.length - args.maximum; + + var message = 'Please delete ' + overChars + ' character'; + + if (overChars != 1) { + message += 's'; + } + + return message; + }, + inputTooShort: function (args) { + var remainingChars = args.minimum - args.input.length; + + var message = 'Please enter ' + remainingChars + ' or more characters'; + + return message; + }, + loadingMore: function () { + return 'Loading more results…'; + }, + maximumSelected: function (args) { + var message = 'You can only select ' + args.maximum + ' item'; + + if (args.maximum != 1) { + message += 's'; + } + + return message; + }, + noResults: function () { + return 'No results found'; + }, + searching: function () { + return 'Searching…'; + } + }; + }); + + S2.define('select2/defaults',[ + 'jquery', + 'require', + + './results', + + './selection/single', + './selection/multiple', + './selection/placeholder', + './selection/allowClear', + './selection/search', + './selection/eventRelay', + + './utils', + './translation', + './diacritics', + + './data/select', + './data/array', + './data/ajax', + './data/tags', + './data/tokenizer', + './data/minimumInputLength', + './data/maximumInputLength', + './data/maximumSelectionLength', + + './dropdown', + './dropdown/search', + './dropdown/hidePlaceholder', + './dropdown/infiniteScroll', + './dropdown/attachBody', + './dropdown/minimumResultsForSearch', + './dropdown/selectOnClose', + './dropdown/closeOnSelect', + + './i18n/en' + ], function ($, require, + + ResultsList, + + SingleSelection, MultipleSelection, Placeholder, AllowClear, + SelectionSearch, EventRelay, + + Utils, Translation, DIACRITICS, + + SelectData, ArrayData, AjaxData, Tags, Tokenizer, + MinimumInputLength, MaximumInputLength, MaximumSelectionLength, + + Dropdown, DropdownSearch, HidePlaceholder, InfiniteScroll, + AttachBody, MinimumResultsForSearch, SelectOnClose, CloseOnSelect, + + EnglishTranslation) { + function Defaults () { + this.reset(); + } + + Defaults.prototype.apply = function (options) { + options = $.extend(true, {}, this.defaults, options); + + if (options.dataAdapter == null) { + if (options.ajax != null) { + options.dataAdapter = AjaxData; + } else if (options.data != null) { + options.dataAdapter = ArrayData; + } else { + options.dataAdapter = SelectData; + } + + if (options.minimumInputLength > 0) { + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + MinimumInputLength + ); + } + + if (options.maximumInputLength > 0) { + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + MaximumInputLength + ); + } + + if (options.maximumSelectionLength > 0) { + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + MaximumSelectionLength + ); + } + + if (options.tags) { + options.dataAdapter = Utils.Decorate(options.dataAdapter, Tags); + } + + if (options.tokenSeparators != null || options.tokenizer != null) { + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + Tokenizer + ); + } + + if (options.query != null) { + var Query = require(options.amdBase + 'compat/query'); + + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + Query + ); + } + + if (options.initSelection != null) { + var InitSelection = require(options.amdBase + 'compat/initSelection'); + + options.dataAdapter = Utils.Decorate( + options.dataAdapter, + InitSelection + ); + } + } + + if (options.resultsAdapter == null) { + options.resultsAdapter = ResultsList; + + if (options.ajax != null) { + options.resultsAdapter = Utils.Decorate( + options.resultsAdapter, + InfiniteScroll + ); + } + + if (options.placeholder != null) { + options.resultsAdapter = Utils.Decorate( + options.resultsAdapter, + HidePlaceholder + ); + } + + if (options.selectOnClose) { + options.resultsAdapter = Utils.Decorate( + options.resultsAdapter, + SelectOnClose + ); + } + } + + if (options.dropdownAdapter == null) { + if (options.multiple) { + options.dropdownAdapter = Dropdown; + } else { + var SearchableDropdown = Utils.Decorate(Dropdown, DropdownSearch); + + options.dropdownAdapter = SearchableDropdown; + } + + if (options.minimumResultsForSearch !== 0) { + options.dropdownAdapter = Utils.Decorate( + options.dropdownAdapter, + MinimumResultsForSearch + ); + } + + if (options.closeOnSelect) { + options.dropdownAdapter = Utils.Decorate( + options.dropdownAdapter, + CloseOnSelect + ); + } + + if ( + options.dropdownCssClass != null || + options.dropdownCss != null || + options.adaptDropdownCssClass != null + ) { + var DropdownCSS = require(options.amdBase + 'compat/dropdownCss'); + + options.dropdownAdapter = Utils.Decorate( + options.dropdownAdapter, + DropdownCSS + ); + } + + options.dropdownAdapter = Utils.Decorate( + options.dropdownAdapter, + AttachBody + ); + } + + if (options.selectionAdapter == null) { + if (options.multiple) { + options.selectionAdapter = MultipleSelection; + } else { + options.selectionAdapter = SingleSelection; + } + + // Add the placeholder mixin if a placeholder was specified + if (options.placeholder != null) { + options.selectionAdapter = Utils.Decorate( + options.selectionAdapter, + Placeholder + ); + } + + if (options.allowClear) { + options.selectionAdapter = Utils.Decorate( + options.selectionAdapter, + AllowClear + ); + } + + if (options.multiple) { + options.selectionAdapter = Utils.Decorate( + options.selectionAdapter, + SelectionSearch + ); + } + + if ( + options.containerCssClass != null || + options.containerCss != null || + options.adaptContainerCssClass != null + ) { + var ContainerCSS = require(options.amdBase + 'compat/containerCss'); + + options.selectionAdapter = Utils.Decorate( + options.selectionAdapter, + ContainerCSS + ); + } + + options.selectionAdapter = Utils.Decorate( + options.selectionAdapter, + EventRelay + ); + } + + if (typeof options.language === 'string') { + // Check if the language is specified with a region + if (options.language.indexOf('-') > 0) { + // Extract the region information if it is included + var languageParts = options.language.split('-'); + var baseLanguage = languageParts[0]; + + options.language = [options.language, baseLanguage]; + } else { + options.language = [options.language]; + } + } + + if ($.isArray(options.language)) { + var languages = new Translation(); + options.language.push('en'); + + var languageNames = options.language; + + for (var l = 0; l < languageNames.length; l++) { + var name = languageNames[l]; + var language = {}; + + try { + // Try to load it with the original name + language = Translation.loadPath(name); + } catch (e) { + try { + // If we couldn't load it, check if it wasn't the full path + name = this.defaults.amdLanguageBase + name; + language = Translation.loadPath(name); + } catch (ex) { + // The translation could not be loaded at all. Sometimes this is + // because of a configuration problem, other times this can be + // because of how Select2 helps load all possible translation files. + if (options.debug && window.console && console.warn) { + console.warn( + 'Select2: The language file for "' + name + '" could not be ' + + 'automatically loaded. A fallback will be used instead.' + ); + } + + continue; + } + } + + languages.extend(language); + } + + options.translations = languages; + } else { + var baseTranslation = Translation.loadPath( + this.defaults.amdLanguageBase + 'en' + ); + var customTranslation = new Translation(options.language); + + customTranslation.extend(baseTranslation); + + options.translations = customTranslation; + } + + return options; + }; + + Defaults.prototype.reset = function () { + function stripDiacritics (text) { + // Used 'uni range + named function' from http://jsperf.com/diacritics/18 + function match(a) { + return DIACRITICS[a] || a; + } + + return text.replace(/[^\u0000-\u007E]/g, match); + } + + function matcher (params, data) { + // Always return the object if there is nothing to compare + if ($.trim(params.term) === '') { + return data; + } + + // Do a recursive check for options with children + if (data.children && data.children.length > 0) { + // Clone the data object if there are children + // This is required as we modify the object to remove any non-matches + var match = $.extend(true, {}, data); + + // Check each child of the option + for (var c = data.children.length - 1; c >= 0; c--) { + var child = data.children[c]; + + var matches = matcher(params, child); + + // If there wasn't a match, remove the object in the array + if (matches == null) { + match.children.splice(c, 1); + } + } + + // If any children matched, return the new object + if (match.children.length > 0) { + return match; + } + + // If there were no matching children, check just the plain object + return matcher(params, match); + } + + var original = stripDiacritics(data.text).toUpperCase(); + var term = stripDiacritics(params.term).toUpperCase(); + + // Check if the text contains the term + if (original.indexOf(term) > -1) { + return data; + } + + // If it doesn't contain the term, don't return anything + return null; + } + + this.defaults = { + amdBase: './', + amdLanguageBase: './i18n/', + closeOnSelect: true, + debug: false, + dropdownAutoWidth: false, + escapeMarkup: Utils.escapeMarkup, + language: EnglishTranslation, + matcher: matcher, + minimumInputLength: 0, + maximumInputLength: 0, + maximumSelectionLength: 0, + minimumResultsForSearch: 0, + selectOnClose: false, + sorter: function (data) { + return data; + }, + templateResult: function (result) { + return result.text; + }, + templateSelection: function (selection) { + return selection.text; + }, + theme: 'default', + width: 'resolve' + }; + }; + + Defaults.prototype.set = function (key, value) { + var camelKey = $.camelCase(key); + + var data = {}; + data[camelKey] = value; + + var convertedData = Utils._convertData(data); + + $.extend(this.defaults, convertedData); + }; + + var defaults = new Defaults(); + + return defaults; + }); + + S2.define('select2/options',[ + 'require', + 'jquery', + './defaults', + './utils' + ], function (require, $, Defaults, Utils) { + function Options (options, $element) { + this.options = options; + + if ($element != null) { + this.fromElement($element); + } + + this.options = Defaults.apply(this.options); + + if ($element && $element.is('input')) { + var InputCompat = require(this.get('amdBase') + 'compat/inputData'); + + this.options.dataAdapter = Utils.Decorate( + this.options.dataAdapter, + InputCompat + ); + } + } + + Options.prototype.fromElement = function ($e) { + var excludedData = ['select2']; + + if (this.options.multiple == null) { + this.options.multiple = $e.prop('multiple'); + } + + if (this.options.disabled == null) { + this.options.disabled = $e.prop('disabled'); + } + + if (this.options.language == null) { + if ($e.prop('lang')) { + this.options.language = $e.prop('lang').toLowerCase(); + } else if ($e.closest('[lang]').prop('lang')) { + this.options.language = $e.closest('[lang]').prop('lang'); + } + } + + if (this.options.dir == null) { + if ($e.prop('dir')) { + this.options.dir = $e.prop('dir'); + } else if ($e.closest('[dir]').prop('dir')) { + this.options.dir = $e.closest('[dir]').prop('dir'); + } else { + this.options.dir = 'ltr'; + } + } + + $e.prop('disabled', this.options.disabled); + $e.prop('multiple', this.options.multiple); + + if ($e.data('select2Tags')) { + if (this.options.debug && window.console && console.warn) { + console.warn( + 'Select2: The `data-select2-tags` attribute has been changed to ' + + 'use the `data-data` and `data-tags="true"` attributes and will be ' + + 'removed in future versions of Select2.' + ); + } + + $e.data('data', $e.data('select2Tags')); + $e.data('tags', true); + } + + if ($e.data('ajaxUrl')) { + if (this.options.debug && window.console && console.warn) { + console.warn( + 'Select2: The `data-ajax-url` attribute has been changed to ' + + '`data-ajax--url` and support for the old attribute will be removed' + + ' in future versions of Select2.' + ); + } + + $e.attr('ajax--url', $e.data('ajaxUrl')); + $e.data('ajax--url', $e.data('ajaxUrl')); + } + + var dataset = {}; + + // Prefer the element's `dataset` attribute if it exists + // jQuery 1.x does not correctly handle data attributes with multiple dashes + if ($.fn.jquery && $.fn.jquery.substr(0, 2) == '1.' && $e[0].dataset) { + dataset = $.extend(true, {}, $e[0].dataset, $e.data()); + } else { + dataset = $e.data(); + } + + var data = $.extend(true, {}, dataset); + + data = Utils._convertData(data); + + for (var key in data) { + if ($.inArray(key, excludedData) > -1) { + continue; + } + + if ($.isPlainObject(this.options[key])) { + $.extend(this.options[key], data[key]); + } else { + this.options[key] = data[key]; + } + } + + return this; + }; + + Options.prototype.get = function (key) { + return this.options[key]; + }; + + Options.prototype.set = function (key, val) { + this.options[key] = val; + }; + + return Options; + }); + + S2.define('select2/core',[ + 'jquery', + './options', + './utils', + './keys' + ], function ($, Options, Utils, KEYS) { + var Select2 = function ($element, options) { + if ($element.data('select2') != null) { + $element.data('select2').destroy(); + } + + this.$element = $element; + + this.id = this._generateId($element); + + options = options || {}; + + this.options = new Options(options, $element); + + Select2.__super__.constructor.call(this); + + // Set up the tabindex + + var tabindex = $element.attr('tabindex') || 0; + $element.data('old-tabindex', tabindex); + $element.attr('tabindex', '-1'); + + // Set up containers and adapters + + var DataAdapter = this.options.get('dataAdapter'); + this.dataAdapter = new DataAdapter($element, this.options); + + var $container = this.render(); + + this._placeContainer($container); + + var SelectionAdapter = this.options.get('selectionAdapter'); + this.selection = new SelectionAdapter($element, this.options); + this.$selection = this.selection.render(); + + this.selection.position(this.$selection, $container); + + var DropdownAdapter = this.options.get('dropdownAdapter'); + this.dropdown = new DropdownAdapter($element, this.options); + this.$dropdown = this.dropdown.render(); + + this.dropdown.position(this.$dropdown, $container); + + var ResultsAdapter = this.options.get('resultsAdapter'); + this.results = new ResultsAdapter($element, this.options, this.dataAdapter); + this.$results = this.results.render(); + + this.results.position(this.$results, this.$dropdown); + + // Bind events + + var self = this; + + // Bind the container to all of the adapters + this._bindAdapters(); + + // Register any DOM event handlers + this._registerDomEvents(); + + // Register any internal event handlers + this._registerDataEvents(); + this._registerSelectionEvents(); + this._registerDropdownEvents(); + this._registerResultsEvents(); + this._registerEvents(); + + // Set the initial state + this.dataAdapter.current(function (initialData) { + self.trigger('selection:update', { + data: initialData + }); + }); + + // Hide the original select + $element.addClass('select2-hidden-accessible'); + $element.attr('aria-hidden', 'true'); + + // Synchronize any monitored attributes + this._syncAttributes(); + + $element.data('select2', this); + }; + + Utils.Extend(Select2, Utils.Observable); + + Select2.prototype._generateId = function ($element) { + var id = ''; + + if ($element.attr('id') != null) { + id = $element.attr('id'); + } else if ($element.attr('name') != null) { + id = $element.attr('name') + '-' + Utils.generateChars(2); + } else { + id = Utils.generateChars(4); + } + + id = id.replace(/(:|\.|\[|\]|,)/g, ''); + id = 'select2-' + id; + + return id; + }; + + Select2.prototype._placeContainer = function ($container) { + $container.insertAfter(this.$element); + + var width = this._resolveWidth(this.$element, this.options.get('width')); + + if (width != null) { + $container.css('width', width); + } + }; + + Select2.prototype._resolveWidth = function ($element, method) { + var WIDTH = /^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i; + + if (method == 'resolve') { + var styleWidth = this._resolveWidth($element, 'style'); + + if (styleWidth != null) { + return styleWidth; + } + + return this._resolveWidth($element, 'element'); + } + + if (method == 'element') { + var elementWidth = $element.outerWidth(false); + + if (elementWidth <= 0) { + return 'auto'; + } + + return elementWidth + 'px'; + } + + if (method == 'style') { + var style = $element.attr('style'); + + if (typeof(style) !== 'string') { + return null; + } + + var attrs = style.split(';'); + + for (var i = 0, l = attrs.length; i < l; i = i + 1) { + var attr = attrs[i].replace(/\s/g, ''); + var matches = attr.match(WIDTH); + + if (matches !== null && matches.length >= 1) { + return matches[1]; + } + } + + return null; + } + + return method; + }; + + Select2.prototype._bindAdapters = function () { + this.dataAdapter.bind(this, this.$container); + this.selection.bind(this, this.$container); + + this.dropdown.bind(this, this.$container); + this.results.bind(this, this.$container); + }; + + Select2.prototype._registerDomEvents = function () { + var self = this; + + this.$element.on('change.select2', function () { + self.dataAdapter.current(function (data) { + self.trigger('selection:update', { + data: data + }); + }); + }); + + this.$element.on('focus.select2', function (evt) { + self.trigger('focus', evt); + }); + + this._syncA = Utils.bind(this._syncAttributes, this); + this._syncS = Utils.bind(this._syncSubtree, this); + + if (this.$element[0].attachEvent) { + this.$element[0].attachEvent('onpropertychange', this._syncA); + } + + var observer = window.MutationObserver || + window.WebKitMutationObserver || + window.MozMutationObserver + ; + + if (observer != null) { + this._observer = new observer(function (mutations) { + $.each(mutations, self._syncA); + $.each(mutations, self._syncS); + }); + this._observer.observe(this.$element[0], { + attributes: true, + childList: true, + subtree: false + }); + } else if (this.$element[0].addEventListener) { + this.$element[0].addEventListener( + 'DOMAttrModified', + self._syncA, + false + ); + this.$element[0].addEventListener( + 'DOMNodeInserted', + self._syncS, + false + ); + this.$element[0].addEventListener( + 'DOMNodeRemoved', + self._syncS, + false + ); + } + }; + + Select2.prototype._registerDataEvents = function () { + var self = this; + + this.dataAdapter.on('*', function (name, params) { + self.trigger(name, params); + }); + }; + + Select2.prototype._registerSelectionEvents = function () { + var self = this; + var nonRelayEvents = ['toggle', 'focus']; + + this.selection.on('toggle', function () { + self.toggleDropdown(); + }); + + this.selection.on('focus', function (params) { + self.focus(params); + }); + + this.selection.on('*', function (name, params) { + if ($.inArray(name, nonRelayEvents) !== -1) { + return; + } + + self.trigger(name, params); + }); + }; + + Select2.prototype._registerDropdownEvents = function () { + var self = this; + + this.dropdown.on('*', function (name, params) { + self.trigger(name, params); + }); + }; + + Select2.prototype._registerResultsEvents = function () { + var self = this; + + this.results.on('*', function (name, params) { + self.trigger(name, params); + }); + }; + + Select2.prototype._registerEvents = function () { + var self = this; + + this.on('open', function () { + self.$container.addClass('select2-container--open'); + }); + + this.on('close', function () { + self.$container.removeClass('select2-container--open'); + }); + + this.on('enable', function () { + self.$container.removeClass('select2-container--disabled'); + }); + + this.on('disable', function () { + self.$container.addClass('select2-container--disabled'); + }); + + this.on('blur', function () { + self.$container.removeClass('select2-container--focus'); + }); + + this.on('query', function (params) { + if (!self.isOpen()) { + self.trigger('open', {}); + } + + this.dataAdapter.query(params, function (data) { + self.trigger('results:all', { + data: data, + query: params + }); + }); + }); + + this.on('query:append', function (params) { + this.dataAdapter.query(params, function (data) { + self.trigger('results:append', { + data: data, + query: params + }); + }); + }); + + this.on('open', function(){ + // Focus on the active element when opening dropdown. + // Needs 1 ms delay because of other 1 ms setTimeouts when rendering. + setTimeout(function(){ + self.focusOnActiveElement(); + }, 1); + }); + + $(document).on('keydown', function (evt) { + var key = evt.which; + if (self.isOpen()) { + if (key === KEYS.ESC || (key === KEYS.UP && evt.altKey)) { + self.close(); + + evt.preventDefault(); + } else if (key === KEYS.ENTER || key === KEYS.TAB) { + self.trigger('results:select', {}); + + evt.preventDefault(); + } else if ((key === KEYS.SPACE && evt.ctrlKey)) { + self.trigger('results:toggle', {}); + + evt.preventDefault(); + } else if (key === KEYS.UP) { + self.trigger('results:previous', {}); + + evt.preventDefault(); + } else if (key === KEYS.DOWN) { + self.trigger('results:next', {}); + + evt.preventDefault(); + } + + var $searchField = self.$dropdown.find('.select2-search__field'); + if (! $searchField.length) { + $searchField = self.$container.find('.select2-search__field'); + } + + // Move the focus to the selected element on keyboard navigation. + // Required for screen readers to work properly. + if (key === KEYS.DOWN || key === KEYS.UP) { + self.focusOnActiveElement(); + } else { + // Focus on the search if user starts typing. + $searchField.focus(); + // Focus back to active selection when finished typing. + // Small delay so typed character can be read by screen reader. + setTimeout(function(){ + self.focusOnActiveElement(); + }, 1000); + } + } else if (self.hasFocus()) { + if (key === KEYS.ENTER || key === KEYS.SPACE || + key === KEYS.DOWN) { + self.open(); + evt.preventDefault(); + } + } + }); + }; + + Select2.prototype.focusOnActiveElement = function () { + // Don't mess with the focus on touchscreens because it causes havoc with on-screen keyboards. + if (this.isOpen() && ! Utils.isTouchscreen()) { + this.$results.find('li.select2-results__option--highlighted').focus(); + } + }; + + Select2.prototype._syncAttributes = function () { + this.options.set('disabled', this.$element.prop('disabled')); + + if (this.options.get('disabled')) { + if (this.isOpen()) { + this.close(); + } + + this.trigger('disable', {}); + } else { + this.trigger('enable', {}); + } + }; + + Select2.prototype._syncSubtree = function (evt, mutations) { + var changed = false; + var self = this; + + // Ignore any mutation events raised for elements that aren't options or + // optgroups. This handles the case when the select element is destroyed + if ( + evt && evt.target && ( + evt.target.nodeName !== 'OPTION' && evt.target.nodeName !== 'OPTGROUP' + ) + ) { + return; + } + + if (!mutations) { + // If mutation events aren't supported, then we can only assume that the + // change affected the selections + changed = true; + } else if (mutations.addedNodes && mutations.addedNodes.length > 0) { + for (var n = 0; n < mutations.addedNodes.length; n++) { + var node = mutations.addedNodes[n]; + + if (node.selected) { + changed = true; + } + } + } else if (mutations.removedNodes && mutations.removedNodes.length > 0) { + changed = true; + } + + // Only re-pull the data if we think there is a change + if (changed) { + this.dataAdapter.current(function (currentData) { + self.trigger('selection:update', { + data: currentData + }); + }); + } + }; + + /** + * Override the trigger method to automatically trigger pre-events when + * there are events that can be prevented. + */ + Select2.prototype.trigger = function (name, args) { + var actualTrigger = Select2.__super__.trigger; + var preTriggerMap = { + 'open': 'opening', + 'close': 'closing', + 'select': 'selecting', + 'unselect': 'unselecting' + }; + + if (args === undefined) { + args = {}; + } + + if (name in preTriggerMap) { + var preTriggerName = preTriggerMap[name]; + var preTriggerArgs = { + prevented: false, + name: name, + args: args + }; + + actualTrigger.call(this, preTriggerName, preTriggerArgs); + + if (preTriggerArgs.prevented) { + args.prevented = true; + + return; + } + } + + actualTrigger.call(this, name, args); + }; + + Select2.prototype.toggleDropdown = function () { + if (this.options.get('disabled')) { + return; + } + + if (this.isOpen()) { + this.close(); + } else { + this.open(); + } + }; + + Select2.prototype.open = function () { + if (this.isOpen()) { + return; + } + + this.trigger('query', {}); + }; + + Select2.prototype.close = function () { + if (!this.isOpen()) { + return; + } + + this.trigger('close', {}); + }; + + Select2.prototype.isOpen = function () { + return this.$container.hasClass('select2-container--open'); + }; + + Select2.prototype.hasFocus = function () { + return this.$container.hasClass('select2-container--focus'); + }; + + Select2.prototype.focus = function (data) { + // No need to re-trigger focus events if we are already focused + if (this.hasFocus()) { + return; + } + + this.$container.addClass('select2-container--focus'); + this.trigger('focus', {}); + }; + + Select2.prototype.enable = function (args) { + if (this.options.get('debug') && window.console && console.warn) { + console.warn( + 'Select2: The `select2("enable")` method has been deprecated and will' + + ' be removed in later Select2 versions. Use $element.prop("disabled")' + + ' instead.' + ); + } + + if (args == null || args.length === 0) { + args = [true]; + } + + var disabled = !args[0]; + + this.$element.prop('disabled', disabled); + }; + + Select2.prototype.data = function () { + if (this.options.get('debug') && + arguments.length > 0 && window.console && console.warn) { + console.warn( + 'Select2: Data can no longer be set using `select2("data")`. You ' + + 'should consider setting the value instead using `$element.val()`.' + ); + } + + var data = []; + + this.dataAdapter.current(function (currentData) { + data = currentData; + }); + + return data; + }; + + Select2.prototype.val = function (args) { + if (this.options.get('debug') && window.console && console.warn) { + console.warn( + 'Select2: The `select2("val")` method has been deprecated and will be' + + ' removed in later Select2 versions. Use $element.val() instead.' + ); + } + + if (args == null || args.length === 0) { + return this.$element.val(); + } + + var newVal = args[0]; + + if ($.isArray(newVal)) { + newVal = $.map(newVal, function (obj) { + return obj.toString(); + }); + } + + this.$element.val(newVal).trigger('change'); + }; + + Select2.prototype.destroy = function () { + this.$container.remove(); + + if (this.$element[0].detachEvent) { + this.$element[0].detachEvent('onpropertychange', this._syncA); + } + + if (this._observer != null) { + this._observer.disconnect(); + this._observer = null; + } else if (this.$element[0].removeEventListener) { + this.$element[0] + .removeEventListener('DOMAttrModified', this._syncA, false); + this.$element[0] + .removeEventListener('DOMNodeInserted', this._syncS, false); + this.$element[0] + .removeEventListener('DOMNodeRemoved', this._syncS, false); + } + + this._syncA = null; + this._syncS = null; + + this.$element.off('.select2'); + this.$element.attr('tabindex', this.$element.data('old-tabindex')); + + this.$element.removeClass('select2-hidden-accessible'); + this.$element.attr('aria-hidden', 'false'); + this.$element.removeData('select2'); + + this.dataAdapter.destroy(); + this.selection.destroy(); + this.dropdown.destroy(); + this.results.destroy(); + + this.dataAdapter = null; + this.selection = null; + this.dropdown = null; + this.results = null; + }; + + Select2.prototype.render = function () { + var $container = $( + '' + + '' + + '' + + '' + ); + + $container.attr('dir', this.options.get('dir')); + + this.$container = $container; + + this.$container.addClass('select2-container--' + this.options.get('theme')); + + $container.data('element', this.$element); + + return $container; + }; + + return Select2; + }); + + S2.define('jquery-mousewheel',[ + 'jquery' + ], function ($) { + // Used to shim jQuery.mousewheel for non-full builds. + return $; + }); + + S2.define('jquery.select2',[ + 'jquery', + 'jquery-mousewheel', + + './select2/core', + './select2/defaults' + ], function ($, _, Select2, Defaults) { + if ($.fn.selectWoo == null) { + // All methods that should return the element + var thisMethods = ['open', 'close', 'destroy']; + + $.fn.selectWoo = function (options) { + options = options || {}; + + if (typeof options === 'object') { + this.each(function () { + var instanceOptions = $.extend(true, {}, options); + + var instance = new Select2($(this), instanceOptions); + }); + + return this; + } else if (typeof options === 'string') { + var ret; + var args = Array.prototype.slice.call(arguments, 1); + + this.each(function () { + var instance = $(this).data('select2'); + + if (instance == null && window.console && console.error) { + console.error( + 'The select2(\'' + options + '\') method was called on an ' + + 'element that is not using Select2.' + ); + } + + ret = instance[options].apply(instance, args); + }); + + // Check if we should be returning `this` + if ($.inArray(options, thisMethods) > -1) { + return this; + } + + return ret; + } else { + throw new Error('Invalid arguments for Select2: ' + options); + } + }; + } + + if ($.fn.select2 != null && $.fn.select2.defaults != null) { + $.fn.selectWoo.defaults = $.fn.select2.defaults; + } + + if ($.fn.selectWoo.defaults == null) { + $.fn.selectWoo.defaults = Defaults; + } + + // Also register selectWoo under select2 if select2 is not already present. + $.fn.select2 = $.fn.select2 || $.fn.selectWoo; + + return Select2; + }); + + // Return the AMD loader configuration so it can be used outside of this file + return { + define: S2.define, + require: S2.require + }; + }()); + + // Autoload the jQuery bindings + // We know that all of the modules exist above this, so we're safe + var select2 = S2.require('jquery.select2'); + + // Hold the AMD module references on the jQuery function that was just loaded + // This allows Select2 to use the internal loader outside of this file, such + // as in the language files. + jQuery.fn.select2.amd = S2; + jQuery.fn.selectWoo.amd = S2; + + // Return the Select2 instance for anyone who is importing it. + return select2; +})); diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/class-astra-customizer-control-base.php b/wp-content/themes/astra/inc/customizer/custom-controls/class-astra-customizer-control-base.php index 9c2c4109f..9098ec468 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/class-astra-customizer-control-base.php +++ b/wp-content/themes/astra/inc/customizer/custom-controls/class-astra-customizer-control-base.php @@ -1,184 +1,184 @@ - __( 'Thin 100', 'astra' ), - '100italic' => __( '100 Italic', 'astra' ), - '200' => __( 'Extra-Light 200', 'astra' ), - '200italic' => __( '200 Italic', 'astra' ), - '300' => __( 'Light 300', 'astra' ), - '300italic' => __( '300 Italic', 'astra' ), - '400' => __( 'Normal 400', 'astra' ), - 'normal' => __( 'Normal 400', 'astra' ), - 'italic' => __( '400 Italic', 'astra' ), - '500' => __( 'Medium 500', 'astra' ), - '500italic' => __( '500 Italic', 'astra' ), - '600' => __( 'Semi-Bold 600', 'astra' ), - '600italic' => __( '600 Italic', 'astra' ), - '700' => __( 'Bold 700', 'astra' ), - '700italic' => __( '700 Italic', 'astra' ), - '800' => __( 'Extra-Bold 800', 'astra' ), - '800italic' => __( '800 Italic', 'astra' ), - '900' => __( 'Ultra-Bold 900', 'astra' ), - '900italic' => __( '900 Italic', 'astra' ), - ); - wp_localize_script( 'astra-custom-control-script', 'astraTypo', $astra_typo_localize ); - - $css_uri = ASTRA_THEME_URI . 'inc/customizer/custom-controls/typography/'; - - wp_enqueue_style( 'astra-select-woo-style', $css_uri . 'selectWoo.css', null, ASTRA_THEME_VERSION ); - } - - /** - * Add Control to self::$controls and Register control to WordPress Customizer. - * - * @param String $name Slug for the control. - * @param Array $atts Control Attributes. - * @return void - */ - public static function add_control( $name, $atts ) { - global $wp_customize; - self::$controls[ $name ] = $atts; - - if ( isset( $atts['callback'] ) ) { - /** - * Register controls - */ - $wp_customize->register_control_type( $atts['callback'] ); - } - } - - /** - * Returns control instance - * - * @param string $control_type control type. - * @since 1.4.3 - * @return string - */ - public static function get_control_instance( $control_type ) { - $control_class = self::get_control( $control_type ); - - if ( isset( $control_class['callback'] ) ) { - return class_exists( $control_class['callback'] ) ? $control_class['callback'] : false; - } - - return false; - } - - /** - * Returns control and its attributes - * - * @param string $control_type control type. - * @since 1.4.3 - * @return array - */ - public static function get_control( $control_type ) { - if ( isset( self::$controls[ $control_type ] ) ) { - return self::$controls[ $control_type ]; - } - - return array(); - } - - /** - * Returns Santize callback for control - * - * @param string $control control. - * @since 1.4.3 - * @return string - */ - public static function get_sanitize_call( $control ) { - - if ( isset( self::$controls[ $control ]['sanitize_callback'] ) ) { - return self::$controls[ $control ]['sanitize_callback']; - } - - return false; - } - } -} - -/** - * Kicking this off by calling 'get_instance()' method - */ -new Astra_Customizer_Control_Base(); + __( 'Thin 100', 'astra' ), + '100italic' => __( '100 Italic', 'astra' ), + '200' => __( 'Extra-Light 200', 'astra' ), + '200italic' => __( '200 Italic', 'astra' ), + '300' => __( 'Light 300', 'astra' ), + '300italic' => __( '300 Italic', 'astra' ), + '400' => __( 'Normal 400', 'astra' ), + 'normal' => __( 'Normal 400', 'astra' ), + 'italic' => __( '400 Italic', 'astra' ), + '500' => __( 'Medium 500', 'astra' ), + '500italic' => __( '500 Italic', 'astra' ), + '600' => __( 'Semi-Bold 600', 'astra' ), + '600italic' => __( '600 Italic', 'astra' ), + '700' => __( 'Bold 700', 'astra' ), + '700italic' => __( '700 Italic', 'astra' ), + '800' => __( 'Extra-Bold 800', 'astra' ), + '800italic' => __( '800 Italic', 'astra' ), + '900' => __( 'Ultra-Bold 900', 'astra' ), + '900italic' => __( '900 Italic', 'astra' ), + ); + wp_localize_script( 'astra-custom-control-script', 'astraTypo', $astra_typo_localize ); + + $css_uri = ASTRA_THEME_URI . 'inc/customizer/custom-controls/typography/'; + + wp_enqueue_style( 'astra-select-woo-style', $css_uri . 'selectWoo.css', null, ASTRA_THEME_VERSION ); + } + + /** + * Add Control to self::$controls and Register control to WordPress Customizer. + * + * @param String $name Slug for the control. + * @param Array $atts Control Attributes. + * @return void + */ + public static function add_control( $name, $atts ) { + global $wp_customize; + self::$controls[ $name ] = $atts; + + if ( isset( $atts['callback'] ) ) { + /** + * Register controls + */ + $wp_customize->register_control_type( $atts['callback'] ); + } + } + + /** + * Returns control instance + * + * @param string $control_type control type. + * @since 1.4.3 + * @return string + */ + public static function get_control_instance( $control_type ) { + $control_class = self::get_control( $control_type ); + + if ( isset( $control_class['callback'] ) ) { + return class_exists( $control_class['callback'] ) ? $control_class['callback'] : false; + } + + return false; + } + + /** + * Returns control and its attributes + * + * @param string $control_type control type. + * @since 1.4.3 + * @return array + */ + public static function get_control( $control_type ) { + if ( isset( self::$controls[ $control_type ] ) ) { + return self::$controls[ $control_type ]; + } + + return array(); + } + + /** + * Returns Santize callback for control + * + * @param string $control control. + * @since 1.4.3 + * @return string + */ + public static function get_sanitize_call( $control ) { + + if ( isset( self::$controls[ $control ]['sanitize_callback'] ) ) { + return self::$controls[ $control ]['sanitize_callback']; + } + + return false; + } + } +} + +/** + * Kicking this off by calling 'get_instance()' method + */ +new Astra_Customizer_Control_Base(); diff --git a/wp-content/themes/astra/inc/customizer/custom-controls/typography/selectWoo.css b/wp-content/themes/astra/inc/customizer/custom-controls/typography/selectWoo.css index 0cd1973c8..d819ad1c4 100644 --- a/wp-content/themes/astra/inc/customizer/custom-controls/typography/selectWoo.css +++ b/wp-content/themes/astra/inc/customizer/custom-controls/typography/selectWoo.css @@ -1,496 +1,484 @@ -.select2-container { - font-size: 14px; - box-sizing: border-box; - display: inline-block; - margin: 0; - position: relative; - vertical-align: middle; } - .select2-container .select2-selection--single { - box-sizing: border-box; - cursor: pointer; - display: block; - min-height: 32px; - padding-top: 1px; - padding-bottom: 1px; - user-select: none; - -webkit-user-select: none; } - .select2-container .select2-selection--single .select2-selection__rendered { - display: block; - padding-left: 8px; - padding-right: 20px; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; } - .select2-container .select2-selection--single .select2-selection__clear { - position: relative; } - .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered { - padding-right: 8px; - padding-left: 20px; } - .select2-container .select2-selection--multiple { - box-sizing: border-box; - cursor: pointer; - display: block; - min-height: 32px; - user-select: none; - -webkit-user-select: none; } - .select2-container .select2-selection--multiple .select2-selection__rendered { - display: inline-block; - overflow: hidden; - padding-left: 8px; - text-overflow: ellipsis; - white-space: nowrap; } - .select2-container .select2-search--inline { - float: left; } - .select2-container .select2-search--inline .select2-search__field { - box-sizing: border-box; - border: none; - font-size: 100%; - margin-top: 5px; - padding: 0; } - .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button { - -webkit-appearance: none; } - -.select2-dropdown { - background-color: white; - border: 1px solid #aaa; - border-radius: 4px; - box-sizing: border-box; - display: block; - position: absolute; - left: -100000px; - width: 100%; - z-index: 1051; } - -.select2-results { - display: block; } - -.select2-results__options { - list-style: none; - margin: 0; - padding: 0; } - -.select2-results__option { - padding: 6px; - user-select: none; - -webkit-user-select: none; } - .select2-results__option[data-selected] { - cursor: pointer; } - -.select2-container--open .select2-dropdown { - left: 0; } - -.select2-container--open .select2-dropdown--above { - border-bottom: none; - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; } - -.select2-container--open .select2-dropdown--below { - border-top: none; - border-top-left-radius: 0; - border-top-right-radius: 0; } - -.select2-search--dropdown { - display: block; - padding: 4px; } - .select2-search--dropdown .select2-search__field { - padding: 4px; - width: 100%; - box-sizing: border-box; } - .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button { - -webkit-appearance: none; } - .select2-search--dropdown.select2-search--hide { - display: none; } - -.select2-close-mask { - border: 0; - margin: 0; - padding: 0; - display: block; - position: fixed; - left: 0; - top: 0; - min-height: 100%; - min-width: 100%; - height: auto; - width: auto; - opacity: 0; - z-index: 99; - background-color: #fff; - filter: alpha(opacity=0); } - -.select2-hidden-accessible { - border: 0 !important; - clip: rect(0 0 0 0) !important; - height: 1px !important; - margin: -1px !important; - overflow: hidden !important; - padding: 0 !important; - position: absolute !important; - width: 1px !important; } - -.select2-container--default .select2-selection--single { - background-color: #fff; - border: 1px solid #ddd; - border-radius: 4px; } - .select2-container--default .select2-selection--single .select2-selection__rendered { - color: #444; - line-height: 2; } - .select2-container--default .select2-selection--single .select2-selection__clear { - cursor: pointer; - float: right; - font-weight: bold; } - .select2-container--default .select2-selection--single .select2-selection__placeholder { - color: #999; } - .select2-container--default .select2-selection--single .select2-selection__arrow { - position: absolute; - top: 50%; - transform: translateY(-50%); - display: flex; - justify-content: center; - right: 1px; - width: 24px; } - .select2-container--default .select2-selection--single .select2-selection__arrow .dashicons { - font-size: 16px; - width: 16px; - height: 16px; - color: #4B5563; - } - .select2-container--default .select2-selection--single .select2-selection__arrow b { - border-color: #888 transparent transparent transparent; - border-style: solid; - border-width: 5px 4px 0 4px; - height: 0; - left: 50%; - margin-left: -4px; - margin-top: -2px; - position: absolute; - top: 50%; - width: 0; } - -.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear { - float: left; } - -.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow { - left: 1px; - right: auto; } - -.select2-container--default.select2-container--disabled .select2-selection--single { - background-color: #eee; - cursor: default; } - .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear { - display: none; } - -.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { - border-color: transparent transparent #888 transparent; - border-width: 0 4px 5px 4px; } - -.select2-container--default .select2-selection--multiple { - background-color: white; - border: 1px solid #aaa; - border-radius: 4px; - cursor: text; } - .select2-container--default .select2-selection--multiple .select2-selection__rendered { - box-sizing: border-box; - list-style: none; - margin: 0; - padding: 0 5px; - width: 100%; } - .select2-container--default .select2-selection--multiple .select2-selection__rendered li { - list-style: none; } - .select2-container--default .select2-selection--multiple .select2-selection__placeholder { - color: #999; - margin-top: 5px; - float: left; } - .select2-container--default .select2-selection--multiple .select2-selection__clear { - cursor: pointer; - float: right; - font-weight: bold; - margin-top: 5px; - margin-right: 10px; } - .select2-container--default .select2-selection--multiple .select2-selection__choice { - background-color: #e4e4e4; - border: 1px solid #aaa; - border-radius: 4px; - cursor: default; - float: left; - margin: 5px 5px 5px 0; - padding: 0px 2px 0 5px; } - .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { - color: #999; - cursor: pointer; - display: inline-block; - font-weight: bold; - margin: 0px 2px 2px 3px; - line-height: 16px; - } - .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { - color: #333; } - -.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline { - float: right; } - -.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice { - margin-left: 5px; - margin-right: auto; } - -.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { - margin-left: 2px; - margin-right: auto; } - -.select2-container--default.select2-container--focus .select2-selection--multiple { - border: solid black 1px; - outline: 0; } - -.select2-container--default.select2-container--disabled .select2-selection--multiple { - background-color: #eee; - cursor: default; } - -.select2-container--default.select2-container--disabled .select2-selection__choice__remove { - display: none; } - -.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple { - border-top-left-radius: 0; - border-top-right-radius: 0; } - -.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; } - -.select2-container--default .select2-search--dropdown .select2-search__field { - border: 1px solid #aaa; } - -.select2-container--default .select2-search--inline .select2-search__field { - background: transparent; - border: none; - outline: 0; - box-shadow: none; - -webkit-appearance: textfield; } - -.select2-container--default .select2-results > .select2-results__options { - max-height: 200px; - overflow-y: auto; } - -.select2-container--default .select2-results__option[role=group] { - padding: 0; } - -.select2-container--default .select2-results__option[aria-disabled=true] { - color: #999; } - -.select2-container--default .select2-results__option[data-selected=true] { - background-color: #ddd; } - -.select2-container--default .select2-results__option .select2-results__option { - padding-left: 1em; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__group { - padding-left: 0; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__option { - margin-left: -1em; - padding-left: 2em; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option { - margin-left: -2em; - padding-left: 3em; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { - margin-left: -3em; - padding-left: 4em; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { - margin-left: -4em; - padding-left: 5em; } - .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { - margin-left: -5em; - padding-left: 6em; } - -.select2-container--default .select2-results__option--highlighted[data-selected] { - background-color: #5897fb; - color: white; } - -.select2-container--default .select2-results__group { - cursor: default; - display: block; - padding: 6px; } - -.select2-container--classic .select2-selection--single { - background-color: #f7f7f7; - border: 1px solid #aaa; - border-radius: 4px; - outline: 0; - background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%); - background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%); - background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } - .select2-container--classic .select2-selection--single:focus { - border: 1px solid #5897fb; } - .select2-container--classic .select2-selection--single .select2-selection__rendered { - color: #444; - line-height: 28px; } - .select2-container--classic .select2-selection--single .select2-selection__clear { - cursor: pointer; - float: right; - font-weight: bold; - margin-right: 10px; } - .select2-container--classic .select2-selection--single .select2-selection__placeholder { - color: #999; } - .select2-container--classic .select2-selection--single .select2-selection__arrow { - background-color: #ddd; - border: none; - border-left: 1px solid #aaa; - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; - height: 26px; - position: absolute; - top: 1px; - right: 1px; - width: 20px; - background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%); - background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%); - background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); } - .select2-container--classic .select2-selection--single .select2-selection__arrow b { - border-color: #888 transparent transparent transparent; - border-style: solid; - border-width: 5px 4px 0 4px; - height: 0; - left: 50%; - margin-left: -4px; - margin-top: -2px; - position: absolute; - top: 50%; - width: 0; } - -.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear { - float: left; } - -.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow { - border: none; - border-right: 1px solid #aaa; - border-radius: 0; - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; - left: 1px; - right: auto; } - -.select2-container--classic.select2-container--open .select2-selection--single { - border: 1px solid #5897fb; } - .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow { - background: transparent; - border: none; } - .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b { - border-color: transparent transparent #888 transparent; - border-width: 0 4px 5px 4px; } - -.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single { - border-top: none; - border-top-left-radius: 0; - border-top-right-radius: 0; - background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%); - background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%); - background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } - -.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single { - border-bottom: none; - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%); - background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%); - background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%); - background-repeat: repeat-x; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); } - -.select2-container--classic .select2-selection--multiple { - background-color: white; - border: 1px solid #aaa; - border-radius: 4px; - cursor: text; - outline: 0; } - .select2-container--classic .select2-selection--multiple:focus { - border: 1px solid #5897fb; } - .select2-container--classic .select2-selection--multiple .select2-selection__rendered { - list-style: none; - margin: 0; - padding: 0 5px; } - .select2-container--classic .select2-selection--multiple .select2-selection__clear { - display: none; } - .select2-container--classic .select2-selection--multiple .select2-selection__choice { - background-color: #e4e4e4; - border: 1px solid #aaa; - border-radius: 4px; - cursor: default; - float: left; - margin-right: 5px; - margin-top: 5px; - padding: 0 5px; } - .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove { - color: #888; - cursor: pointer; - display: inline-block; - font-weight: bold; - margin-right: 2px; } - .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover { - color: #555; } - -.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { - float: right; } - -.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { - margin-left: 5px; - margin-right: auto; } - -.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { - margin-left: 2px; - margin-right: auto; } - -.select2-container--classic.select2-container--open .select2-selection--multiple { - border: 1px solid #5897fb; } - -.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple { - border-top: none; - border-top-left-radius: 0; - border-top-right-radius: 0; } - -.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple { - border-bottom: none; - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; } - -.select2-container--classic .select2-search--dropdown .select2-search__field { - border: 1px solid #aaa; - outline: 0; } - -.select2-container--classic .select2-search--inline .select2-search__field { - outline: 0; - box-shadow: none; } - -.select2-container--classic .select2-dropdown { - background-color: white; - border: 1px solid transparent; } - -.select2-container--classic .select2-dropdown--above { - border-bottom: none; } - -.select2-container--classic .select2-dropdown--below { - border-top: none; } - -.select2-container--classic .select2-results > .select2-results__options { - max-height: 200px; - overflow-y: auto; } - -.select2-container--classic .select2-results__option[role=group] { - padding: 0; } - -.select2-container--classic .select2-results__option[aria-disabled=true] { - color: grey; } - -.select2-container--classic .select2-results__option--highlighted[data-selected] { - background-color: #3875d7; - color: white; } - -.select2-container--classic .select2-results__group { - cursor: default; - display: block; - padding: 6px; } - -.select2-container--classic.select2-container--open .select2-dropdown { - border-color: #5897fb; } +.select2-container { + box-sizing: border-box; + display: inline-block; + margin: 0; + position: relative; + vertical-align: middle; } + .select2-container .select2-selection--single { + box-sizing: border-box; + cursor: pointer; + display: block; + height: 28px; + user-select: none; + -webkit-user-select: none; } + .select2-container .select2-selection--single .select2-selection__rendered { + display: block; + padding-left: 8px; + padding-right: 20px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } + .select2-container .select2-selection--single .select2-selection__clear { + position: relative; } + .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered { + padding-right: 8px; + padding-left: 20px; } + .select2-container .select2-selection--multiple { + box-sizing: border-box; + cursor: pointer; + display: block; + min-height: 32px; + user-select: none; + -webkit-user-select: none; } + .select2-container .select2-selection--multiple .select2-selection__rendered { + display: inline-block; + overflow: hidden; + padding-left: 8px; + text-overflow: ellipsis; + white-space: nowrap; } + .select2-container .select2-search--inline { + float: left; } + .select2-container .select2-search--inline .select2-search__field { + box-sizing: border-box; + border: none; + font-size: 100%; + margin-top: 5px; + padding: 0; } + .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button { + -webkit-appearance: none; } + + .select2-dropdown { + background-color: white; + border: 1px solid #aaa; + border-radius: 4px; + box-sizing: border-box; + display: block; + position: absolute; + left: -100000px; + width: 100%; + z-index: 1051; } + + .select2-results { + display: block; } + + .select2-results__options { + list-style: none; + margin: 0; + padding: 0; } + + .select2-results__option { + padding: 6px; + user-select: none; + -webkit-user-select: none; } + .select2-results__option[data-selected] { + cursor: pointer; } + + .select2-container--open .select2-dropdown { + left: 0; } + + .select2-container--open .select2-dropdown--above { + border-bottom: none; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; } + + .select2-container--open .select2-dropdown--below { + border-top: none; + border-top-left-radius: 0; + border-top-right-radius: 0; } + + .select2-search--dropdown { + display: block; + padding: 4px; } + .select2-search--dropdown .select2-search__field { + padding: 4px; + width: 100%; + box-sizing: border-box; } + .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button { + -webkit-appearance: none; } + .select2-search--dropdown.select2-search--hide { + display: none; } + + .select2-close-mask { + border: 0; + margin: 0; + padding: 0; + display: block; + position: fixed; + left: 0; + top: 0; + min-height: 100%; + min-width: 100%; + height: auto; + width: auto; + opacity: 0; + z-index: 99; + background-color: #fff; + filter: alpha(opacity=0); } + + .select2-hidden-accessible { + border: 0 !important; + clip: rect(0 0 0 0) !important; + height: 1px !important; + margin: -1px !important; + overflow: hidden !important; + padding: 0 !important; + position: absolute !important; + width: 1px !important; } + + .select2-container--default .select2-selection--single { + background-color: #fff; + border: 1px solid #aaa; + border-radius: 4px; } + .select2-container--default .select2-selection--single .select2-selection__rendered { + color: #444; + line-height: 28px; } + .select2-container--default .select2-selection--single .select2-selection__clear { + cursor: pointer; + float: right; + font-weight: bold; } + .select2-container--default .select2-selection--single .select2-selection__placeholder { + color: #999; } + .select2-container--default .select2-selection--single .select2-selection__arrow { + height: 26px; + position: absolute; + top: 1px; + right: 1px; + width: 20px; } + .select2-container--default .select2-selection--single .select2-selection__arrow b { + border-color: #888 transparent transparent transparent; + border-style: solid; + border-width: 5px 4px 0 4px; + height: 0; + left: 50%; + margin-left: -4px; + margin-top: -2px; + position: absolute; + top: 50%; + width: 0; } + + .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear { + float: left; } + + .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow { + left: 1px; + right: auto; } + + .select2-container--default.select2-container--disabled .select2-selection--single { + background-color: #eee; + cursor: default; } + .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear { + display: none; } + + .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { + border-color: transparent transparent #888 transparent; + border-width: 0 4px 5px 4px; } + + .select2-container--default .select2-selection--multiple { + background-color: white; + border: 1px solid #aaa; + border-radius: 4px; + cursor: text; } + .select2-container--default .select2-selection--multiple .select2-selection__rendered { + box-sizing: border-box; + list-style: none; + margin: 0; + padding: 0 5px; + width: 100%; } + .select2-container--default .select2-selection--multiple .select2-selection__rendered li { + list-style: none; } + .select2-container--default .select2-selection--multiple .select2-selection__placeholder { + color: #999; + margin-top: 5px; + float: left; } + .select2-container--default .select2-selection--multiple .select2-selection__clear { + cursor: pointer; + float: right; + font-weight: bold; + margin-top: 5px; + margin-right: 10px; } + .select2-container--default .select2-selection--multiple .select2-selection__choice { + background-color: #e4e4e4; + border: 1px solid #aaa; + border-radius: 4px; + cursor: default; + float: left; + margin-right: 5px; + margin-top: 5px; + padding: 0 5px; } + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { + color: #999; + cursor: pointer; + display: inline-block; + font-weight: bold; + margin-right: 2px; } + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { + color: #333; } + + .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline { + float: right; } + + .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice { + margin-left: 5px; + margin-right: auto; } + + .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { + margin-left: 2px; + margin-right: auto; } + + .select2-container--default.select2-container--focus .select2-selection--multiple { + border: solid black 1px; + outline: 0; } + + .select2-container--default.select2-container--disabled .select2-selection--multiple { + background-color: #eee; + cursor: default; } + + .select2-container--default.select2-container--disabled .select2-selection__choice__remove { + display: none; } + + .select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple { + border-top-left-radius: 0; + border-top-right-radius: 0; } + + .select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; } + + .select2-container--default .select2-search--dropdown .select2-search__field { + border: 1px solid #aaa; } + + .select2-container--default .select2-search--inline .select2-search__field { + background: transparent; + border: none; + outline: 0; + box-shadow: none; + -webkit-appearance: textfield; } + + .select2-container--default .select2-results > .select2-results__options { + max-height: 200px; + overflow-y: auto; } + + .select2-container--default .select2-results__option[role=group] { + padding: 0; } + + .select2-container--default .select2-results__option[aria-disabled=true] { + color: #999; } + + .select2-container--default .select2-results__option[data-selected=true] { + background-color: #ddd; } + + .select2-container--default .select2-results__option .select2-results__option { + padding-left: 1em; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__group { + padding-left: 0; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__option { + margin-left: -1em; + padding-left: 2em; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option { + margin-left: -2em; + padding-left: 3em; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { + margin-left: -3em; + padding-left: 4em; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { + margin-left: -4em; + padding-left: 5em; } + .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { + margin-left: -5em; + padding-left: 6em; } + + .select2-container--default .select2-results__option--highlighted[data-selected] { + background-color: #5897fb; + color: white; } + + .select2-container--default .select2-results__group { + cursor: default; + display: block; + padding: 6px; } + + .select2-container--classic .select2-selection--single { + background-color: #f7f7f7; + border: 1px solid #aaa; + border-radius: 4px; + outline: 0; + background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%); + background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%); + background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } + .select2-container--classic .select2-selection--single:focus { + border: 1px solid #5897fb; } + .select2-container--classic .select2-selection--single .select2-selection__rendered { + color: #444; + line-height: 28px; } + .select2-container--classic .select2-selection--single .select2-selection__clear { + cursor: pointer; + float: right; + font-weight: bold; + margin-right: 10px; } + .select2-container--classic .select2-selection--single .select2-selection__placeholder { + color: #999; } + .select2-container--classic .select2-selection--single .select2-selection__arrow { + background-color: #ddd; + border: none; + border-left: 1px solid #aaa; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + height: 26px; + position: absolute; + top: 1px; + right: 1px; + width: 20px; + background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%); + background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%); + background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); } + .select2-container--classic .select2-selection--single .select2-selection__arrow b { + border-color: #888 transparent transparent transparent; + border-style: solid; + border-width: 5px 4px 0 4px; + height: 0; + left: 50%; + margin-left: -4px; + margin-top: -2px; + position: absolute; + top: 50%; + width: 0; } + + .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear { + float: left; } + + .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow { + border: none; + border-right: 1px solid #aaa; + border-radius: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + left: 1px; + right: auto; } + + .select2-container--classic.select2-container--open .select2-selection--single { + border: 1px solid #5897fb; } + .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow { + background: transparent; + border: none; } + .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b { + border-color: transparent transparent #888 transparent; + border-width: 0 4px 5px 4px; } + + .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single { + border-top: none; + border-top-left-radius: 0; + border-top-right-radius: 0; + background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%); + background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%); + background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } + + .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single { + border-bottom: none; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%); + background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%); + background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); } + + .select2-container--classic .select2-selection--multiple { + background-color: white; + border: 1px solid #aaa; + border-radius: 4px; + cursor: text; + outline: 0; } + .select2-container--classic .select2-selection--multiple:focus { + border: 1px solid #5897fb; } + .select2-container--classic .select2-selection--multiple .select2-selection__rendered { + list-style: none; + margin: 0; + padding: 0 5px; } + .select2-container--classic .select2-selection--multiple .select2-selection__clear { + display: none; } + .select2-container--classic .select2-selection--multiple .select2-selection__choice { + background-color: #e4e4e4; + border: 1px solid #aaa; + border-radius: 4px; + cursor: default; + float: left; + margin-right: 5px; + margin-top: 5px; + padding: 0 5px; } + .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove { + color: #888; + cursor: pointer; + display: inline-block; + font-weight: bold; + margin-right: 2px; } + .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover { + color: #555; } + + .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { + float: right; } + + .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { + margin-left: 5px; + margin-right: auto; } + + .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { + margin-left: 2px; + margin-right: auto; } + + .select2-container--classic.select2-container--open .select2-selection--multiple { + border: 1px solid #5897fb; } + + .select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple { + border-top: none; + border-top-left-radius: 0; + border-top-right-radius: 0; } + + .select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple { + border-bottom: none; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; } + + .select2-container--classic .select2-search--dropdown .select2-search__field { + border: 1px solid #aaa; + outline: 0; } + + .select2-container--classic .select2-search--inline .select2-search__field { + outline: 0; + box-shadow: none; } + + .select2-container--classic .select2-dropdown { + background-color: white; + border: 1px solid transparent; } + + .select2-container--classic .select2-dropdown--above { + border-bottom: none; } + + .select2-container--classic .select2-dropdown--below { + border-top: none; } + + .select2-container--classic .select2-results > .select2-results__options { + max-height: 200px; + overflow-y: auto; } + + .select2-container--classic .select2-results__option[role=group] { + padding: 0; } + + .select2-container--classic .select2-results__option[aria-disabled=true] { + color: grey; } + + .select2-container--classic .select2-results__option--highlighted[data-selected] { + background-color: #3875d7; + color: white; } + + .select2-container--classic .select2-results__group { + cursor: default; + display: block; + padding: 6px; } + + .select2-container--classic.select2-container--open .select2-dropdown { + border-color: #5897fb; } diff --git a/wp-content/themes/astra/inc/customizer/extend-customizer/class-astra-wp-customize-section.php b/wp-content/themes/astra/inc/customizer/extend-customizer/class-astra-wp-customize-section.php index ffc9992a9..6f9f4bd76 100644 --- a/wp-content/themes/astra/inc/customizer/extend-customizer/class-astra-wp-customize-section.php +++ b/wp-content/themes/astra/inc/customizer/extend-customizer/class-astra-wp-customize-section.php @@ -1,68 +1,68 @@ -title, ENT_QUOTES, get_bloginfo( 'charset' ) ); - $array['content'] = $this->get_content(); - $array['active'] = $this->active(); - $array['instanceNumber'] = $this->instance_number; - - if ( $this->panel ) { - $array['customizeAction'] = sprintf( __( 'Customizing ▸ %s', 'astra' ), esc_html( $this->manager->get_panel( $this->panel )->title ) ); - } else { - $array['customizeAction'] = 'Customizing'; - } - - return $array; - } - } -} +title, ENT_QUOTES, get_bloginfo( 'charset' ) ); + $array['content'] = $this->get_content(); + $array['active'] = $this->active(); + $array['instanceNumber'] = $this->instance_number; + + if ( $this->panel ) { + $array['customizeAction'] = sprintf( __( 'Customizing ▸ %s', 'astra' ), esc_html( $this->manager->get_panel( $this->panel )->title ) ); + } else { + $array['customizeAction'] = 'Customizing'; + } + + return $array; + } + } +} diff --git a/wp-content/themes/astra/inc/dynamic-css/container-layouts.php b/wp-content/themes/astra/inc/dynamic-css/container-layouts.php index dbdeaf422..e659b0af9 100644 --- a/wp-content/themes/astra/inc/dynamic-css/container-layouts.php +++ b/wp-content/themes/astra/inc/dynamic-css/container-layouts.php @@ -117,6 +117,13 @@ function astra_container_layout_css() { max-width: 100vw; width: 100vw; } + .ast-left-sidebar .site-content .ast-article-image-container--full, + .ast-right-sidebar .site-content .ast-article-image-container--full { + margin-left: -10px; + margin-right: -10px; + max-width: inherit; + width: auto; + } } '; diff --git a/wp-content/themes/astra/inc/extras.php b/wp-content/themes/astra/inc/extras.php index 173585645..3acb8b858 100644 --- a/wp-content/themes/astra/inc/extras.php +++ b/wp-content/themes/astra/inc/extras.php @@ -1,1244 +1,1244 @@ - array( - 'max-width' => '100%', - 'padding-left' => '35px', - 'padding-right' => '35px', - ), - ); - $padding_below_breakpoint = array( - '#masthead .ast-container, .ast-header-breadcrumb .ast-container' => array( - 'padding-left' => '20px', - 'padding-right' => '20px', - ), - ); - - /* Parse CSS from array()*/ - $dynamic_css .= astra_parse_css( $genral_global_responsive ); - $dynamic_css .= astra_parse_css( $padding_below_breakpoint, '', $header_break_point ); - - // trim white space for faster page loading. - $dynamic_css .= Astra_Enqueue_Scripts::trim_css( $dynamic_css ); - } - - return $dynamic_css; - } -} - -add_filter( 'astra_dynamic_theme_css', 'astra_header_breakpoint_style' ); - -/** - * Function to filter comment form arguments - */ -if ( ! function_exists( 'astra_404_page_layout' ) ) { - - /** - * Function filter comment form arguments - * - * @since 1.0.0 - * @param array $layout Comment form arguments. - * @return array - */ - function astra_404_page_layout( $layout ) { - - if ( is_404() ) { - $layout = 'no-sidebar'; - } - - return apply_filters( 'astra_404_page_layout', $layout ); - } -} - -add_filter( 'astra_page_layout', 'astra_404_page_layout', 10, 1 ); - -/** - * Return current content layout. - */ -if ( ! function_exists( 'astra_get_content_layout' ) ) { - - /** - * Return current content layout. - * - * @since 1.0.0 - * @return mixed content layout. - */ - function astra_get_content_layout() { - - if ( is_singular() ) { - - // Old meta layout migration to new layout. - $old_meta_content_layout = astra_get_option_meta( 'site-content-layout', '', true ); - - if ( $old_meta_content_layout ) { - $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false, $old_meta_content_layout ); - } else { - $content_layout = astra_get_option_meta( 'ast-site-content-layout', '', true ); - - // If post meta value is present, apply new layout option. - if ( $content_layout ) { - $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false ); - } - } - - if ( empty( $content_layout ) ) { - - $post_type = strval( get_post_type() ); - $content_layout = astra_toggle_layout( 'single-' . $post_type . '-ast-content-layout', 'single', false ); - - if ( 'default' == $content_layout || empty( $content_layout ) ) { - - // Get the GLOBAL content layout value. - // NOTE: Here not used `true` in the below function call. - $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'global', false ); - } - } - } else { - - $content_layout = ''; - $post_type = strval( get_post_type() ); - $content_layout = astra_toggle_layout( 'archive-' . $post_type . '-ast-content-layout', 'archive', false ); - - if ( is_search() ) { - $content_layout = astra_toggle_layout( 'archive-post-ast-content-layout', 'archive', false ); - } - - if ( 'default' == $content_layout || empty( $content_layout ) ) { - - // Get the GLOBAL content layout value. - // NOTE: Here not used `true` in the below function call. - $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'global', false ); - } - } - - return apply_filters( 'astra_get_content_layout', $content_layout ); - } -} - -/** - * Return current content layout as per new layout selection. - * - * @since 4.2.0 - * @param mixed $new_content_option The new content layout option. - * @param mixed $level The level of the layout. - * @param mixed $post_id The id to fetch post meta. - * @param mixed $old_meta The old content layout option for migration cases. - * @return mixed content layout. - */ -function astra_toggle_layout( $new_content_option, $level, $post_id = false, $old_meta = false ) { - - // Dynamic layout option for meta case. - $dynamic_layout_option = 'meta' === $level ? astra_get_option_meta( $new_content_option, '', true ) : astra_get_option( $new_content_option, 'default' ); - $current_layout = ''; - - // Get meta value by ID if specified. - if ( $post_id ) { - $dynamic_layout_option = get_post_meta( $post_id, $new_content_option, true ); - } - - // Meta layout migrations. - $meta_key = astra_get_option_meta( 'astra-migrate-meta-layouts', '', true ); - $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); - $third_party_meta_page = astra_third_party_archive_meta( 'site-content-layout' ); - if ( 'meta' === $level && $migrated_user ) { - if ( false !== $third_party_meta_page ) { - $old_meta = $third_party_meta_page; - $meta_key = astra_third_party_archive_meta( 'astra-migrate-meta-layouts' ); - } - if ( $old_meta && 'set' !== $meta_key ) { - $dynamic_layout_option = astra_migrate_meta_layout( $old_meta ); - } - } - - switch ( $dynamic_layout_option ) { - case 'normal-width-container': - $current_layout = 'plain-container'; - break; - case 'narrow-width-container': - $current_layout = 'narrow-container'; - - // Exclude narrow layout for third party cases. - if ( astra_with_third_party() && ( ! $migrated_user ) ) { - $current_layout = 'plain-container'; - } - break; - case 'full-width-container': - $current_layout = 'page-builder'; - break; - default: - if ( 'meta' === $level && ! $migrated_user && 'set' !== $meta_key && $old_meta ) { - $current_layout = $old_meta; - } else { - $current_layout = $dynamic_layout_option; - } - break; - } - return $current_layout; -} - -/** - * Migrate old meta layout to new layout. - * - * @since 4.2.0 - * @param mixed $meta_layout Meta Layout. - * @return mixed new layout. - */ -function astra_migrate_meta_layout( $meta_layout ) { - $new_layout = ''; - switch ( $meta_layout ) { - case 'boxed-container': - $new_layout = 'normal-width-container'; - break; - case 'content-boxed-container': - $new_layout = 'normal-width-container'; - break; - case 'plain-container': - $new_layout = 'normal-width-container'; - break; - case 'page-builder': - $new_layout = 'full-width-container'; - break; - case 'narrow-container': - $new_layout = 'narrow-width-container'; - break; - default: - $new_layout = 'default'; - break; - } - return $new_layout; -} - -/** - * Function to check if it is Internet Explorer - */ -if ( ! function_exists( 'astra_check_is_ie' ) ) : - - /** - * Function to check if it is Internet Explorer. - * - * @return true | false boolean - */ - function astra_check_is_ie() { - - $is_ie = false; - - if ( ! empty( $_SERVER['HTTP_USER_AGENT'] ) ) { - $ua = htmlentities( sanitize_text_field( wp_unslash( $_SERVER['HTTP_USER_AGENT'] ) ), ENT_QUOTES, 'UTF-8' ); // phpcs:ignore WordPressVIPMinimum.Variables.RestrictedVariables.cache_constraints___SERVER__HTTP_USER_AGENT__ -- Need to check if its ie. - if ( strpos( $ua, 'Trident/7.0' ) !== false ) { - $is_ie = true; - } - } - - return apply_filters( 'astra_check_is_ie', $is_ie ); - } - -endif; - -/** - * Replace header logo. - */ -if ( ! function_exists( 'astra_replace_header_logo' ) ) : - - /** - * Replace header logo. - * - * @param array $image Size. - * @param int $attachment_id Image id. - * @param sting $size Size name. - * @param string $icon Icon. - * - * @return array Size of image - */ - function astra_replace_header_logo( $image, $attachment_id, $size, $icon ) { - - $custom_logo_id = get_theme_mod( 'custom_logo' ); - - if ( ! is_customize_preview() && $custom_logo_id == $attachment_id && 'full' == $size ) { - - $data = wp_get_attachment_image_src( $attachment_id, 'ast-logo-size' ); - - if ( false != $data ) { - $image = $data; - } - } - - return apply_filters( 'astra_replace_header_logo', $image ); - } - -endif; - -if ( ! function_exists( 'astra_strposa' ) ) : - - /** - * Strpos over an array. - * - * @since 1.2.4 - * @param String $haystack The string to search in. - * @param Array $needles Array of needles to be passed to strpos(). - * @param integer $offset If specified, search will start this number of characters counted from the beginning of the string. If the offset is negative, the search will start this number of characters counted from the end of the string. - * - * @return bool True if haystack if part of any of the $needles. - */ - function astra_strposa( $haystack, $needles, $offset = 0 ) { - - if ( ! is_array( $needles ) ) { - $needles = array( $needles ); - } - - foreach ( $needles as $query ) { - - if ( strpos( $haystack, $query, $offset ) !== false ) { - // stop on first true result. - return true; - } - } - - return false; - } - -endif; - -if ( ! function_exists( 'astra_get_prop' ) ) : - - /** - * Get a specific property of an array without needing to check if that property exists. - * - * Provide a default value if you want to return a specific value if the property is not set. - * - * @since 1.2.7 - * @access public - * @author Gravity Forms - Easiest Tool to Create Advanced Forms for Your WordPress-Powered Website. - * @link https://www.gravityforms.com/ - * - * @param array $array Array from which the property's value should be retrieved. - * @param string $prop Name of the property to be retrieved. - * @param string $default Optional. Value that should be returned if the property is not set or empty. Defaults to null. - * - * @return string|mixed The value - */ - function astra_get_prop( $array, $prop, $default = null ) { - - if ( ! is_array( $array ) && ! ( is_object( $array ) && $array instanceof ArrayAccess ) ) { - return $default; - } - - if ( ( isset( $array[ $prop ] ) && false === $array[ $prop ] ) ) { - return false; - } - - if ( isset( $array[ $prop ] ) ) { - $value = $array[ $prop ]; - } else { - $value = ''; - } - - return empty( $value ) && null !== $default ? $default : $value; - } - -endif; - -/** - * Build list of attributes into a string and apply contextual filter on string. - * - * The contextual filter is of the form `astra_attr_{context}_output`. - * - * @since 1.6.2 - * @credits - Genesis Theme By StudioPress. - * - * @param string $context The context, to build filter name. - * @param array $attributes Optional. Extra attributes to merge with defaults. - * @param array $args Optional. Custom data to pass to filter. - * @return string String of HTML attributes and values. - */ -function astra_attr( $context, $attributes = array(), $args = array() ) { - return Astra_Attr::get_instance()->astra_attr( $context, $attributes, $args ); -} - -/** - * Get the theme author details - * - * @since 3.1.0 - * @return array Return theme author URL and name. - */ -function astra_get_theme_author_details() { - - $theme_author = apply_filters( - 'astra_theme_author', - array( - 'theme_name' => __( 'Astra WordPress Theme', 'astra' ), - 'theme_author_url' => 'https://wpastra.com/', - ) - ); - - return $theme_author; -} - -/** - * Remove Base Color > Background Color option from the customize array. - * - * @since 2.4.0 - * @param WP_Customize_Manager $wp_customize instance of WP_Customize_Manager. - * @return $wp_customize - */ -function astra_remove_controls( $wp_customize ) { - - if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '2.4.0', '<=' ) ) { - $layout = array( - array( - 'name' => ASTRA_THEME_SETTINGS . '[site-layout-outside-bg-obj]', - 'type' => 'control', - 'transport' => 'postMessage', - 'control' => 'ast-hidden', - 'section' => 'section-colors-body', - 'priority' => 25, - ), - ); - - $wp_customize = array_merge( $wp_customize, $layout ); - } - - return $wp_customize; -} - -add_filter( 'astra_customizer_configurations', 'astra_remove_controls', 99 ); - -/** - * Add dropdown icon if menu item has children. - * - * @since 3.3.0 - * - * @param string $title The menu item title. - * @param WP_Post $item All of our menu item data. - * @param stdClass $args All of our menu item args. - * @param int $depth Depth of menu item. - * @return string The menu item. - */ -function astra_dropdown_icon_to_menu_link( $title, $item, $args, $depth ) { - $role = 'application'; - $icon = ''; - - /** - * These menus are not overriden by the 'Astra_Custom_Nav_Walker' class present in Addon - Nav Menu module. - * - * Hence skipping these menus from getting overriden by blank SVG Icons and adding the icons from theme. - * - * @since 3.3.0 - */ - $astra_menu_locations = array( - 'ast-hf-menu-1', // Builder - Primary menu. - 'ast-hf-menu-2', // Builder - Secondary menu. - 'ast-hf-menu-3', - 'ast-hf-menu-4', - 'ast-hf-menu-5', - 'ast-hf-menu-6', - 'ast-hf-menu-7', - 'ast-hf-menu-8', - 'ast-hf-menu-9', - 'ast-hf-menu-10', // Cloned builder menus. - 'ast-hf-mobile-menu', // Builder - Mobile Menu. - 'ast-desktop-toggle-menu', // Builder - Toggle for Desktop Menu. - 'ast-hf-account-menu', // Builder - Login Account Menu. - 'primary-menu', // Old header - Primary Menu. - 'above_header-menu', // Old header - Above Menu. - 'below_header-menu', // Old header - Below Menu. - ); - - $load_svg_menu_icons = false; - - if ( defined( 'ASTRA_EXT_VER' ) ) { - // Check whether Astra Pro is active + Nav menu addon is deactivate + menu registered by Astra only. - if ( ! Astra_Ext_Extension::is_active( 'nav-menu' ) && in_array( $args->menu_id, $astra_menu_locations ) ) { - $load_svg_menu_icons = true; - } - } else { - // Check menu registered by Astra only. - if ( in_array( $args->menu_id, $astra_menu_locations ) ) { - $load_svg_menu_icons = true; - } - } - - if ( $load_svg_menu_icons ) { - // Assign icons to only those menu which are registered by Astra. - $icon = Astra_Icons::get_icons( 'arrow' ); - } - $custom_tabindex = true === Astra_Builder_Helper::$is_header_footer_builder_active ? 'tabindex="0"' : ''; - $astra_arrow_icon = ''; - - foreach ( $item->classes as $value ) { - if ( 'menu-item-has-children' === $value ) { - $title = $title . $astra_arrow_icon; - } - } - if ( 0 < $depth ) { - $title = $icon . $title; - } - return $title; -} - -if ( Astra_Icons::is_svg_icons() ) { - add_filter( 'nav_menu_item_title', 'astra_dropdown_icon_to_menu_link', 10, 4 ); -} - -/** - * Is theme existing header footer configs enable. - * - * @since 3.0.0 - * - * @return boolean true/false. - */ -function astra_existing_header_footer_configs() { - - return apply_filters( 'astra_existing_header_footer_configs', true ); -} - -/** - * Get Spacing value - * - * @param array $value Responsive spacing value with unit. - * @param string $operation + | - | * | /. - * @param string $from Perform operation from the value. - * @param string $from_unit Perform operation from the value of unit. - * - * @since 3.0.0 - * @return mixed - */ -function astra_calculate_spacing( $value, $operation = '', $from = '', $from_unit = '' ) { - - $css = ''; - if ( ! empty( $value ) ) { - $css = $value; - if ( ! empty( $operation ) && ! empty( $from ) ) { - if ( ! empty( $from_unit ) ) { - $css = 'calc( ' . $value . ' ' . $operation . ' ' . $from . $from_unit . ' )'; - } - if ( '*' === $operation || '/' === $operation ) { - $css = 'calc( ' . $value . ' ' . $operation . ' ' . $from . ' )'; - } - } - } - - return $css; -} - -/** - * Generate HTML Open markup - * - * @param string $context unique markup key. - * @param array $args { - * Contains markup arguments. - * @type array attrs Initial attributes to apply to `open` markup. - * @type bool echo Flag indicating whether to echo or return the resultant string. - * } - * @since 3.3.0 - * @return mixed - */ -function astra_markup_open( $context, $args = array() ) { - $defaults = array( - 'open' => '', - 'attrs' => array(), - 'echo' => true, - 'content' => '', - ); - - $args = wp_parse_args( $args, $defaults ); - if ( $context ) { - $args = apply_filters( "astra_markup_{$context}_open", $args ); - $open_tag = $args['open'] ? sprintf( $args['open'], astra_attr( $context, $args['attrs'] ) ) : ''; - - if ( $args['echo'] ) { - echo $open_tag; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $open_tag; - } - } - return false; -} - -/** - * Generate HTML close markup - * - * @param string $context unique markup key. - * @param array $args { - * Contains markup arguments. - * @type string close Closing HTML markup. - * @type array attrs Initial attributes to apply to `open` markup. - * @type bool echo Flag indicating whether to echo or return the resultant string. - * } - * @since 3.3.0 - * @return mixed - */ -function astra_markup_close( $context, $args = array() ) { - $defaults = array( - 'close' => '', - 'attrs' => array(), - 'echo' => true, - ); - - $args = wp_parse_args( $args, $defaults ); - if ( $context ) { - $args = apply_filters( "astra_markup_{$context}_close", $args ); - $close_tag = $args['close']; - if ( $args['echo'] ) { - echo $close_tag; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $close_tag; - } - } - return false; -} - -/** - * Provision to update display rules for visibility of Related Posts section in Astra. - * - * @since 3.4.0 - * @return bool - */ -function astra_target_rules_for_related_posts() { - - $allow_related_posts = false; - $supported_post_type = apply_filters( 'astra_related_posts_supported_post_types', 'post' ); - - if ( astra_get_option( 'enable-related-posts' ) && is_singular( $supported_post_type ) ) { - $allow_related_posts = true; - } - - return apply_filters( 'astra_showcase_related_posts', $allow_related_posts ); -} - -/** - * Check if elementor plugin is active on the site. - * - * @since 3.7.0 - * @return bool - */ -function astra_is_elemetor_active() { - return class_exists( '\Elementor\Plugin' ); -} - -/** - * Check the Astra addon version. - * For major update and frequently we used version_compare, added a function for this for easy maintenance. - * - * @param string $version Astra addon version. - * @param string $compare Compare symbols. - * @since 3.9.2 - */ -function astra_addon_check_version( $version, $compare ) { - return defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, $version, $compare ); -} - -/** - * Get a stylesheet URL for a webfont. - * - * @since 3.6.0 - * - * @param string $url The URL of the remote webfont. - * @param string $format The font-format. If you need to support IE, change this to "woff". - * - * @return string Returns the CSS. - */ -function astra_get_webfont_url( $url, $format = 'woff2' ) { - - // Check if already Google font URL present or not. Basically avoiding 'Astra_WebFont_Loader' class rendering. - /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $astra_font_url = astra_get_option( 'astra_font_url', false ); - if ( $astra_font_url ) { - return json_decode( $astra_font_url ); - } - - // Now create font URL if its not present. - $font = astra_webfont_loader_instance( $url ); - $font->set_font_format( $format ); - return $font->get_url(); -} - -/** - * Get the file preloads. - * - * @param string $url The URL of the remote webfont. - * @param string $format The font-format. If you need to support IE, change this to "woff". - */ -function astra_load_preload_local_fonts( $url, $format = 'woff2' ) { - - // Check if cached font files data preset present or not. Basically avoiding 'Astra_WebFont_Loader' class rendering. - $astra_local_font_files = get_site_option( 'astra_local_font_files', false ); - - if ( is_array( $astra_local_font_files ) && ! empty( $astra_local_font_files ) ) { - $font_format = apply_filters( 'astra_local_google_fonts_format', $format ); - foreach ( $astra_local_font_files as $key => $local_font ) { - if ( $local_font ) { - echo ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Preparing HTML link tag. - } - } - return; - } - - // Now preload font data after processing it, as we didn't get stored data. - $font = astra_webfont_loader_instance( $url ); - $font->set_font_format( $format ); - $font->preload_local_fonts(); -} - -/** - * Set flag to manage backward compatibility for v3.5.0 earlier users for the transparent header border bottom default value changed. - * - * @since 3.6.0 - */ -function astra_get_transparent_header_default_value() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS, array() ); - $astra_settings['transparent-header-default-border'] = isset( $astra_settings['transparent-header-default-border'] ) ? $astra_settings['transparent-header-default-border'] : true; - - return apply_filters( 'astra_transparent_header_default_border', $astra_settings['transparent-header-default-border'] ); -} - -/** - * Check compatibility for content background and typography options. - * - * @since 3.7.0 - */ -function astra_has_gcp_typo_preset_compatibility() { - if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '3.6.0', '<' ) ) { - return false; - } - return true; -} - -/** - * Check whether user is existing or new to apply the updated default values for button padding & support GB button paddings with global button padding options. - * - * @since 3.6.3 - * @return string - */ -function astra_button_default_padding_updated() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS, array() ); - $padding_updated = isset( $astra_settings['btn-default-padding-updated'] ) ? $astra_settings['btn-default-padding-updated'] : true; - return apply_filters( 'astra_update_button_padding_defaults', $padding_updated ); -} - -/** - * Check is WordPress version is greater than or equal to beta 5.8 version. - * - * @since 3.6.5 - * @return boolean - */ -function astra_has_widgets_block_editor() { - if ( ( defined( 'GUTENBERG_VERSION' ) && version_compare( GUTENBERG_VERSION, '10.6.2', '>' ) ) - || version_compare( get_bloginfo( 'version' ), '5.8-alpha', '>=' ) ) { - return true; - } - return false; -} - -/** - * Check whether user is exising or new to override the default margin space added to Elementor-TOC widget. - * - * @since 3.6.7 - * @return boolean - */ -function astra_can_remove_elementor_toc_margin_space() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['remove-elementor-toc-margin-css'] = isset( $astra_settings['remove-elementor-toc-margin-css'] ) ? false : true; - return apply_filters( 'astra_remove_elementor_toc_margin', $astra_settings['remove-elementor-toc-margin-css'] ); -} - -/** - * Check whether user is exising or new to override the hr tag styling for elementor - * - * @since 4.3.0 - * @return boolean - */ -function astra_can_add_styling_for_hr() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['add-styling-for-hr'] = isset( $astra_settings['add-styling-for-hr'] ) ? false : true; - return apply_filters( 'astra_highlight_elementor_hr_tag', $astra_settings['add-styling-for-hr'] ); -} -/** - * This will check if user is new and apply global color format. This is to manage backward compatibility for colors. - * - * @since 3.7.0 - * @return boolean false if it is an existing user, true for new user. - */ -function astra_has_global_color_format_support() { - $astra_settings = get_option( ASTRA_THEME_SETTINGS ); - $astra_settings['support-global-color-format'] = isset( $astra_settings['support-global-color-format'] ) ? false : true; - return apply_filters( 'astra_apply_global_color_format_support', $astra_settings['support-global-color-format'] ); -} - -/** - * Get Global Color Palettes - * - * @return array color palettes array. - * @since 3.7.0 - */ -function astra_get_palette_colors() { - return get_option( 'astra-color-palettes', apply_filters( 'astra_global_color_palette', Astra_Global_Palette::get_default_color_palette() ) ); -} - -/** - * Get typography presets data. - * - * @return array Typography Presets data array. - * @since 3.7.0 - */ -function astra_get_typography_presets() { - return get_option( 'astra-typography-presets', '' ); -} - -/** - * Clear Astra + Astra Pro assets cache. - * - * @since 3.6.9 - * @return void - */ -function astra_clear_theme_addon_asset_cache() { - astra_clear_all_assets_cache(); -} - -add_action( 'astra_theme_update_after', 'astra_clear_theme_addon_asset_cache', 10 ); - -/** - * Check if Theme Global Colors need to be disable in Elementor global color settings. - * - * @since 3.7.4 - * @return bool - */ -function astra_maybe_disable_global_color_in_elementor() { - return apply_filters( 'astra_disable_global_colors_in_elementor', false ); -} - -/** - * Check is Elementor Pro version is greater than or equal to beta 3.5 version. - * - * @since 3.7.5 - * @return boolean - */ -function astra_check_elementor_pro_3_5_version() { - if ( defined( 'ELEMENTOR_PRO_VERSION' ) && version_compare( ELEMENTOR_PRO_VERSION, '3.5', '>=' ) ) { - return true; - } - return false; -} - -/** - * Should Content BG settings apply to Fullwidth Contained/Stretched layout or not? - * - * Do not apply content background to fullwidth layouts in following cases - - * 1. For backward compatibility. - * 2. When site layout is Max-width. - * 3. When site layout is Padded. - * - * @since 3.7.8 - * @return boolean - */ -function astra_apply_content_background_fullwidth_layouts() { - $astra_site_layout = astra_get_option( 'site-layout' ); - $astra_apply_content_background = astra_get_option( 'apply-content-background-fullwidth-layouts', true ); - - return ( $astra_apply_content_background && 'ast-box-layout' !== $astra_site_layout && 'ast-padded-layout' !== $astra_site_layout ); -} - -/** - * Search Component static CSS. - * - * @return string - * @since 3.5.0 - */ -function astra_search_static_css() { - $search_css = ' - .main-header-bar .main-header-bar-navigation .ast-search-icon { - display: block; - z-index: 4; - position: relative; - } - .ast-search-icon .ast-icon { - z-index: 4; - } - .ast-search-icon { - z-index: 4; - position: relative; - line-height: normal; - } - .main-header-bar .ast-search-menu-icon .search-form { - background-color: #ffffff; - } - .ast-search-menu-icon.ast-dropdown-active.slide-search .search-form { - visibility: visible; - opacity: 1; - } - .ast-search-menu-icon .search-form { - border: 1px solid #e7e7e7; - line-height: normal; - padding: 0 3em 0 0; - border-radius: 2px; - display: inline-block; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - position: relative; - color: inherit; - background-color: #fff; - } - .ast-search-menu-icon .astra-search-icon { - -js-display: flex; - display: flex; - line-height: normal; - } - .ast-search-menu-icon .astra-search-icon:focus { - outline: none; - } - .ast-search-menu-icon .search-field { - border: none; - background-color: transparent; - transition: all .3s; - border-radius: inherit; - color: inherit; - font-size: inherit; - width: 0; - color: #757575; - } - .ast-search-menu-icon .search-submit { - display: none; - background: none; - border: none; - font-size: 1.3em; - color: #757575; - } - .ast-search-menu-icon.ast-dropdown-active { - visibility: visible; - opacity: 1; - position: relative; - } - .ast-search-menu-icon.ast-dropdown-active .search-field, .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field { - width: 235px; - } - .ast-header-search .ast-search-menu-icon.slide-search .search-form, .ast-header-search .ast-search-menu-icon.ast-inline-search .search-form { - -js-display: flex; - display: flex; - align-items: center; - }'; - - if ( is_rtl() ) { - $search_css .= ' - .ast-search-menu-icon.ast-inline-search .search-field { - width : 100%; - padding : 0.60em; - padding-left : 5.5em; - transition: all 0.2s; - } - .site-header-section-left .ast-search-menu-icon.slide-search .search-form { - padding-right: 2em; - padding-left: unset; - right: -1em; - left: unset; - } - .site-header-section-left .ast-search-menu-icon.slide-search .search-form .search-field { - margin-left: unset; - } - .ast-search-menu-icon.slide-search .search-form { - -webkit-backface-visibility: visible; - backface-visibility: visible; - visibility: hidden; - opacity: 0; - transition: all .2s; - position: absolute; - z-index: 3; - left: -1em; - top: 50%; - transform: translateY(-50%); - }'; - } else { - $search_css .= ' - .ast-search-menu-icon.ast-inline-search .search-field { - width : 100%; - padding : 0.60em; - padding-right : 5.5em; - transition: all 0.2s; - } - .site-header-section-left .ast-search-menu-icon.slide-search .search-form { - padding-left: 2em; - padding-right: unset; - left: -1em; - right: unset; - } - .site-header-section-left .ast-search-menu-icon.slide-search .search-form .search-field { - margin-right: unset; - } - .ast-search-menu-icon.slide-search .search-form { - -webkit-backface-visibility: visible; - backface-visibility: visible; - visibility: hidden; - opacity: 0; - transition: all .2s; - position: absolute; - z-index: 3; - right: -1em; - top: 50%; - transform: translateY(-50%); - }'; - } - - return Astra_Enqueue_Scripts::trim_css( $search_css ); -} - -/** - * Showcase "Upgrade to Pro" notices for Astra & here is the filter work as central control to enable/disable those notices from customizer, meta settings, admin area, pro post types pages. - * - * @since 3.9.4 - * @return bool - */ -function astra_showcase_upgrade_notices() { - return ( ! defined( 'ASTRA_EXT_VER' ) && astra_get_option( 'ast-disable-upgrade-notices', true ) ) ? true : false; -} - -/** - * Function which will return CSS for font-extras control. - * It includes - line-height, letter-spacing, text-decoration, font-style. - * - * @param array $config contains extra font settings. - * @param string $setting basis on this setting will return. - * @param mixed $unit Unit. - * - * @since 4.0.0 - */ -function astra_get_font_extras( $config, $setting, $unit = false ) { - $css = isset( $config[ $setting ] ) ? $config[ $setting ] : ''; - - if ( $unit && $css ) { - $unit_val = isset( $config[ $unit ] ) ? $config[ $unit ] : ''; - $unit_val = 'line-height-unit' === $unit ? apply_filters( 'astra_font_line_height_unit', $unit_val ) : $unit_val; - $css .= $unit_val; - } - - return $css; -} - -/** - * Function which will return CSS array for font specific props for further parsing CSS. - * It includes - font-family, font-weight, font-size, line-height, text-transform, letter-spacing, text-decoration, color (optional). - * - * @param string $font_family Font family. - * @param string $font_weight Font weight. - * @param array $font_size Font size. - * @param string $font_extras contains all font controls. - * @param string $color In most of cases color is also added, so included optional param here. - - * @return array array of build CSS font settings. - * - * @since 4.0.0 - */ -function astra_get_font_array_css( $font_family, $font_weight, $font_size, $font_extras, $color = '' ) { - $font_extras_ast_option = astra_get_option( - $font_extras, - array( - 'line-height' => '', - 'line-height-unit' => 'em', - 'letter-spacing' => '', - 'letter-spacing-unit' => 'px', - 'text-transform' => '', - 'text-decoration' => '', - ) - ); - return array( - 'color' => esc_attr( $color ), - 'font-family' => astra_get_css_value( $font_family, 'font' ), - 'font-weight' => astra_get_css_value( $font_weight, 'font' ), - 'font-size' => ! empty( $font_size ) ? astra_responsive_font( $font_size, 'desktop' ) : '', - 'line-height' => astra_get_font_extras( $font_extras_ast_option, 'line-height', 'line-height-unit' ), - 'text-transform' => astra_get_font_extras( $font_extras_ast_option, 'text-transform' ), - 'letter-spacing' => astra_get_font_extras( $font_extras_ast_option, 'letter-spacing', 'letter-spacing-unit' ), - 'text-decoration' => astra_get_font_extras( $font_extras_ast_option, 'text-decoration' ), - ); -} - -/** - * Return the array of site's available image size. - * - * @param boolean $add_custom Add custom image size. - * @since 4.4.0 - * @return array - */ -function astra_get_site_image_sizes( $add_custom = false ) { - $image_sizes = array( - 'thumbnail' => __( 'Thumbnail', 'astra' ), - 'medium' => __( 'Medium', 'astra' ), - 'medium_large' => __( 'Medium Large', 'astra' ), - 'large' => __( 'Large', 'astra' ), - 'full' => __( 'Full Size', 'astra' ), - ); - - // Gets the available intermediate image size names on site. - $all_sizes = get_intermediate_image_sizes(); // phpcs:ignore WordPressVIPMinimum.Functions.RestrictedFunctions.get_intermediate_image_sizes_get_intermediate_image_sizes -- Required for image sizes to work. - - - $refactored_sizes = array( - 'full' => __( 'Full Size', 'astra' ), - ); - - foreach ( $all_sizes as $size ) { - if ( isset( $image_sizes[ $size ] ) ) { - $refactored_sizes[ $size ] = $image_sizes[ $size ]; - } else { - $refactored_sizes[ $size ] = $size; - } - } - - /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - if ( $add_custom && defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'blog-pro' ) ) { - /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - $refactored_sizes['custom'] = __( 'Custom', 'astra' ); - } - - return $refactored_sizes; -} - -/** - * Return the aspect-ratio for dynamic image. - * - * @param string $aspect_ratio_type Aspect ratio type. - * @param string $predefined_scale Predefined scale. - * @param string $custom_scale_width Custom scale width. - * @param string $custom_scale_height Custom scale height. - * - * @since 4.4.0 - * @return string - */ -function astra_get_dynamic_image_aspect_ratio( $aspect_ratio_type, $predefined_scale, $custom_scale_width, $custom_scale_height ) { - $aspect_ratio_css = ''; - if ( 'default' !== $aspect_ratio_type ) { - if ( 'custom' === $aspect_ratio_type ) { - $aspect_ratio_css = absint( $custom_scale_width ) . '/' . absint( $custom_scale_height ); - } else { - $aspect_ratio_css = $predefined_scale; - } - } - return $aspect_ratio_css; -} - -/** - * Getting site active language & compatible with other plugins. - * - * @since 4.4.0 - * @return string - */ -function astra_get_current_language_slug() { - $lang = ''; - if ( function_exists( 'pll_current_language' ) ) { - $lang = pll_current_language(); - } - return apply_filters( 'astra_addon_site_current_language', $lang ); -} - -/** - * Function which will return the supported post types from core. - * - * Further processing includes: - * 1. Dynamic customizer - * 2. Live Search - * - * @since 4.4.0 - * @return array - */ -function astra_get_queried_post_types() { - $queried_post_types = array_keys( - get_post_types( - apply_filters( - 'astra_dynamic_get_post_types_query_args', - array( - 'public' => true, - '_builtin' => false, - ) - ) - ) - ); - - $queried_post_types = array_diff( - $queried_post_types, - array( - 'astra-advanced-hook', - 'astra_adv_header', - 'elementor_library', - 'brizy_template', - 'sc_collection', - - 'course', - 'lesson', - 'llms_membership', - - 'tutor_quiz', - 'tutor_assignments', - - 'testimonial', - 'frm_display', - 'mec_esb', - 'mec-events', - - 'sfwd-assignment', - 'sfwd-essays', - 'sfwd-transactions', - 'sfwd-certificates', - 'sfwd-quiz', - 'e-landing-page', - ) - ); - $queried_post_types[] = 'post'; - $queried_post_types[] = 'page'; - - return $queried_post_types; -} + array( + 'max-width' => '100%', + 'padding-left' => '35px', + 'padding-right' => '35px', + ), + ); + $padding_below_breakpoint = array( + '#masthead .ast-container, .ast-header-breadcrumb .ast-container' => array( + 'padding-left' => '20px', + 'padding-right' => '20px', + ), + ); + + /* Parse CSS from array()*/ + $dynamic_css .= astra_parse_css( $genral_global_responsive ); + $dynamic_css .= astra_parse_css( $padding_below_breakpoint, '', $header_break_point ); + + // trim white space for faster page loading. + $dynamic_css .= Astra_Enqueue_Scripts::trim_css( $dynamic_css ); + } + + return $dynamic_css; + } +} + +add_filter( 'astra_dynamic_theme_css', 'astra_header_breakpoint_style' ); + +/** + * Function to filter comment form arguments + */ +if ( ! function_exists( 'astra_404_page_layout' ) ) { + + /** + * Function filter comment form arguments + * + * @since 1.0.0 + * @param array $layout Comment form arguments. + * @return array + */ + function astra_404_page_layout( $layout ) { + + if ( is_404() ) { + $layout = 'no-sidebar'; + } + + return apply_filters( 'astra_404_page_layout', $layout ); + } +} + +add_filter( 'astra_page_layout', 'astra_404_page_layout', 10, 1 ); + +/** + * Return current content layout. + */ +if ( ! function_exists( 'astra_get_content_layout' ) ) { + + /** + * Return current content layout. + * + * @since 1.0.0 + * @return mixed content layout. + */ + function astra_get_content_layout() { + + if ( is_singular() ) { + + // Old meta layout migration to new layout. + $old_meta_content_layout = astra_get_option_meta( 'site-content-layout', '', true ); + + if ( $old_meta_content_layout ) { + $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false, $old_meta_content_layout ); + } else { + $content_layout = astra_get_option_meta( 'ast-site-content-layout', '', true ); + + // If post meta value is present, apply new layout option. + if ( $content_layout ) { + $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'meta', false ); + } + } + + if ( empty( $content_layout ) ) { + + $post_type = strval( get_post_type() ); + $content_layout = astra_toggle_layout( 'single-' . $post_type . '-ast-content-layout', 'single', false ); + + if ( 'default' == $content_layout || empty( $content_layout ) ) { + + // Get the GLOBAL content layout value. + // NOTE: Here not used `true` in the below function call. + $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'global', false ); + } + } + } else { + + $content_layout = ''; + $post_type = strval( get_post_type() ); + $content_layout = astra_toggle_layout( 'archive-' . $post_type . '-ast-content-layout', 'archive', false ); + + if ( is_search() ) { + $content_layout = astra_toggle_layout( 'archive-post-ast-content-layout', 'archive', false ); + } + + if ( 'default' == $content_layout || empty( $content_layout ) ) { + + // Get the GLOBAL content layout value. + // NOTE: Here not used `true` in the below function call. + $content_layout = astra_toggle_layout( 'ast-site-content-layout', 'global', false ); + } + } + + return apply_filters( 'astra_get_content_layout', $content_layout ); + } +} + +/** + * Return current content layout as per new layout selection. + * + * @since 4.2.0 + * @param mixed $new_content_option The new content layout option. + * @param mixed $level The level of the layout. + * @param mixed $post_id The id to fetch post meta. + * @param mixed $old_meta The old content layout option for migration cases. + * @return mixed content layout. + */ +function astra_toggle_layout( $new_content_option, $level, $post_id = false, $old_meta = false ) { + + // Dynamic layout option for meta case. + $dynamic_layout_option = 'meta' === $level ? astra_get_option_meta( $new_content_option, '', true ) : astra_get_option( $new_content_option, 'default' ); + $current_layout = ''; + + // Get meta value by ID if specified. + if ( $post_id ) { + $dynamic_layout_option = get_post_meta( $post_id, $new_content_option, true ); + } + + // Meta layout migrations. + $meta_key = astra_get_option_meta( 'astra-migrate-meta-layouts', '', true ); + $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); + $third_party_meta_page = astra_third_party_archive_meta( 'site-content-layout' ); + if ( 'meta' === $level && $migrated_user ) { + if ( false !== $third_party_meta_page ) { + $old_meta = $third_party_meta_page; + $meta_key = astra_third_party_archive_meta( 'astra-migrate-meta-layouts' ); + } + if ( $old_meta && 'set' !== $meta_key ) { + $dynamic_layout_option = astra_migrate_meta_layout( $old_meta ); + } + } + + switch ( $dynamic_layout_option ) { + case 'normal-width-container': + $current_layout = 'plain-container'; + break; + case 'narrow-width-container': + $current_layout = 'narrow-container'; + + // Exclude narrow layout for third party cases. + if ( astra_with_third_party() && ( ! $migrated_user ) ) { + $current_layout = 'plain-container'; + } + break; + case 'full-width-container': + $current_layout = 'page-builder'; + break; + default: + if ( 'meta' === $level && ! $migrated_user && 'set' !== $meta_key && $old_meta ) { + $current_layout = $old_meta; + } else { + $current_layout = $dynamic_layout_option; + } + break; + } + return $current_layout; +} + +/** + * Migrate old meta layout to new layout. + * + * @since 4.2.0 + * @param mixed $meta_layout Meta Layout. + * @return mixed new layout. + */ +function astra_migrate_meta_layout( $meta_layout ) { + $new_layout = ''; + switch ( $meta_layout ) { + case 'boxed-container': + $new_layout = 'normal-width-container'; + break; + case 'content-boxed-container': + $new_layout = 'normal-width-container'; + break; + case 'plain-container': + $new_layout = 'normal-width-container'; + break; + case 'page-builder': + $new_layout = 'full-width-container'; + break; + case 'narrow-container': + $new_layout = 'narrow-width-container'; + break; + default: + $new_layout = 'default'; + break; + } + return $new_layout; +} + +/** + * Function to check if it is Internet Explorer + */ +if ( ! function_exists( 'astra_check_is_ie' ) ) : + + /** + * Function to check if it is Internet Explorer. + * + * @return true | false boolean + */ + function astra_check_is_ie() { + + $is_ie = false; + + if ( ! empty( $_SERVER['HTTP_USER_AGENT'] ) ) { + $ua = htmlentities( sanitize_text_field( wp_unslash( $_SERVER['HTTP_USER_AGENT'] ) ), ENT_QUOTES, 'UTF-8' ); // phpcs:ignore WordPressVIPMinimum.Variables.RestrictedVariables.cache_constraints___SERVER__HTTP_USER_AGENT__ -- Need to check if its ie. + if ( strpos( $ua, 'Trident/7.0' ) !== false ) { + $is_ie = true; + } + } + + return apply_filters( 'astra_check_is_ie', $is_ie ); + } + +endif; + +/** + * Replace header logo. + */ +if ( ! function_exists( 'astra_replace_header_logo' ) ) : + + /** + * Replace header logo. + * + * @param array $image Size. + * @param int $attachment_id Image id. + * @param sting $size Size name. + * @param string $icon Icon. + * + * @return array Size of image + */ + function astra_replace_header_logo( $image, $attachment_id, $size, $icon ) { + + $custom_logo_id = get_theme_mod( 'custom_logo' ); + + if ( ! is_customize_preview() && $custom_logo_id == $attachment_id && 'full' == $size ) { + + $data = wp_get_attachment_image_src( $attachment_id, 'ast-logo-size' ); + + if ( false != $data ) { + $image = $data; + } + } + + return apply_filters( 'astra_replace_header_logo', $image ); + } + +endif; + +if ( ! function_exists( 'astra_strposa' ) ) : + + /** + * Strpos over an array. + * + * @since 1.2.4 + * @param String $haystack The string to search in. + * @param Array $needles Array of needles to be passed to strpos(). + * @param integer $offset If specified, search will start this number of characters counted from the beginning of the string. If the offset is negative, the search will start this number of characters counted from the end of the string. + * + * @return bool True if haystack if part of any of the $needles. + */ + function astra_strposa( $haystack, $needles, $offset = 0 ) { + + if ( ! is_array( $needles ) ) { + $needles = array( $needles ); + } + + foreach ( $needles as $query ) { + + if ( strpos( $haystack, $query, $offset ) !== false ) { + // stop on first true result. + return true; + } + } + + return false; + } + +endif; + +if ( ! function_exists( 'astra_get_prop' ) ) : + + /** + * Get a specific property of an array without needing to check if that property exists. + * + * Provide a default value if you want to return a specific value if the property is not set. + * + * @since 1.2.7 + * @access public + * @author Gravity Forms - Easiest Tool to Create Advanced Forms for Your WordPress-Powered Website. + * @link https://www.gravityforms.com/ + * + * @param array $array Array from which the property's value should be retrieved. + * @param string $prop Name of the property to be retrieved. + * @param string $default Optional. Value that should be returned if the property is not set or empty. Defaults to null. + * + * @return string|mixed The value + */ + function astra_get_prop( $array, $prop, $default = null ) { + + if ( ! is_array( $array ) && ! ( is_object( $array ) && $array instanceof ArrayAccess ) ) { + return $default; + } + + if ( ( isset( $array[ $prop ] ) && false === $array[ $prop ] ) ) { + return false; + } + + if ( isset( $array[ $prop ] ) ) { + $value = $array[ $prop ]; + } else { + $value = ''; + } + + return empty( $value ) && null !== $default ? $default : $value; + } + +endif; + +/** + * Build list of attributes into a string and apply contextual filter on string. + * + * The contextual filter is of the form `astra_attr_{context}_output`. + * + * @since 1.6.2 + * @credits - Genesis Theme By StudioPress. + * + * @param string $context The context, to build filter name. + * @param array $attributes Optional. Extra attributes to merge with defaults. + * @param array $args Optional. Custom data to pass to filter. + * @return string String of HTML attributes and values. + */ +function astra_attr( $context, $attributes = array(), $args = array() ) { + return Astra_Attr::get_instance()->astra_attr( $context, $attributes, $args ); +} + +/** + * Get the theme author details + * + * @since 3.1.0 + * @return array Return theme author URL and name. + */ +function astra_get_theme_author_details() { + + $theme_author = apply_filters( + 'astra_theme_author', + array( + 'theme_name' => __( 'Astra WordPress Theme', 'astra' ), + 'theme_author_url' => 'https://wpastra.com/', + ) + ); + + return $theme_author; +} + +/** + * Remove Base Color > Background Color option from the customize array. + * + * @since 2.4.0 + * @param WP_Customize_Manager $wp_customize instance of WP_Customize_Manager. + * @return $wp_customize + */ +function astra_remove_controls( $wp_customize ) { + + if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '2.4.0', '<=' ) ) { + $layout = array( + array( + 'name' => ASTRA_THEME_SETTINGS . '[site-layout-outside-bg-obj]', + 'type' => 'control', + 'transport' => 'postMessage', + 'control' => 'ast-hidden', + 'section' => 'section-colors-body', + 'priority' => 25, + ), + ); + + $wp_customize = array_merge( $wp_customize, $layout ); + } + + return $wp_customize; +} + +add_filter( 'astra_customizer_configurations', 'astra_remove_controls', 99 ); + +/** + * Add dropdown icon if menu item has children. + * + * @since 3.3.0 + * + * @param string $title The menu item title. + * @param WP_Post $item All of our menu item data. + * @param stdClass $args All of our menu item args. + * @param int $depth Depth of menu item. + * @return string The menu item. + */ +function astra_dropdown_icon_to_menu_link( $title, $item, $args, $depth ) { + $role = 'application'; + $icon = ''; + + /** + * These menus are not overriden by the 'Astra_Custom_Nav_Walker' class present in Addon - Nav Menu module. + * + * Hence skipping these menus from getting overriden by blank SVG Icons and adding the icons from theme. + * + * @since 3.3.0 + */ + $astra_menu_locations = array( + 'ast-hf-menu-1', // Builder - Primary menu. + 'ast-hf-menu-2', // Builder - Secondary menu. + 'ast-hf-menu-3', + 'ast-hf-menu-4', + 'ast-hf-menu-5', + 'ast-hf-menu-6', + 'ast-hf-menu-7', + 'ast-hf-menu-8', + 'ast-hf-menu-9', + 'ast-hf-menu-10', // Cloned builder menus. + 'ast-hf-mobile-menu', // Builder - Mobile Menu. + 'ast-desktop-toggle-menu', // Builder - Toggle for Desktop Menu. + 'ast-hf-account-menu', // Builder - Login Account Menu. + 'primary-menu', // Old header - Primary Menu. + 'above_header-menu', // Old header - Above Menu. + 'below_header-menu', // Old header - Below Menu. + ); + + $load_svg_menu_icons = false; + + if ( defined( 'ASTRA_EXT_VER' ) ) { + // Check whether Astra Pro is active + Nav menu addon is deactivate + menu registered by Astra only. + if ( ! Astra_Ext_Extension::is_active( 'nav-menu' ) && in_array( $args->menu_id, $astra_menu_locations ) ) { + $load_svg_menu_icons = true; + } + } else { + // Check menu registered by Astra only. + if ( in_array( $args->menu_id, $astra_menu_locations ) ) { + $load_svg_menu_icons = true; + } + } + + if ( $load_svg_menu_icons ) { + // Assign icons to only those menu which are registered by Astra. + $icon = Astra_Icons::get_icons( 'arrow' ); + } + $custom_tabindex = true === Astra_Builder_Helper::$is_header_footer_builder_active ? 'tabindex="0"' : ''; + $astra_arrow_icon = ''; + + foreach ( $item->classes as $value ) { + if ( 'menu-item-has-children' === $value ) { + $title = $title . $astra_arrow_icon; + } + } + if ( 0 < $depth ) { + $title = $icon . $title; + } + return $title; +} + +if ( Astra_Icons::is_svg_icons() ) { + add_filter( 'nav_menu_item_title', 'astra_dropdown_icon_to_menu_link', 10, 4 ); +} + +/** + * Is theme existing header footer configs enable. + * + * @since 3.0.0 + * + * @return boolean true/false. + */ +function astra_existing_header_footer_configs() { + + return apply_filters( 'astra_existing_header_footer_configs', true ); +} + +/** + * Get Spacing value + * + * @param array $value Responsive spacing value with unit. + * @param string $operation + | - | * | /. + * @param string $from Perform operation from the value. + * @param string $from_unit Perform operation from the value of unit. + * + * @since 3.0.0 + * @return mixed + */ +function astra_calculate_spacing( $value, $operation = '', $from = '', $from_unit = '' ) { + + $css = ''; + if ( ! empty( $value ) ) { + $css = $value; + if ( ! empty( $operation ) && ! empty( $from ) ) { + if ( ! empty( $from_unit ) ) { + $css = 'calc( ' . $value . ' ' . $operation . ' ' . $from . $from_unit . ' )'; + } + if ( '*' === $operation || '/' === $operation ) { + $css = 'calc( ' . $value . ' ' . $operation . ' ' . $from . ' )'; + } + } + } + + return $css; +} + +/** + * Generate HTML Open markup + * + * @param string $context unique markup key. + * @param array $args { + * Contains markup arguments. + * @type array attrs Initial attributes to apply to `open` markup. + * @type bool echo Flag indicating whether to echo or return the resultant string. + * } + * @since 3.3.0 + * @return mixed + */ +function astra_markup_open( $context, $args = array() ) { + $defaults = array( + 'open' => '', + 'attrs' => array(), + 'echo' => true, + 'content' => '', + ); + + $args = wp_parse_args( $args, $defaults ); + if ( $context ) { + $args = apply_filters( "astra_markup_{$context}_open", $args ); + $open_tag = $args['open'] ? sprintf( $args['open'], astra_attr( $context, $args['attrs'] ) ) : ''; + + if ( $args['echo'] ) { + echo $open_tag; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $open_tag; + } + } + return false; +} + +/** + * Generate HTML close markup + * + * @param string $context unique markup key. + * @param array $args { + * Contains markup arguments. + * @type string close Closing HTML markup. + * @type array attrs Initial attributes to apply to `open` markup. + * @type bool echo Flag indicating whether to echo or return the resultant string. + * } + * @since 3.3.0 + * @return mixed + */ +function astra_markup_close( $context, $args = array() ) { + $defaults = array( + 'close' => '', + 'attrs' => array(), + 'echo' => true, + ); + + $args = wp_parse_args( $args, $defaults ); + if ( $context ) { + $args = apply_filters( "astra_markup_{$context}_close", $args ); + $close_tag = $args['close']; + if ( $args['echo'] ) { + echo $close_tag; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + } else { + return $close_tag; + } + } + return false; +} + +/** + * Provision to update display rules for visibility of Related Posts section in Astra. + * + * @since 3.4.0 + * @return bool + */ +function astra_target_rules_for_related_posts() { + + $allow_related_posts = false; + $supported_post_type = apply_filters( 'astra_related_posts_supported_post_types', 'post' ); + + if ( astra_get_option( 'enable-related-posts' ) && is_singular( $supported_post_type ) ) { + $allow_related_posts = true; + } + + return apply_filters( 'astra_showcase_related_posts', $allow_related_posts ); +} + +/** + * Check if elementor plugin is active on the site. + * + * @since 3.7.0 + * @return bool + */ +function astra_is_elemetor_active() { + return class_exists( '\Elementor\Plugin' ); +} + +/** + * Check the Astra addon version. + * For major update and frequently we used version_compare, added a function for this for easy maintenance. + * + * @param string $version Astra addon version. + * @param string $compare Compare symbols. + * @since 3.9.2 + */ +function astra_addon_check_version( $version, $compare ) { + return defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, $version, $compare ); +} + +/** + * Get a stylesheet URL for a webfont. + * + * @since 3.6.0 + * + * @param string $url The URL of the remote webfont. + * @param string $format The font-format. If you need to support IE, change this to "woff". + * + * @return string Returns the CSS. + */ +function astra_get_webfont_url( $url, $format = 'woff2' ) { + + // Check if already Google font URL present or not. Basically avoiding 'Astra_WebFont_Loader' class rendering. + /** @psalm-suppress InvalidArgument */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $astra_font_url = astra_get_option( 'astra_font_url', false ); + if ( $astra_font_url ) { + return json_decode( $astra_font_url ); + } + + // Now create font URL if its not present. + $font = astra_webfont_loader_instance( $url ); + $font->set_font_format( $format ); + return $font->get_url(); +} + +/** + * Get the file preloads. + * + * @param string $url The URL of the remote webfont. + * @param string $format The font-format. If you need to support IE, change this to "woff". + */ +function astra_load_preload_local_fonts( $url, $format = 'woff2' ) { + + // Check if cached font files data preset present or not. Basically avoiding 'Astra_WebFont_Loader' class rendering. + $astra_local_font_files = get_site_option( 'astra_local_font_files', false ); + + if ( is_array( $astra_local_font_files ) && ! empty( $astra_local_font_files ) ) { + $font_format = apply_filters( 'astra_local_google_fonts_format', $format ); + foreach ( $astra_local_font_files as $key => $local_font ) { + if ( $local_font ) { + echo ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Preparing HTML link tag. + } + } + return; + } + + // Now preload font data after processing it, as we didn't get stored data. + $font = astra_webfont_loader_instance( $url ); + $font->set_font_format( $format ); + $font->preload_local_fonts(); +} + +/** + * Set flag to manage backward compatibility for v3.5.0 earlier users for the transparent header border bottom default value changed. + * + * @since 3.6.0 + */ +function astra_get_transparent_header_default_value() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS, array() ); + $astra_settings['transparent-header-default-border'] = isset( $astra_settings['transparent-header-default-border'] ) ? $astra_settings['transparent-header-default-border'] : true; + + return apply_filters( 'astra_transparent_header_default_border', $astra_settings['transparent-header-default-border'] ); +} + +/** + * Check compatibility for content background and typography options. + * + * @since 3.7.0 + */ +function astra_has_gcp_typo_preset_compatibility() { + if ( defined( 'ASTRA_EXT_VER' ) && version_compare( ASTRA_EXT_VER, '3.6.0', '<' ) ) { + return false; + } + return true; +} + +/** + * Check whether user is existing or new to apply the updated default values for button padding & support GB button paddings with global button padding options. + * + * @since 3.6.3 + * @return string + */ +function astra_button_default_padding_updated() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS, array() ); + $padding_updated = isset( $astra_settings['btn-default-padding-updated'] ) ? $astra_settings['btn-default-padding-updated'] : true; + return apply_filters( 'astra_update_button_padding_defaults', $padding_updated ); +} + +/** + * Check is WordPress version is greater than or equal to beta 5.8 version. + * + * @since 3.6.5 + * @return boolean + */ +function astra_has_widgets_block_editor() { + if ( ( defined( 'GUTENBERG_VERSION' ) && version_compare( GUTENBERG_VERSION, '10.6.2', '>' ) ) + || version_compare( get_bloginfo( 'version' ), '5.8-alpha', '>=' ) ) { + return true; + } + return false; +} + +/** + * Check whether user is exising or new to override the default margin space added to Elementor-TOC widget. + * + * @since 3.6.7 + * @return boolean + */ +function astra_can_remove_elementor_toc_margin_space() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['remove-elementor-toc-margin-css'] = isset( $astra_settings['remove-elementor-toc-margin-css'] ) ? false : true; + return apply_filters( 'astra_remove_elementor_toc_margin', $astra_settings['remove-elementor-toc-margin-css'] ); +} + +/** + * Check whether user is exising or new to override the hr tag styling for elementor + * + * @since 4.3.0 + * @return boolean + */ +function astra_can_add_styling_for_hr() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['add-styling-for-hr'] = isset( $astra_settings['add-styling-for-hr'] ) ? false : true; + return apply_filters( 'astra_highlight_elementor_hr_tag', $astra_settings['add-styling-for-hr'] ); +} +/** + * This will check if user is new and apply global color format. This is to manage backward compatibility for colors. + * + * @since 3.7.0 + * @return boolean false if it is an existing user, true for new user. + */ +function astra_has_global_color_format_support() { + $astra_settings = get_option( ASTRA_THEME_SETTINGS ); + $astra_settings['support-global-color-format'] = isset( $astra_settings['support-global-color-format'] ) ? false : true; + return apply_filters( 'astra_apply_global_color_format_support', $astra_settings['support-global-color-format'] ); +} + +/** + * Get Global Color Palettes + * + * @return array color palettes array. + * @since 3.7.0 + */ +function astra_get_palette_colors() { + return get_option( 'astra-color-palettes', apply_filters( 'astra_global_color_palette', Astra_Global_Palette::get_default_color_palette() ) ); +} + +/** + * Get typography presets data. + * + * @return array Typography Presets data array. + * @since 3.7.0 + */ +function astra_get_typography_presets() { + return get_option( 'astra-typography-presets', '' ); +} + +/** + * Clear Astra + Astra Pro assets cache. + * + * @since 3.6.9 + * @return void + */ +function astra_clear_theme_addon_asset_cache() { + astra_clear_all_assets_cache(); +} + +add_action( 'astra_theme_update_after', 'astra_clear_theme_addon_asset_cache', 10 ); + +/** + * Check if Theme Global Colors need to be disable in Elementor global color settings. + * + * @since 3.7.4 + * @return bool + */ +function astra_maybe_disable_global_color_in_elementor() { + return apply_filters( 'astra_disable_global_colors_in_elementor', false ); +} + +/** + * Check is Elementor Pro version is greater than or equal to beta 3.5 version. + * + * @since 3.7.5 + * @return boolean + */ +function astra_check_elementor_pro_3_5_version() { + if ( defined( 'ELEMENTOR_PRO_VERSION' ) && version_compare( ELEMENTOR_PRO_VERSION, '3.5', '>=' ) ) { + return true; + } + return false; +} + +/** + * Should Content BG settings apply to Fullwidth Contained/Stretched layout or not? + * + * Do not apply content background to fullwidth layouts in following cases - + * 1. For backward compatibility. + * 2. When site layout is Max-width. + * 3. When site layout is Padded. + * + * @since 3.7.8 + * @return boolean + */ +function astra_apply_content_background_fullwidth_layouts() { + $astra_site_layout = astra_get_option( 'site-layout' ); + $astra_apply_content_background = astra_get_option( 'apply-content-background-fullwidth-layouts', true ); + + return ( $astra_apply_content_background && 'ast-box-layout' !== $astra_site_layout && 'ast-padded-layout' !== $astra_site_layout ); +} + +/** + * Search Component static CSS. + * + * @return string + * @since 3.5.0 + */ +function astra_search_static_css() { + $search_css = ' + .main-header-bar .main-header-bar-navigation .ast-search-icon { + display: block; + z-index: 4; + position: relative; + } + .ast-search-icon .ast-icon { + z-index: 4; + } + .ast-search-icon { + z-index: 4; + position: relative; + line-height: normal; + } + .main-header-bar .ast-search-menu-icon .search-form { + background-color: #ffffff; + } + .ast-search-menu-icon.ast-dropdown-active.slide-search .search-form { + visibility: visible; + opacity: 1; + } + .ast-search-menu-icon .search-form { + border: 1px solid #e7e7e7; + line-height: normal; + padding: 0 3em 0 0; + border-radius: 2px; + display: inline-block; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + position: relative; + color: inherit; + background-color: #fff; + } + .ast-search-menu-icon .astra-search-icon { + -js-display: flex; + display: flex; + line-height: normal; + } + .ast-search-menu-icon .astra-search-icon:focus { + outline: none; + } + .ast-search-menu-icon .search-field { + border: none; + background-color: transparent; + transition: all .3s; + border-radius: inherit; + color: inherit; + font-size: inherit; + width: 0; + color: #757575; + } + .ast-search-menu-icon .search-submit { + display: none; + background: none; + border: none; + font-size: 1.3em; + color: #757575; + } + .ast-search-menu-icon.ast-dropdown-active { + visibility: visible; + opacity: 1; + position: relative; + } + .ast-search-menu-icon.ast-dropdown-active .search-field, .ast-dropdown-active.ast-search-menu-icon.slide-search input.search-field { + width: 235px; + } + .ast-header-search .ast-search-menu-icon.slide-search .search-form, .ast-header-search .ast-search-menu-icon.ast-inline-search .search-form { + -js-display: flex; + display: flex; + align-items: center; + }'; + + if ( is_rtl() ) { + $search_css .= ' + .ast-search-menu-icon.ast-inline-search .search-field { + width : 100%; + padding : 0.60em; + padding-left : 5.5em; + transition: all 0.2s; + } + .site-header-section-left .ast-search-menu-icon.slide-search .search-form { + padding-right: 2em; + padding-left: unset; + right: -1em; + left: unset; + } + .site-header-section-left .ast-search-menu-icon.slide-search .search-form .search-field { + margin-left: unset; + } + .ast-search-menu-icon.slide-search .search-form { + -webkit-backface-visibility: visible; + backface-visibility: visible; + visibility: hidden; + opacity: 0; + transition: all .2s; + position: absolute; + z-index: 3; + left: -1em; + top: 50%; + transform: translateY(-50%); + }'; + } else { + $search_css .= ' + .ast-search-menu-icon.ast-inline-search .search-field { + width : 100%; + padding : 0.60em; + padding-right : 5.5em; + transition: all 0.2s; + } + .site-header-section-left .ast-search-menu-icon.slide-search .search-form { + padding-left: 2em; + padding-right: unset; + left: -1em; + right: unset; + } + .site-header-section-left .ast-search-menu-icon.slide-search .search-form .search-field { + margin-right: unset; + } + .ast-search-menu-icon.slide-search .search-form { + -webkit-backface-visibility: visible; + backface-visibility: visible; + visibility: hidden; + opacity: 0; + transition: all .2s; + position: absolute; + z-index: 3; + right: -1em; + top: 50%; + transform: translateY(-50%); + }'; + } + + return Astra_Enqueue_Scripts::trim_css( $search_css ); +} + +/** + * Showcase "Upgrade to Pro" notices for Astra & here is the filter work as central control to enable/disable those notices from customizer, meta settings, admin area, pro post types pages. + * + * @since 3.9.4 + * @return bool + */ +function astra_showcase_upgrade_notices() { + return ( ! defined( 'ASTRA_EXT_VER' ) && astra_get_option( 'ast-disable-upgrade-notices', true ) ) ? true : false; +} + +/** + * Function which will return CSS for font-extras control. + * It includes - line-height, letter-spacing, text-decoration, font-style. + * + * @param array $config contains extra font settings. + * @param string $setting basis on this setting will return. + * @param mixed $unit Unit. + * + * @since 4.0.0 + */ +function astra_get_font_extras( $config, $setting, $unit = false ) { + $css = isset( $config[ $setting ] ) ? $config[ $setting ] : ''; + + if ( $unit && $css ) { + $unit_val = isset( $config[ $unit ] ) ? $config[ $unit ] : ''; + $unit_val = 'line-height-unit' === $unit ? apply_filters( 'astra_font_line_height_unit', $unit_val ) : $unit_val; + $css .= $unit_val; + } + + return $css; +} + +/** + * Function which will return CSS array for font specific props for further parsing CSS. + * It includes - font-family, font-weight, font-size, line-height, text-transform, letter-spacing, text-decoration, color (optional). + * + * @param string $font_family Font family. + * @param string $font_weight Font weight. + * @param array $font_size Font size. + * @param string $font_extras contains all font controls. + * @param string $color In most of cases color is also added, so included optional param here. + + * @return array array of build CSS font settings. + * + * @since 4.0.0 + */ +function astra_get_font_array_css( $font_family, $font_weight, $font_size, $font_extras, $color = '' ) { + $font_extras_ast_option = astra_get_option( + $font_extras, + array( + 'line-height' => '', + 'line-height-unit' => 'em', + 'letter-spacing' => '', + 'letter-spacing-unit' => 'px', + 'text-transform' => '', + 'text-decoration' => '', + ) + ); + return array( + 'color' => esc_attr( $color ), + 'font-family' => astra_get_css_value( $font_family, 'font' ), + 'font-weight' => astra_get_css_value( $font_weight, 'font' ), + 'font-size' => ! empty( $font_size ) ? astra_responsive_font( $font_size, 'desktop' ) : '', + 'line-height' => astra_get_font_extras( $font_extras_ast_option, 'line-height', 'line-height-unit' ), + 'text-transform' => astra_get_font_extras( $font_extras_ast_option, 'text-transform' ), + 'letter-spacing' => astra_get_font_extras( $font_extras_ast_option, 'letter-spacing', 'letter-spacing-unit' ), + 'text-decoration' => astra_get_font_extras( $font_extras_ast_option, 'text-decoration' ), + ); +} + +/** + * Return the array of site's available image size. + * + * @param boolean $add_custom Add custom image size. + * @since 4.4.0 + * @return array + */ +function astra_get_site_image_sizes( $add_custom = false ) { + $image_sizes = array( + 'thumbnail' => __( 'Thumbnail', 'astra' ), + 'medium' => __( 'Medium', 'astra' ), + 'medium_large' => __( 'Medium Large', 'astra' ), + 'large' => __( 'Large', 'astra' ), + 'full' => __( 'Full Size', 'astra' ), + ); + + // Gets the available intermediate image size names on site. + $all_sizes = get_intermediate_image_sizes(); // phpcs:ignore WordPressVIPMinimum.Functions.RestrictedFunctions.get_intermediate_image_sizes_get_intermediate_image_sizes -- Required for image sizes to work. + + + $refactored_sizes = array( + 'full' => __( 'Full Size', 'astra' ), + ); + + foreach ( $all_sizes as $size ) { + if ( isset( $image_sizes[ $size ] ) ) { + $refactored_sizes[ $size ] = $image_sizes[ $size ]; + } else { + $refactored_sizes[ $size ] = $size; + } + } + + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + if ( $add_custom && defined( 'ASTRA_EXT_VER' ) && Astra_Ext_Extension::is_active( 'blog-pro' ) ) { + /** @psalm-suppress UndefinedClass */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort + $refactored_sizes['custom'] = __( 'Custom', 'astra' ); + } + + return $refactored_sizes; +} + +/** + * Return the aspect-ratio for dynamic image. + * + * @param string $aspect_ratio_type Aspect ratio type. + * @param string $predefined_scale Predefined scale. + * @param string $custom_scale_width Custom scale width. + * @param string $custom_scale_height Custom scale height. + * + * @since 4.4.0 + * @return string + */ +function astra_get_dynamic_image_aspect_ratio( $aspect_ratio_type, $predefined_scale, $custom_scale_width, $custom_scale_height ) { + $aspect_ratio_css = ''; + if ( 'default' !== $aspect_ratio_type ) { + if ( 'custom' === $aspect_ratio_type ) { + $aspect_ratio_css = absint( $custom_scale_width ) . '/' . absint( $custom_scale_height ); + } else { + $aspect_ratio_css = $predefined_scale; + } + } + return $aspect_ratio_css; +} + +/** + * Getting site active language & compatible with other plugins. + * + * @since 4.4.0 + * @return string + */ +function astra_get_current_language_slug() { + $lang = ''; + if ( function_exists( 'pll_current_language' ) ) { + $lang = pll_current_language(); + } + return apply_filters( 'astra_addon_site_current_language', $lang ); +} + +/** + * Function which will return the supported post types from core. + * + * Further processing includes: + * 1. Dynamic customizer + * 2. Live Search + * + * @since 4.4.0 + * @return array + */ +function astra_get_queried_post_types() { + $queried_post_types = array_keys( + get_post_types( + apply_filters( + 'astra_dynamic_get_post_types_query_args', + array( + 'public' => true, + '_builtin' => false, + ) + ) + ) + ); + + $queried_post_types = array_diff( + $queried_post_types, + array( + 'astra-advanced-hook', + 'astra_adv_header', + 'elementor_library', + 'brizy_template', + 'sc_collection', + + 'course', + 'lesson', + 'llms_membership', + + 'tutor_quiz', + 'tutor_assignments', + + 'testimonial', + 'frm_display', + 'mec_esb', + 'mec-events', + + 'sfwd-assignment', + 'sfwd-essays', + 'sfwd-transactions', + 'sfwd-certificates', + 'sfwd-quiz', + 'e-landing-page', + ) + ); + $queried_post_types[] = 'post'; + $queried_post_types[] = 'page'; + + return $queried_post_types; +} diff --git a/wp-content/themes/astra/inc/google-fonts.php b/wp-content/themes/astra/inc/google-fonts.php index eaab76f95..f32c90ff3 100644 --- a/wp-content/themes/astra/inc/google-fonts.php +++ b/wp-content/themes/astra/inc/google-fonts.php @@ -93,6 +93,12 @@ 'category' => 'sans-serif', ), ), + array( + 'Agbalumo' => array( + 'variants' => array( 'regular' ), + 'category' => 'display', + ), + ), array( 'Agdasima' => array( 'variants' => array( 'regular', '700' ), @@ -1145,7 +1151,7 @@ ), array( 'BioRhyme' => array( - 'variants' => array( '200', '300', 'regular', '700', '800' ), + 'variants' => array( '200', '300', 'regular', '500', '600', '700', '800' ), 'category' => 'serif', ), ), @@ -3861,6 +3867,12 @@ 'category' => 'display', ), ), + array( + 'Kay Pho Du' => array( + 'variants' => array( 'regular', '500', '600', '700' ), + 'category' => 'serif', + ), + ), array( 'Kdam Thmor Pro' => array( 'variants' => array( 'regular' ), @@ -4329,6 +4341,12 @@ 'category' => 'serif', ), ), + array( + 'Linefont' => array( + 'variants' => array( '100', '200', '300', 'regular', '500', '600', '700', '800', '900' ), + 'category' => 'display', + ), + ), array( 'Lisu Bosa' => array( 'variants' => array( '200', '200italic', '300', '300italic', 'regular', 'italic', '500', '500italic', '600', '600italic', '700', '700italic', '800', '800italic', '900', '900italic' ), @@ -5703,6 +5721,12 @@ 'category' => 'sans-serif', ), ), + array( + 'Noto Sans Kawi' => array( + 'variants' => array( 'regular', '500', '600', '700' ), + 'category' => 'sans-serif', + ), + ), array( 'Noto Sans Kayah Li' => array( 'variants' => array( 'regular', '500', '600', '700' ), @@ -5880,7 +5904,7 @@ array( 'Noto Sans Mono' => array( 'variants' => array( '100', '200', '300', 'regular', '500', '600', '700', '800', '900' ), - 'category' => 'monospace', + 'category' => 'sans-serif', ), ), array( @@ -6471,6 +6495,12 @@ 'category' => 'serif', ), ), + array( + 'Noto Serif Old Uyghur' => array( + 'variants' => array( 'regular' ), + 'category' => 'serif', + ), + ), array( 'Noto Serif Oriya' => array( 'variants' => array( 'regular', '500', '600', '700' ), diff --git a/wp-content/themes/astra/inc/markup-extras.php b/wp-content/themes/astra/inc/markup-extras.php index 3357837cd..ed17fd671 100644 --- a/wp-content/themes/astra/inc/markup-extras.php +++ b/wp-content/themes/astra/inc/markup-extras.php @@ -1,2117 +1,2117 @@ -' . "\n", esc_url( get_bloginfo( 'pingback_url' ) ) ); - } -} - -/** - * Schema for tag. - */ -if ( ! function_exists( 'astra_schema_body' ) ) : - - /** - * Adds schema tags to the body classes. - * - * @since 1.0.0 - */ - function astra_schema_body() { - - if ( true !== apply_filters( 'astra_schema_enabled', true ) ) { - return; - } - - // Check conditions. - $is_blog = ( is_home() || is_archive() || is_attachment() || is_tax() || is_single() ) ? true : false; - - // Set up default itemtype. - $itemtype = 'WebPage'; - - // Get itemtype for the blog. - $itemtype = ( $is_blog ) ? 'Blog' : $itemtype; - - // Get itemtype for search results. - $itemtype = ( is_search() ) ? 'SearchResultsPage' : $itemtype; - // Get the result. - $result = apply_filters( 'astra_schema_body_itemtype', $itemtype ); - - // Return our HTML. - echo apply_filters( 'astra_schema_body', "itemtype='https://schema.org/" . esc_attr( $result ) . "' itemscope='itemscope'" ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } -endif; - -/** - * Adds custom classes to the array of body classes. - */ -if ( ! function_exists( 'astra_body_classes' ) ) { - - /** - * Adds custom classes to the array of body classes. - * - * @since 1.0.0 - * @param array $classes Classes for the body element. - * @return array - */ - function astra_body_classes( $classes ) { - - if ( wp_is_mobile() ) { - $classes[] = 'ast-header-break-point'; - } else { - $classes[] = 'ast-desktop'; - } - - if ( astra_is_amp_endpoint() ) { - $classes[] = 'ast-amp'; - } - - // Apply content layout classes as per new revamped layout selection. - $content_layout = astra_get_content_layout(); - $is_boxed = astra_is_content_style_boxed(); - $is_sidebar_boxed = astra_is_sidebar_style_boxed(); - $content_layout = astra_apply_boxed_layouts( $content_layout, $is_boxed, $is_sidebar_boxed ); - - if ( 'content-boxed-container' == $content_layout ) { - $classes[] = 'ast-separate-container'; - } elseif ( 'boxed-container' == $content_layout ) { - $classes[] = 'ast-separate-container ast-two-container'; - } elseif ( 'page-builder' == $content_layout ) { - $classes[] = 'ast-page-builder-template'; - } elseif ( 'plain-container' == $content_layout ) { - $classes[] = 'ast-plain-container'; - } elseif ( 'narrow-container' == $content_layout ) { - $classes[] = 'ast-narrow-container'; - - // Narrow meta migration case. - $meta_old_layout = astra_get_option_meta( 'site-content-layout', '', true ); - $meta_key = astra_get_option_meta( 'astra-migrate-meta-layouts', '', true ); - $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); - if ( 'narrow-container' === $meta_old_layout && 'set' !== $meta_key && $migrated_user ) { - $is_boxed = false; - } - - // Adding boxed class for narrow layout. - if ( $is_boxed ) { - $classes[] = 'ast-separate-container'; - } - } - - - // Sidebar location. - $sidebar_layout = astra_page_layout(); - $page_layout = 'ast-' . $sidebar_layout; - $classes[] = esc_attr( $page_layout ); - - // Current Astra verion. - $classes[] = esc_attr( 'astra-' . ASTRA_THEME_VERSION ); - - if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { - $menu_item = astra_get_option( 'header-main-rt-section' ); - $outside_menu = astra_get_option( 'header-display-outside-menu' ); - - if ( 'none' !== $menu_item && $outside_menu ) { - $classes[] = 'ast-header-custom-item-outside'; - } else { - $classes[] = 'ast-header-custom-item-inside'; - } - /** - * Add class for header width - */ - $header_content_layout = astra_get_option( 'header-main-layout-width' ); - - if ( 'full' == $header_content_layout ) { - $classes[] = 'ast-full-width-primary-header'; - } - } - - // Add class for Sticky Sidebar if activated. - if ( 'no-sidebar' !== $sidebar_layout ) { - if ( astra_get_option( 'site-sticky-sidebar' ) ) { - $classes[] = 'ast-sticky-sidebar'; - } - } - - return $classes; - } -} - -add_filter( 'body_class', 'astra_body_classes' ); - -/** - * Checks whether content style is boxed for current layout. - * - * @since 4.2.0 - * @param mixed $post_id Current post ID. - * @return boolean - */ -function astra_is_content_style_boxed( $post_id = false ) { - - $post_type = strval( get_post_type() ); - $blog_type = is_singular() ? 'single' : 'archive'; - $global_content_style = astra_get_option( 'site-content-style' ); - $meta_content_style = astra_get_option_meta( 'site-content-style', '', true ); - $is_boxed = false; - $is_third_party_shop = false; - - // Editor compatibility. - if ( $post_id ) { - $blog_type = 'single'; - $meta_content_style = get_post_meta( $post_id, 'site-content-style', true ); - } - - $content_style = astra_get_option( $blog_type . '-' . $post_type . '-content-style', '' ); - - // Third party compatibility. - $third_party = astra_with_third_party(); - if ( ! empty( $third_party ) ) { - $third_party_content_style = astra_get_option( $third_party . '-content-style', '' ); - - if ( in_array( $third_party, array( 'lifterlms', 'learndash' ) ) && ! in_array( $post_type, Astra_Posts_Structure_Loader::get_supported_post_types() ) && empty( $meta_content_style ) ) { - $blog_type = ''; - } - - // Get global content style if third party is default. - $global_content_style = ( 'default' === $third_party_content_style || empty( $third_party_content_style ) ) ? $global_content_style : $third_party_content_style; - - // Woo Cart & Checkout Page - if ( 'woocommerce' === $third_party && ( is_cart() || is_checkout() ) ) { - return ( 'boxed' === $global_content_style ); - } - - // Third party shop/archive page meta case. - $third_party_meta_page = astra_third_party_archive_meta( 'site-content-style' ); - $meta_content_style = isset( $third_party_meta_page ) && $third_party_meta_page ? $third_party_meta_page : $meta_content_style; - $is_third_party_shop = isset( $third_party_meta_page ) && $third_party_meta_page ? true : false; - } - - // Global. - if ( 'boxed' === $global_content_style ) { - $is_boxed = true; - } - - // Archive. - if ( 'archive' === $blog_type && ! empty( $content_style ) && 'default' !== $content_style ) { - $is_boxed = ( 'boxed' === $content_style ); - } - - // Single. - if ( 'single' === $blog_type && ! empty( $content_style ) && 'default' !== $content_style ) { - $is_boxed = ( 'boxed' === $content_style ); - } - - // Meta. - if ( ( 'single' === $blog_type || $is_third_party_shop ) && ! empty( $meta_content_style ) && 'default' !== $meta_content_style && ! $post_id ) { - if ( 'boxed' === $meta_content_style ) { - $is_boxed = true; - } else { - $is_boxed = false; - } - } - return apply_filters( 'astra_is_content_layout_boxed', $is_boxed ); -} - -/** - * Check if the current page is a third party page. - * - * @since 4.2.0 - * @param bool $is_sidebar_option Optional. Whether to check sidebar option needed for Lifterlms case. Default false. - * @return string|bool Returns the name of third party if page belongs to any, otherwise returns false. - */ -function astra_with_third_party( $is_sidebar_option = false ) { - - $post_type = strval( get_post_type() ); - - /** @psalm-suppress UndefinedFunction */ - if ( class_exists( 'WooCommerce' ) && ( is_woocommerce() || is_checkout() || is_cart() || is_account_page() ) ) { - return 'woocommerce'; - } - /** @psalm-suppress UndefinedFunction */ - elseif ( class_exists( 'Easy_Digital_Downloads' ) && astra_is_edd_page() ) { - return 'edd'; - } - /** @psalm-suppress UndefinedFunction */ - elseif ( class_exists( 'LifterLMS' ) && ( is_lifterlms() || is_llms_account_page() || is_llms_checkout() ) ) { - if ( $is_sidebar_option && ( is_lesson() || is_course() ) ) { - return 'lifterlms-course-lesson'; - } - return 'lifterlms'; - } elseif ( class_exists( 'SFWD_LMS' ) && in_array( $post_type, array( 'sfwd-courses', 'sfwd-lessons', 'sfwd-topic', 'sfwd-quiz', 'sfwd-certificates', 'sfwd-assignment' ) ) ) { - return 'learndash'; - } - - return false; -} - -/** - * Check if the sidebar style is boxed. - * - * @since 4.2.0 - * @param mixed $post_id Current post ID. - * @return bool Whether the sidebar style is boxed. - */ -function astra_is_sidebar_style_boxed( $post_id = false ) { - - $post_type = strval( get_post_type() ); - $blog_type = is_singular() ? 'single' : 'archive'; - $global_sidebar_style = astra_get_option( 'site-sidebar-style' ); - $meta_sidebar_style = astra_get_option_meta( 'site-sidebar-style', '', true ); - $is_sidebar_boxed = false; - $is_third_party_shop = false; - - // Editor compatibility. - if ( $post_id ) { - $blog_type = 'single'; - $meta_sidebar_style = get_post_meta( $post_id, 'site-sidebar-style', true ); - } - - $sidebar_style = astra_get_option( $blog_type . '-' . $post_type . '-sidebar-style', '' ); - - // Third party compatibility. - $third_party = astra_with_third_party( true ); - if ( ! empty( $third_party ) ) { - $third_party_sidebar_style = astra_get_option( $third_party . '-sidebar-style', '' ); - - if ( in_array( $third_party, array( 'lifterlms', 'learndash' ) ) && ! in_array( $post_type, Astra_Posts_Structure_Loader::get_supported_post_types() ) && empty( $meta_sidebar_style ) ) { - $blog_type = ''; - } - - // Get global sidebar style if third party is default. - $global_sidebar_style = ( 'default' === $third_party_sidebar_style || empty( $third_party_sidebar_style ) ) ? $global_sidebar_style : $third_party_sidebar_style; - - // Woo Cart & Checkout Page - if ( 'woocommerce' === $third_party && ( is_cart() || is_checkout() ) ) { - return ( 'boxed' === $global_sidebar_style ); - } - - // Third party shop/archive page meta case. - $third_party_meta_page = astra_third_party_archive_meta( 'site-sidebar-style' ); - $meta_sidebar_style = isset( $third_party_meta_page ) && $third_party_meta_page ? $third_party_meta_page : $meta_sidebar_style; - $is_third_party_shop = isset( $third_party_meta_page ) && $third_party_meta_page ? true : false; - } - - // Global. - if ( 'boxed' === $global_sidebar_style ) { - $is_sidebar_boxed = true; - } - - // Archive. - if ( 'archive' === $blog_type && ! empty( $sidebar_style ) && 'default' !== $sidebar_style ) { - $is_sidebar_boxed = ( 'boxed' === $sidebar_style ); - } - - // Single. - if ( 'single' === $blog_type && ! empty( $sidebar_style ) && 'default' !== $sidebar_style ) { - $is_sidebar_boxed = ( 'boxed' === $sidebar_style ); - } - - // Meta. - if ( ( 'single' === $blog_type || $is_third_party_shop ) && ! empty( $meta_sidebar_style ) && 'default' !== $meta_sidebar_style && ! $post_id ) { - if ( 'boxed' === $meta_sidebar_style ) { - $is_sidebar_boxed = true; - } else { - $is_sidebar_boxed = false; - } - } - - return apply_filters( 'astra_is_sidebar_layout_boxed', $is_sidebar_boxed ); -} - -/** - * Switch to legacy boxed layouts (Content Boxed, Boxed) as per content style selection. - * - * @since 4.2.0 - * @param mixed $content_layout Current layout. - * @param boolean $is_boxed Current content style. - * @param boolean $is_sidebar_boxed Current sidebar style. - * @param mixed $post_id Current post ID. - * @return mixed The content layout. - */ -function astra_apply_boxed_layouts( $content_layout, $is_boxed, $is_sidebar_boxed, $post_id = false ) { - - // Getting meta values here to handle meta migration cases. - $meta_old_layout = is_singular() ? astra_get_option_meta( 'site-content-layout', '', true ) : ''; - $meta_new_layout = astra_get_option_meta( 'ast-site-content-layout', '', true ); - - // To check whether migrated user or not. - $meta_key = astra_get_option_meta( 'astra-migrate-meta-layouts', '', true ); - $migrated_user = ( ! Astra_Dynamic_CSS::astra_fullwidth_sidebar_support() ); - - $sidebar_layout = astra_page_layout(); - - // Editor compatibility. - if ( $post_id ) { - $meta_old_layout = get_post_meta( $post_id, 'site-content-layout', true ); - $meta_new_layout = get_post_meta( $post_id, 'ast-site-content-layout', true ); - $meta_key = get_post_meta( $post_id, 'astra-migrate-meta-layouts', true ); - $post_type = strval( get_post_type() ); - $sidebar_layout = astra_get_sidebar_layout_for_editor( $post_type ); - } - - // Third party archive meta migration. - $third_party_meta_page = astra_third_party_archive_meta( 'site-content-layout' ); - if ( false !== $third_party_meta_page && $migrated_user ) { - $meta_old_layout = $third_party_meta_page; - $meta_key = astra_third_party_archive_meta( 'astra-migrate-meta-layouts' ); - } - - // Migrate old user existing container layout option to new layout options. - if ( $meta_old_layout && 'set' !== $meta_key && $migrated_user ) { - if ( 'plain-container' == $meta_old_layout && 'plain-container' === $content_layout ) { - - // No need to evaluate further as no boxed (content or boxed) layout will be applicable now. - return $content_layout; - } elseif ( 'content-boxed-container' == $meta_old_layout && 'plain-container' === $content_layout ) { - $is_boxed = true; - $is_sidebar_boxed = false; - } elseif ( 'boxed-container' == $meta_old_layout && 'plain-container' === $content_layout ) { - $is_boxed = true; - $is_sidebar_boxed = true; - } - } - - // Apply content boxed layout or boxed layout depending on content/sidebar style. - if ( 'plain-container' === $content_layout ) { - if ( 'no-sidebar' === $sidebar_layout ) { - if ( $is_boxed ) { - $content_layout = 'boxed-container'; - } - } elseif ( 'no-sidebar' !== $sidebar_layout ) { - if ( $is_boxed ) { - $content_layout = $is_sidebar_boxed ? 'boxed-container' : 'content-boxed-container'; - } elseif ( $is_sidebar_boxed ) { - - /** - * Case: unboxed container with sidebar boxed - * Container unboxed css is applied through astra_apply_unboxed_container() - */ - $content_layout = 'boxed-container'; - } - } - } - return $content_layout; -} - - -/** - * WooCommerce, LifterLMS, EDD Archive (Shop, Courses, Memberships etc) Meta value. - * - * @since 4.2.0 - * @param mixed $option name of the option to fetch. - * @return mixed meta_value - */ -function astra_third_party_archive_meta( $option ) { - - $meta_value = false; - $third_party = astra_with_third_party( true ); - // Third party shop/archive page meta case. - if ( 'woocommerce' === $third_party && ( is_shop() || is_product_taxonomy() ) ) { - $shop_page_id = get_option( 'woocommerce_shop_page_id' ); - $meta_value = get_post_meta( $shop_page_id, $option, true ); - } elseif ( 'lifterlms' === $third_party ) { - /** @psalm-suppress UndefinedFunction */ - if ( is_courses() ) { - $lifter_page_id = get_option( 'lifterlms_shop_page_id' ); - $meta_value = get_post_meta( $lifter_page_id, $option, true ); - } - /** @psalm-suppress UndefinedFunction */ - elseif ( is_memberships() ) { - $lifter_page_id = get_option( 'lifterlms_memberships_page_id' ); - $meta_value = get_post_meta( $lifter_page_id, $option, true ); - } elseif ( is_course_taxonomy() ) { - $meta_value = 'default'; - } - } elseif ( 'edd' === $third_party && astra_is_edd_single_page() ) { - $page_id = get_the_ID(); - /** @psalm-suppress PossiblyFalseArgument */ - $meta_value = get_post_meta( $page_id, $option, true ); - } - - return $meta_value; -} - -/** - * Astra Pagination - */ -if ( ! function_exists( 'astra_number_pagination' ) ) { - - /** - * Astra Pagination - * - * @since 1.0.0 - * @return void Generate & echo pagination markup. - */ - function astra_number_pagination() { - global $wp_query; - $enabled = apply_filters( 'astra_pagination_enabled', true ); - - // Don't print empty markup if their is only one page. - if ( $wp_query->max_num_pages < 2 || ! $enabled ) { - return; - } - - ob_start(); - echo "
              "; - /** @psalm-suppress ArgumentTypeCoercion */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - the_posts_pagination( - array( - 'prev_text' => astra_default_strings( 'string-blog-navigation-previous', false ), - 'next_text' => astra_default_strings( 'string-blog-navigation-next', false ), - 'taxonomy' => 'category', - 'in_same_term' => true, - ) - ); - /** @psalm-suppress ArgumentTypeCoercion */ // phpcs:ignore Generic.Commenting.DocComment.MissingShort - echo '
              '; - $output = ob_get_clean(); - echo apply_filters( 'astra_pagination_markup', $output ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } -} - -add_action( 'astra_pagination', 'astra_number_pagination' ); - -/** - * Return or echo site logo markup. - */ -if ( ! function_exists( 'astra_logo' ) ) { - - /** - * Return or echo site logo markup. - * - * @since 1.0.0 - * @param string $device Device name. - * @param boolean $echo Echo markup. - * @return mixed echo or return markup. - */ - function astra_logo( $device = 'desktop', $echo = true ) { - - $site_tagline = astra_get_option( 'display-site-tagline-responsive' ); - $display_site_tagline = ( $site_tagline['desktop'] || $site_tagline['tablet'] || $site_tagline['mobile'] ) ? true : false; - $site_title = astra_get_option( 'display-site-title-responsive' ); - $display_site_title = ( $site_title['desktop'] || $site_title['tablet'] || $site_title['mobile'] ) ? true : false; - $ast_custom_logo_id = get_theme_mod( 'custom_logo' ); - - $html = ''; - $has_custom_logo = apply_filters( 'astra_has_custom_logo', has_custom_logo() ); - $trans_logo = astra_get_option( 'transparent-header-logo' ); - $diff_trans_logo = astra_get_option( 'different-transparent-logo' ); - - // Site logo. - if ( ( $has_custom_logo && ! empty( $ast_custom_logo_id ) ) || ( true === $diff_trans_logo && ! empty( $trans_logo ) ) ) { - - if ( apply_filters( 'astra_replace_logo_width', true ) ) { - add_filter( 'wp_get_attachment_image_src', 'astra_replace_header_logo', 10, 4 ); - } - - $html .= ''; - $html .= get_custom_logo(); - $html .= ''; - - if ( apply_filters( 'astra_replace_logo_width', true ) ) { - remove_filter( 'wp_get_attachment_image_src', 'astra_replace_header_logo', 10 ); - } - } - - $html .= astra_get_site_title_tagline( $display_site_title, $display_site_tagline, $device ); - - $html = apply_filters( 'astra_logo', $html, $display_site_title, $display_site_tagline ); - - /** - * Echo or Return the Logo Markup - */ - if ( $echo ) { - echo $html; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - } else { - return $html; - } - } -} - -/** - * Add custom attribute to custom site logo. - * - * @param mixed $html custom logo html. - * @since 4.1.0 - * @return mixed custom logo html. - */ -function astra_add_custom_logo_attributes( $html ) { - $attributes = ''; - return str_replace( 'rel="home"', 'rel="home"' . apply_filters( 'astra_custom_logo_attributes', $attributes ) . '', $html ); -} - -add_filter( 'get_custom_logo', 'astra_add_custom_logo_attributes' ); - -/** - * Return or echo site logo markup. - * - * @since 2.2.0 - * @param boolean $display_site_title Site title enable or not. - * @param boolean $display_site_tagline Site tagline enable or not. - * @param string $device Device name. - * - * @return string return markup. - */ -function astra_get_site_title_tagline( $display_site_title, $display_site_tagline, $device = 'desktop' ) { - $html = ''; - - if ( ! apply_filters( 'astra_disable_site_identity', false ) ) { - - // Site Title. - $tag = apply_filters( 'astra_show_site_title_h1_tag', false ) ? 'h1' : 'span'; - - /** - * Filters the site title output. - * - * @since 1.4.9 - * - * @param string the HTML output for Site Title. - */ - // Site Title. - $site_title_markup = apply_filters( - 'astra_site_title_output', - sprintf( - '<%1$s %4$s> - - %3$s - - ', - /** - * Filters the tags for site title. - * - * @since 1.3.1 - * - * @param string $tags string containing the HTML tags for Site Title. - */ - apply_filters( 'astra_site_title_tag', $tag ), - /** - * Filters the href for the site title. - * - * @since 1.4.9 - * - * @param string site title home url - */ - esc_url( apply_filters( 'astra_site_title_href', home_url( '/' ) ) ), - /** - * Filters the site title. - * - * @since 1.4.9 - * - * @param string site title - */ - apply_filters( 'astra_site_title', get_bloginfo( 'name' ) ), - astra_attr( - 'site-title', - array( - 'class' => 'site-title', - ) - ), - astra_attr( - 'site-title-link', - array() - ) - ) - ); - - // Site Description. - /** - * Filters the site description markup. - * - * @since 1.4.9 - * - * @param string the HTML output for Site Title. - */ - $site_tagline_markup = apply_filters( - 'astra_site_description_markup', - sprintf( - '<%1$s class="site-description" itemprop="description"> - %2$s - ', - /** - * Filters the tags for site tagline. - * - * @since 1.8.5 - */ - apply_filters( 'astra_site_tagline_tag', 'p' ), - /** - * Filters the site description. - * - * @since 1.4.9 - * - * @param string site description - */ - apply_filters( 'astra_site_description', get_bloginfo( 'description' ) ) - ) - ); - - if ( $display_site_title || $display_site_tagline ) { - /* translators: 1: Site Title Markup, 2: Site Tagline Markup */ - $html .= sprintf( - '
              - %1$s - %2$s -
              ', - ( $display_site_title ) ? $site_title_markup : '', - ( $display_site_tagline ) ? $site_tagline_markup : '' - ); - } - } - return $html; -} - -/** - * Return the selected sections - */ -if ( ! function_exists( 'astra_get_dynamic_header_content' ) ) { - - /** - * Return the selected sections - * - * @since 1.0.0 - * @param string $option Custom content type. E.g. search, text-html etc. - * @return array Array of Custom contents. - */ - function astra_get_dynamic_header_content( $option ) { - - $output = array(); - $section = astra_get_option( $option ); - - switch ( $section ) { - - case 'search': - $output[] = astra_get_search( $option ); - break; - - case 'text-html': - $output[] = astra_get_custom_html( $option . '-html' ); - break; - - case 'widget': - $output[] = astra_get_custom_widget( $option ); - break; - - case 'button': - $output[] = astra_get_custom_button( $option . '-button-text', $option . '-button-link-option', $option . '-button-style' ); - break; - - default: - $output[] = apply_filters( 'astra_get_dynamic_header_content', '', $option, $section ); - break; - } - - return apply_filters( 'astra_get_dynamic_header_content_final', $output ); - } -} - - -/** - * Adding Wrapper for Search Form. - */ -if ( ! function_exists( 'astra_get_search' ) ) { - - /** - * Adding Wrapper for Search Form. - * - * @since 1.0.0 - * @param string $option Search Option name. - * @param string $device Device name. - * @return mixed Search HTML structure created. - */ - function astra_get_search( $option = '', $device = '' ) { - ob_start(); - ?> - - ' . do_shortcode( $custom_html_content ) . ''; - } elseif ( current_user_can( 'edit_theme_options' ) ) { - $custom_html = '' . __( 'Add Custom HTML', 'astra' ) . ''; - } - - return $custom_html; - } -} - -/** - * Get custom Button. - */ -if ( ! function_exists( 'astra_get_custom_button' ) ) { - - /** - * Get custom HTML added by user. - * - * @since 1.0.0 - * @param string $button_text Button Text. - * @param string $button_options Button Link. - * @param string $button_style Button Style. - * @return String Button added by user in options panel. - */ - function astra_get_custom_button( $button_text = '', $button_options = '', $button_style = '' ) { - - $custom_html = ''; - $button_classes = ''; - $button_text = astra_get_option( $button_text ); - $button_style = astra_get_option( $button_style ); - $outside_menu = astra_get_option( 'header-display-outside-menu' ); - - $header_button = astra_get_option( $button_options ); - $new_tab = ( $header_button['new_tab'] ? 'target="_blank"' : 'target="_self"' ); - $link_rel = ( ! empty( $header_button['link_rel'] ) ? 'rel="' . esc_attr( $header_button['link_rel'] ) . '"' : '' ); - - $button_classes = ( 'theme-button' === $button_style ? 'ast-button' : 'ast-custom-button' ); - $outside_menu_item = apply_filters( 'astra_convert_link_to_button', $outside_menu ); - - if ( '1' == $outside_menu_item ) { - $custom_html = '
              ' . esc_html( do_shortcode( $button_text ) ) . '
              '; - } else { - $custom_html = '
              ' . esc_html( do_shortcode( $button_text ) ) . '
              '; - $custom_html .= '' . esc_html( do_shortcode( $button_text ) ) . ''; - } - - return $custom_html; - } -} - -/** - * Get Widget added by user. - */ -if ( ! function_exists( 'astra_get_custom_widget' ) ) { - - /** - * Get custom widget added by user. - * - * @since 1.0.1.1 - * @param string $option_name Option name. - * @return Widget added by user in options panel. - */ - function astra_get_custom_widget( $option_name = '' ) { - - ob_start(); - - if ( 'header-main-rt-section' == $option_name ) { - $widget_id = 'header-widget'; - } - if ( 'footer-sml-section-1' == $option_name ) { - $widget_id = 'footer-widget-1'; - } elseif ( 'footer-sml-section-2' == $option_name ) { - $widget_id = 'footer-widget-2'; - } - - echo '
              '; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - astra_get_sidebar( $widget_id ); - echo '
              '; - - return ob_get_clean(); - } -} - -/** - * Function to get Small Left/Right Footer - */ -if ( ! function_exists( 'astra_get_small_footer' ) ) { - - /** - * Function to get Small Left/Right Footer - * - * @since 1.0.0 - * @param string $section Sections of Small Footer. - * @return mixed Markup of sections. - */ - function astra_get_small_footer( $section = '' ) { - - $small_footer_type = astra_get_option( $section ); - $output = null; - - switch ( $small_footer_type ) { - case 'menu': - $output = astra_get_small_footer_menu(); - break; - - case 'custom': - $output = astra_get_small_footer_custom_text( $section . '-credit' ); - break; - - case 'widget': - $output = astra_get_custom_widget( $section ); - break; - } - - return $output; - } -} - -/** - * Function to get Small Footer Custom Text - */ -if ( ! function_exists( 'astra_get_small_footer_custom_text' ) ) { - - /** - * Function to get Small Footer Custom Text - * - * @since 1.0.14 - * @param string $option Custom text option name. - * @return mixed Markup of custom text option. - */ - function astra_get_small_footer_custom_text( $option = '' ) { - - $output = $option; - - if ( '' != $option ) { - $output = astra_get_option( $option ); - $output = str_replace( '[current_year]', date_i18n( 'Y' ), $output ); - $output = str_replace( '[site_title]', '' . get_bloginfo( 'name' ) . '', $output ); - - $theme_author = apply_filters( - 'astra_theme_author', - array( - 'theme_name' => __( 'Astra WordPress Theme', 'astra' ), - 'theme_author_url' => 'https://wpastra.com/', - ) - ); - - $output = str_replace( '[theme_author]', '' . $theme_author['theme_name'] . '', $output ); - } - - return do_shortcode( $output ); - } -} - -/** - * Function to get Footer Menu - */ -if ( ! function_exists( 'astra_get_small_footer_menu' ) ) { - - /** - * Function to get Footer Menu - * - * @since 1.0.0 - * @return html - */ - function astra_get_small_footer_menu() { - - ob_start(); - - if ( has_nav_menu( 'footer_menu' ) ) { - wp_nav_menu( - array( - 'container' => 'div', - 'container_class' => 'footer-primary-navigation', - 'theme_location' => 'footer_menu', - 'menu_class' => 'nav-menu', - 'items_wrap' => '
                %3$s
              ', - 'depth' => 1, - ) - ); - } else { - if ( is_user_logged_in() && current_user_can( 'edit_theme_options' ) ) { - ?> - - - * - * @since 1.0.0 - */ - function astra_header_markup() { - - do_action( 'astra_header_markup_before' ); - ?> -
              'masthead', - 'class' => join( ' ', astra_get_header_classes() ), - ) - ); - ?> - > - -
              - - -
              -
              'ast-site-identity', - ) - ); - ?> - > - -
              -
              - - - -
              - - - - - - - -
              - '; - /** - * Fires before the Primary Header Menu navigation. - * Disable Primary Menu is checked - * Last Item in Menu is not 'none'. - * Take Last Item in Menu outside is unchecked. - * - * @since 1.4.0 - */ - do_action( 'astra_main_header_custom_menu_item_before' ); - - echo astra_masthead_get_menu_items(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - - /** - * Fires after the Primary Header Menu navigation. - * Disable Primary Menu is checked - * Last Item in Menu is not 'none'. - * Take Last Item in Menu outside is unchecked. - * - * @since 1.4.0 - */ - do_action( 'astra_main_header_custom_menu_item_after' ); - - echo ''; - - } - } else { - - $submenu_class = apply_filters( 'astra_primary_submenu_border_class', ' submenu-with-border' ); - - // Menu Animation. - $menu_animation = astra_get_option( 'header-main-submenu-container-animation' ); - if ( ! empty( $menu_animation ) ) { - $submenu_class .= ' astra-menu-animation-' . esc_attr( $menu_animation ) . ' '; - } - - /** - * Filter the classes(array) for Primary Menu (
                ). - * - * @since 1.5.0 - * @var Array - */ - $primary_menu_classes = apply_filters( 'astra_primary_menu_classes', array( 'main-header-menu', 'ast-menu-shadow', 'ast-nav-menu', 'ast-flex', 'ast-justify-content-flex-end', $submenu_class ) ); - - // Fallback Menu if primary menu not set. - $fallback_menu_args = array( - 'theme_location' => 'primary', - 'menu_id' => 'primary-menu', - 'menu_class' => 'main-navigation', - 'container' => 'div', - 'before' => '
                  ', - 'after' => '
                ', - 'walker' => new Astra_Walker_Page(), - ); - - $items_wrap = ''; - - // Primary Menu. - $primary_menu_args = array( - 'theme_location' => 'primary', - 'menu_id' => 'primary-menu', - 'menu_class' => esc_attr( implode( ' ', $primary_menu_classes ) ), - 'container' => 'div', - 'container_class' => 'main-header-bar-navigation', - 'items_wrap' => $items_wrap, - ); - - if ( has_nav_menu( 'primary' ) ) { - // To add default alignment for navigation which can be added through any third party plugin. - // Do not add any CSS from theme except header alignment. - echo '
                '; - wp_nav_menu( $primary_menu_args ); - echo '
                '; - } else { - - echo '
                '; - echo '
                '; - echo ''; - echo '
                '; - echo '
                '; - } - } - - } -} - -add_action( 'astra_masthead_content', 'astra_primary_navigation_markup', 10 ); - -/** - * Add CSS classes for all menu links inside WP Nav menu items. - * - * Right now, if Addon is active we add 'menu-link' class through walker_nav_menu_start_el, but if only theme is being used no clas is assigned to anchors. - * - * As we are replacing tag based selector assets to class selector, adding 'menu-link' selector to all anchors inside menu items. - * Ex. .main-header-menu a => .main-header-menu .menu-link - * - * @since 2.5.0 - * @param array $atts An array of all parameters assigned to menu anchors. - */ -function astra_menu_anchor_class_for_nav_menus( $atts ) { - - if ( ! empty( $atts['class'] ) ) { - $atts['class'] = $atts['class'] . ' menu-link'; - } else { - $atts['class'] = 'menu-link'; - } - - return $atts; -} - -add_filter( 'nav_menu_link_attributes', 'astra_menu_anchor_class_for_nav_menus', 11 ); - -/** - * Add CSS classes for all menu links inside WP Page Menu items. - * - * As we are replacing tag based selector to class selector, adding 'menu-link' selector to all anchors inside menu items. - * - * @since 2.5.0 - * @param array $atts An array of all parameters assigned to menu anchors. - */ -function astra_menu_anchor_class_for_page_menus( $atts ) { - - if ( ! empty( $atts['class'] ) ) { - $atts['class'] = $atts['class'] . ' menu-link'; - } else { - $atts['class'] = 'menu-link'; - } - - return $atts; -} - -add_filter( 'page_menu_link_attributes', 'astra_menu_anchor_class_for_page_menus' ); - -/** - * Add CSS classes from wp_nav_menu the wp_page_menu()'s menu items. - * This will help avoid targeting wp_page_menu and wp_nav_manu separately in CSS/JS. - * - * @since 1.6.9 - * @param array $css_class An array of CSS classes to be applied - * to each list item. - * @param WP_Post $page Page data object. - * @param int $depth Depth of page, used for padding. - * @param array $args An array of arguments. - * @param int $current_page ID of the current page. - * @return Array CSS classes with added menu class `menu-item` - */ -function astra_page_css_class( $css_class, $page, $depth, $args, $current_page ) { - $css_class[] = 'menu-item'; - - if ( isset( $args['pages_with_children'][ $page->ID ] ) ) { - $css_class[] = 'menu-item-has-children'; - } - - if ( ! empty( $current_page ) ) { - $_current_page = get_post( $current_page ); - - if ( $_current_page && in_array( $page->ID, $_current_page->ancestors ) ) { - $css_class[] = 'current-menu-ancestor'; - } - - if ( $page->ID == $current_page ) { - $css_class[] = 'current-menu-item'; - } elseif ( $_current_page && $page->ID == $_current_page->post_parent ) { - $css_class[] = 'current-menu-parent'; - } - } elseif ( get_option( 'page_for_posts' ) == $page->ID ) { - $css_class[] = 'current-menu-parent'; - } - - return $css_class; -} - -add_filter( 'page_css_class', 'astra_page_css_class', 20, 5 ); - -/** - * Function to get site Footer - */ -if ( ! function_exists( 'astra_footer_markup' ) ) { - - /** - * Site Footer -