/**
Theme Name: theme360
Author: Dev By Design LLC
Author URI: https://webdevbydesign.com/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: theme360
Template: astra
*/


/* Fonts */

/*  load ones in addition to those selected in theme settings; if a font looks blurry it is missing a font line like this: */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;700&display=swap');

/* classes */
.no-p {
    padding: 0!important;
}

.no-vp {
    padding: 10px 0!important;
}

.ps {
    padding: 10px!important;
}

.pms {
    padding: 20px!important;
}

.phm {
    padding-left: 30px!important;
    padding-right: 30px!important;
}

.pm {
    padding: 30px!important;
}

.pl {
    padding: 40px!important;
}
.phxl {
    padding-left: 60px!important;
    padding-right: 60px!important;
}
.padding-left-medium, .pl-m {
    padding-left: 20px;
}

/* light bg areas on main category pages and sometimes elsewhere */
.bg-theme-light-color {
    background: #bacede;
    margin-top: -1px;
}
.bg-theme-light-color h2,
.bg-theme-light-color h3 {
    color: #222;
}
.bg-theme-dark-color {
    /* 	background: #2E4B61; */
    background: #81303B;
}

/*  external links & buttons have icon */
a.wp-block-button__link[target="_blank"]:after {
    content: "\f35D";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 19px;
    padding-left: 8px;
    position: relative;
    top: -2px;
}

a.uagb-text-link[target="_blank"]:after {
    content: "\f35D";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
    padding-left: 7px;
    position: relative;
    top: -1px;
}

/* homepage dark bg section styles */
@media screen and (max-width: 1024px) {
    .bg-theme-dark-color ul {
        margin-left: 30px;
    }
}
@media screen and (max-width: 767px) {
    .uagb-columns__stack-mobile>.uagb-columns__columns-2>.uagb-column__wrap.bg-theme-dark-color {
        width: calc(100% - 60px)!important;
        margin-left: auto;
        margin-right: auto;
    }
}

section.wp-block-uagb-columns.move-up-over-banner {
    position: relative;
    top: -150px;
    margin-bottom: -150px;
}

.uppercase {
    text-transform: uppercase;
}
.letter-spacing-1 {
    letter-spacing: 1px;
}
.letter-spacing-2 {
    letter-spacing: 2px;
}

/* Area Headings on simple or featured product pages, showing underneath the h1's */
.area-heading {
    /* 	text-transform: uppercase; */
    /* 	font-weight: 500; */
    /* 	font-variant: small-caps; */
    font-size: 18px;
    color: #666;
    position: relative;
    top: -10px;
    margin-bottom: -10px!important
}


/*  Header & Menu */
@media screen and (min-width: 1280px) {
    #masthead .ast-container, .site-header-focus-item + .ast-breadcrumbs-wrapper {
        max-width: 1240px;
    }
}

/*  Logo  */
.site-branding.ast-site-identity {
    display: flex;
    align-items: center;
}
/*  It's hard to fit the logo & menu here */
@media screen and (min-width: 768px) and (max-width: 1150px) {

    #masthead .ast-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .site-branding.ast-site-identity {
        flex-direction: column;
    }
    header .custom-logo-link img {
        max-width: 120px;
        padding-bottom: 3px;
    }

    .ast-builder-menu-1 .main-header-menu .menu-item > .menu-link {
        font-size: 16px;
        padding: 0 9px;
    }

} /* end of media query */

.site-title a {
    padding-left: 6px;
    font-style: italic;
    font-weight: 600;
    font-family: 'Roboto';
    letter-spacing: .5px;
}

@media screen and (min-width: 900px) {
    .ast-builder-menu-1 .main-header-menu .menu-item > .menu-link {
        max-height: 35px;
        display: flex;
        align-items: center;
    }
}

.main-header-menu .menu-item.menu-button a:hover, .main-header-menu .menu-item.menu-button a:focus {
    color: #ffffff;
    background-color: #e4ab11;
    border-color: #e4ab11;
}
/* search icon in button */
.ast-header-button-1 .ast-custom-button:after {
    content: "\f002";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 13px;
    padding-left: 8px;
    margin-top: -1px;
}

