/*!
Theme Name: GCA
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme for use on the GCA website.
Version: 1.0.0
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence-child
*/

/* Theme customization starts here
-------------------------------------------------------------- */

:root body {
    --global-kb-font-size-xxxl: clamp(4rem, 3.2692rem + 3.0769vw, 5rem);
    --global-kb-font-size-xxl: clamp(2.5rem, 2.1346rem + 1.5385vw, 3rem); /*h1*/
    --global-kb-font-size-xl: clamp(1.8rem, 1.5303rem + 1.0787vw, 2.4rem); /*h2*/
    --global-kb-font-size-lg: clamp(1.4rem, 1.3101rem + 0.3596vw, 1.6rem); /*h3*/
    --global-kb-font-size-md: clamp(1.2rem, 1.0538rem + 0.6154vw, 1.4rem); /*h4*/
    --global-kb-font-size-sm: 1rem;
    --global-kb-font-size-xsm: 0.8rem;

    --global-gca-form-invalid: #DB003C;

    /* Overwrite The Events Calendar Fonts */
    --tec-font-size-0 : var(--global-kb-font-size-xsm);
    --tec-font-size-1 : var(--global-kb-font-size-xsm);
    --tec-font-size-2 : var(--global-kb-font-size-sm);
    --tec-font-size-3 : var(--global-kb-font-size-sm);
    --tec-font-size-4 : var(--global-kb-font-size-sm);
    --tec-font-size-5 : var(--global-kb-font-size-md);
    --tec-font-size-6 : var(--global-kb-font-size-md);
    --tec-font-size-7 : var(--global-kb-font-size-lg);
    --tec-font-size-8 : var(--global-kb-font-size-xl);
    --tec-font-size-9 : var(--global-kb-font-size-xxl);
    --tec-font-size-10 : var(--global-kb-font-size-xxxl);
}

body a {
    text-decoration: none;
}
body h1 { font-size: var(--global-kb-font-size-xxl); }
body h2 { font-size: var(--global-kb-font-size-xl);  }
body h3 { font-size: var(--global-kb-font-size-lg); }
body h4 { font-size: var(--global-kb-font-size-md); }
body h5 { font-size: var(--global-kb-font-size-sm); }
body h6 { font-size: var(--global-kb-font-size-xsm); }

/*Text balance */
.balance {
    text-wrap: balance;
}

/* Hide items from logged in users */
.logged-in .hide-from-logged-in {
    display: none!important;
}

/* Video Styling. */
figure.is-type-video {
    border-radius: 20px;
    clip-path: content-box;
}
/* Set custom Video play button */
figure.is-type-video.is-provider-youtube .mejs-overlay-button {
    background: url(/wp-content/themes/kadence-child/svg/video-play-button.svg) no-repeat;
}
figure.is-type-video.is-provider-youtube .mejs-overlay:hover>.mejs-overlay-button {
    background-position: inherit;
    background: url(/wp-content/themes/kadence-child/svg/video-play-button-hover.svg) no-repeat;
}


/* Breadcrumbs
----------------------------------------------------------------*/
nav.kadence-breadcrumbs {
    margin: 5px 0;
    font-size: 0.8rem;
    color: var(--global-palette3);
}
nav.kadence-breadcrumbs a {
    color: var(--global-palette3);
}

