:root {
	--font-family: verdana, sans-serif;
	--font-size: 16px;
	
	/* main body */
	--foreground1: #000;
	--background1: #fff;
	
	/* menu contrast */
	--foreground2: #fff;
	--background2: #003D53;
	
	/* highlight 1 */
	--foreground3: #fff;
	--background3: #E65409;
	
	/* highlight 2 */
	--foreground4: #fff;
	--background4: #B51813;
	
	/* lowlight 1 */
	--foreground5: #000;
	--background5: #eee;
	
	/* lowlight 2 */
	--foreground6: #000;
	--background6: #ddd;
}

	:root body.dark {

		/* main body */
		--foreground1: #fff;
		--background1: #444;

		/* menu contrast */
		--foreground2: #fff;
		--background2: #000;

		/* highlight 1 */
		--foreground3: #fff;
		--background3: #2199CB;

		/* highlight 2 */
		--foreground4: #fff;
		--background4: #B51813;

		/* lowlight 1 */
		--foreground5: #fff;
		--background5: #555;

		/* lowlight 2 */
		--foreground6: #fff;
		--background6: #666;

	
	}

body {
	font-family: var(--font-family);
	font-size: var(--font1-size);
	background:var(--background1);
	color:var(--foreground1);	
	line-height:1.4;

	display:grid;
	grid-template-columns: 1fr;
	grid-template-rows:auto auto 1fr auto;
	grid-template-areas:
		"logo"
		"header"
		"nav"
		"main"
		"footer"
		;
}

p {
	margin:1rem 0;
	line-height:1.6;
}

b, strong {
	font-weight:bold;
}

ul {
	padding-left:3rem;
}
	ul li {
		list-style-type:disc;
		padding:.5rem 0;
	}
i {
	font-style:italic;
}


h1#logo {
	grid-area:logo;
	background:var(--background3);
	color:var(--foreground3);
	
	display:grid;
	justify-content:center;
	align-content:center;
	
	font-size:2.8rem;
}
	h1#logo img {
		padding:20px;
		width:200px;
		max-width:15vw;
	}
	h1#logo span {
		margin:1.6rem 0;
		padding:.2rem 1.4rem;
		background:var(--background3);
		color:var(--foreground3);
		-webkit-border-radius:2rem;
		border-radius:2rem;
		-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
		box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
	}

header {
	padding:1rem 1rem 2rem 1rem;
	text-align:center;
	grid-area:header;
	background:var(--background2);
	color:var(--foreground2);
	position:relative;
	display:none;
}
	header h2 {
		font-size:1.8rem;
		text-align:left;
		padding:1.3rem 1rem 0 1rem;
	}
	header div.msg {
		position:absolute;
		color:var(--foreground3);
		background:var(--background3);
		padding:3px;
		text-align:center;
		left:0;
		bottom:0;
		right:0;
		font-size:.9rem;
		-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
		box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
	}
	header div.errmsg {
		color:var(--foreground4);
		background:var(--background4);
	}
	#header_mugshot {
		display:block;
		position:absolute;
		top:10px;
		right:20px;
		width:80px;
		bottom:30px;
		border-radius:4px;
		background-position:center center;
		background-size:75%;
		background-repeat:no-repeat;
	}

