@keyframes pulse {
	0% { transform: scale(1); }
	10% { transform: scale(1.2); }
	20% { transform: scale(1); }
	100% { transform: scale(1); }
}

#top_bar .r3423-nav-menu, #header { font-size: var(--wp--preset--font-size--small); }

.wp-block-search.wp-block-search__button-inside button.wp-block-search__button:focus svg,
.wp-block-search.wp-block-search__button-inside button.wp-block-search__button:hover svg {
	fill: var(--wp--preset--color--background);
}

/*.r3423-nav-menu ul.sub-menu li.menu-item-has-children:before {
	background-image: url('data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MTAgNjQwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIHRyYW5zZm9ybT0ibWF0cml4KDIuMzYxMzFlLTE0LDE5Ljc5NzEsLTE5Ljc3MDgsMi4zNjQ0NWUtMTQsMjQ2MC42NCwtMTM4Mi4zKSI+PHBhdGggZD0iTTczLjg1NCwxMjQuNDU4QzcyLjYwMywxMjMuNDc5IDcxLjI1NywxMjEuODIgNjkuODIzLDExOS41NDNMODUuOTg3LDEwMy43MkwxMDIuMTUxLDExOS41NDNDMTAwLjcxOCwxMjEuODIgOTkuMzcxLDEyMy40NzkgOTguMTIxLDEyNC40NThMODUuOTg3LDExMi41NzRMNzMuODU0LDEyNC40NThaIiBmaWxsPSIjZmZmZmZmIi8+PC9nPjwvc3ZnPg==');
	height: 11px;
	width: 11px;
}*/

.r3423-nav-menu ul.menu svg.submenu-indicator {
	margin: 0 0 0 8px;
}

/* Always show tertiary menus */
.r3423-nav-menu ul.menu > li > ul.sub-menu {
	max-height: calc(100vh - 200px);
	overflow-x: hidden;
	overflow-y: auto;
}
.r3423-nav-menu ul.sub-menu li.menu-item-has-children:before, .r3423-nav-menu ul.sub-menu li > svg.submenu-indicator { display: none !important; }
.r3423-nav-menu ul.sub-menu li.menu-item-has-children > ul.sub-menu {
	display: block !important;
	font-size: var(--wp--preset--font-size--small) !important;
	margin-left: var(--wp--style--block-gap) !important;
	opacity: 1;
	visibility: visible;
}

.r3423-shortcode-menu.r3423-nav-menu {
	font-family: var(--wp--preset--font-family--sans-serif);
	font-size: var(--wp--preset--font-size--small);
	font-weight: var(--wp--custom--footer--font-weight);
}

	.r3423-shortcode-menu.r3423-nav-menu li a {
		margin-left: 1em;
		padding: 0.5rem 0;
	}

	.r3423-shortcode-menu.r3423-nav-menu li:not(:first-child) a:before {
		background: var(--wp--preset--color--secondary);
		content: '';
		height: 1.25em;
		display: inline-block;
		margin-right: 1em;
		transform: rotate(26.2deg);
		vertical-align: middle;
		width: 0.2em;
	}

	.r3423-shortcode-menu.r3423-nav-menu li:first-child, .r3423-shortcode-menu.r3423-nav-menu li:first-child a {
		margin-left: 0;
		padding-left: 0;
	}

	.r3423-shortcode-menu.r3423-nav-menu a, .r3423-shortcode-menu.r3423-nav-menu a:visited {
		color: var(--wp--custom--footer--text);
	}

	.r3423-shortcode-menu.r3423-nav-menu a:focus, .r3423-shortcode-menu.r3423-nav-menu a:hover {
		color: var(--wp--custom--footer--text-hover);
	}

/* Tweaks to meet WCAG 2.2 requirements */
.loras-sidebar-menu a, .wp-block-post-terms a, .wp-block-post-date time {
	display: inline-block;
	font-size: 14px;
	line-height: 18px;
	padding: 3px 0;
}

