* {
	scroll-behavior: smooth;
	box-sizing: border-box;
}

/*-------------------------------
Theme Overrides
-------------------------------*/
#header {
	border-top: none !important;
	
	.header-main .header-row.container {
		padding: 0 2% !important;
	}
		
	.header-col.header-left {
		padding: 12px 0;
		margin: 0 !important;
		
		img {
			max-width: 265px;
		}
	}
}

#menu-primary {
	.menu-item a {
		font-weight: 600 !important;		}
}

#menu-secondary {
	.menu-item a {
		color: white !important;
		font-weight: 400 !important;
		font-size: 12px !important;
	}
}

/*-------------------------------
Tables
-------------------------------*/
td {
	vertical-align: top;
}


/*-------------------------------
Typography
-------------------------------*/
h1.gb-text, h1 {
	margin-top: 20px;
	margin-bottom: 12px;
	font-weight: 800;
	letter-spacing: 0;
	&:first-child {
			margin-top: 0px;
	}
	&:has(+ h3.gb-text) {
		margin-bottom: 0px;
	}
}
h2.gb-text, h2 {
	margin-top: 16px;
	margin-bottom: 4px;
  font-weight: 700;
	letter-spacing: 0;
	&:first-child {
			margin-top: 0px;
	}
}
h3.gb-text, h3 {
	margin-top: 16px;
	margin-bottom: 4px;
	font-weight: 600;
	letter-spacing: 0;
		&:first-child {
			margin-top: 0px;
	}
}
h4.gb-text, h4
h5.gb-text, h5 {
	margin-top: 8px;
	margin-bottom: 4px;
	font-weight: 600;
	letter-spacing: 0;
	&:first-child {
			margin-top: 0px;
	}
}
p.gb-text, p {
	margin: 0;
	margin-top: 0;
	margin-bottom: 8px;
	line-height: 165%;
	&:last-of-type {
			margin-bottom: 0px;
			margin-block-end: 0px;
	}
	& + a.gb-text {
		margin-top: 16px;
	}
}
li.gb-text {
	margin-left: 16px;
	&::marker {
		color: #8fad81;
	}
}

/*-------------------------------
Nav Menu
-------------------------------*/
/* Sub-menu container */
.porto-narrow-sub-menu, .porto-narrow-sub-menu ul.sub-menu {
	padding: 0 !important;
}

/* Sub-menu item wrapper */
.mega-menu .popup li.menu-item {
	margin-bottom: 0 !important;
}

/* Sub-menu item */
ul.sub-menu li.menu-item a {
	padding: 12px 16px;
}

/*-------------------------------
Events
-------------------------------*/
/* DateTime Block */
.tribe-events-schedule__datetime {
	margin-bottom: 12px !important;	
span {
	font-size: 20px;
	margin-bottom: 12px !important;
	}
}

.tribe-events-schedule.tribe-clearfix {
	margin: 0 !important;
}
span.tribe-events-schedule__timezone {
	color: inherit;
	font-weight: 400 !important;
	font-size: 16px !important;
}


/* Venue Map Block */
.tribe-block__venue {
	display: flex !important;
	flex-flow: row wrap;
	margin-top: 0;
	padding: 12px 16px;
	.tribe-block__venue__meta {
		flex: 1 1 30% !important;
		min-width: 200px !important;
		width: auto !important;
		h3 {
			font-size: 18px !important;
			font-weight: 600 !important;
		}
	}
	.tribe-block__venue__map {
		flex: 1 1 50% !important;
		min-width: 200px !important;
		width: auto !important;
		min-height: auto !important;
		iframe {
			height: 185px;
		}
	}
}