nav {
	grid-area:nav;
	background:var(--background2);
	color:var(--foreground2);
	text-align:center;
}

	nav li {
		border-left:4px solid #ccc;
	}
		nav li.transport {
			border-left:4px solid orange;
		}
		nav li.walks {
			border-left:4px solid green;
		}
		nav li.admin {
			border-left:4px solid yellow;
		}
	nav a {
		display:block;
		padding:.8rem 1rem;
		text-decoration:none;
		color:var(--foreground2);
		position:relative;
	}
		nav a.on,
		nav a:hover {
			color:var(--foreground4);
			background:var(--background4);
		}
		nav a.on {
			cursor:default;
		}
		nav a.on::after {
			content:'';
			position:absolute;
			top: 1rem;
			right: 0 !important;
			left: auto;
			display: block;
			width: 0;
			height: 0;
			border-top: .5em solid transparent;
			border-bottom: .5em solid transparent;
			border-right: .5em solid var(--background1) !important;
			border-left: 0 !important;
		}
		nav a:not(.on):hover::after {
			content:'';
			position:absolute;
			top: 1rem;
			left: 0 !important;
			right: auto;
			display: block;
			width: 0;
			height: 0;
			border-top: .5em solid transparent;
			border-bottom: .5em solid transparent;
			border-left: .5em solid var(--background1) !important;
			border-right: 0 !important;		
		}
		nav a:focus, nav a:active {
			color:var(--foreground3);
			background:var(--background3);		
		}
		
	nav ol {
		display:none;
		text-align:left;
		padding-top:1rem;
	}
	
	nav li.badge {
		font-size:.75rem;
		margin:0;
		padding:.75rem;
		text-align:center;
		border-radius:2px;
	}
	
	nav .opener {
		cursor:pointer;
	}
	
	nav .opener::after {
		content:'\2630';
		font-size:2rem;
		padding:.5rem 0;
		display:block;
	}
	
	nav a#impersonation_end span {
		display:inline-block;
		padding:5px 10px;
		color:var(--foreground3);
		background:var(--background3);
		-webkit-border-radius:10px;
		border-radius:10px;
	}
		nav a#impersonation_end:hover {
			background:transparent;
		}
		nav a#impersonation_end:hover::after {
			display:none;
		}
			nav a#impersonation_end:hover span {
				color:var(--foreground4);
				background:var(--background4);	
				-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
				box-shadow: 0 0 3px 0 rgba(0,0,0,.7) inset;
			}

main {
	padding:1rem 1rem 1rem 1rem;
	grid-area:main;
	position:relative;
}
	main h1 {
		font-size:2rem;
		padding:1rem 0;
	}
	main #toolbar {
		position:absolute;
		top:0;
		left:0;
		right:0;
		display:flex;
		padding:3px;
		background:var(--background5);
		color:var(--foreground5);
	}
		#toolbar a {
			background-color:var(--background6);
			border-left:6px solid var(--background6);
			border-right:6px solid var(--background6);
			margin-right:1rem;
			-webkit-border-radius: .5rem;
			border-radius: .5rem;
		}

.grid {
	display:grid;
	grid-gap:1rem;
}
	.grid-1-1 {
		grid-template-columns:1fr 1fr;
	}

#info {
	margin:1.1rem 0 1rem 0
	background:#eee;
	padding:1rem 1rem 0 1rem;
	background:#eee;
	border:1px solid #999;
	-webkit-border-radius: 4px 4px 4px 4px;
	border-radius: 4px 4px 4px 4px;
}
	#info>div {
		margin-bottom:1rem;
	}

footer {
	padding:.5rem;
	font-size:.7rem;
	text-align:center;
	grid-area:footer;
	background:var(--background5);
	color:var(--foreground5);
	
	display:flex;
	justify-content: space-evenly;
}
	footer a {
		color:#FA00CE;
	}


.tabs {
	text-align:right;
}
	.tabs a,
	.tabs a:visited {
		margin-left:1rem;
		padding:.3rem 1rem .3rem 2rem;
		background-color:var(--background2);
		color:var(--foreground2);
		-webkit-border-radius: 10px 10px 0 0;
		border-radius: 10px 10px 0 0;
		border-left:10px solid var(--background2);
	}