#footer-cta {
	background: var(--wp--preset--color--secondary);
	height: 10px;
	position: fixed; top: auto; right: 0; bottom: 0; left: 0;
	z-index: 9;
}

	#footer-cta ul {
		background-color: var(--wp--preset--color--secondary);
		height: 45px;
		line-height: 45px;
		list-style: none;
		margin: 0 !important;
		overflow: visible;
		padding: 0 2.333rem 0 1.5rem;
		position: fixed; top: auto; right: 0; bottom: 0; left: auto;
		white-space: nowrap;
	}

		#footer-cta ul li {
			display: inline-block;
			transition: all 0.25s ease;
		}
		
			#footer-cta ul li a {
				color: var(--wp--preset--color--primary);
				font-family: var(--wp--preset--font-family--sans-serif);
				font-size: var(--wp--preset--font-size--medium);
				font-weight: 600;
				display: inline-block;
				margin-left: 1.5em;
				padding: 0;
				text-transform: uppercase;
				transition: all 0.25s ease;
			}
			
			#footer-cta ul li a:focus, #footer-cta ul li a:hover {
				color: var(--wp--preset--color--quaternary);
				transform: scale(1.1);
			}
	
				#footer-cta ul li a i.fas {
					display: inline-block;
					margin-right: 4px;
					transition: transform 0.25s ease;
				}
		
				#footer-cta ul li a:focus i.fas, #footer-cta ul li a:hover i.fas {
					transform: scale(1.333);
				}


@media screen and (max-width: 1024px) {

	#footer .r3423-nav-menu li a {
		margin-right: 1rem;
		padding: 0;
	}

	#footer .r3423-nav-menu li:first-child, #footer .r3423-nav-menu li:first-child a {
		margin-left: 0;
		padding-left: 0;
	}

		#footer #footer_legal.r3423-nav-menu ul.menu > li > a {
			font-weight: 600;
			padding: 0;
		}
	
	#footer-cta ul {
		padding: 0 !important;
		position: fixed; top: auto; right: 0; bottom: 0; left: 0;
		text-align: center;
	}

}


