body {
	width: 100%;
	height:100%;
	margin:0;
}
a {
	text-decoration: none;
}
a.lesson_package, a.lesson_package:hover {
	text-decoration: none;
}
#background {
	min-height: 100%;
	min-width: 100%;
	overflow: hidden;
	position: fixed;
	top: 0;
	z-index: -2;
	background-image: url('/img/background.jpg');
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	opacity: 0.5;
}
#bg-logo-top {
	z-index: -1;
	position:fixed;
	top:20px;
	left:20px;
	height:auto;
	max-height:16vh;
	max-width:20vw;
}
#bg-logo-bottom {
	z-index: -1;
	position:fixed;
	bottom:20px;
	left:20px;
	height:auto;
	max-height:20vh;
	max-width:35vw;
}
nav.navbar {
	position:fixed;
	top:0;
	left:0;
	width:100%;
}
.navbar-logo {
	height: 40px;
	margin: 6px 20px;
}
nav.navbar-brendan {
	background-color: RGBA(33, 37, 41, 0.6);
	padding-right:10px;
}
nav.navbar-brendan .nav-link {
	color: RGB(210, 210, 210);
	font-weight:bold;
}
nav.navbar-brendan .nav-link:hover {
	color: RGB(255, 255, 255);
}
nav.navbar-brendan .nav-link.nav-link-selected {
	color:#fff;
	text-decoration:underline;
}
.ml-auto {
	margin-left: auto;
}
@media (max-width: 900px) {
	#background {
		zoom:0.5;
	}
	.page_container {
		margin:20px 5px;
	}
	.content-container-md {
		width:96vw;
		height:80vh;
		margin:auto;
	}
}
@media (min-width: 901px) {
	.page_container {
		margin:20px 120px;
	}
	.home-nav-links {
		position:relative;
		top:20vh;
	}
	.content-container-md {
		width:850px;
		height:80vh;
		max-height:700px;
		min-height:300px;
		margin:auto;
	}
}
.page-content {
	margin-top:90px;
}
.content-container-md {
	border-radius:6px;
	border:1px solid black;
	background-color:#fff;
	-webkit-box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36); 
	box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36);
	padding:6px;
	overflow-y:auto;
	overflow-x:hidden;
}
.lesson_package {
	border-radius:6px;
	width:260px;
	height:360px;
	background-color:#fff;
	-webkit-box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36); 
	box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36);
	margin:20px;
	display:inline-block;
}
.lesson_package_header {
	height:11px;
	border-radius:6px 6px 0 0;
}
.lesson_package_body {
	text-align:center;
	padding:6px;
	cursor:pointer;
	transition:0.3s;
	height:calc(100% - 11px);
	border-radius:0 0 6px 6px;
	color:RGBA(0, 0, 0, 0.65);
	position:relative;
}
.lesson_package_body .lesson_description {
	position:absolute;
	width:240px;
	top:130px;
	font-size:12px;
}
.lesson_package_body .lesson_options {
	position:absolute;
	bottom:10px;
	left:10px;
	text-align:left;
	width:240px;
	font-size:13px;
	/*border:1px solid RGBA(0, 0, 0, 0.2);
	background-color:RGBA(0, 0, 0, 0.02);
	border-radius:4px;
	padding:3px;*/
	font-weight:500;
}
.lesson_package_body:hover {
	background-color:#e0fff5;
}
.lesson_title {
	position:absolute;
	top:65px;
	width:240px;
	font-size: 20px;
	font-weight:bold;
	font-family:Arial;
}
.home-nav-links {
	text-align:center;
}
a.home-nav-button:hover {
	text-decoration: none;
}
.home-nav-button {
	border-radius:6px;
	width:260px;
	height:auto;
	background-color:#fff;
	-webkit-box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36); 
	box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.36);
	margin:20px;
	display:inline-block;
}
.home-nav-button-header {
	height:11px;
	border-radius:6px 6px 0 0;
}
.home-nav-button-body {
	text-align:center;
	padding:6px;
	cursor:pointer;
	transition:0.3s;
	font-size:22pt;
	font-weight:bold;
	height:calc(100% - 11px);
	border-radius:0 0 6px 6px;
	color:RGBA(0, 0, 0, 0.65);
}
.home-nav-button-body:hover {
	background-color:#e0fff5;
}
.booking-header {
	font-family:Arial;
	font-weight:bold;
	font-size:18pt;
	text-align:center;
}
/*.booking-day {
	width:56px;
	height:76px;
	display:inline-block;
	margin:3px;
	border:1px solid RGBA(0, 0, 0, 0.3);
	border-radius:4px;
	text-align:center;
	font-size:10pt;
	background-color:#fff;
	transition:0.3s;
	cursor:pointer;
	position:relative;
}
.booking-day-container {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}*/
.booking-week {
	width:644px;
}
.booking-day {
	width:106px;
	height:90px;
	display:inline-block;
	margin:3px;
	border:1px solid RGBA(0, 0, 0, 0.3);
	border-radius:4px;
	text-align:center;
	font-size:10pt;
	font-family:Arial;
	background-color:#fff;
	transition:0.3s;
	cursor:pointer;
	position:relative;
}
.booking-day-container {
	overflow-x:scroll;
	overflow-y:auto;
	width:794px;
	max-width:100%;
	height:auto;
	white-space: nowrap;
}
.booking-day.disabled-day {
	cursor: default;
	background-color:RGBA(0, 0, 0, 0.3);
}
.booking-day .booking-day-availability {
	font-size:7pt;
	position:absolute;
	left:50%;
	transform:translate(-50%, 0);
	bottom:3px;
}
.booking-day.disabled-day .availability-bar {
	display:none;
}
.booking-day .availability-bar {
	position:absolute;
	bottom:6px;
	left:6px;
	height:12px;
	width:73px;
	border:1px solid #4a4a4a;
	background-color:#f06262;
}
.availability-bar .availability-green {
	position:absolute;
	top:0;
	left:0;
	width:0;
	height:100%;
	background-color:#51d645;
}
.booking-day.selected {
	background-color:#cdfaec;
}
.booking-day:not(.disabled-day):hover {
	background-color:#e0fff5;
}
.booking-day.selected:hover {
	background-color:#cdfaec;
}
.alert {
	text-align:center;
	font-weight:bold;
}
.alert.alert-sm {
	padding:6px;
	font-size:11pt;
}
.menu-tabs {
	display:inline-flex;
	background-color:RGBA(0, 0, 0, 0.1);
	border-radius:6px;
	padding:4px;
}
.menu-tab-item {
	margin:0 3px;
	padding: 4px 16px;
	font-size:10pt;
	border-radius:6px;
	cursor:pointer;
}
.menu-tab-item.selected {
	background-color:#fff;
}
.booking-time {
	width:70px;
	padding:6px 0;
	display:inline-block;
	margin:3px;
	border:1px solid RGBA(0, 0, 0, 0.3);
	border-radius:4px;
	text-align:center;
	font-size:10pt;
	background-color:#fff;
	transition:0.3s;
	cursor:pointer;
}
.booking-time.disabled, .booking-time.disabled:hover {
	background-color:#ffbdbd;
}
.booking-time.selected {
	background-color:#cdfaec;
}
.booking-time:hover {
	background-color:#e0fff5;
}
.booking-time.selected:hover {
	background-color:#cdfaec;
}
button.btn.btn-light {
	background-color:#fff;
}
#time_slot_container {
	white-space : nowrap;
	overflow-y:hidden;
	overflow-x:hidden;
	padding: 0 30px;
}
#time_slot_overlay_left {
	position:absolute;
	z-index:2;
	pointer-events: none;
	top:0;
	left:50px;
	width:100px;
	height:100%;
}
#time_slot_overlay_right {
	position:absolute;
	z-index:2;
	pointer-events: none;
	top:0;
	right:50px;
	width:100px;
	height:100%;
}
#time_slot_scroll_left {
	position:absolute;
	z-index:2;
	top:0;
	left:0;
	width:31px;
	height:31px;
	border-radius:50%;
	padding:1px 4px;
}
#time_slot_scroll_right {
	position:absolute;
	z-index:2;
	top:0;
	right:0;
	width:31px;
	height:31px;
	border-radius:50%;
	padding:1px 4px;
}
.time-slot-categories {
	margin: 4px 0;
}
.light-container {
	margin:10px auto;
	border:1px solid RGBA(0, 0, 0, 0.1);
	background-color:RGBA(0, 0, 0, 0.02);
	padding:8px 20px;
	border-radius:8px;
}
.booking-product-option {
	width:auto;
	padding:6px;
	display:inline-block;
	margin:3px;
	border:1px solid RGBA(0, 0, 0, 0.3);
	border-radius:4px;
	text-align:center;
	font-size:10pt;
	background-color:#fff;
	transition:0.3s;
	cursor:pointer;
}
.booking-product-option:hover {
	background-color:#e0fff5;
}
.booking-product-option.selected {
	background-color:#cdfaec;
}
.booking-product-option.selected:hover {
	background-color:#cdfaec;
}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}
button.btn.btn-tiny {
	font-size:8pt;
	padding:2px 3px;
}
.contact-form div.row {
	margin-bottom:8px;
}
.light-container label {
	font-size:13px;
	font-weight:bold;
	margin-bottom:2px;
}
table.table-select tbody tr {
	cursor:pointer;
	transition:0.3s;
}
table.table-select tbody tr:hover {
	background-color:#c9f0dd;
}
#booking_back_btn {
	font-size:20pt;
	color:#38acff;
	position:absolute;
	top:5px;
	left:5px;
	cursor:pointer;
	transition.0.3s;
}
#booking_back_btn:hover {
	color:#0793f7;
}
.copyright {
	position:fixed;
	bottom:5px;
	text-align:center;
	left:50%;
	transform:translate(-50%, 0);
	font-weight:500;
	font-size:14pt;
	z-index:-1;
}