table {
	width:100%;
	font-size:.9rem;
}
	table+table {
		margin-top:1rem;
	}
	th, td {
		padding:.5em .8em;
		text-align:left;
		vertical-align:top;
	}
	td:nth-child(odd) {
		background-color:rgba(0,0,0,.05);
	}
	th {
		background:var(--background2);
		color:var(--foreground2);		
	}
		thead th a,
		th a.icon {
			color:var(--foreground2) !important;
		}
	thead td {
		font-size:.9rem;
	}
	tbody th {
		opacity:.85;		
	}
		tbody tr:nth-child(odd) th {
			opacity:.7;
		}
	tbody td {
		font-size:0.8rem;
	}
	tr:nth-child(even) {
		background:var(--background5);
		color:var(--foreground5);	
	}
	tr.inactive {
		background:#ffcccc !important;
	}
	tr:nth-child(even).inactive {
		background:#ffdddd !important;
	}	
	tr:nth-child(even) th {
		opacity:.6;
	}
	tr:nth-child(odd) {
		background:var(--background6);
		color:var(--foreground6);	
	}
	tr:nth-child(even) td.followup {
		background:var(--background6);
		color:var(--foreground6);
	}
	tr:nth-child(odd) td.followup {
		background:var(--background5);
		color:var(--foreground5);
	}
	tr:hover td {
		background:yellow !important;
	}
	tr.suspended {
		background:pink;
	}
	
	tr.coupled td:first-child::before {
		content: '';
		display:block;
		position:absolute;
		height:2rem;
		width:.5rem;
		margin-top:-1.5rem;
		margin-left:-1rem;
		border:2px solid #B51813;
		border-right:0;
		-webkit-border-radius: 5px 0 0 5px;
		border-radius: 5px 0 0 5px;
	}
	th.dated {
		border-left:3px solid var(--background2);
	}
	td.dated {
		border-left:3px solid silver;
	}
	td.past {
		border-left:3px solid red;
	}
	td.today {
		border-left:3px solid green;
	}
	td.future {
		border-left:3px solid blue;
	}
	td.sql {
		background:#ffc;
		font-family:monospace;
		font-size:11px;
	}

#addform input {
	padding:3px;
}


#quick_search {
	float:right;
	font-size:13px;
	padding:4px 4px 4px 15px;
	background:#444;
	color:#fff;
	-webkit-border-radius: 10px 0 0 0;
	border-radius: 10px 0 0 0;
}
	#quick_search input {
		border:0;
		padding:2px;
		font-size:13px;
	}

.tal {
	text-align:left;
}
.tac {
	text-align:center;
}
.tar {
	text-align:right;
}

.pink,
tr:hover td.pink {
	background:pink !important;
}
.red,
tr:hover td.red {
	background:red !important;
	color:white;
}
.green,
tr:hover td.green {
	background:green !important;
	color:white;
}
	.green a.icon {
		color:white;
	}
.lightgreen,
tr:hover td.lightgreen {
	background:lightgreen !important;
}
.yellow {
	background:yellow !important;
}
.orange,
tr:hover td.orange {
	background:orange !important;
}
.cyan,
tr:hover td.cyan {
	background:cyan !important;
}
.blue,
tr:hover td.blue {
	background:blue !important;
	color:white;
}
.p4wnavy {
	backround:#043B4F !important;
	color:#fff;
}
.p4worange {
	background:#EB630F !important;
	color:#fff;
}
.rating_0 {
	border-left:3px solid green;
}
.rating_1 {
	border-left:8px solid #ff9999;
}
.rating_2 {
	border-left:8px solid #ff8888;
}
.rating_3 {
	border-left:8px solid #ff7777;
}
.rating_4 {
	border-left:8px solid #ff6666;
}
.rating_5 {
	border-left:8px solid #ff5555;
}
.rating_6 {
	border-left:8px solid #ff4444;
}
.rating_7 {
	border-left:8px solid #ff3333;
}
.rating_8 {
	border-left:8px solid #ff2222;
}
.rating_9 {
	border-left:8px solid #ff1111;
}
.rating_10 {
	border-left:8px solid red;
}

.shadow {
	-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.7);
	box-shadow: 0 0 3px 0 rgba(0,0,0,.7);
}
span.vin {
	display:inline-block;
	position:relative;
	background:#FFCD00;
	color:#000;
	font-size:12px;
	padding:3px 12px 3px 6px;
	font-weight:bold;
	border-radius:2px;
	font-family:verdana;
	-webkit-box-shadow: 0 0 2px 0 rgba(0,0,0,.7);
	box-shadow: 0 0 2px 0 rgba(0,0,0,.7);
	border-left:15px solid #FFCD00;
}
	span.vin.zero {
		border-left:15px solid #00B74F;
	}
	span.vin:hover {
		background:#fff;
		border-left:15px solid #fff;
	}
		span.vin.zero:hover {
			border-left:15px solid #00B74F;
		}
	span.vin::before {
		content:'UK';
		position:absolute;
		left:-13px;
		bottom:4px;
		font-size:7px;
		color: #001F68;
		letter-spacing:-1px;
	}
	span.vin::after {
		content: '';
		position:absolute;
		left:-13px;
		top:5px;
		width:10px;
		height:4px;
		background:#001F68;
	}

