/*
 * VARIABLES
 */
:root {
}



/*
 * GLOBAL ELEMENTS
 */

/* Container */
.wp-site-blocks {
	padding-bottom: 0;
}

:where(.wp-site-blocks) > main.wp-block-group {
	margin-block-start: 6px;
}

.mobile-only {
	display: none;
}

/* Container: MOBILE-only */
@media (max-width: 999px) {
	.wp-site-blocks {
		overflow-x: hidden;
	}
	
	.mobile-only {
		display: block;
	}
	
	span.mobile-only {
		display: inline;
	}
	
	.desktop-only {
		display: none !important;
	}
}

/* Header */
.is-position-sticky {
	position: sticky;
	position: -webkit-sticky;
	top: 0; /* required */
}

/* Navigation: Overriding default breakpoints */
.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
	width: 40px;
	height: 40px;
}

/* See ~assets/styles/block-mega-menu.css for items related to mega menu */

/* Footer */
:root :where(footer.wp-block-template-part .wp-block-page-list a) {
	text-decoration: none;
}

footer.wp-block-template-part {
	margin-block-start: 0;
}

footer.wp-block-template-part .wp-block-navigation ul {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	column-count: 2;
	height: 160px; /* @Flag - this may need to change if menu items increase */
	width: 100%;
	row-gap: 15px;
}

footer.wp-block-template-part .wp-block-navigation ul li {
	width: 50%;
}

/* Headings */
h1.hidden-page-title {
	display: none;
}


/*
 * GLOBAL CLASSES (to apply to any blocks)
 */

@media (max-width: 999px) {
	.mobile-full-width {
		margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
		margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
	}
}

/*
 * CUSTOMIZATIONS OF BLOCKS
 */

/* Buttons block */
.wp-block-button .wp-block-button__link {
	transition: 0.5s opacity;
}

.wp-block-button .wp-block-button__link:hover {
	opacity: .8;
}

/* Carousel block */
.slick-dots li {
	width: 40px;
}

.slick-dots li button {
	width: 40px;
	height: 40px;
}

.wp-block-cb-carousel .slick-prev {
	left: -30px;
}

.slick-dots li button:before, .wp-block-cb-carousel .slick-next:before, .wp-block-cb-carousel .slick-prev:before {
	color: var(--wp--preset--color--cbmc-orange);
	font-size: 30px;
	opacity: 0.5;
}

.slick-dots li.slick-active button:before, .wp-block-cb-carousel .slick-next:hover:before, .wp-block-cb-carousel .slick-prev:hover:before {
	color: var(--wp--preset--color--cbmc-orange);
	opacity: 1;
}

/* Carousel block: MOBILE-only */
@media (max-width: 999px) {
	.wp-block-cb-carousel .slick-next:before, .wp-block-cb-carousel .slick-prev:before {
		display: none;
	}
}

/* Cover block: CBMC-specific: MOBILE-only */
@media (max-width: 999px) {
.cbmc-corner-overlay-header>.wp-block-cover {
	padding: 0 0 0 0 !important;	
}

.cbmc-corner-overlay-header>.wp-block-cover .wp-block-column.has-background, .cbmc-corner-overlay-header>.wp-block-cover .wp-block-group.has-background {
	border-radius: 0 !important;
}

.cbmc-corner-overlay-header>.wp-block-cover .wp-block-columns.is-layout-flex {
	gap: 0;
}
}

/* Heading Block: MOBILE-only */
@media (max-width: 999px) {
	.wp-site-blocks h1 {
		font-size: 2rem;
	}
	
	.wp-site-blocks h2 {
		font-size: 1.45rem;
	}
	
	.wp-site-blocks h3 {
		font-size: 1.25rem;
	}
	
	.wp-site-blocks h4 {
		font-size: 1.12rem;
	}
	
	.wp-site-blocks h5, .wp-site-blocks h6 {
		font-size: 1rem;
	}
}

/* Pagination block */
nav.wp-block-query-pagination {
	font-weight: bolder;
}

nav.wp-block-query-pagination a {
	text-decoration: none;
}

nav.wp-block-query-pagination .page-numbers {
	margin: 0 8px;
}

nav.wp-block-query-pagination .page-numbers.current {
	background: var(--wp--preset--color--cbmc-orange);
	color: var(--wp--preset--color--white);
	padding: 3px 5px;
}

/* Terms List block */
ul.wp-block-categories-list {
	padding-left: 0;
}

ul.wp-block-categories-list li {
	font-size: var(--wp--preset--font-size--medium);
	list-style: none;
	border-bottom: 2px solid var(--wp--preset--color--cbmc-light-gray);
	padding: 8px 0;
}

ul.wp-block-categories-list li:last-child {
	border-bottom: 0;
}

ul.wp-block-categories-list li a {
	text-decoration: none;
}

/* Quote block: MOBILE-only */
@media (max-width: 999px) {
	:root :where(.wp-block-quote) {
		margin-left: 0;
		margin-right: 0;
	}
}

/* RSS block */
.wp-block-rss li.wp-block-rss__item {
	padding-bottom: var(--wp--preset--spacing--50);
}


/*
 * OTHER SITE FEATURES
 */


/* Gravity Forms */
.wp-site-blocks.gform-theme--api, .wp-site-blocks .gform-theme--framework {
	--gf-ctrl-btn-radius: 10px;
	--gf-ctrl-btn-text-transform: uppercase;
	--gf-ctrl-btn-font-size: 1.2rem !important;
	--gf-ctrl-btn-font-weight: 600;
	--gf-ctrl-btn-padding-x: var(--wp--preset--spacing--60) !important;
	--gf-ctrl-btn-padding-y: var(--wp--preset--spacing--30) !important;
}

.wp-site-blocks .gform-theme--api, .wp-site-blocks .gform-theme--foundation {
	--gf-form-gap-y: 20px;
}

.wp-site-blocks .gform-theme--framework .gform-field-label--type-sub:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
	--gf-local-color: var(--wp--preset--color--white);
}

.gform-theme--framework .gform-field-label>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform_editor legend.gform-field-label>span>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
	color: inherit !important;
}

.wp-site-blocks .gform_button {
	border-radius: 10px;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 1.2rem !important;
}

/* BoxZilla popups */
.boxzilla-container .boxzilla-content .wp-block-buttons {
	display: flex;
	align-items: center;
}

.boxzilla-container .boxzilla-content .wp-block-buttons .wp-block-button {
	margin: auto;
}

.boxzilla-container .wp-block-image .aligncenter, .boxzilla-container .wp-block-image .alignleft, .boxzilla-container .wp-block-image .alignright, .boxzilla-container .wp-block-image.aligncenter, .boxzilla-container .wp-block-image.alignleft, .boxzilla-container .wp-block-image.alignright {
	display: block;
}