.clear { clear: both; }

body > header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

body > header .container > a {
	margin: calc(var(--pico-spacing) * -.125) calc(var(--pico-spacing) * -.25);
	padding: calc(var(--pico-spacing) * .125) calc(var(--pico-spacing) * .25);
	border-radius: var(--pico-border-radius);
}

.centered-box {
	position: fixed;
    inset: 0px;
    width: 40rem;
    height: 20rem;
    max-width: 100vw;
    max-height: 80dvh;
    margin: auto;
    padding: 5rem;
    background-color: #41a96ec2;
    color: #1f1f22;
    font-size: 320%;
    border-radius: 2rem;
}

/*
	Availability Calendar : calendar month sheet
-------------------------------------------------------------------------------*/

table.calendar {
	float: left;
	margin: 10px 15px 10px 0px;
	border: 1px solid #ddd;
	width: 216px;
	background-color: #ddd;
	border-collapse: collapse;

}

table.calendar caption {
	border: 1px solid #dfe9e9;
	text-align: center;
	background-color: #dfe9e9;
	color: #333;
	font-weight: bold;
	font-size: 1.1em;
}
table.calendar thead th {
	border: 1px solid #14568a;
	text-align:center;
	color: #ffffff;
	background-color: #14568a;
}
table.calendar tbody td {
	border: 1px solid #fff;
	padding: 0;
	width: 30px;
	height: 30px;
	text-align: center;
	vertical-align: middle;
	color: #333;
	background-color: #77EF3D;
}
table.calendar tbody td.pad {
	background-color: #ddd;
}
table.calendar tbody td.booked {
	background-color: #ffffcc;
}
table.calendar tbody td.booked-am {
	background: url(booked-am.gif) no-repeat center center;
}
table.calendar tbody td.booked-pm {
	background: url(booked-pm.gif) no-repeat center center;
}
table.calendar tbody td.booked-all {
	color: #fff;
	background-color: #EE402E;
}


