/**
Theme Name: Ultimate (Astra Child)
Author: Factors Group
Author URI: http://factorsgroup.com/
Description: Astra-based child theme for myultimate.ca
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ultimate
Template: astra
*/

/* Gravity Forms */
.gform_wrapper select {
    line-height: 2;
    padding-left: 10px;
}

/* Bootstrap */
.postion-relative {
	position: relative;
}

/* Homepage Banner */


@media (min-width: 767.5px) {
	
	.home-banner-text {
		position: absolute;
		z-index: 2;
		left: 0;
	}

	.home-banner-hero {
		position: relative;
		z-index: 1;
		margin-right: -2%;
	}	
	
}
@media (min-width: 920px) and (max-width: 1200px) {
	
	.home-banner-text  > h1.wp-block-heading.h1-override {
		font-size: 4rem;
	}
	
}

@media (min-width: 1130px) {
	
	.home-banner-hero {
		margin-right: -16%;
	}	
	
}

@media (min-width: 1640px) {
	
	.home-banner-text {
		left: -10%;
	}
	
}

/* Products/WooCommerce */
.wc-block-grid .wc-block-grid__products .wc-block-grid__product a img {
	margin-bottom: 0 !important;
}

.wc-block-components-product-image {
	margin-bottom: 0 !important;
}

button.wc-block-components-pagination__page--active[disabled] {
	color: var(--ast-global-color-0)
}

/* Single Product Page  */
.single .product_meta .sku_wrapper,
.single .product_meta .posted_in {
	display: block !important;
}

/* Hide Single Prodcut Page Tags */
.single .product_meta .tagged_as {
	display: none !important;
}

/* Categories */
.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item__image {
	border-color: transparent !important;
	padding:4px !important;
}

.wc-block-product-categories-list.wc-block-product-categories-list--depth-1.wc-block-product-categories-list--has-images {
    margin-left: 8px !important;
    margin-bottom: 8px !important;
}

.wc-block-product-categories-list.wc-block-product-categories-list--depth-1.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item {
	margin-left: 0 !important;
}

.wc-block-product-categories-list li.wc-block-product-categories-list-item {
    padding-left: 8px !important;
}

.wc-block-product-categories-list.wc-block-product-categories-list--depth-1.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item .wc-block-product-categories-list-item__image.wc-block-product-categories-list-item__image--placeholder {
    display: none !important;
}

/* hide shoping cart on product hover */
a.ast-on-card-button.ast-select-options-trigger.product_type_simple {display: none !important}

div.wc-block-product-categories-list.wc-block-product-categories-list--depth-1.wc-block-product-categories-list--has-images {
border: 1px solid red;
}

.mm-section :hover {
	background-color: #01824c10 !Important;
	border-radius: 8px !Important;
}

.summary.entry-summary .product_title.entry-title {
	font-weight: bold;
	font-size: 3em;
}

/* Footer Policies Menu*/

#astra-footer-menu .menu-item > a,
#menu-site-policies-menu .menu-item > a {
    color: white;
    font-size: 14px;
    font-size: 0.875rem;
    padding-left: 0px;
    padding-right: 12px;
}


#menu-site-policies-menu {
    margin: 0;
    list-style: none;
    background: inherit;
		font-size: 0.75rem;
}

#astra-footer-menu a,
#menu-site-policies-menu a {
	color: white !important;
}
#menu-site-policies-menu > .menu-item > .menu-link {
    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: flex;
}

@media (max-width: 921px) {
    #menu-site-policies-menu {
        margin-top: 0px;
    }

    #menu-site-policies-menu .menu-item > a {
        padding-top: 0px;
        padding-bottom: 0px;
        padding-left: 8px;
        padding-right: 8px;
    }
}

@media (max-width: 544px) {
    #menu-site-policies-menu {
        margin: 0px;
    }
	
    #menu-site-policies-menu .menu-item > a {
        padding-top: 4px;
        padding-bottom: 4px;
        padding-left: 0px;
        padding-right: 0px;
    }
}