@media screen and (min-width: 1025px) {

	#top_bar .r3423-nav-menu { font-size: var(--wp--preset--font-size--small); }
	
		#top_bar .r3423-nav-menu ul.menu > li { vertical-align: middle; }

	#header .r3423-nav-menu { font-size: var(--wp--preset--font-size--small); }

	/* Accent and pulse effects in auxiliary menu */
	.r3423-nav-menu ul.menu > li.accent > a {
		background-color: var(--wp--preset--color--quaternary) !important;
		border-radius: 4px !important;
		color: var(--wp--preset--color--background) !important;
		margin: 0 1em !important;
		padding: 0.5em 1em !important;
	}
	.r3423-nav-menu ul.menu > li.accent > a:hover,
	.r3423-nav-menu ul.menu > li.accent > a:focus,
	.r3423-nav-menu ul.menu > li.accent > a:active {
		background-color: var(--wp--preset--color--secondary) !important;
		color: var(--wp--preset--color--foreground) !important;
	}
	
	.r3423-nav-menu ul.menu > li.pulse > a {
		animation: pulse 5s ease 0.5s infinite;
	}
	
	#header #primary_navigation {
		margin-bottom: -5px;
		padding: 0 1em;
		position: relative;
		text-align: right;
		width: 100%;
	}
	
		#header #primary_navigation .nav-menu-handle {
			background-color: var(--wp--preset--color--primary-alt);
			clip-path: polygon(calc(3.75em * var(--wp--custom--loras--angle-pct)) 0%, 100% 0%, 100% 100%, 0% 100%);
			cursor: default;
			display: block;
			height: 2.625em;
			position: absolute; top: 0; right: 0; left: 0; bottom: auto;
			z-index: 0;
		}
		
			#header #primary_navigation .nav-menu-handle svg { display: none !important; }
	
		#header #primary_navigation .menu > li {
			padding: 0 0.75em;
			position: relative;
		}
	
		#header #primary_navigation .menu > li > a {
			border-bottom: 5px solid transparent;
			font-weight: 800;
			padding: calc(0.25em + 5px) 0 0.25em 0;
			text-transform: uppercase;
		}
		
		#header #primary_navigation .menu > li:hover > a,
		#header #primary_navigation .menu > li.open > a,
		#header #primary_navigation .menu > li.current-menu-item > a,
		#header #primary_navigation .menu > li.current-menu-ancestor > a
		{
			border-bottom-color: var(--wp--preset--color--secondary);
			padding-right: 0;
		}

			body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description,
			body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description
			{
				background: linear-gradient(0, var(--wp--preset--color--neutral-light) 0%, var(--wp--preset--color--neutral-x-light) 100%);
				box-shadow: 0 0 2px rgba(0,0,0,0.5);
				color: var(--wp--preset--color--primary);
				display: block;
				position: fixed; top: var(--wp--custom--main--vertical-offset-tablet); right: 0; bottom: auto; left: 0;
				text-align: left;
				width: 100%;
				z-index: 0;
			}

				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description > *,
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description > *
				{ max-width: var(--wp--custom--loras--menu-image-width-tablet); }
			
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description > .menu-item-image,
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description > .menu-item-image
				{
					clip-path: polygon(0% 0%, 100% 0%, calc(100% - calc(calc(var(--wp--custom--loras--menu-image-width-tablet) / 2) * var(--wp--custom--loras--angle-pct))) 100%, 0% 100%);
					height: calc(var(--wp--custom--loras--menu-image-width-tablet) / 2);
					width: var(--wp--custom--loras--menu-image-width-tablet);
				}
			
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description > .menu-item-excerpt,
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description > .menu-item-excerpt
				{
					font-weight: 500;
					padding: var(--wp--style--block-gap);
					white-space: normal;
				}
				
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu {
					background: transparent !important;
					box-shadow: none !important;
					color: var(--wp--preset--color--neutral-dark);
					left: 0 !important;
					text-align: left;
				}
				
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li > ul.sub-menu {
					margin: var(--wp--style--block-gap) 0;
				}
				
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu:not(.menu_excerpts_and_images) > li > ul.sub-menu {
					background: linear-gradient(0, var(--wp--preset--color--background) 0%, var(--wp--preset--color--neutral-x-light) 100%) !important;
					border-bottom: 10px solid var(--wp--preset--color--secondary);
					box-shadow: 0 0 2px rgba(0,0,0,0.25) !important;
					margin: 0 !important;
					/*left: -1.5rem !important;
					padding: 0.75rem 0 0.75rem 1.5rem !important;*/
					left: -1rem !important;
					padding: 0.75rem 1rem !important;
				}
				
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu:not(.menu_excerpts_and_images) > li:last-of-type > ul.sub-menu {
					left: auto !important;
					text-align: right;
				}

					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu li {
						position: relative;
					}
				
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu a {
						color: var(--wp--preset--color--primary);
						display: inline-block !important;
						padding: 0.25em 1em !important;
					}
				
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu a:focus,
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu a:hover,
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu li.current-menu-item > a {
						color: var(--wp--preset--color--quaternary);
					}
					
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu li.current-menu-ancestor > a,
					body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li ul.sub-menu li.current-menu-item > a {
						font-weight: 800;
					}
					
	/*.r3423-nav-menu ul.sub-menu li.menu-item-has-children:before {
		background-image: url('data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjIiIHZpZXdCb3g9IjAgMCA0MTAgNjQwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIHRyYW5zZm9ybT0ibWF0cml4KDIuMzYxMzFlLTE0LDE5Ljc5NzEsLTE5Ljc3MDgsMi4zNjQ0NWUtMTQsMjQ2MC42NCwtMTM4Mi4zKSI+PHBhdGggZD0iTTczLjg1NCwxMjQuNDU4QzcyLjYwMywxMjMuNDc5IDcxLjI1NywxMjEuODIgNjkuODIzLDExOS41NDNMODUuOTg3LDEwMy43MkwxMDIuMTUxLDExOS41NDNDMTAwLjcxOCwxMjEuODIgOTkuMzcxLDEyMy40NzkgOTguMTIxLDEyNC40NThMODUuOTg3LDExMi41NzRMNzMuODU0LDEyNC40NThaIiBmaWxsPSIjOGQ5MDkzIi8+PC9nPjwvc3ZnPg==');
	}*/

	#footer .r3423-nav-menu li a {
		margin-left: 1em;
		padding: 0;
	}

	#footer .r3423-nav-menu li:not(:first-child) a:before {
		background: var(--wp--preset--color--secondary);
		content: '';
		height: 1.25em;
		display: inline-block;
		margin-right: 1em;
		transform: rotate(26.2deg);
		vertical-align: middle;
		width: 0.2em;
	}

	#footer .r3423-nav-menu li:first-child, #footer .r3423-nav-menu li:first-child a {
		margin-left: 0;
		padding-left: 0;
	}

	#footer #footer_legal.r3423-nav-menu ul.menu > li > a {
		font-weight: 600;
		padding: 0;
	}

		#footer-cta ul:before {
			background-color: var(--wp--preset--color--secondary);
			clip-path: polygon(100% 0, 100% 100%, 0% 100%);
			content: '';
			display: block;
			width: calc(45px * var(--wp--custom--loras--angle-pct));
			position: absolute; top: 0; right: calc(100% - 1px);
			height: 45px;
		}
	
}