.menu-item-user-icon-before {
    /* 	padding-left: 8px;
        position: relative;
        left: 4px; */
}
.menu-item-user-icon-before a {
    padding-left: 35px!important;
}

.menu-item-user-icon-before a:before {
    content: "\f007";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 13px;
    margin-left: -22px;
    position: absolute;
    color: currentcolor;
}

/*  Active page */
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link {
    border-bottom: 3px solid currentColor;
    box-sizing: content-box;
    position: relative;
    top: 1px;
}
/* hide  hover over active page */
.ast-desktop .ast-menu-hover-style-underline > .menu-item.current-menu-item:hover > .menu-link:before {
    display: none;
}

.ast-header-break-point .main-navigation ul .menu-item.menu-button a.menu-link {
    width: fit-content;
    padding: 10px 30px;
    margin-top: 10px
    margin-bottom: 20px;
}

/*  sub menu */
.ast-below-header-bar a.menu-link {
    max-height: 35px;
    display: flex;
    align-items: center;
}
@media screen and (min-width: 1222px) {
    .ast-below-header-bar a.menu-link:hover {
        border-bottom: 1px solid gray;
    }

    ul.submenu-with-border .menu-item.current-menu-item a {
        border-bottom: 3px solid currentcolor;

    }
}

/*  mobile menu */
li.menu-item--user-menu.menu-item {
    background: #3a3a3a;
}
li.menu-item--user-menu.menu-item a {
    color: #f0f0f0;
}
li.menu-item--user-menu.menu-item a:active {
    color: #fff;
}

/* sidebar current page */
.sidebar-main a.menu-link[aria-current="page"] {
    font-weight: 600;
}

/* General pages */

.site-content .ast-container {
    background: white;
}

#primary, .ast-separate-container #primary, .ast-separate-container.ast-left-sidebar #primary, .ast-separate-container.ast-right-sidebar #primary,
#secondary {
    margin-top: 0;
    margin-bottom: 0;
}
.ast-separate-container.ast-two-container.ast-left-sidebar #secondary {
    padding-right: 0;
    background: #ffffff;
}
.ast-separate-container.ast-two-container #secondary .widget {
    background: none;
}

@media screen and (min-width: 920px){
    .ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single {
        padding: 30px 40px 60px;
    }
}

.page .entry-header {
    margin-bottom: 0;
}

h1.entry-title {
    font-weight: 700;
    margin-bottom: .75rem;
}
/*  h1 on some posts */

.ast-single-post .entry-title, .page-title {
    font-size: 28px;
}
@media screen and (min-width: 768px) {
    .ast-single-post .entry-title, .page-title {
        font-size: 32px;
    }
}
@media screen and (min-width: 1025px) {
    .ast-single-post .entry-title, .page-title {
        font-size: 38px;
    }
}

/*  Footer  */
.menu-link--divider-above {
    padding-top: 10px;
    border-top: 1px solid #888;
    margin-top: 15px;
}


/*  Category pages */
.uagb-post__inner-wrap {
    background: none;
    box-shadow: rgb(0 0 0 / 46%) 0px 1px 4px;
}
.uagb-post-grid {
    margin: 20px auto 20px;
}

/*  article post titles  - h4  */

.uagb-post__text .uagb-post__title {
    font-size: 24px;
    line-height: 1.2;
}


.wp-block-group.product-grid .uagb-post__text .uagb-post__title {
    font-size: 20px;
    line-height: 1.2;
}

/* excerpts */
.uagb-post__excerpt {
    margin-bottom: 25px;
    line-height: 1.3em;
    font-size: 16px;
}