/* Menu
----------------------------------------------------------------*/
header .header-menu-container ul.menu>li.kadence-menu-mega-enabled:not(.kadence-menu-mega-columns-1)>ul.sub-menu {
    grid-gap: 0;
}
header .header-navigation ul ul li.menu-item>a {
    padding: 1em 1em 1em 0;
}
#primary-menu > li.menu-item > ul.sub-menu {
    padding: 20px 0;
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item {
    margin: 0 0 0 2em;
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item:last-child{
    margin: 0;
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item > ul.sub-menu {
    border-top: 2px solid var(--global-palette2);
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item > ul.sub-menu > li a {
    font-weight: normal;
    transition: all 0.25s ease-in-out;
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item > ul.sub-menu > li.current-menu-item a, 
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item > ul.sub-menu > li a:hover {
    padding-left: 0.5em;
    font-weight: 700;
} 
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item a {
    transition: all 0.25s ease-in-out;
}
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item.current-menu-item a,
#primary-menu > li.menu-item > ul.sub-menu > li.menu-item a:hover {
    padding-left: 0.5em;
} 

/* Darken rest of screen on hover */
#primary-menu > li.menu-item.menu-item-has-children:hover {
    box-shadow: 0px -1965px 0px 2000px rgba(0, 0, 0, 0.4);
}
header .header-navigation .header-menu-container ul ul.sub-menu, 
header .header-navigation .header-menu-container ul ul.submenu {
    box-shadow: 0px 10px 5px -5px rgba(0,0,0,0.6),
                0px 2035px 0px 2000px rgba(0,0,0,0.4);
}
/* Sidebar and Widgets
----------------------------------------------------------------*/
/* Make last item sticky */
@media (min-width: 1024px) {
    .gca-sidebar.wp-block-kadence-column, 
    .gca-sidebar.wp-block-kadence-column .kt-inside-inner-col {
        height: 100%;
    }

    .gca-sidebar.wp-block-kadence-column .kt-inside-inner-col .wp-block-kadence-column:last-child {
        position: sticky;
        top: 0px;
    }
}

/* Latest Posts section */
.gca-latest-posts {
    margin-left: 1.4rem;
}
.gca-latest-posts.grid-cols {
    gap: 0;
} 
.gca-latest-posts h3 {
    font-weight: normal;
    line-height: 1.5;
}
.gca-latest-posts h3::before {
    content: '';
    background: url(svg/right-arrow.svg);
    width: 1rem;
    height: 1rem;
    background-size: contain;
    display: inline-block;
    background-repeat: no-repeat;
    margin-left: -1.4rem;
    margin-right: 0.4rem;
}

/* Latest Events */
.primary-sidebar h2.tribe-events-widget-events-list__header-title {
    font-weight: 700;
    font-size: 1.2rem;
    line-height: 1.3;
    color: var(--global-palette3);
}

/* Blog and Post Archives
----------------------------------------------------------------*/
#main article.entry.content-bg.loop-entry {
    padding-bottom: 2.5rem;
    border-bottom: 1px solid var(--global-palette5);
}
#main article.entry.content-bg.loop-entry .post-thumbnail-inner img {
    border: 1px solid color-mix(in hsl, var(--global-palette5) 40%, #fff);
}

/* Hide Read More for restricted content */
article.access-restricted footer.entry-footer {
    display: none;
}
.woocommerce-info.wc-memberships-restriction-message.wc-memberships-message.wc-memberships-content-restricted-message::before {
    width: 1rem;
    height: 1rem;
    display: inline-block;
    content: '';
    mask: url(svg/padlock2.svg) no-repeat 50% 50%;
    mask-size: cover;
    margin-right: 0.2rem;
    background: var(--global-palette1);
}

.archive .archive-description {
    background: var(--global-palette7);
    padding: 0.2rem var(--global-xs-spacing);
    border-radius: 10px;
    box-shadow: 3px 3px 0px 0px var(--global-palette4);
    margin: 0.5rem 0 1.5rem;
}

/* Single Blog Posts 
----------------------------------------------------------------*/
/* TEC Event List */
.single-post .site-main .tribe-events-widget-events-list .tribe-events-widget-events-list__header-title {
    font-size: var(--global-kb-font-size-xl);
    font-weight: 700;
    line-height: 1.3;
    margin-top: var(--global-md-spacing);
}
.single-post .site-main .tribe-common--breakpoint-medium.tribe-events-widget .tribe-events-widget-events-list__event-title {
    font-size: var(--global-kb-font-size-sm);
}
.single-post .site-main .tribe-events-widget-events-list .tribe-events-widget-events-list__events > .tribe-events-widget-events-list__event-row { 
    background: color-mix(in srgb, var(--global-palette2) 12%, #fff);
    padding: 20px 10px;
    margin-bottom: 0;
}
.single-post .site-main .tribe-events-widget-events-list .tribe-events-widget-events-list__events > .tribe-events-widget-events-list__event-row:nth-child(even) { 
    background: color-mix(in srgb, var(--global-palette2) 4%, #fff);
}



/* FacetWP
----------------------------------------------------------------*/
.facetwp-counter {
    display: none;
}
div.facetwp-facet {
    margin-bottom: 0;
}
.facetwp-facet.facetwp-type-search .facetwp-input-wrap,
.facetwp-facet.facetwp-type-search .facetwp-input-wrap input.facetwp-search {
    width: 100%;
    min-width: 200px;
}
.facetwp-type-search .facetwp-input-wrap .facetwp-icon::before {
    background: url(svg/search.svg) no-repeat;
    width: 28px;
    background-position: -2px 50%;
    background-size: 25px 25px;
}
.facetwp-type-search .facetwp-input-wrap .facetwp-icon.f-loading:before {
    animation: spin2 700ms infinite linear;
}
@keyframes spin2 {
    from { transform: rotate(0deg) translateX(5px) rotate(0deg); }
    to   { transform: rotate(360deg) translateX(5px) rotate(-360deg); }
}

.facetwp-facet.facetwp-facet-reset_all.facetwp-type-reset {
    margin-top: 1rem;
}
/* FacetWP Pagination */
.facetwp-facet.facetwp-facet-pagination.facetwp-type-pager {
    text-align: center;
    margin: 2rem 1rem;
}
.facetwp-facet.facetwp-facet-pagination.facetwp-type-pager .facetwp-pager {
    display: flex;
    max-width: 400px;
    justify-content: center;
    margin: 0 auto;
    flex-wrap: wrap;
    gap: 10px;
    
}
.facetwp-facet.facetwp-facet-pagination.facetwp-type-pager .facetwp-page {
    background: color-mix(in hsl, var(--global-palette5) 40%, #fff);
    padding: 5px 10px;
}
.facetwp-facet.facetwp-facet-pagination.facetwp-type-pager .facetwp-page.active {
    background: var(--global-palette1);
    color:var(--global-palette9);
}

.facetwp-facet.facetwp-facet-reset_link.facetwp-type-reset a.facetwp-reset {
    font-size: var(--global-font-size-small);
    color: var(--global-palette1);
}
.facetwp-facet.facetwp-facet-reset_link.facetwp-type-reset a.facetwp-reset:hover {
    color: var(--global-palette2);
}

/* Sidebar Component Styling */
div.gca-side-box .kt-inside-inner-col {
    display: grid;
    grid-template-columns: 35px auto;
    column-gap: 10px;
  }
  div.gca-side-box .kt-inside-inner-col .wp-block-kadence-icon {
    grid-row-start: 1;
    grid-row-end: span 2;
    margin-top: 8px;
  }
  div.gca-side-box .kt-inside-inner-col .gca-profile-box-detail {
    grid-column-start: 2;
  }
  /* Use own CSS dividers, not Kadence ones */
  div.gca-side-box .kt-inside-inner-col ul.kb-dynamic-list.kb-dynamic-list-layout-horizontal.kb-dynamic-list-style-basic.kb-dynamic-list-divider-none.gca-genres {
    row-gap: 0;
  }
  div.gca-side-box .kt-inside-inner-col .gca-genres li a {
    padding-right: 0.5rem;
    border-right: 2px solid var(--global-palette5);
  }
  div.gca-side-box .kt-inside-inner-col .gca-genres li:last-child a {
    padding-right: 0;
    border-right: none;
  }
@media ( min-width: 768px ) {
    .gca-member-logo .kt-inside-inner-col {
        aspect-ratio: 1;
        max-width: 300px;
    }
}
.gca-member-logo .kt-inside-inner-col {
    max-width: 300px;
    margin: 0 auto;
}
/* Member Profile Archive 
----------------------------------------------------------------*/
body div.custom-archive-loop-item.member_profile {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    background-color: var(--global-palette9);
    border-radius: 10px!important;
    padding: 20px;
}
.custom-archive-loop-item.member_profile .gca-directory-top-row {
    grid-column: 1 /2;
    grid-row: 1 / 2;
}
.custom-archive-loop-item.member_profile .gca-directory-middle-row {
    grid-column: 1 /2;
    grid-row: 2 / 3;
}
.custom-archive-loop-item.member_profile .gca-directory-bottom-row {
    grid-column: 1 /2;
    grid-row: 3 / 4;
}
.custom-archive-loop-item.member_profile .gca-member-title-group {
    align-self: end;
    min-width: 130px;
}
.custom-archive-loop-item.member_profile .gca-member-excerpt {
    padding-top: 20px;
    border-bottom: 1px solid var(--global-palette5);
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.custom-archive-loop-item.member_profile figure.gca-member-logo {
    margin: 0;
    border: 1px solid var(--global-palette5);
    border-radius: 5px;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    aspect-ratio: 1;
}
.custom-archive-loop-item.member_profile figure.gca-member-logo img {
    width: auto;
    height: auto;
}

/* My Account Page 
----------------------------------------------------------------*/
/* Logged Out View */
.woocommerce-page.woocommerce-account:not(.logged-in) .kt-inside-inner-col .woocommerce {
    padding: 2rem 1rem;
    background: var(--global-palette6);
    border-radius: 10px;
    color: var(--global-palette9);
    max-width: 600px;
    margin: 0 auto;
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce:not(:has(.woocommerce-account-join-team)) .woocommerce-form-login {
    border: 0;
    margin: 0;
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce h2 {
    margin: 0;
    text-align: center;
    color: var(--global-palette9);
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-form-login a,
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-form-login label {
    color: var(--global-palette9);
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-error {
    color: var(--global-palette3);
}

/* Logged Out View - Team Member invite */
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce:has(.woocommerce-account-join-team) {
    max-width: 960px;
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-account-join-team .col-1 form {
    display: flex;
    flex-direction: column;
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-account-join-team .col-1 form p.woocommerce-form-row {
    width: 100%;
}
.woocommerce-page.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-account-join-team .col-2 form {
    margin-top: 2em;
}

.woocommerce-page .woocommerce form .form-row label {
    color: var(--global-palette4);
}
.woocommerce table.my_account_orders .button {
    margin-right: 5px;
}

/* Header 
----------------------------------------------------------------*/
/* Hide cart icon if empty */
.header-cart-wrap:has(.header-cart-empty-check.header-cart-is-empty-true) {
    display: none;
}

/* Footer 
----------------------------------------------------------------*/
/* Extend Email field */
footer .site-footer-top-section-2 .footer-widget6 .kb-advanced-form .wp-block-kadence-advanced-form-email {
    flex-grow: 1;
}

/* Membership Product Pages
----------------------------------------------------------------*/
.page .gca-membership-product-join-now table.variations {
    margin: 0;
}
.page .gca-membership-product-join-now table.variations tr {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.page .gca-membership-product-join-now table.variations tr th,
.page .gca-membership-product-join-now table.variations tr td {
    width: 100%;
    text-align: left;
}
.page .gca-membership-product-join-now table.variations tr td.value {
    display: flex;
    flex-direction: column;
}
.page .gca-membership-product-join-now .single_variation_wrap .woocommerce-variation.single_variation {
    margin-bottom: 1rem;
}
.page .gca-membership-product-join-now .single_variation_wrap .price,
.page .gca-membership-product-join-now .wp-block-woocommerce-product-price .wc-block-grid__product-price {
    font-weight: 700;
    font-size: var(--global-kb-font-size-md);
    margin-top: 1rem;
}
.page .gca-membership-product-join-now .single_add_to_cart_button.button {
    width: 100%;
}
.page .gca-membership-product-join-now .single_add_to_cart_button.button.disabled {
    display: none;
}

.single-product .wc-memberships-for-teams-team-fields-wrapper {
    display: none;
}
/* WooCommerce - Global 
----------------------------------------------------------------*/
body input[type="text"], 
body input[type="email"],
body input[type="url"],
body input[type="password"],
body input[type="search"],
body input[type="number"],
body input[type="tel"],
body input[type="range"], 
body input[type="date"],
body input[type="month"],
body input[type="week"],
body input[type="time"],
body input[type="datetime"],
body input[type="datetime-local"],
body input[type="color"], 
body textarea {
    color: var(--global-palette3);
}


/* WooCommerce - Checkout Page
----------------------------------------------------------------*/
.woocommerce-checkout .woocommerce form .woocommerce-billing-fields .form-row,
.woocommerce-checkout .woocommerce form .woocommerce-account-fields .form-row {
    padding: 5px;
    border: 1px solid var(--global-palette4);
    border-radius: 5px;
}
.woocommerce-checkout .woocommerce form .woocommerce-billing-fields .form-row.woocommerce-invalid-required-field,
.woocommerce-checkout .woocommerce form .woocommerce-account-fields .form-row.woocommerce-invalid-required-field {
    border: 2px solid var(--global-gca-form-invalid);
}
.woocommerce-checkout .woocommerce form .form-row label {
    line-height: 1.2;
    font-weight: normal;
    font-size: var(--global-kb-font-size-xsm);
    color: var(--global-palette4);
}
/* Not for T&Cs and Automate Woo */
.woocommerce-checkout .woocommerce form .form-row label .woocommerce-terms-and-conditions-checkbox-text,
.woocommerce-checkout .woocommerce form .form-row label .automatewoo-optin__checkbox-text {
    font-size: 1rem;
    color: var(--global-palette3);
}
.woocommerce-checkout .woocommerce input {
    border: none;
    padding: 0;
}
.woocommerce-checkout .woocommerce .woocommerce-privacy-policy-text {
    margin-bottom: 1rem;
}
.woocommerce-checkout .woocommerce .select2-container--default .select2-selection--single {
    border: none;
}
.woocommerce-checkout .woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--global-palette3);
}
.woocommerce-checkout .woocommerce .shop_table.woocommerce-checkout-review-order-table {
    padding: 20px;
    background: var(--global-palette7);
    border-radius: 10px;
    border-collapse: separate;
}
.woocommerce-checkout .woocommerce table.shop_table th,
.woocommerce-checkout .woocommerce table.shop_table td {
    padding: 10px 20px;
}

div.gca-confetti-block div.kt-row-column-wrap {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}
div.gca-confetti-block div.kt-row-column-wrap > div.wp-block-kadence-column {
    grid-row-start: 1;
    grid-column-start: 1;
}

body.woocommerce-cart table.cart .product-name a, 
body.woocommerce-checkout table.cart .product-name a, 
#add_payment_method table.cart .product-name a {
    color: var(--global-palette3);
}

.tribe-checkout-backlinks a {
    padding-right: 1rem;
}

.single-product nav.kadence-breadcrumbs {
    margin: 5px 0;
}

/* Ticket #67 - Donation Product */
/* Hide price */
.single-product.postid-40517 p.price {
    display: none;
}

.single-product.postid-40517 .wc-pao-addon-custom-price {
    max-width: 200px;
}

/* Fix Woocommerce show password button 
 * Added : 15-03-2025
 */
 /* .woocommerce form .password-input .show-password-input, .woocommerce-page form .password-input.show-password-input {
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
    background: none;
	padding: 0.6rem;
} */