input.vin {
	background:#FFCD00;
	color:#000;
	text-transform:uppercase;
}

span.odometer {
	display:inline-block;
	border:4px inset #444;
	background:white;
	/*
	background-image: linear-gradient(to left, transparent 0%, transparent 19px, #999 20px, transparent 21px, transparent 35px, #999 36px, transparent 37px, transparent 51px, #999 52px, transparent 53px, transparent 67px, #999 68px, transparent 69px, transparent 83px, #999 84px, transparent 85px), linear-gradient(180deg, rgba(187,187,187,1) 0%, rgba(249,249,249,1) 30%, rgba(255,255,255,1) 49%, rgba(247,247,247,1) 68%, rgba(179,179,179,1) 100%);
	*/
	background-image: linear-gradient(180deg, rgba(187,187,187,1) 0%, rgba(249,249,249,1) 30%, rgba(255,255,255,1) 49%, rgba(247,247,247,1) 68%, rgba(179,179,179,1) 100%);
	text-align:right;
	min-width:100px;
	padding:3px;
	font-family:tahoma;
	font-size:15px;
	font-weight:bold;
	letter-spacing:5px;
}
	
	
.border {
	border:1px solid var(--background1);
}

.bigbutton {
	display:inline-block;
	border-radius:5px;
	background:red;
	color:white;
	font-weight:bold;
	padding:.6rem 2rem;
	text-decoration:none;
}
	.bigbutton:hover {
		background:darkgreen;
	}
	.bigbutton:active {
		background:green;
	}

.pform fieldset {
	background:var(--background5);
	color:var(--foreground5);	
	border:1px solid #aaa;
	border-radius:.2rem;
}
	.pform td fieldset,
	td .pform fieldset {
		border:1px solid #aaa;
	}

.pform legend {
	background:var(--background5);
	color:var(--foreground5);
	border:1px solid #aaa;
	border-bottom:0;
	border-radius:.2rem .2rem 0 0;
	font-weight:bold;
	position:relative;
}
	.pform legend::before {
		content: '';
		position:absolute;
		bottom:0;
		left:-1px;
		height:50%;
		border-left:1px solid var(--background5);
	}
	.pform legend::after {
		content: '';
		position:absolute;
		bottom:0;
		right:-1px;
		height:50%;
		border-left:1px solid var(--background5);
	}
	

.pform input[type=submit] {
	background:var(--background4);
	color:var(--foreground4);
	border:0;
	border-radius:.5rem;
}
	.pform input[type=submit]:hover {
		background:var(--background3);
		color:var(--foreground3);
	}

dl.accordion {

}
	dl.accordion>dt {
		padding:.4rem 2rem;
		background:var(--background3);
		color:var(--foreground3);
		font-weight:bold;
		margin-top:1px;
		cursor:pointer;
		position:relative;
	}
		dl.accordion>dt::after {
			content: '\25B6';
			position: absolute;
			right: 10px;
		}
		dl.accordion>dt.on {
			background:var(--background4);
			color:var(--foreground4);		
		}
			dl.accordion>dt.on::after {
				content: '\25BC';
			}
		dl.accordion>dt>div {
			margin:.5rem 0;
			font-size:.8rem;
			font-weight:normal;
		}
	dl.accordion>dd {
		display:block;
		margin-left:2rem;
		padding:1rem 2rem;
		margin-top:1px;
		background:var(--background5);
		color:var(--foreground5);		
	}
	dl.accordion>dd:nth-child(odd) {
		background:var(--background6);
		color:var(--foreground6);
	}
		dl.accordion>dd>div,
		dl.accordion>dd>table {
			margin:.5rem 0;
			font-size:.8rem;
			line-height:.8;
		}

