:root {
	--gap-width: 16px;
}
@media (min-width: 800px) {
	:root {
		--gap-width: 32px;
	}
}

/* ----------------------------------------------
* Generated by Animista on 2025-2-12 9:33:13
* Licensed under FreeBSD License.
* See http://animista.net/license for more info. 
* w: http://animista.net, t: @cssanimista
* ---------------------------------------------- */

/**
* ----------------------------------------
* animation shake-lr
* ----------------------------------------
*/
@-webkit-keyframes shake-lr {
0%,
100% {
	-webkit-transform: rotate(0deg);
			transform: rotate(0deg);
	-webkit-transform-origin: 50% 50%;
			transform-origin: 50% 50%;
}
10% {
	-webkit-transform: rotate(4deg);
			transform: rotate(4deg);
}
20%,
40%,
60% {
	-webkit-transform: rotate(-5deg);
			transform: rotate(-5deg);
}
30%,
50%,
70% {
	-webkit-transform: rotate(5deg);
			transform: rotate(5deg);
}
80% {
	-webkit-transform: rotate(-4deg);
			transform: rotate(-4deg);
}
90% {
	-webkit-transform: rotate(4deg);
			transform: rotate(4deg);
}
}
@keyframes shake-lr {
0%,
100% {
	-webkit-transform: rotate(0deg);
			transform: rotate(0deg);
	-webkit-transform-origin: 50% 50%;
			transform-origin: 50% 50%;
}
10% {
	-webkit-transform: rotate(4deg);
			transform: rotate(4deg);
}
20%,
40%,
60% {
	-webkit-transform: rotate(-5deg);
			transform: rotate(-5deg);
}
30%,
50%,
70% {
	-webkit-transform: rotate(5deg);
			transform: rotate(5deg);
}
80% {
	-webkit-transform: rotate(-4deg);
			transform: rotate(-4deg);
}
90% {
	-webkit-transform: rotate(4deg);
			transform: rotate(4deg);
}
}
/* ----------------------------------------------
* Generated by Animista on 2025-2-6 9:40:13
* Licensed under FreeBSD License.
* See http://animista.net/license for more info. 
* w: http://animista.net, t: @cssanimista
* ---------------------------------------------- */

