.eber-hours-main {
	--eber-hours-main-dash: rgba(234, 229, 218, 0.3);
	--eber-hours-main-pad: clamp(0.5rem, 2vw, 1.5rem);
	width: 100%;
	color: var(--eber-white);
	font-family: var(--eber-font-text);
}

.eber-hours-main__list {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	border-top: 1px dashed var(--eber-hours-main-dash);
}

.eber-hours-main__row {
	position: relative;
	display: flex;
	align-items: center;
	gap: clamp(0.75rem, 1.8vw, 1.25rem);
	padding: clamp(1rem, 2.6vw, 2.25rem) var(--eber-hours-main-pad);
	border-bottom: 1px dashed var(--eber-hours-main-dash);
}

/* The lit row bleeds past the rules, the dashes stay the width of the list. */
.eber-hours-main__row::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0 calc(var(--eber-hours-main-pad) * -1);
	background: linear-gradient(
			90deg,
			rgba(205, 39, 40, 0.02) 0%,
			rgba(205, 39, 40, 0.24) 50%,
			rgba(205, 39, 40, 0.02) 100%
	);
	opacity: 0;
	transition: opacity var(--eber-base) var(--eber-ease);
}

.eber-hours-main__row:hover::before {
	opacity: 0.4;
}

.eber-hours-main__row.is-today::before {
	opacity: 1;
}

.eber-hours-main__day {
	color: var(--eber-white);
	font-family: var(--eber-font-display);
	font-size: clamp(1rem, 2.2vw, 1.75rem);
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 1.2;
	text-transform: uppercase;
	white-space: nowrap;
}

.eber-hours-main__rule {
	flex: 1 1 0;
	min-width: 1.5rem;
	height: 0;
	border-top: 1px dashed var(--eber-hours-main-dash);
}

.eber-hours-main__value {
	color: rgba(255, 255, 255, 0.6);
	font-size: clamp(1rem, 2.2vw, 1.75rem);
	font-weight: 400;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
	line-height: 1.2;
	white-space: nowrap;
}

.eber-hours-main__row.is-closed .eber-hours-main__value {
	color: var(--eber-grey);
	font-size: clamp(0.8rem, 1.5vw, 1.05rem);
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

/* Today */

/*
 * Every day row carries the badge, only the lit one shows it. The script moves
 * .is-today at midnight and the badge follows without a reload.
 */
.eber-hours-main__flags {
	display: none;
	align-items: center;
	gap: clamp(0.75rem, 1.5vw, 1.25rem);
}

.eber-hours-main__row.is-today .eber-hours-main__flags {
	display: inline-flex;
}

.eber-hours-main__badge {
	padding: 5px 10px;
	color: var(--eber-white);
	background-color: var(--eber-red-hot);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.25rem;
	/* line-height: 1.75rem; */
	text-transform: uppercase;
	white-space: nowrap;
}

.eber-hours-main__state {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--eber-white);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.75rem;
	text-transform: uppercase;
	white-space: nowrap;
}

.eber-hours-main__dot {
	flex: none;
	width: 5px;
	height: 5px;
	background-color: var(--eber-red);
	border-radius: 50%;
	outline: 4px solid rgba(205, 39, 40, 0.3);
}

.eber-hours-main[data-open="1"] .eber-hours-main__dot {
	background-color: var(--eber-open);
	outline-color: rgba(21, 255, 0, 0.3);
	animation: eber-pulse 2.4s var(--eber-ease) infinite;
}

/* Reveal */

.eber-hours-main.is-armed .eber-hours-main__row {
	opacity: 0;
	transform: translate3d(0, 14px, 0);
}

.eber-hours-main.is-armed.is-visible .eber-hours-main__row {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition:
		opacity var(--eber-base) var(--eber-ease),
		transform var(--eber-base) var(--eber-ease);
	transition-delay: calc(var(--eber-index, 0) * 60ms);
}

@media (max-width: 767px) {
	.eber-hours-main__row {
		flex-wrap: wrap;
		gap: 0.5rem 0.85rem;
	}

	.eber-hours-main__rule {
		display: none;
	}

	.eber-hours-main__day {
		order: 1;
	}

	.eber-hours-main__value {
		order: 2;
		margin-left: auto;
	}

	.eber-hours-main__flags {
		order: 3;
		flex-basis: 100%;
	}

	.eber-hours-main__row.is-today .eber-hours-main__flags {
		display: flex;
	}

	.eber-hours-main__badge,
	.eber-hours-main__state {
		line-height: 1.25rem;
	}

	.eber-hours-main__badge {
		padding: 0.4rem 0.3rem 0.4rem 0.5rem;
		font-size: 0.65rem;
		letter-spacing: 0.2rem;
	}
}

@media (max-width: 419px) {
	.eber-hours-main__day {
		white-space: normal;
	}
}



.gx{
	--gx-a: 205 39 40;
	--gx-b: 205 39 40;
	--gx-ax: 12%;
	--gx-ay: 24%;
	--gx-bx: 90%;
	--gx-by: 70%;
	--gx-size: clamp(220px, 30vw, 470px);
	--gx-opacity: .55;
	--gx-speed: 28s;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	transform: translateZ(0);
}