/* Bug Fixes */
@media (max-width: 544px) {
	h1, .entry-content h1,
	h1.wp-block-heading.h1-override{
		font-size: 36px !important;	
	}
	h2.wp-block-heading {
		margin-bottom: 0!important;
	}
}

/* Products Page style */
h1.page-title.ast-archive-title {
	font-size: 54px;
	font-weight: 700;
    font-family: 'Oswald', sans-serif;
    line-height: 1.1em;
    text-transform: uppercase;
}

@media (max-width: 544px) {
	h1.page-title.ast-archive-title {
		font-size: 36px !important;	
	}
}

/* Products Details style */ 
table.fg-table {
	margin-top: 1.5rem;
}

table.fg-table td {
    padding: 4px 8px;
    font-size: 12px;
    line-height: 1.4;
}

@media only screen and (max-width: 1023px) {
	/*remove flex for spacing on mobile */
	.product-template-default.single-product .wp-block-uagb-container, 
	.product-template-default.single-product .woocommerce-product-gallery, 
	.product-template-default.single-product .uagb-container-inner-blocks-wrap {
		display: block !important;
	}
	
    .ast-accordion-content .uagb-cta__wrap {
        text-align: left !important;
    }

    table.fg-table td {
        padding: 2px;
        vertical-align: top;
    }
	
	table.fg-table td:first-child {
        width: 75%;
	}
	
	table.woocommerce-product-attributes.shop_attributes th.woocommerce-product-attributes-item__label {
		width: 20% !important;
	}
	ul.fg-features {
		margin-top: .75rem;
		margin-left: 1.5rem;
	}
}

/* hide empty p tags */
p:empty {
    display: none;
}
/* mobile menu */
li.menu-item.menu-item-object-custom.menu-item-has-children .sub-menu .menu-link>span.ast-icon.icon-arrow {
    display: none !important;
}

.menu-item-has-children > a {
    pointer-events: none; 
    cursor: default;
}
@media (min-width: 544px) and (max-width: 921px) {
	.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
		 line-height: 3.75;
	}
}
@media (max-width: 921px) {
	.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .ast-menu-toggle,
	.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .menu-link {
		color: white;
	}		
    .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
        top: 10px;
        width: 96%;
        display: flex;
        align-items: end;
        justify-content: end;
        z-index: 2;
		border-color: transparent !important;
    }
	
	.sub-menu .menu-item.menu-item-type-custom.menu-item-object-custom > a {
		padding-left: 20px !important;
	}
}

.ast-mobile-popup-drawer.active .menu-toggle-close:focus {
	border-color: transparent !important;
}
/* Search results */


.search .ast-row {
	row-gap: 20px;
	column-gap: 20px;
}

.search article {
    box-shadow: none !important;
	border: 1px solid #f1f1f1 !important;
	border-radius: 8px;
}

@media (min-width: 678px) {
	.search article {
		max-width: calc(50% - 40px);
	}
}

@media (min-width: 1023px) {
	.search article {
		max-width: calc(33% - 40px);
	}
}

.search .post-thumb-img-content.post-thumb > a {
	display: block;
	width: 100%;
	padding-top: 1rem;
	text-align: center;
}

.search img.attachment-large.size-large.wp-post-image {
	margin-left: auto;
	margin-right: auto;
}

.search .entry-header.ast-blog-single-element.ast-blog-meta-container {
    display: none !important;
}

.search .ast-archive-description {
    padding-left: 24px !important;
    padding-right: 24px;
}

a.ast-on-card-button.ast-select-options-trigger.product_type_variable.add_to_cart_button {
    display: none !important;
}

@media (max-width:768px) {
section#block-18 {
	display: flex;
    padding: 20px;
    margin: 0;
    justify-content: center;
}
}

@media (min-width:769px) {
	#language-select {
		margin-top: 12px;
	}
}

/* language-select' */
#language-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none; 
    background-color: #fff;
    border: 1px solid #ccc; 
    padding: 7px;
    padding-right: 26px; 
    font-size: 14px; 
    width: 100%; 
    box-sizing: border-box;
    border-radius: 5px;
    cursor: pointer; 
    background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23333" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-down"><polyline points="6 9 12 15 18 9"></polyline></svg>');
    background-repeat: no-repeat; 
    background-position: right 10px center; 
    background-size: 15px; 
	letter-spacing: 1px;
	margin-right: 8px;
}

