/* CSS styles for the body element */
body {
	/* background-color: #f1f1f1; */
	font-family: "Source Sans Pro", Helvetica, Arial, Lucida, sans-serif;
	font-size: 0.875rem;
	margin: 0 auto;
	padding: 0 0;
	color: #212529;
}
.fc .fc-toolbar.fc-header-toolbar {
	margin-bottom: 0.5em !important;
}
.fc .fc-toolbar-title {
	font-size: 1.25em !important;
}
.fc .fc-button {
	font-size: 0.825em !important;
	line-height: 1;
}

.fc-event-title-container {
	display: flex;
	align-items: center;
	justify-content: center;
}
.fc-event.booked,
.fc-event.booked:hover {
	cursor: not-allowed;
	pointer-events: none;
}

.parent-section {
	width: calc(100% - 10%);
	margin: 0 auto;
	padding-block-start: 2rem;
	max-width: 980px;
	margin-bottom: 4rem;
}
.content-section {
	margin: 0 auto;
	padding-block-start: 2rem;
}
.card-content {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 0.725rem;
}
.card-content .card {
	display: inline-block;
	padding: 1rem;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px, rgba(0, 0, 0, 0.14) 0px 2px 4px;
	text-decoration: none;
	color: #212529;
	border-radius: 0.2rem;
}
.card-content .card:hover {
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px, rgba(0, 0, 0, 0.2) 0px 2px 4px;
	cursor: pointer;
}
.tab-section {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 2px;
}
.tab {
	background-color: #e9ecef;
	border: none;
	padding: 10px 10px;
	text-align: left;
	text-decoration: none;
	display: inline-block;
	font-size: 16px;
	cursor: pointer;
}
.tab h2,
.card-content h3 {
	font-size: 1.1rem;
	font-weight: 600;
	margin: 0 0;
	padding: 0;
}
.tab p {
	font-size: 0.675rem;
	margin: 0 0;
	padding-top: 4px;
	font-weight: 400;
}
.card-content p {
	font-size: 0.825rem;
	margin: 0 0;
	padding-top: 4px;
	font-weight: 400;
	opacity: 0.9;
}
.active {
    background-color: #443677;
    color: white;
}
.tab.two,
.tab.three {
	pointer-events: none;
}
.tab.activated {
	pointer-events: auto;
}
.tab.activated {
	cursor: pointer;
}

@media screen and (max-width: 767px) {
	.card-content {
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 0.685rem;
	}
	.content-section {
		padding-block-start: 1rem;
	}
	.tab h2,
	.card-content h3 {
		font-size: 0.875rem;
	}
	.tab p,
	.card-content p {
		font-size: 0.675rem;
		margin: 0 0;
		padding-top: 4px;
	}
}
@media screen and (max-width: 600px) {
}
@media screen and (max-width: 450px) {
	.card-content {
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 0.525rem;
	}
	.tab h2,
	.card-content h3 {
		font-size: 0.8rem;
	}
	.tab p,
	.card-content p {
		font-size: 0.725rem;
	}
	/** ************ -= CALENDAR =- ************ **/

	.fc .fc-toolbar-title {
		font-size: 0.725rem !important;
	}
	.fc {
		font-size: 0.675rem !important;
	}
}

.overlay_container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;

	z-index: 999;
}
.overlay_container .overlay_content {
	text-align: center;
	background-color: #f1f1f1;
	padding-block: 2rem;
	padding-inline: 4rem;
	border-radius: 0.2rem;
}
.overlay_header {
	margin-bottom: 1rem;
}
.overlay_contact_methods {
	margin-bottom: 1rem;
}
.overlay_container.overlay_container h4 {
	text-align: center;
	padding-bottom: 0;
}
.overlay_container.overlay_container p {
	font-size: 16px;
	color: #212529;
	text-align: center;
	margin-block-start: 0;
	margin-block-end: 0;
}
.overlay_container button {
	font-size: 12px;
	font-weight: bold;
	color: #f1f1f1;
	border: none;
	border-radius: 0.2rem;
	padding: 8px 16px;
	margin-right: 16px;
	min-width: 100px;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out;
}
.overlay_container .redirect-button {
	background-color: #089d81;
}
.overlay_container .redirect-button:hover {
	background-color: #00a99d;
}
.overlay_container .cancel-button {
	background-color: #ff5757;
}
.overlay_container .cancel-button:hover {
	background-color: #ff5450;
}