#dashboard {
	display:grid;
	grid-gap:1rem;
	min-height:70vh;
}
	#dashboard>div {
		background:var(--background5);
		color:var(--foreground5);		
	}
		#dashboard>div>h3 {
			background:var(--background3);
			color:var(--foreground3);
			font-weight:bold;
			padding:.4rem;
			border-bottom:2px solid #fff;
		}
		#dashboard>div>a {
			display:block;
			position:relative;
			text-decoration:none;
			border-bottom: 2px solid white;
			padding:5px;
			background:var(--background5);
			color:var(--foreground5);
		}
		#dashboard>div>a:nth-child(even) {
			background:var(--background6);
			color:var(--foreground6);		
		}
			#dashboard>div>a>i,
			.swatches>i {
				position:relative;
				display:inline-block;
				color:#fff;
				font-weight:bold;
				font-size:.7rem;
				text-align:center;
				padding:6px 1px;
				margin:1px;
				-webkit-border-radius:4px;
				border-radius:4px;
				opacity:.9;
				min-width:28px;
			}
				#dashboard>div>a.appointment_status_1>i::after,
				#dashboard>div>a.appointment_status_2>i::after,
				#dashboard>div>a.appointment_status_-1>i::after {
					position:absolute;
					display:inline-block;
					padding:0 4px;
					top:-5px;
					right:-5px;
					-webkit-border-radius:50%;
					border-radius:50%;
					color:#fff;
					font-weight:normal;
					font-size:9px;
					-webkit-box-shadow: 0 0 0 2px rgba(255,255,255,.9),0 0 3px 2px rgba(0,0,0,.6);
					box-shadow: 0 0 0 2px rgba(255,255,255,.9),0 0 3px 2px rgba(0,0,0,.6);
				}
				#dashboard>div>a.appointment_status_1>i::after {
					content: '?';
					background:blue;				
				}
				#dashboard>div>a.appointment_status_2>i::after {
					content: '\2713';
					background:green;				
				}
				#dashboard>div>a.appointment_status_-1>i::after {
					content: '\292B';
					background:red;				
				}

				#dashboard>div>a>i:last-of-type {
					margin-right:5px;
				}
	
	.announcement>span {
		display:block;
		padding:.2rem .4rem;
		border-bottom:1px solid var(--background6);
		font-size:.9rem;
	}
	
	.announcement>div {
		padding:.2rem .4rem;
	}
	
	#dashboard>div.announcement.Notification h3,
	td.Notification {
		background:#076b07;
	}
	#dashboard>div.announcement.Alert h3,
	td.Alert {
		background:#f08100;
	}
	#dashboard>div.announcement.Warning h3,
	td.Warning {
		background:#d80206;
	}
	#dashboard>div.announcement.Christmas h3,
	td.Christmas {
		background:#472d46;
	}
		#dashboard>div.announcement.Christmas {
			background-image:url(/userfiles/design/christmas.jpg);
			background-size:cover;
			background-position:center center;
			color:#fff;
			font-weight:bold;
		}
	#dashboard>div.announcement.Birthday h3,
	td.Birthday {
		background:#e8ed75;
		color:#444;
	}
		#dashboard>div.announcement.Birthday {
			background-image:url(/userfiles/design/birthday.png);
			background-size:contain;
			background-position:bottom center;
		}


.faux_email {
	border:1px solid #78c2c9;
	background:#c7f7fc;
	color:#000;
	font-family:monospace;
	font-size:13px;
	padding:0;
}
	.faux_email_recipient {
		padding:.5em 1em;
		border-bottom:1px dashed #78c2c9;
	}
	.faux_email_cc {
		padding:.5em 1em;
		border-bottom:1px dashed #78c2c9;
	}
	.faux_email_recipient span,
	.faux_email_cc span {
		display:inline-block;
		padding:2px 10px;
		background:#eee;
		-webkit-border-radius: 10px;
		border-radius: 10px;
	}
	.faux_email_cc span {
		background:yellow;
	}
	.faux_email_subject {
		padding:.5em 1em;
		border-bottom:1px dashed #78c2c9;
	}
	.faux_email_body {
		padding:.5em 1em;
	}
		.faux_email_body b {
			color:red;
			background:yellow;
			padding:0 5px;
		}
	.faux_email_attachments {
		padding:.5em 1em;
		border-top:1px dashed #78c2c9;		
	}
		.faux_email_attachments .icon {
			font-family:monospace !important;
			font-size:13px !important;
			background-color:#fff;
			-webkit-border-radius:5px;
			border-radius:5px;
		}

