/*
 Theme Name:     Carlsbad Chamber of Commerce
 Theme URI:      https://carlsbad.org
 Description:    Child Theme for GeneratePress
 Author:         Ukiiki Web Design
 Author URI:     https://ukiiki.com
 Template:       generatepress
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */
/*
 * Site Header
 */

body:not(.home) .gb-site-header:not(.gb-is-sticky) {
    background: var(--accent-50);
}

body .gb-site-header.gb-is-sticky {
    background: var(--white);
}

header .btn {
	padding-inline: 1em;
}

:where(.current-menu-parent, .current-menu-item) > a {
    font-weight: bold;
}

@media (min-width: 1024px) {
	.gb-menu--base .menu-item:hover>.gb-sub-menu {
		display: block;
	}
}

.gb-menu > li > .gb-menu-link {
	border: 1px solid transparent;
}

.gb-menu > li > .gb-menu-link:is(:hover,:focus-visible),
.gb-menu > li:is(:hover,:focus-visible) > .gb-menu-link {
    background-color: var(--primary-50);
    border: 1px solid var(--primary-100);
    border-radius: 0.5em 0.5em 0 0;
    border-bottom-color: var(--primary-50);
	position: relative;
    z-index: 999;
}

.gb-menu > li > .gb-menu-link:is(:hover,:focus-visible):not(:has(+ .sub-menu)) {
    background-color: var(--primary-50);
    border: 1px solid var(--primary-100);
    border-radius: 0.5em 0.5em 0.5em 0.5em;
}

.gb-menu > li > .gb-menu-link + .sub-menu {
    border-radius: 0 0.5em 0.5em 0.5em;
	left: 0px;
	right: unset;
	margin-top: -1px;
}

.gb-menu-link:has([aria-expanded="true"]):not(:hover,:focus-visible) + .sub-menu {
    border-radius: 0.5em;
}

@media (max-width: 1024px) {
	.gb-menu > li:not(.gb-sub-menu--open):not(:has(.current-page-ancestor)) > .gb-menu-link:has(+ .sub-menu) {
		background-color: unset;
		border: 1px solid transparent;
		border-radius: 0.5em 0.5em 0.5em 0.5em;
	}
	
	.gb-menu > li > .gb-menu-link + .sub-menu {
    	border-radius: 0 0 0.5em 0.5em;
	}
}

/*
 * Typography
 */

.headline-primary.headline-primary {
	color: var(--primary);
}

/* Footer */
.generate-back-to-top.generate-back-to-top {
    bottom: 3em;
    right: var(--space-inline);
}

footer#footer a:not(.btn):not(.gb-social-network):not(.gb-contact):not([aria-current="page"]):not(:hover):not(:focus-visible) {
    opacity: 0.6;
}

/*
 * Member Profile Pages
 */
.member-listings .member-listing:not(:last-child) {
    margin-bottom: 2em;    
}

.member-listings .member-listing__products-services {
    margin-block: 1em;
}

.member-listings .member-listing__products-services .member-inner {
    position: relative;
    padding-left: 1.5rem;
}

.member-listings .member-listing__products-services .member-inner:before {
    content: '';
    display: inline-block;
    height: 16px;
    width: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cg fill='%23000000' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16,22l-6-4-6,4v-14c0-1.105.895-2,2-2h8c1.105,0,2,.895,2,2v14Z' fill='none' stroke='%23000000' stroke-width='2'%3E%3C/path%3E%3Cpath d='m9,2h7c2.209,0,4,1.791,4,4v12' fill='none' stroke='%23000000' stroke-width='2'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
    position: absolute;
    left: 0;
    top: 4px;
}

/* Member Socials */
.member-social-networks {
    display: flex;
    gap: var(--space-xs);
    margin: 0!important;
    list-style: none;
}

.member-social-networks a {
    text-decoration: none;
    line-height: 1;
	display: flex;
}

.member-social-networks .bwd-external-link {
	display: none;
}

/* Reset Description HTML */
.member-listing__description :where(table, tbody, thead,tr, td, th) {
    border: none;
    padding: unset;
    margin: unset;
}

/*
 * Member Directory Listing
 */
.card-member__logo {
    --size: 120px;
}