/**
* ----------------------------------------
* animation bounce-top
* ----------------------------------------
*/
@-webkit-keyframes bounce-top {
0% {
-webkit-transform: translateY(-6px);
		transform: translateY(-6px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
opacity: 1;
}
24% {
opacity: 1;
}
40% {
-webkit-transform: translateY(-4px);
		transform: translateY(-4px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
65% {
-webkit-transform: translateY(-3px);
		transform: translateY(-3px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
82% {
-webkit-transform: translateY(-2px);
		transform: translateY(-2px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
93% {
-webkit-transform: translateY(-1px);
		transform: translateY(-1px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
25%,
55%,
75%,
87% {
-webkit-transform: translateY(0px);
		transform: translateY(0px);
-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
}
100% {
-webkit-transform: translateY(0px);
		transform: translateY(0px);
-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
opacity: 1;
}
}
@keyframes bounce-top {
0% {
-webkit-transform: translateY(-6px);
		transform: translateY(-6px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
opacity: 1;
}
24% {
opacity: 1;
}
40% {
-webkit-transform: translateY(-4px);
		transform: translateY(-4px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
65% {
-webkit-transform: translateY(-3px);
		transform: translateY(-3px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
82% {
-webkit-transform: translateY(-2px);
		transform: translateY(-2px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
93% {
-webkit-transform: translateY(-1px);
		transform: translateY(-1px);
-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
}
25%,
55%,
75%,
87% {
-webkit-transform: translateY(0px);
		transform: translateY(0px);
-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
}
100% {
-webkit-transform: translateY(0px);
		transform: translateY(0px);
-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
opacity: 1;
}
}




	.csbsju-footer {
		background-color: var(--wp--preset--color--black);
		color: #fff;
		font-family: 'Gotham', arial, non-serif;
	}
		.csbsju-footer a {
			color: #fff;
			text-decoration: none;
			display: inline-block;
		}
		.csbsju-footer ul {
			list-style-type: none;
		}
			.csbsju-footer li {
				margin: 0;
				padding: 0;
			}
	.csbsju-footer__ctabar {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		padding: 0 var(--gap-width);
		background-color: var(--wp--preset--color--red);
	}
	.csbsju-footer__ctabarbuttons {
		position: relative;
	}
		@media (min-width: 600px) {
			.csbsju-footer__ctabarbuttons {
				margin-top: -0.5px;
				margin-bottom: -4px;
			}
		}
		.csbsju-footer__ctabarbuttons::before {
			content: '';
			position: absolute;
			top: 0;
			right: calc(100% - 1px);
			height: calc(100% - 4px);
			width: 100%;
			background-color: var(--wp--preset--color--action-blue);
			transform: skew(-20deg);
		}
		.csbsju-footer__ctabarbuttons a {
			font-weight: bold;
			position: relative;
			z-index: 1;
			transform: skew(-20deg);
			background-color: var(--wp--preset--color--action-blue);
			overflow: hidden;
			padding: 1em calc(1em + 20px) 1em calc(1em + 20px);
			font-size: clamp(.8rem, 1.5vw, 1rem);
			-webkit-transition: all 0.3s;
			transition: all 0.3s;
			color: var(--wp--preset--color--black);
		}
			.csbsju-footer__ctabarbuttons a span {
				transform: skew(20deg);
				display: block;
			}
			.csbsju-footer__ctabarbuttons a:last-of-type {
				background-color: var(--wp--preset--color--maroon);
				color: #fff;
				margin-left: -6px;
			}
			 .csbsju-footer__ctabarbuttons a::after {
				content: '';
				height: 100%;
				width: 100%;
				position: absolute;
				top: 0;
				right: calc(100% + 1px);
				z-index: -2;
				-webkit-transition: all 0.3s;
				transition: all 0.3s;
				background-color: #fff;
			}
			 .csbsju-footer__ctabarbuttons a:hover::after,
			.csbsju-footer__ctabarbuttons a:focus::after,
			.csbsju-footer__ctabarbuttons a:active::after {
				right: 0;
			}
			.csbsju-footer__ctabarbuttons a:hover,
			.csbsju-footer__ctabarbuttons a:focus,
			.csbsju-footer__ctabarbuttons a:active {
				box-shadow: 1px 3px 5px rgba(0,0,0,0.25);
				outline: none;
			}

			.csbsju-footer__ctabarbuttons a:last-of-type:hover,
			.csbsju-footer__ctabarbuttons a:last-of-type:focus,
			.csbsju-footer__ctabarbuttons a:last-of-type:active {
				color: var(--wp--preset--color--maroon);
			}

		.csbsju-footer__ctabarsocial {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			-ms-flex-align: center;
			align-items: center;
		}
			.csbsju-footer__ctabarsocial p {
				margin: 0 10px 0 0;
				color: #fff;
				font-weight: bold;
				font-size: clamp(0.8rem, 1.5vw, 1rem);
			}
			.csbsju-footer__ctabarsocial ul {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-flex: 1;
				-ms-flex: 1;
				flex-wrap: wrap;
				margin: 0;
				padding: 0;
			}
				.csbsju-footer__ctabarsocial ul li a {
					padding: 0 .25em;
					height: 35px;
					width: 35px;
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-align: center;
					-ms-flex-align: center;
					align-items: center;
					-webkit-box-pack: center;
					-ms-flex-pack: center;
					justify-content: center;
					border: 1px solid transparent;
					border-radius: 5px;
					-webkit-transition: all 0.2s;
					transition: all 0.2s;
				}
				.csbsju-footer__ctabarsocial ul li a:hover,
				.csbsju-footer__ctabarsocial ul li a:focus,
				.csbsju-footer__ctabarsocial ul li a:active {
					border: 1px dashed rgba(255,255,255,0.45);
					background-color: rgba(255,255,255,0.15);
				}
				.csbsju-footer__ctabarsocial ul li a:focus {
					border: 1px dashed rgba(255,255,255,1);
					background-color: rgba(255,255,255,0.25);
					outline: none;
				}
			.csbsju-footer__ctabarsocial svg {
				fill: #fff;
				-webkit-object-fit: contain;
				object-fit: contain;
			}
	.csbsju-footer__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex-wrap: wrap;
		gap: var(--gap-width);
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		width: 100%;
		max-width: 1680px;
		margin: 0 auto;
		padding-top: 60px;
		padding-left: var(--gap-width, 1rem);
		padding-right: var(--gap-width, 1rem);
		padding-bottom: 30px;
	}
	@media (min-width: 600px) {
		.csbsju-footer__inner {
			-ms-flex-wrap: nowrap;
			flex-wrap: nowrap;
			padding-left: 5vw;
		}
	}
	@media (min-width: 1440px) {
		.csbsju-footer__inner {
			/* padding-left: 5vw; */
		}
	}
		.csbsju-footer__inner-leftcolumn {
			width: 300px;
		}
		.csbsju-footer__inner-rightcolumn {
			max-width: 960px;
		}
		.csbsju-footer__info {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			-ms-flex-direction: column;
			flex-direction: column;
		}
		.csbsju-footer__info + .csbsju-footer__info {
			margin-top: 2rem;
		}
			.csbsju-footer__infologo {
				margin-bottom: 1rem;
				display: block;
				height: clamp(60px, 5vw + 1rem, 70px);
			}
				.csbsju-footer__infologo>div {
					width: 100%;
					height: 100%;
				}
				.csbsju-footer__infologo svg {
					display: block;
					width: auto;
					height: 100%;
					-o-object-fit: contain;
					-webkit-object-fit: contain;
					object-fit: contain;
					-o-object-position: left top;
					-webkit-object-position: left top;
					object-position: left top;
				}
				.csbsju-footer__logo {
					fill: #fff;
				}
				.csbsju-footer__infologo:hover,
				.csbsju-footer__infologo:focus,
				.csbsju-footer__infologo:active {
					outline: none;
				}
				.csbsju-footer__infologo:hover .csbsju-footer__logo__cross,
				.csbsju-footer__infologo:hover .csbsju-footer__logo__hex,
				.csbsju-footer__infologo:focus .csbsju-footer__logo__cross,
				.csbsju-footer__infologo:focus .csbsju-footer__logo__hex,
				.csbsju-footer__infologo:active .csbsju-footer__logo__cross,
				.csbsju-footer__infologo:active .csbsju-footer__logo__hex {
					fill: var(--wp--preset--color--red);
				}

				.csbsju-footer__infologo:hover .csbsju-footer__logo__letter-small,
				.csbsju-footer__infologo:focus .csbsju-footer__logo__letter-small,
				.csbsju-footer__infologo:active .csbsju-footer__logo__letter-small {
					fill: var(--wp--preset--color--action-blue);
				}
				.csbsju-footer__logo__hex,
				.csbsju-footer__logo__cross,
				.csbsju-footer__logo__letter-small {
					transition: all .2s;
				}
		.csbsju-footer__address,
		.csbsju-footer__phone {
			line-height: 1.6em;
			margin-bottom: 1em;
			padding: 0 5px;
			border: 1px dashed transparent;
			-webkit-transition: all 0.2s;
			transition: all 0.2s;
			color: rgba(255,255,255,0.8) !important;
			white-space: nowrap;
		}
			.csbsju-footer__address p,
			.csbsju-footer__phone p {
				margin: 0;
			}
			.csbsju-footer__address:hover,
			.csbsju-footer__address:active,
			.csbsju-footer__phone:hover,
			.csbsju-footer__phone:active {
				border-color: rgba(255, 255, 255, 0.2);
				background-color: rgba(255, 255, 255, 0.08);
				color: rgba(255,255,255,1) !important;
			}
			.csbsju-footer__address:focus,
			.csbsju-footer__phone:focus {
				outline: none;
				border-color: rgba(255, 255, 255, 0.75);
				background-color: rgba(255, 255, 255, 0.08);
				color: rgba(255,255,255,1) !important;
			}

			@media (prefers-reduced-motion: no-preference) {
				/* Styles for users who do not need reduced motion */
				.csbsju-footer__address:hover i,
				.csbsju-footer__address:focus i,
				.csbsju-footer__address:active i {
					-webkit-transform: scale(1.25);
					transform: scale(1.25);
					top: 0.15em;
					-webkit-animation: bounce-top 0.9s both;
					animation: bounce-top 0.9s both;
				}
				.csbsju-footer__phone:hover i,
				.csbsju-footer__phone:focus i,
				.csbsju-footer__phone:active i {
					-webkit-animation: shake-lr 0.7s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
					animation: shake-lr 0.7s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
				}
			}

		.csbsju-footer__small-icon {
			position: relative;
			padding-left: 30px;
		}
			.csbsju-footer__small-icon i {
				height: 1.5em;
				width: 1.5em;
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				-webkit-transition: all 0.2s;
				transition: all 0.2s;
			}
				.csbsju-footer__small-icon i svg {
					height: 100%;
					width: 100%;
					-webkit-object-fit: contain;
					object-fit: contain;
					fill: var(--wp--preset--color--action-blue);
				}
					.csbsju-footer__small-icon i path {
						fill: var(--wp--preset--color--action-blue);
					}
		.csbsju-footer__nav {
			height: 100%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: calc(var(--gap-width) * 2);
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}
		@media (min-width: 1320px) {
			.csbsju-footer__nav {
				-webkit-box-pack: end;
				-ms-flex-pack: end;
				justify-content: flex-end;
			}
		}
			.csbsju-footer__nav-column {
				width: 100%;
			}
			@media (min-width: 500px) {
				.csbsju-footer__nav-column {
					width: auto;
				}
			}
			.csbsju-footer__nav-column h2 {
				color: #fff;
				font-size: clamp(1.1rem, 1.1vw + 0.5rem, 1.3rem);
				position: relative;
			}
				.csbsju-footer__nav-column h2::after {
					content: '';
					height: 2px;
					width: 2em;
					background-color: var(--wp--preset--color--action-blue);
					position: absolute;
					bottom: -0.5em;
					left: 0;
				}
			.csbsju-footer__nav-column ul {
				margin: 0;
				padding: 0;
			}
				.csbsju-footer__nav-column ul li a {
					position: relative;
					line-height: 1.6em;
					padding: 0em 0.5em;
					margin-left: -0.5em;
				}
				.csbsju-footer__nav-column ul li a:after {
					content: '';
					height: 2px;
					width: 0;
					background-color: var(--wp--preset--color--red);
					position: absolute;
					bottom: 0;
					left: 0.5em;
					-webkit-transition: all 0.2s;
					transition: all 0.2s;

					/* font-size: clamp(1rem, 1vw + 0.5rem, 1.1rem); */
				}
				@media (min-width: 1024px) {
					.csbsju-footer__nav-column ul li a {
						font-size: clamp(1rem, 0.8vw + 0.1rem, 1.2rem);
					}
				}
					.csbsju-footer__nav-column ul li a:hover,
					.csbsju-footer__nav-column ul li a:active,
					.csbsju-footer__nav-column ul li a:focus {
						color: var(--wp--preset--color--action-blue);
					}
					.csbsju-footer__nav-column ul li a:focus {
						outline: 1px dashed rgba(255,255,255,0.75);
					}
					.csbsju-footer__nav-column ul li a:hover:after,
					.csbsju-footer__nav-column ul li a:active:after,
					.csbsju-footer__nav-column ul li a:focus:after {
						width: calc(100% - 1em);
					}
			.csbsju-footer__nav-image {
				width: 100%;
				max-width: 800px;
				display: none;
				opacity: 0.25;
				/* margin-top: calc(var(--gap-width) * -2); */
			}
			@media (min-width: 1100px) {
				.csbsju-footer__nav-image {
					display: flex;
					align-items: flex-end;
				}
			}
			.csbsju-footer__nav-image svg {
				width: 100%;
				-webkit-object-fit: contain;
				object-fit: contain;
			}
	.csbsju-footer__bottom {
		border-top: 1px solid rgba(255,255,255,0.1);
		padding: 1em var(--gap-width, 1rem);
		padding-left: 80px; /* cookie pixel fill */
	}
		.csbsju-footer__bottom ul {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			margin: 0;
			padding: 0;
		}
			.csbsju-footer__bottom ul li a {
				padding: 0.25em 0.5em;
				font-weight: bold;
				font-size: clamp(0.8rem, 1.1vw + 0.5rem, 0.9rem);
				line-height: 1em;
				position: relative;
			}
				.csbsju-footer__bottom ul li a:after {
					content: '';
					position: absolute;
					bottom: 0;
					left: 0.5em;
					width: 0;
					height: 2px;
					background-color: var(--wp--preset--color--red);
					-webkit-transition: all 0.2s;
					transition: all 0.2s;
				}
				.csbsju-footer__bottom ul li a:hover,
				.csbsju-footer__bottom ul li a:active,
				.csbsju-footer__bottom ul li a:focus {
					color: var(--wp--preset--color--action-blue);
				}
				.csbsju-footer__bottom ul li a:hover:after,
				.csbsju-footer__bottom ul li a:active:after,
				.csbsju-footer__bottom ul li a:focus:after {
					width: calc(100% - 1em);
				}

				.csbsju-footer__bottom ul li a:focus {
					outline: 1px dashed rgba(255,255,255,0.75);
				}
			.csbsju-footer__bottom p {
				padding: 0;
			}
		.csbsju-footer__bottom-copyright {
			font-size: 0.8em;
			opacity: 0.8;
			padding: 0 1em;
			margin: 0;
		}