.dateblock {
	font-size:.7rem;
	border-radius:4px;
	margin-right:4px;
	padding:4px;
	background:#888;
	cursor:help;
}
	.dateblock.date_added {
		background:#90e0ef;
		color:#444;
	}
	.dateblock.date_intake_offered {
		background:#00b4d8;
	}
	.dateblock.date_intake_paid {
		background:#0077b6;
		color:#fff;
	}		
	.dateblock.date_intake_appointment {
		background:#03045e;
		color:#fff;
	}
	
.adminonly {
	font-style:italic;
	
}

.member {
	display:grid;
	grid-gap:2px;
	grid-template-columns:1fr;
	grid-template-rows:120vw auto auto auto auto auto;
	grid-template-areas:
		"member-mugshot"
		"member-name"
		"member-telephone"
		"member-mobile"
		"member-email"
		"member-biography"
		;
	margin-bottom:1rem;
}
	.member>div:nth-child(1) {
		grid-area:member-mugshot;
		background-color:var(--background2);
		background-size:cover;
		background-position:center center;
	}
	.member>div:nth-child(2) {
		grid-area:member-name;
		background:var(--background2);
		color:var(--foreground2);
		padding:2px 1rem;
	}
		.member>div:nth-child(2) a.icon {
			float:right;
			margin-left:10px;
			background-color:#ddd;
			padding:0;
			width:16px;
			height:16px;
			margin-top:3px;
			-webkit-border-radius:2px;
			border-radius:2px;
		}
	.member>div:nth-child(3) {
		grid-area:member-telephone;
		background:var(--background5);
		color:var(--foreground5);
		padding:1px 1rem;
	}
	.member>div:nth-child(4) {
		grid-area:member-mobile;
		background:var(--background6);
		color:var(--foreground6);
		padding:1px 1rem;
	}
	.member>div:nth-child(5) {
		grid-area:member-email;
		background:var(--background5);
		color:var(--foreground5);
		padding:1px 1rem;
	}
	.member>div:nth-child(6) {
		grid-area:member-biography;
		background:var(--background6);
		color:var(--foreground6);
		font-size:0.9rem;
		padding:1px 1rem;
	}


.calendar_month {
	display:grid;
	grid-gap:1rem;
}
.calendar_head {
	display:grid;
	grid-template-columns:1fr 6fr 1fr;
	text-align:center;
	background:var(--background3);
	color:var(--foreground3);
	font-size:1.2rem;
}
.calendar_head span {
	padding:.5rem;
}
.calendar_head a {
	color:var(--foreground3);
}
.calendar_body {
	display:grid;
	grid-gap:1rem;
}
.calendar_body span {
	padding:.5rem;
}
.calendar_day {
	display:grid;
	background:var(--background5);
	color:var(--foreground5);
	text-decoration:none;
}
	.calendar_day:hover {
		outline:2px solid cyan;
	}
	.calendar_day.today {
		outline:2px solid gold;
	}
.calendar_day>span:first-child {
	background:var(--background6);
	color:var(--foreground6);
	text-align:center;
	font-weight:bold;
}
.calendar_day span {
	padding:.2rem;
}

not(.icon).user {
	display:inline-block;
	margin:0 1px;
	border-radius:3px;
	font-size:12px;
}


@media only screen and (min-width: 600px) {
  .calendar_head {

  }
  .calendar_body {
  	grid-template-columns:1fr repeat(5, 2fr) 1fr;
  }
  .calendar_day {
  	grid-template-rows:1fr 1fr 1fr;
  }


 	.monthstart1>a:first-child {
 		grid-column:1;
 	}
 	.monthstart2>a:first-child {
 		grid-column:2;
 	}
 	.monthstart3>a:first-child {
 		grid-column:3;
 	}
 	.monthstart4>a:first-child {
 		grid-column:4;
 	}
 	.monthstart5>a:first-child {
 		grid-column:5;
 	}
 	.monthstart6>a:first-child {
 		grid-column:6;
	}
 	.monthstart7>a:first-child {
 		grid-column:7;
 	}


}