#language-select:hover {
    border-color: #999;
}

#language-select:focus {
    outline: none; /* Remove the default outline */
    border-color: #666; /* Change border color when focused */
}

button.reset_variations,
.reset_variations,
a.reset_variations,
.single_variation_wrap {
    display: none !important;
	height: 0 !important;
}


.woocommerce-js div.product form.cart .variations {
	border-bottom: none !important;
}


/* *** SELECT STYLING START *** */

select.fg-custom-select {
    /* opt into customizing select */
    &,
    &::picker(select) {
        appearance: base-select;
    }

    field-sizing: content;
    cursor: pointer;
    background: none;
    padding: 0;
    font-size: 0.75em;

    /* picker dropdown styling */
    &::picker(select) {
        transition:
            opacity .2s ease,
            transform .2s ease,
            display .2s allow-discrete,
            overlay .2s allow-discrete;
        background: light-dark(var(--ast-global-color-0), var(--ast-global-color-0));
        border-radius: 5px;
        padding: 0;
        margin-block: 5px;

        @media (forced-colors: none) {
            border: none;
        }
    }

    &::picker-icon {
        display: none;
    }

    /* media elements */
    img,
    svg,
    video {
        block-size: auto;
        max-inline-size: 100%;
        display: block;
    }

    /* closed state */
    &:not(:open)::picker(select) {
        opacity: 0;
        transform: scale(.95);
    }

    /* open state */
    &:open::picker(select) {
        opacity: 1;
        transform: scale(1);
    }

    /* selected option transition */
    selectedcontent>* {
        transition:
            display 1s allow-discrete,
            opacity 1s;

        @starting-style {
            opacity: 0;
            transform: translateY(10px);
        }

        opacity: 1;
    }

    /* button/trigger styling */
    >button {
        display: inline-flex;
        border-radius: 0;
        background: rgba(255,255,255,.5);
        padding: 0.5rem;
        text-transform: none;
        font-size: 0.75rem;
        border: none;
        &:focus-visible {
            outline-offset: -3px;
        }

        &:has(selectedcontent) {
            align-items: start;
            min-inline-size: 20ch;
            flex-direction: column;
        }

        >div {
            inline-size: 100%;
            display: flex;
            justify-content: space-between;
            gap: 1rem;
        }

        & svg {
            inline-size: 2ch;
        }
    }

    &:open>button svg {
        transform: rotate(.5turn);
    }

    /* dropdown list styling */
    >div {
        min-inline-size: calc(anchor-size(self-inline) + 20px);
        scroll-behavior: smooth;

        &.scrollable {
            max-block-size: 20lh;
            scrollbar-width: thin;
        }

        & label {
            display: block;
            position: sticky;
            top: 0;
            z-index: 1;
            padding-inline: 1rem;
        }

        & option {
            display: flex;
            align-items: center;
            background: white;
            gap: 1rem;
            padding-block: .25rem;
            padding-inline: 1rem;
            cursor: pointer;
            outline-offset: -1px;

            &::checkmark {
                font-weight: 700;
            }

            &:focus-visible {
                outline-offset: -1px;
            }

            &:is(:focus, :hover) {
                background: oklch(from var(--ast-global-color-0) l c h / 75%);
                color: inherit;
            }

            &:is(:checked) {
                background: var(--ast-global-color-0);
                font-weight: 700;
            }
        }
    }
    /* custom select utility classes */
    .custom-option {
        display: flex;
        gap: 1rem;
        align-items: center;
        justify-content: space-between;
    }
}
@media( max-width: 768px ){
	select.fg-custom-select {
		width: 100%;
		border-radius: 0;
		& button {
			width: 100%;
			opacity: 0.85;
		}
        &::picker(select) {
            border-radius: 0;
        }
}

/* *** CUSTOM SELECT STYLING END *** */