@media screen and (min-width: 1120px) {

	#top_bar .r3423-nav-menu, #header { font-size: var(--wp--preset--font-size--small); }

	#header #primary_navigation {
		margin-bottom: -10px;
		padding: 0 2em;
	}
	
		#header #primary_navigation .nav-menu-handle {
			clip-path: polygon(calc(3.75em * var(--wp--custom--loras--angle-pct)) 0%, 100% 0%, 100% 100%, 0% 100%);
			height: 3.75em;
		}
	
		#header #primary_navigation .menu > li { padding: 0 1em; }
		
			body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description,
			body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description
			{ top: var(--wp--custom--main--vertical-offset); }

				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description > *,
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description > *
				{ max-width: var(--wp--custom--loras--menu-image-width); }
			
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li:hover > .menu-item-description > .menu-item-image,
				body:not(.header-menu-desktop-hamburger) #header .r3423-nav-menu ul.menu > li.open > .menu-item-description > .menu-item-image
				{
					clip-path: polygon(0% 0%, 100% 0%, calc(100% - calc(calc(var(--wp--custom--loras--menu-image-width) / 2) * var(--wp--custom--loras--angle-pct))) 100%, 0% 100%);
					height: calc(var(--wp--custom--loras--menu-image-width) / 2);
					width: var(--wp--custom--loras--menu-image-width);
				}

			#header #primary_navigation .menu > li > a {
				border-bottom: 10px solid transparent;
				padding: calc(0.5em + 10px) 0 0.5em 0;
			}
			
}


@media screen and (min-width: 1440px) {

	#top_bar .r3423-nav-menu, #header .r3423-nav-menu { font-size: var(--wp--preset--font-size--medium); }

	#header #primary_navigation {
		margin-bottom: -10px;
		padding: 0 2em 0 3em;
	}
	
		#header #primary_navigation .nav-menu-handle {
			clip-path: polygon(calc(3.75em * var(--wp--custom--loras--angle-pct)) 0%, 100% 0%, 100% 100%, 0% 100%);
			height: 3.75em;
		}
	
			#header #primary_navigation .menu > li > a {
				border-bottom: 10px solid transparent;
				padding: calc(0.5em + 10px) 0 0.5em 0;
			}
			
}