.card-member__logo.card-member__logo img {
	max-width: 90%!important;
    max-height: 90%!important;
	object-fit: contain;
	aspect-ratio: inherit;
}

.card-member__logo.card-member__logo [src="/wp-content/uploads/2025/09/carlsbad-chamber-of-commerce-favicon.png"] {
    filter: grayscale();
    height: var(--size);
    width: var(--size);
}

.card-member__logo:not(:has(img)):after {
    content: '';
    display: block;
    filter: grayscale();
    height: var(--size);
    width: var(--size);
    background: url("/wp-content/uploads/2025/09/carlsbad-chamber-of-commerce-favicon.png");
    background-size: contain;
}

/* Breadcrumbs */
.breadcrumb {
    margin-left: 0!important;
}
.breadcrumb .breadcrumb-item {
    font-size: var(--fs-text-xxs)
}

.breadcrumb .breadcrumb-item:last-child {
    font-weight: bold;
}

.breadcrumb li::after {
    color: var(--base-300);
}

/*** HERO DARK TEST ***/
body:not(.home):has(.entry-content > :first-child:is(.hero__dark)) .gb-site-header:not(.gb-is-sticky) {
    background-color: var(--primary-800);
    .gb-menu > li > .gb-menu-link:not(:hover, :focus-visible, :focus-within):not(:has(+ :hover)) {
        color: #fff;
    }

    .btn--primary-outline {
        color: #fff;
        border-color: #fff;
    }

    .btn--primary-outline:is(:hover, :focus-visible) {
        background: #fff;
        color: var(--primary-700);
    }

    .btn--primary {
        color: var(--primary-700);
        border-color: #fff;
        background: #fff;
    }

    .btn--primary:is(:hover, :focus-visible) {
        background: var(--accent);
        border-color: var(--accent);
        color: var(--primary-700);
    }
}

.hero__dark.hero__dark {
    background-color: var(--primary-800);
}

.hero__half.hero__dark:after {
    filter: brightness(100);
}

.hero__dark.hero__dark h1 {
    color: #fff;
}

/* Brand Decorations */
[class*="has-deco-border--"],
[class*="has-deco-border-hover--"]{
	--b-size: 4px;
    position: relative;
    overflow: hidden;
}

[class*="has-deco-dots--"] {
	--d-size: 12px;
    position: relative;
    display: inline-block;
}

[class*="has-deco-border--"]::after,
[class*="has-deco-border-hover--"]:hover::after,
[class*="has-deco-dots--"]::after {
	--b-color: var(--accent);
    content: '';
    position: absolute;
    display:block;
    background: var(--b-color);
}

.has-deco-border--right::after,
.has-deco-border--left::after,
.has-deco-border-hover--right:hover::after,
.has-deco-border-hover--left:hover::after{
    top: 0;
    width: var(--b-size);
    height: 100%;
}

.has-deco-border--right::after,
.has-deco-border-hover--right:hover::after{
    right: 0;
}

.has-deco-border--left::after, 
.has-deco-border-hover--left:hover::after {
    left: 0;
}

.has-deco-border--top::after,
.has-deco-border--bottom::after,
.has-deco-border-hover--top:hover::after,
.has-deco-border-hover--bottom:hover::after{
    left: 0;
    width: 100%;
    height: var(--b-size);
}

.has-deco-border--top::after,
.has-deco-border-hover--top:hover::after {
    top: 0;
}

.has-deco-border--bottom::after,
.has-deco-border-hover--bottom:hover::after {
    bottom: 0;
}

[class*="has-deco-dots--"]::after {
	--d-distance: 1.5;
	--dots: calc(var(--d-size) * var(--d-distance)) 0 var(--b-color), calc(var(--d-size) * var(--d-distance) * 2) 0 var(--b-color), calc(var(--d-size) * var(--d-distance) * 3) 0 var(--b-color), calc(var(--d-size) * var(--d-distance) * 4) 0 var(--b-color);
    display: inline-block;
    width: var(--d-size);
    height: var(--d-size);
    border-radius: 50%;
	top: 50%;
    transform: translateY(-50%);
	box-shadow: var(--dots);
}

.has-deco-dots--right::after {
    left: calc(100% + var(--d-size));
    box-shadow: var(--dots);
}

.has-deco-dots--top::after {
    top: -12px;
    display: block;
}