/*  Featured Product diff layout*/
@media screen and (max-width: 767px) {

}
@media screen and (min-width: 768px) {
    .uagb-post-grid.featured-product-grid {
        margin-top: 0;
    }

    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap {
        height: 300px;
        border: 3px solid #777777;
    }
    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap > .uagb-post__image:first-child {
        max-height: 300px;
        position: absolute;
    }
    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap > .uagb-post__image:first-child img {
        max-height: 294px;
        width: 100%;
    }
    /*  featured product: responsive width */
    .uagb-post-grid.featured-product-grid .uagb-post__items {
        margin: 0;
    }
    .uagb-post-grid.featured-product-grid article {
        width: 100%;
        padding: 0;
    }

    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap .uagb-post__text {
        width: calc(100% - 300px);
        position: relative;
        left: 45%;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap .uagb-post__text {
        width: 46%;
        position: relative;
        left: 300px;
    }
}
@media screen and (min-width: 1201px) {
    .uagb-post-grid.featured-product-grid .uagb-post__inner-wrap .uagb-post__text {
        width: calc(100% - 330px);
        position: relative;
        left: 300px;
    }
}

/*  Post Grid button links  */

.uagb-post__text .uagb-post__cta {
    background:none!important;
    padding: 0!important;
}
.uagb-post__text .uagb-post__cta a {
    color: #32526A!important;
    padding: 0!important;
    background: none;
}
.uagb-post__text .uagb-post__cta a:hover {
    color: #2E4B61!important;
    text-decoration: underline;
}

/* left sidebar padding */
.ast-separate-container.ast-two-container #secondary .widget {
    padding-left: 1.6em;
}


.sidebar-main .wp-block-group {
    padding: 0;
}

h2.widget-title {
    display: none;
}

/* Theme settings aren't working, set here instead - need to limit to only pages with sidebar or it breaks other pages! */
@media (min-width: 1025px) {
    /* 	#secondary {
                width: 25%;
        }
        #primary {
        width: 75%;
        } */
}

#secondary .sidebar-main ul {
    padding-bottom: 10px;
    margin-top: 10px;
}

#secondary li.side-menu--top-link-section > a {
    background: #32526A;
    color: #fff;
    width: 100%;
    display: block;
    padding: 20px 37px 20px 30px;
    letter-spacing: 1px;
    border-bottom: 1px solid #999;
    font-size: 22px;
}
/*  carot icon after title */
#secondary li.side-menu--top-link-section > a:after {
    content: " >";
    font-family: 'Merriweather';
    font-weight: bold;
    position: relative;
    top: -1px;
}
#secondary li.side-menu--top-link-section.current-menu-item > a:after {
    font-size: 24px;
    /* 		position: relative;
          top: 1px; */
}

#secondary li.side-menu--top-link-section > a:hover {
    background: #2E4B61;
}
.sidebar-main aside.widget nav > ul {
    background: #e3e5eb;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px;
}

.sidebar-main aside.widget nav > ul > li:not(.side-menu--top-link-section) {
    padding: 0 30px;
}
.sidebar-main aside.widget nav > ul > li:last-of-type {
    padding-bottom: 20px;
}
/* sidebar link with divider above */
.sidebar-main aside.widget nav > ul > li:not(.side-menu--top-link-section).menu-link--divider-above {
    padding: 20px 20px 0;
}

#secondary li {
    line-height: 1.5rem;
}
/* sidebar resources section nested under top link */

#secondary li.side-menu--top-link-section > ul {
    border-bottom: 2px solid #adadad;
    margin-bottom: 18px;
    display: block;
    padding-bottom: 10px;
    padding-top: 15px;
    margin-left: 25px;
    margin-right: 25px;
}

#secondary li.side-menu--top-link-section > ul li {
    padding-left: 5px;
}

ul#menu-categories-menu li a {
    padding-left: 10px;
    transition: none;
}
ul#menu-categories-menu li a:hover {
    border-left: 2px solid currentColor;
    padding-left: 8px;
}
ul#menu-categories-menu li.current-menu-item a {
    padding-left: 7px;
}

.ast-separate-container.ast-two-container #secondary .widget.widget_nav_menu, .ast-separate-container.ast-two-container #secondary .widget.widget_text {
    margin-bottom: 0;
    padding: 20px 10px 10px 30px;
}
/*  Button in sidebar */

#secondary .widget_text {
    display: flex;
    justify-content: center;
}
#secondary .widget.widget_text a {
    padding: 12px 25px;
    color: #fff;
    width: 100%;
    display: block;
    text-align: center;
    line-height: 1.4;
}

.browse-by-theme-button-widget {
    /* 	margin-top: 0; */
    padding-top: 0!important;
    width: 100%;
}
.secondary .textwidget {
    width: 100%;
}



/*  Tile Button Rows - not in use anymore  */
.wp-block-buttons.button-row.button-tiles {
    display: flex;
    justify-content: center;
}