.gx > .elementor-container,
.gx > .e-con-inner,
.gx > .elementor-widget-wrap{
	position: relative;
	z-index: 2;
}

.gx::before,
.gx::after{
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.gx::before{
	z-index: 0;
	mix-blend-mode: screen;
	opacity: var(--gx-opacity);
	background-image:
			radial-gradient(circle var(--gx-size) at var(--gx-ax) var(--gx-ay),
			rgb(var(--gx-a) / .30),
			rgb(var(--gx-a) / .17) 32%,
			rgb(var(--gx-a) / .05) 62%,
			rgb(var(--gx-a) / 0) 100%),
			radial-gradient(circle var(--gx-size) at var(--gx-bx) var(--gx-by),
			rgb(var(--gx-b) / .30),
			rgb(var(--gx-b) / .17) 32%,
			rgb(var(--gx-b) / .05) 62%,
			rgb(var(--gx-b) / 0) 100%);
	animation:
			gx-drift var(--gx-speed) ease-in-out infinite alternate,
			gx-breathe calc(var(--gx-speed) / 1.7) ease-in-out infinite alternate;
}

.gx::after{
	z-index: 1;
	mix-blend-mode: screen;
	opacity: .05;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
	background-size: 200px 200px;
}

@keyframes gx-drift{
	from{ transform: translate3d(-1.6%, -1.1%, 0) scale(1.02); }
	to{ transform: translate3d(1.6%, 1.1%, 0) scale(1.11); }
}

@keyframes gx-breathe{
	from{ opacity: calc(var(--gx-opacity) * .68); }
	to{ opacity: var(--gx-opacity); }
}

.gx-hero{
	--gx-a: 20 181 240;
	--gx-b: 20 181 240;
	--gx-ax: 11%;
	--gx-ay: 58%;
	--gx-bx: 90%;
	--gx-by: 32%;
	--gx-opacity: .6;
	--gx-speed: 34s;
}

.gx-about{
	--gx-a: 205 39 40;
	--gx-size: clamp(230px, 30vw, 480px);
	--gx-opacity: .58;
	--gx-speed: 30s;
}

.gx-about::before{
	background-image:
			radial-gradient(circle var(--gx-size) at 12% 22%,
			rgb(var(--gx-a) / .30), rgb(var(--gx-a) / .17) 32%, rgb(var(--gx-a) / .05) 62%, rgb(var(--gx-a) / 0) 100%),
			radial-gradient(circle var(--gx-size) at 91% 11%,
			rgb(var(--gx-a) / .30), rgb(var(--gx-a) / .17) 32%, rgb(var(--gx-a) / .05) 62%, rgb(var(--gx-a) / 0) 100%),
			radial-gradient(circle var(--gx-size) at 12% 83%,
			rgb(var(--gx-a) / .30), rgb(var(--gx-a) / .17) 32%, rgb(var(--gx-a) / .05) 62%, rgb(var(--gx-a) / 0) 100%),
			radial-gradient(circle var(--gx-size) at 91% 71%,
			rgb(var(--gx-a) / .30), rgb(var(--gx-a) / .17) 32%, rgb(var(--gx-a) / .05) 62%, rgb(var(--gx-a) / 0) 100%);
}

.gx-pricing{
	--gx-a: 20 181 240;
	--gx-b: 20 181 240;
	--gx-ax: 5%;
	--gx-ay: 96%;
	--gx-bx: 99%;
	--gx-by: 99%;
	--gx-size: clamp(260px, 36vw, 560px);
	--gx-opacity: .8;
	--gx-speed: 32s;
}

.gx-hours{
	--gx-a: 20 181 240;
	--gx-b: 205 39 40;
	--gx-ax: 99%;
	--gx-ay: 60%;
	--gx-bx: 6%;
	--gx-by: 18%;
	--gx-size: clamp(260px, 36vw, 560px);
	--gx-opacity: .5;
	--gx-speed: 26s;
}

.gx-map{
	--gx-a: 205 39 40;
	--gx-b: 20 181 240;
	--gx-ax: 99%;
	--gx-ay: 55%;
	--gx-bx: 4%;
	--gx-by: 80%;
	--gx-size: clamp(260px, 36vw, 560px);
	--gx-opacity: .5;
	--gx-speed: 24s;
}

.gx-soft{ --gx-opacity: .32; }

.gx-strong{ --gx-opacity: .95; }

.gx-still::before{ animation: none; }

.gx-nograin::after{ display: none; }

.gx-edge{
	border-top: 1px solid transparent;
	border-image: linear-gradient(90deg,
	rgb(var(--gx-a) / 0),
	rgb(var(--gx-a) / .45),
	rgb(var(--gx-a) / 0)) 1;
}

@supports (animation-timeline: view()){
	@media (prefers-reduced-motion: no-preference){
		.gx-scroll::before{
			animation: gx-scroll linear both;
			animation-timeline: view();
			animation-range: entry 0% exit 100%;
		}
	}
}

@keyframes gx-scroll{
	from{ transform: translate3d(0, -7%, 0) scale(1.04); }
	to{ transform: translate3d(0, 7%, 0) scale(1.14); }
}

@media (prefers-reduced-motion: reduce){
	.gx::before{ animation: none; }
}

