body {
	margin:0;
	padding:0;
	font-family:Lato, sans-serif;
	font-size:11pt;
	line-height:1.6;
}

a {
	color:#000;
	outline:none;
}

#sidebar {
	position:fixed;
	top:0;
	left:0;
	width:250px;
	height:100%;
}

#main {
	margin-left:250px;
	z-index:0;
	overflow:hidden;
}

.img-res {
	max-width:100%;
	height:auto;
}

img.center {
	display:block;
	margin:1.5rem auto;
}

.center {
	text-align:center;
}

.pad-y {
	padding-top:30px;
	padding-bottom:30px;
}

.p404 {
	font-size:3rem;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
	padding:100px 48px;
}

.p404 h1 {
	color:#c10b0b;
}

.p404 h1,
.p404 p {
	margin:10px 0;
	line-height:1;
}

.header {
	background-image:url(https://s3.amazonaws.com/texas-flags/images/banner.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	color:#fff;
	padding:90px 0;
}

.header h1 {
	font-size:64pt;
    letter-spacing:2px;
    line-height:1;
	font-weight:300;
	margin:0;
}

.header h1 a {
	text-decoration:none;
	font-weight:600;
	color:#fff;
}

.header.no-bg {
	background:none;
	color:#000;
}

.header.no-bg h1 {
	font-size:45pt;
}

.header.no-bg h1 a {
	color:#000;
}

.header p {
	font-size:18pt;
	margin:30px 0 0;
}

.content {
    max-width:1184px;
	padding:0 48px;
	margin:0 auto;
}

.content h2 {
	font-size: 19pt;
    line-height: 1.4;
	font-weight:400;
}

.content p {
	margin:1.5rem 0;
}

.content .tbl-contents li ul,
.content .tbl-contents {
	padding:0;
}

.content .tbl-contents li {
	list-style:none;
	padding-left:20px;
	margin-top:15px;
}

#menuToggle input,
#menuToggle span,
.mobile .logo,
.mobile p {
	display:none;
}
@media (max-width:1024px) {
	body {
		padding-top:65px;
	}
	
	#menuToggle,
	#menuToggle span,
	.mobile .logo,
	.mobile p {
		display:block;
	}

	.mobile {
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:65px;
		display:flex;
		align-items:center;
		padding:5px;
		z-index:1;
		color:#fff;
		background:#212121;
	}
	
	.mobile p {
		margin:0;
		font-size:15pt;
		font-weight:300;
	}

	.mobile .logo {
		margin-right:20px;
	}

	#menuToggle {
		display: flex;
		flex-direction: column;
		z-index: 1;
		-webkit-user-select: none;
		user-select: none;
		margin:10px 20px 0;
	}

	#menuToggle input {
		display:flex;
		width:29px;
		height:21px;
		position:absolute;
		cursor:pointer;
		opacity:0;
		z-index:2;
		margin:0;
	}

	#menuToggle span {
		display:flex;
		width:29px;
		height:2px;
		margin-bottom:5px;
		position:relative;
		background:#f1f1f1;
		border-radius:3px;
		z-index:1;
		transform-origin:5px 0px;
		transition:transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				   background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				   opacity 0.55s ease;
	}

	#menuToggle span:first-child {
		transform-origin:0% 0%;
	}

	#menuToggle span:nth-last-child(2) {
		transform-origin:0% 100%;
	}

	#menuToggle input:checked ~ span {
		opacity:1;
		transform:rotate(45deg) translate(-3px, -1px);
		background:#fff;
	}

	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
	}

	#menuToggle input:checked ~ span:nth-last-child(2) {
		transform: rotate(-45deg) translate(0, -1px);
	}

	#sidebar {
		width:300px;
		height:900px;
		-webkit-font-smoothing:antialiased;
		transform-origin:0% 0%;
		transform:translate(-100%, 0);
		transition:transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
	}

	#menuToggle input[type="checkbox"]:checked ~ #sidebar {
		transform:none;
	}
	
	#main {
		margin-left:0;
	}
	
	.p404 {
		font-size:1rem;
	}
	
	.content {
		padding:0 20px;
	}
	
	.iframe-wrap {
		position:relative;
		overflow:hidden;
		width:100%;
		padding-top:56.25%;
	}

	.iframe-res {
		position:absolute;
		top:0;
		left:0;
		bottom:0;
		right:0;
		width:100%;
		height:100%;
	}
}