.nomobile,
.no_mobile,
.over_1280px_only,
.over_1600px_only {
	display:none;
}

/* Allows links at bottom of fancyboxes to be clickable */
.fancybox-prev,
.fancybox-next {
	height:auto;
	bottom:40px;
}

.grid-1-1 {
	display:grid;
	grid-gap:1rem;
}

.icon {
	display:inline;
}

.flag {
	display:inline-block;
	width:16px;
	height:16px;
	clip-path: polygon(75% 0%, 100% 50%, 75% 100%, 0% 100%, 25% 50%, 0% 0%);
}
	.flag+.flag {
		margin-left:-3px;
	}

@media only screen and (max-width: 600px) {
	
	
	h1#logo img {
		max-width:none;
	}
	
	.nm,
	.nm_col2 thead th:nth-child(2),
	.nm_col2 tbody td:nth-child(2),
	.nm_col3 thead th:nth-child(3),
	.nm_col3 tbody td:nth-child(3),
	.nm_col4 thead th:nth-child(4),
	.nm_col4 tbody td:nth-child(4),
	.nm_col5 thead th:nth-child(5),
	.nm_col5 tbody td:nth-child(5),
	.nm_col6 thead th:nth-child(6),
	.nm_col6 tbody td:nth-child(6),
	.nm_col7 thead th:nth-child(7),
	.nm_col7 tbody td:nth-child(7),
	.nm_col8 thead th:nth-child(8),
	.nm_col8 tbody td:nth-child(8),
	.nm_col9 thead th:nth-child(9),
	.nm_col9 tbody td:nth-child(9) {
		display:none;
	}

}

@media(min-width: 600px) {

	.nomobile {
		display:initial;
	}
	
	body {
		min-height:100vh;

		grid-template-columns: 8rem 1fr;
		grid-template-rows:auto 1fr auto;
		grid-template-areas:
			"logo header"
			"nav main"
			"nav footer"
			;
	}
	
	header {
		display:initial;
	}
	
	nav {
		padding:1.85rem 0 0 0;
	}
	
	nav ol {
		display:block;
		padding-top:0;
	}
		nav .opener {
			display:none;
		}

	
	#dashboard {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr 1fr 1fr;
	}

}

@media(min-width: 800px) {
	body {
		grid-template-columns: 10rem 1fr;
	}
	
	.member {
		grid-gap:2px;
		grid-template-columns:150px 1fr;
		grid-template-rows:1fr 1fr 1fr 1fr 1fr;
		grid-template-areas:
			"member-mugshot member-name"
			"member-mugshot member-telephone"
			"member-mugshot member-mobile"
			"member-mugshot member-email"
			"member-mugshot member-biography"
			;
	}
	
	.grid-1-1 {
		grid-template-columns:1fr 1fr;
	}
		
	
}

@media(min-width: 1024px) {

	body {
		grid-template-columns: 15rem 1fr;
	}
	
	#dashboard {
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr 1fr;
	}

}

@media(min-width: 1280px) {
	
	.over_1280px_only {
		display:initial;
	}

}

@media(min-width: 1600px) {
	
	.over_1600px_only {
		display:initial;
	}

}


.leaflet-container .leaflet-control-mapcentercoord {
	background-color:rgba(255,255,255,.7);
	box-shadow:0 0 5px #bbb;
	padding:0 5px;
	margin:0;
	color:#333;
	font:11px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif
}
.leaflet-control-mapcentercoord-icon {
	background:url(https://web-cdn.org/js/leaflet/icons/MapCenterCoordIcon1.svg) 50% 50% no-repeat;
	margin:-18px 0 0 -18px;
	width:36px;
	height:36px;
	left:50%;
	top:50%;
	content:'';
	display:block;
	position:absolute;
	z-index:-1;
}