.wp-block-buttons.button-row.button-tiles .wp-block-button {
    width: 100%;
    margin: 0 0 20px 0;
    min-height: 50px;
}
@media screen and (min-width: 768px) {
    .wp-block-buttons.button-row.button-tiles .wp-block-button {
        width: calc((100% - 90px)/2);
        margin: 0 10px 20px;
        min-height: 70px;
    }
}
@media screen and (min-width: 1024px) {
    .wp-block-buttons.button-row.button-tiles .wp-block-button {
        width: calc((100% - 90px)/3);
        min-height: 100px;
    }
}

.wp-block-buttons.button-row.button-tiles .wp-block-button .wp-block-button__link {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

nav.navigation.post-navigation {
    display: none;
}

.uagb-post-pagination-wrap .page-numbers.current  {
    color: #222!important;
    background: #b1b1b1!important;
}

/* Gallery Image Links */
figure.wp-block-gallery.has-nested-images {
    display: flex;
    flex-wrap: wrap;
}

.blocks-gallery-item figure {
    background: black;
    max-height: 200px;
}
.wp-block-gallery.columns-5 .blocks-gallery-grid, .wp-block-gallery.columns-4 .blocks-gallery-grid {
    justify-content: center;
}
.columns-5 .blocks-gallery-item, .columns-4 .blocks-gallery-item {
    /* 	max-height: 120px!important; */
    max-width: 190px;
    min-width: 150px;
    margin-right: 10px!important;
    margin-left: 10px;
}
.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image img,
.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image img,
.wp-block-gallery.columns-5 .blocks-gallery-item .has-nested-images figure.wp-block-image img,
.wp-block-gallery.columns-4 .blocks-gallery-item .has-nested-images figure.wp-block-image img,
.columns-5 .blocks-gallery-item figure,
.columns-4 .blocks-gallery-item figure {
    max-height: 120px!important;
}
.blocks-gallery-item figure img {
    opacity: .6;
}
.blocks-gallery-item figure:hover img {
    opacity: .9;
}

.wp-block-gallery.is-cropped figcaption a,
.wp-block-gallery.is-cropped .blocks-gallery-item a {
    color: white!important;
    font-weight: bold;
    font-size: 20px!important;
    letter-spacing: 1px;
    text-decoration: none;
}
.wp-block-gallery.is-cropped figcaption a:hover,
.wp-block-gallery.is-cropped .blocks-gallery-item a:hover {
    color: #e3e3e3;
    text-decoration: underline;
}

/* font awesome icons */

section svg.svg-inline--fa {
    font-size: 35px;
    margin-bottom: 20px;
}


/* colored 3 icon sections */
@media screen and (min-width: 1024px) {
    .columns-3-icons h3.has-text-align-center {
        min-height: 60px;
    }
}

/* full width gallery blocks - needed on portal page */

figure.wp-block-gallery.aligncenter.is-cropped {
    width: 100%!important;
    max-width: 100%!important;
}

/*  big gallery links */
@media screen and (min-width: 1024px) {
    .wp-block-gallery.columns-2 figcaption a,
    .wp-block-gallery.columns-3 figcaption a,
    .wp-block-gallery.columns-2 .blocks-gallery-item a,
    .wp-block-gallery.columns-3 .blocks-gallery-item a {
        font-size: 30px!important;
        /*color: #fff;*/
        /*text-decoration: none;*/
    }
    .wp-block-gallery.columns-2 figcaption a:hover,
    .wp-block-gallery.columns-3 figcaption a:hover,
    .wp-block-gallery.columns-2 .blocks-gallery-item a:hover,
    .wp-block-gallery.columns-3 .blocks-gallery-item a:hover {
        text-decoration: underline;
    }
}

/* small gallery links */
@media screen and (min-width: 900px) and (max-width: 1150px) {
    /* hard to fit 6 across obviously	 */
    figure.wp-block-gallery.columns-6 ul.blocks-gallery-grid {
        display: flex;
        justify-content: space-between;
    }
    figure.wp-block-gallery.columns-6 li.blocks-gallery-item {
        max-width: 31%;
        margin-right: 0;
        width: 31%;
    }
}
@media screen and (min-width: 1024px) {
    .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image,
    .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image {
        max-width: 25%;
        margin-right: 0;
    }
}

/* Zoho form & Portal */

#ccgclientportal-content h1, #ccgclientportal-content h2, #ccgclientportal-content h3, #ccgclientportal-content h4,
#ccgclientportal-content label {
    color: #888!important;
}
#ccgclientportal-content .loginIntput {
    border: 2px solid #32526A;
}

