:root {
	--bb-yellow: #e6b70f;
	--bb-yellow-dark: #c79a00;
	--bb-purple: #4d34a0;
	--bb-purple-dark: #3b277d;
	--bb-purple-light: #f1eafa;
	--bb-black: #09080d;
	--bb-white: #ffffff;
	--bb-button-radius: 8px;
}

/* Astra owns the normal site-link colour. Keep an accessible darker hover state. */
body a:hover,
body a:focus-visible {
	color: var(--bb-purple-dark);
}

/* Use the stronger weight only for links within body copy, not linked card or post titles. */
.entry-content :where(p, li, blockquote) a:not(.button):not(.ast-button):not(.wp-block-button__link):not(.uagb-button__link):not(.menu-link),
.wp-block-post-content :where(p, li, blockquote) a:not(.button):not(.ast-button):not(.wp-block-button__link):not(.uagb-button__link):not(.menu-link) {
	font-weight: 600;
}

h4.uagb-post__title.uagb-post__text a,
.uagb-post__title a {
	font-weight: inherit;
}

.wp-post-image,
.uagb-post__image img.attachment-large.size-large {
	border-radius: 32px;
}

.ast-archive-entry-banner {
	background-color: #ffffff;
}

#secondary {
	margin: 8em 0 2.5em;
}

.wp-block-uagb-table-of-contents ol.uagb-toc__list {
	margin-left: .2em;
	list-style-position: outside;
}

.wp-block-post-template {
	margin-left: 0 !important;
}

.uagb-block-c1abbf3a.uagb-layout-grid .uagb-taxomony-box {
	align-content: center;
}

.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
	top: 5px;
}

h1.uagb-heading-text {
	font-size: 4rem;
}

h4.uagb-heading-text {
	padding-bottom: 10px;
}

h4.uagb-tax-title:hover {
	color: var(--bb-purple) !important;
}

ul.wp-block-list,
ol.wp-block-list {
	margin-bottom: 0;
	padding-bottom: 1em;
	padding-left: 1em;
}

.wpforms-hide {
	display: none !important;
}

.page-numbers.current {
	border-radius: 10px;
}

/* Desktop navigation. */
.main-header-menu .menu-item:not(.bb-menu-cta) > .menu-link,
.ast-builder-menu-mobile .main-navigation .menu-item:not(.bb-menu-cta) > .menu-link {
	font-weight: 600;
	text-decoration: none;
}

.main-header-menu .menu-item:not(.bb-menu-cta) > .menu-link:hover,
.main-header-menu .menu-item:not(.bb-menu-cta).current-menu-item > .menu-link,
.main-header-menu .menu-item:not(.bb-menu-cta).current-menu-ancestor > .menu-link,
.ast-builder-menu-mobile .main-navigation .menu-item:not(.bb-menu-cta) > .menu-link:hover,
.ast-builder-menu-mobile .main-navigation .menu-item:not(.bb-menu-cta).current-menu-item > .menu-link,
.ast-builder-menu-mobile .main-navigation .menu-item:not(.bb-menu-cta).current-menu-ancestor > .menu-link {
	color: var(--bb-purple-dark) !important;
	text-decoration: underline;
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
	text-underline-offset: 6px;
}

.bb-menu-cta > a.menu-link {
	padding: 16px 24px !important;
	border: 2px solid var(--bb-yellow);
	border-radius: var(--bb-button-radius);
	background: var(--bb-yellow);
	color: var(--bb-black) !important;
	max-height: 50%;
	line-height: 1.2;
	text-decoration: none !important;
}

.bb-menu-cta > a.menu-link:hover,
.bb-menu-cta.current-menu-item > a.menu-link,
.bb-menu-cta.current-menu-ancestor > a.menu-link {
	border-color: var(--bb-yellow-dark);
	background: var(--bb-yellow-dark);
	color: var(--bb-black) !important;
	text-decoration: none !important;
}

/* Shared public-site button system. */
.bb-button-primary,
.ast-button,
.wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary),
.wpforms-form button[type="submit"],
input#submit {
	padding: 20px !important;
	border: 2px solid var(--bb-yellow) !important;
	border-radius: var(--bb-button-radius) !important;
	background: var(--bb-yellow) !important;
	color: var(--bb-black) !important;
	font-size: 1rem;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.bb-button-primary:hover,
.bb-button-primary:active,
.bb-button-primary.is-selected,
.bb-button-primary[aria-pressed="true"],
.ast-button:hover,
.ast-button:active,
.wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) > .wp-block-button__link:active,
.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary):hover,
.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary):active,
.wpforms-form button[type="submit"]:hover,
.wpforms-form button[type="submit"]:active,
input#submit:hover,
input#submit:active {
	border-color: var(--bb-yellow-dark) !important;
	background: var(--bb-yellow-dark) !important;
	color: var(--bb-black) !important;
}

.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary) .uagb-button__link,
.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary) .uagb-button__link:hover,
.wp-block-uagb-buttons .uagb-buttons-repeater:not(.bb-button-secondary):not(.bb-button-tertiary) .uagb-button__link:active {
	color: var(--bb-black) !important;
	font-weight: 600;
}

.bb-button-secondary,
.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-secondary {
	padding: 20px !important;
	border: 2px solid var(--bb-purple) !important;
	border-radius: var(--bb-button-radius) !important;
	background: transparent !important;
	color: var(--bb-purple) !important;
	font-size: 1rem;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.bb-button-secondary:hover,
.bb-button-secondary:active,
.bb-button-secondary.is-selected,
.bb-button-secondary[aria-pressed="true"],
.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:active,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-secondary:hover,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-secondary:active {
	border-color: var(--bb-purple) !important;
	background: var(--bb-purple-light) !important;
	color: var(--bb-purple) !important;
}

.bb-button-tertiary,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-tertiary {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--bb-purple) !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-decoration: underline !important;
	text-decoration-color: currentColor !important;
	text-underline-offset: .18em;
	box-shadow: none !important;
}

.bb-button-tertiary:hover,
.bb-button-tertiary:active,
.bb-button-tertiary.is-selected,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-tertiary:hover,
.wp-block-uagb-buttons .uagb-buttons-repeater.bb-button-tertiary:active {
	color: var(--bb-purple-dark) !important;
	text-decoration-thickness: 2px !important;
}

.bb-button-primary:focus-visible,
.bb-button-secondary:focus-visible,
.bb-button-tertiary:focus-visible,
.bb-menu-cta > a.menu-link:focus-visible,
.ast-button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-uagb-buttons .uagb-buttons-repeater:focus-visible,
.wpforms-form button[type="submit"]:focus-visible,
input#submit:focus-visible {
	outline: 3px solid var(--bb-purple) !important;
	outline-offset: 3px;
}

@media (max-width: 767px) {
	h1.uagb-heading-text {
		font-size: 3rem;
	}
}
