body,html{
	margin:0;
	width:100%;
	min-height:100%;
}

body{
	background:#fff;
	color:#172650;
	font-family:Arial, Helvetica, sans-serif;
}

*{
	box-sizing:border-box;
}

#wrapper{
	min-height:100vh;
	display:flex;
	flex-direction:column;
}

#header{
	background:#172650;
	color:#fff;
	border-bottom:7px solid #d8cfad;
}

.headerInner{
	max-width:1050px;
	margin:0 auto;
	padding:24px 24px 21px 24px;
	text-align:center;
}

.churchName{
	font-family:Georgia, "Times New Roman", serif;
	font-size:37px;
	letter-spacing:3px;
	line-height:39px;
}

.churchSub{
	font-family:Georgia, "Times New Roman", serif;
	font-size:18px;
	letter-spacing:2px;
	margin-top:2px;
}

.churchTag{
	margin-top:6px;
	font-family:Georgia, "Times New Roman", serif;
	font-size:14px;
	font-style:italic;
	color:#d8cfad;
}

#content{
	flex:1;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:55px 20px;
	background:
		linear-gradient(rgba(255,255,255,.93), rgba(255,255,255,.93)),
		linear-gradient(135deg,#f4f0e1 0%,#fff 50%,#e8e1c7 100%);
}

.loginWrap{
	width:100%;
	max-width:430px;
}

.loginCard{
	background:#fff;
	border:1px solid #d9d9d9;
	border-top:7px solid #172650;
	box-shadow:0 8px 28px rgba(20,35,75,.14);
	padding:36px 40px 40px 40px;
}

.loginTitle{
	font-family:Georgia, "Times New Roman", serif;
	font-size:31px;
	text-align:center;
	color:#172650;
}

.loginRule{
	width:66px;
	height:3px;
	background:#d8cfad;
	margin:15px auto 14px auto;
}

.loginText{
	text-align:center;
	font-size:14px;
	color:#666;
	margin-bottom:28px;
}

label{
	display:block;
	font-size:13px;
	font-weight:bold;
	color:#172650;
	margin:0 0 7px 1px;
}

input[type="text"],
input[type="password"]{
	width:100%;
	height:44px;
	border:1px solid #bfc5d1;
	border-radius:3px;
	padding:0 12px;
	font-size:16px;
	color:#222;
	background:#fff;
	outline:none;
	margin-bottom:19px;
}

input[type="text"]:focus,
input[type="password"]:focus{
	border-color:#172650;
	box-shadow:0 0 0 2px rgba(23,38,80,.10);
}

.ib{
	display:inline-block;
}

.hideMe{
	display:none;
}

.btn{
	width:100px;
	color:#fff;
	background:#172650;
	height:40px;
	border:1px solid #172650;
	border-radius:4px;	
	line-height:38px;
	text-align:center;
	display:inline-block;	
	z-index:10;
	font-size:14px;
	font-weight:bold;
}

.btn:hover{
	cursor:pointer;
	background:#d8cfad;
	border-color:#d8cfad;
	color:#172650;
}

.btn200{
	width:200px;
	color:#fff;
	background:#172650;
	height:40px;
	border:1px solid #172650;
	border-radius:4px;	
	line-height:38px;
	text-align:center;
	display:inline-block;	
	z-index:10;
	font-size:14px;
	font-weight:bold;
}

.btn200:hover{
	cursor:pointer;
	background:#d8cfad;
	border-color:#d8cfad;
	color:#172650;
}

.loginBtn{
	width:100%;
	margin-top:4px;
}

.loginMessage{
	background:#fff2f2;
	border:1px solid #e3b6b6;
	color:#8b2525;
	padding:9px 10px;
	margin:-4px 0 16px 0;
	font-size:13px;
	border-radius:3px;
}

#footer{
	background:#172650;
	color:#fff;
	font-size:12px;
}

.footerInner{
	max-width:1050px;
	min-height:68px;
	margin:0 auto;
	padding:15px 24px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:30px;
}

.footerTag{
	color:#d8cfad;
	font-family:Georgia, "Times New Roman", serif;
	font-style:italic;
}

.footerRight{
	text-align:right;
	color:#efefef;
}

.ctr{
	text-align:center;
}

.clr{
	clear:both;
}

.clr5{
	clear:both;
	height:5px;
}	

.clr10{
	clear:both;
	height:10px;
}	

.clr20{
	clear:both;
	height:20px;
}	

.clr200{
	clear:both;
	height:200px;
}	

.clr100{
	clear:both;
	height:100px;
}	

.modal {
	display:none;
	position:fixed;
	z-index:1000;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background:rgba(211,211,211,.8) 
			   url('../images/loading.gif') 
			   50% 50% 
			   no-repeat;
	background-size:40px;            
}

@media only screen and (max-width : 768px) {
	.headerInner{
		padding:20px 15px 17px 15px;
	}

	.churchName{
		font-size:30px;
		line-height:33px;
	}

	.churchSub{
		font-size:15px;
	}

	#content{
		align-items:flex-start;
		padding:35px 16px;
	}

	.loginCard{
		padding:30px 24px 32px 24px;
	}

	.footerInner{
		display:block;
		text-align:center;
	}

	.footerRight{
		text-align:center;
		margin-top:10px;
	}
}


.mainMenu{
	width:100%;
	max-width:900px;
	margin:auto;
}

.menuTitle{
	font-family:Georgia, "Times New Roman", serif;
	font-size:32px;
	color:#172650;
	text-align:center;
}

.menuSubTitle{
	text-align:center;
	color:#777;
	margin-top:6px;
	margin-bottom:30px;
}

.menuGrid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:20px;
}

.menuCard{
	background:#fff;
	border:1px solid #ddd;
	border-top:6px solid #172650;
	padding:25px;
	min-height:130px;
	box-shadow:0 5px 15px rgba(20,35,75,.10);
	transition:.15s;
}

.menuCard:hover{
	cursor:pointer;
	transform:translateY(-2px);
	box-shadow:0 8px 20px rgba(20,35,75,.18);
	border-top-color:#d8cfad;
}

.menuCardTitle{
	font-family:Georgia, "Times New Roman", serif;
	font-size:22px;
	color:#172650;
	margin-bottom:10px;
}

.menuCardText{
	font-size:14px;
	line-height:20px;
	color:#666;
}

.pageContent{
	width:100%;
	max-width:1000px;
	margin:auto;
}

@media only screen and (max-width:768px){

	.menuGrid{
		grid-template-columns:1fr;
	}

}