#zportals #ccp-nav-accordion li a svg, #zportals #ccp-nav-accordion li a i {
    color: currentcolor;
}

#ccgclientportal-content #portal-cotenier table.table.table-hover tr td {
    word-break: normal;
    line-height: 1.3em!important;
    font-weight: 400;
}

#ccgclientportal-content a,
#portal-cotenier table.module-list tr td a.record-detail-link,
#portal-cotenier table.table.table-hover thead tr th.sorting,
#portal-cotenier table.table.table-hover thead tr th.sorting_asc,
#portal-cotenier table.table.table-hover thead tr th.sorting_desc {
    color: #953744!important;
    font-family: 'Merriweather',serif;
}

#ccgclientportal-content a:hover,
#portal-cotenier table.module-list tr td a.record-detail-link,
#portal-cotenier table.table.table-hover thead tr th.sorting:hover,
#portal-cotenier table.table.table-hover thead tr th.sorting_asc:hover,
#portal-cotenier table.table.table-hover thead tr th.sorting_desc:hover {
    color: #81303b!important;
}


/*  Zoho form button */
button.btn.btn-primary.btn-fw {
    background: #C0B37D!important;
    border-radius: 0!important;
    font-weight: bold!important;
}
button.btn.btn-primary.btn-fw:hover {
    background: #CABF91!important;
}


/* Zoho Bookings form */
/* fix icon line width for better visibility */
.zb:before {
    font-weight: 600;
}

/* H1 and Header on Simple Product & Featured Product pages */

.featured_product header,
.simple_product header {
    margin-bottom: 10px!important;
}

/*  Fixing alignment of h1 with sidebar menu */

article.simple_product .entry-header .post-thumb+.ast-single-post-order {
    margin-top: 0;
}
article.featured_product .entry-header .post-thumb+.ast-single-post-order {
    margin-top: 0;
}
article.sub_category_post .entry-header .post-thumb+.ast-single-post-order {
    margin-top: 0;
}

/*  Search Results sidebar */
/* .search-results h2.widget-title {
    display: block;
} */
.menu-search-sidebar-container {
    margin-bottom: 25px;
}
#menu-search-sidebar li.side-menu--top-link-section > a:after {
    content: "\f002";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    font-size: 13px;
    padding-left: 8px;
}
#menu-search-sidebar .side-menu--top-link-section {
    margin-bottom: 15px;
}


/* Search Results page */
.ast-separate-container .ast-archive-description {
    background: none!important;
    padding: 40px 30px!important;
}
.search-results .post-content .ast-blog-featured-section {
    max-width: 150px;
    grid-row-end: 3;
    grid-row-start: 1;
    margin-bottom: 0;
}
.search-results .post-content {
    display: grid;
    grid-template-columns: 150px 1fr;
    grid-template-rows: auto 1fr;
    grid-column-gap: 30px;
}

.search .entry-header, .search .entry-content {
    grid-column: 2;
}

/* Save Favorite Ideas */
.menu-link--favorites :before {
    content: "\f005";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 13px;
    padding-right: 8px;
    /* margin-top: -1px; */
    text-decoration: none!important;
}


.pdfprnt-buttons.pdfprnt-buttons-simple_product.pdfprnt-top-right {
    margin-top: -20px;
}

.pdfprnt-buttons.pdfprnt-buttons-simple_product.pdfprnt-top-right a:before {
    content: "\f005";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 13px;
    padding-left: 8px;
    /* margin-top: -1px; */
    text-decoration: none!important;
}

.pdfprnt-buttons.pdfprnt-buttons-simple_product.pdfprnt-top-right:after {
    /*     content: "(Then Upload to My Favorites)";
        display: block;
        font-size: 14px; */
}

.entry-header .post-thumb img {
    display: none;
}

.wp-block-buttons.is-content-justification-center {
    display: flex;
}
