@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');

body {
	margin: 0px;
	padding: 0px;
	height: 100vh;
	background-color: #050505;
	font-family: "DM Sans", Arial, Helvetica, sans-serif;
	/* background-image: url(../images/timothy-desktop.webp);
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: 100vh;
	*/
}
#background {
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0;
	right: 0;
	height: 100vh;
	width: 100%;
	background-color: #050505;
	background-image: url(../images/timothy-desktop.webp);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
	margin: 0px auto;
	overflow: hidden;
	z-index: 0;
	display: block;
}
.dtRight {
	position: absolute;
	top: 0px;
	right: 100%;
	width: 2vw;
	height: 200%;
	background: linear-gradient(
        to right, transparent 0%, transparent 10%, currentColor 50%, transparent 90%, transparent 100%
    );
}
#timothy {
	position: relative;
	width: auto;
	height: 100vh;
}
header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: auto;
	display: block;
	z-index: 10;
}
#headContent {
	position: relative;
	width: 92%;
	height: auto;
	display: block;
	margin: 8px auto;
	z-index: 10;
}
#timLogo {
	position: relative;
	width: 300px;
	max-width: 55%;
	height: auto;
	margin: auto;
	display: block;
}
#mLink {
	position: absolute;
	top: 30%;
	left: 10px;
	width: 40px;
	height: 40px;
	margin: auto;
	border: solid 2px #000000;
	border-radius: 50%;
	text-align: center;
	vertical-align: middle;
	background-color: rgba(255,255,255,0.5);
	cursor: pointer;
	display: table;
}
#mLink div {
	position: relative;
	vertical-align: middle;
	font-size: 21px;
	color: #220000;
	padding-top: 0px;
	display: table-cell;
}
#mLink div hr {
	width: 52%;
	height: 1px;
	font-size: 1px;
	background-color: #220000;
	border: 0;
	margin: 4px auto;
	display: block;
}
#navigation {
	position: absolute;
	top: 0px;
	left: -101%;
	width: 40%;
	height: 100vh;
	padding-top: 0px;
	background-color: rgba(0,0,0,0.85);
	z-index: 20;
}
#navigation ul {
	width: 100%;
	margin: 0px 0px 0px 5vw;
	padding: 0px;
	list-style: none;
}
#navigation ul li {
	font-size: calc(24px + .6vw);
	line-height: 180%;
	color: #FFFFFF;
}
#navigation ul li a {
	color: #FFFFFF;
	text-decoration: none;
}
#navigation .project {
	font-size: calc(13px + .4vw);
	line-height: 240%;
}
#projectLink, #contactLink, #aboutLink {
	cursor: pointer
}
#projectList {
	position: relative;
	width: 100%;
	display: none;
}
#social {
	position: absolute;
	bottom: 10vh;
	left: 5vw;
	right: 15px;
	text-align: left;
}
#social img {
	position: relative;
	width: 22px;
	height: auto;
	margin: 15px 2vw 15px 0px;
	vertical-align: middle;	
}
.iMid {
	width: 27px;
}
.iLarge {
	width: 32px;
}
#closeNav {
	position: relative;
	margin-top: 20px;
	width: 90%;
	height: 5vh;
	text-align: right;
	color: #FFFFFF;
	font-size: calc(16px + .4vw);
	font-weight: 200;
}
#closeNav span {
	cursor: pointer;
}
.mainContainer {
	position: relative;
	top: 100vh;
	width: 100%;
	height: auto;
	margin: auto;
	padding-bottom: 50vh;
	background-color: rgba(0,0,0,0.85);
	overflow: hidden;
	z-index: 50;
}
.mainContent {
	position: relative;
	width: 90%;
	margin: auto;
	padding-top: 10vh;
	vertical-align: middle;
	display: block;
}
.vidSpacer {
	position: relative;
	width: 100%;
	height: 200px;
	margin: auto;
	display: block;
	border: solid 2px red;
}
.vidEmbed {
	position: relative;
	width: 100%;
	max-width: 700px;
	/*height: 315px;*/
	aspect-ratio: 560 / 315;
	margin: 100px auto;
	display: block;
}
.youtubeVid {
	position: absolute;
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}
#footer {
	position: fixed;
	bottom: 0px;
	left: 0px;
	right: 0px;
	height: auto;
	text-align: center;
	padding-top: 6px;
	padding-bottom: 0px;
	z-index: 150;
}
#footer input[type="radio"] {
  /* appearance: none; */                                                                                                   
  width: 1.25em;                                          
  height: 1.25em;
  margin: 6px 8px;
  display: inline-block;
  accent-color: #CC0000;
}
#copyRight {
	position: relative;
	width: 100%;
	margin: 19px auto 0px auto;
	padding: 3px auto;
	color: #FFFFFF;
	font-size: 11px;
	line-height: 26px;
	background-color: rgba(0,0,0,0.25);
}
#contactContainer {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	padding-top: 0px;
	background-color: rgba(0,0,0,0.95);
	display: none;
	z-index: 190;
}
#contactData {
	position: relative;
	width: 90%;
	max-width: 650px;
	margin: auto;
}
#closeContact {
	position: relative;
	margin: 20px auto 0px auto;
	width: 90%;
	height: auto;
	max-width: 650px;
	text-align: right;
	color: #FFFFFF;
	font-size: calc(16px + .4vw);
	font-weight: 200;
}
#closeContact span {
	cursor: pointer;
}
#thanksContainer {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	padding-top: 0px;
	background-color: rgba(0,0,0,0.95);
	display: block;
	z-index: 190;
}
.thanksText {
	font-size: calc(18px + .2vw);
	color: #FFFFFF;
	font-weight: 200;
	text-align: center;
	margin: 0px auto;
	padding: 0px;
	line-height: 225%;
}
h2 {
	font-size: calc(28px + .8vw);
	color: #FFFFFF;
	font-weight: 200;
	text-align: center;
	margin: 0px auto 9px auto;
	padding: 0px;
}
#aboutContainer {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	padding-top: 0px;
	display: none;
	z-index: 190;
	background-color: rgba(0,0,0,1.0);
}
#aboutDataContainer {
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
	background-color: rgba(0,0,0,1.0);
}
#aboutData {
	position: relative;
	width: 90%;
	max-width: 850px;
	margin: auto;
	color: #FFFFFF;
}
#aboutData p, #aboutData li {
	color: #FFFFFF;
	line-height: 140%;
}
#aboutData a {
	color: #FFFFFF;
	text-decoration: none;
	border-bottom: solid 1px #999999;
}
#aboutData h3 {
	color: #FFFFFF;
	text-decoration: none;
	border-bottom: solid 1px #999999;
	text-transform: uppercase;
	margin-top: 65px;
	margin-bottom: 0px;
}
.tbl {
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: 4px auto;
}
.tbl table {
	position: relative;
	width: 100%;
	border: solid 1px #888888;
	border-collapse: separate;
}
.tbl td, .tbl th {
	border: solid 1px #888888;
}
#closeAbout {
	position: relative;
	margin: 20px auto 10px auto;
	width: 100%;
	height: auto;
	max-width: 850px;
	text-align: right;
	color: #FFFFFF;
	font-size: calc(16px + .4vw);
	font-weight: 200;
}
#closeAbout span {
	cursor: pointer;
}
.returnButton {
	text-align: center;
}
.returnButton a {
	position: relative;
	border: solid 1px #FFFFFF;
	border-radius: 18px;
	background-color: #222222;
	text-transform: uppercase;
	font-size: calc(14px + .3vw);
	font-weight: 200;
	color: #FFFFFF;
	padding: 8px 21px;
	margin: auto;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	display: inline-block;
}
#cForm {
	position: relative;
	width: 100%;
	margin: 0px;
}
#cForm input[type=text], #cForm input[type=email]  {
	width: 88%;
	padding: 7px 9px;
	margin: 0px auto 15px auto;
	font-family: "DM Sans", Arial, Helvetica, sans-serif;
	font-size: calc(18px + 0.1vw);
	display: block;
}
#cForm textarea  {
	width: 88%;
	padding: 7px 9px;
	margin: 0px auto 15px auto;
	font-family: "DM Sans", Arial, Helvetica, sans-serif;
	font-size: calc(18px + 0.1vw);
	display: block;
}
#timme {
	position: relative;
	width: 100px;
	height: auto;
	margin: auto;
}
#back2Top {
    width: 30px;
    line-height: 30px;
    overflow: hidden;
    z-index: 190;
    display: block;
    cursor: pointer;
    -moz-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
    position: fixed;
    bottom: 10px;
    right: 0;
    /* background-color: #6b8d53; */
    color: #FFFFFF;
    text-align: center;
    font-size: 24px;
    text-decoration: none;
}
#back2Top:hover {
    /* background-color: #BBBBBB; */
    color: #EEEEEE;
}
.mobileOnly {
	display: none;
}

@media only screen and (max-width: 900px) {
	body {
	/* background-image: url(../images/timothy-mobile.webp);
	background-size: cover; */
	}
	#background {
	postion: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	height: 100vh;
	width: 100%;
	background-color: #d3d0ca;
	background-image: url(../images/timothy-mobile.webp);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	z-index: 0;
	display: block;
	}
	#navigation {
	width: 60%;
	}
	.mainContent {
	padding-top: 80px;
	}
	#footer input[type="radio"] {
	width: 1.15em;                                          
	height: 1.15em;
	margin: 6px 1.9vw;
	}
	#social img {
	position: relative;
	width: 22px;
	height: auto;
	margin: 15px 4vw 15px 0px;
	vertical-align: middle;	
	}
	.iMid {
	width: 27px;
	}
	.iLarge {
	width: 32px;
	}
	#mLink {
	width: 30px;
	height: 30px;
	}
	#mLink div {
	font-size: 18px;
	}
}
@media only screen and (max-width: 600px) {
	#social {
	text-align: center;
	}
	#social img {
	position: relative;
	width: 22px;
	height: auto;
	margin: 15px 4vw 15px 4vw;
	vertical-align: middle;	
	}
	.iMid {
	width: 27px;
	}
	.iLarge {
	width: 32px;
	}
	.mobileOnly {
	display: block;
	}
	#copyRight {
	font-size: 10px;
	line-height: 20px;
	}
	#navigation .project {
	font-size: calc(13px + .4vw);
	}
	.tbl table {
	position: relative;
	width: 94%;
	margin: auto;
	border: none;
	border-collapse: collapse;
	display: block;
	}
	.tbl td {
	display: block;
	width: 100%;
	border: none;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 2px;
	text-align: center;
	}
	.tbl th {
	display: none;
	width: 100%;
	}
	.tblstart {
	padding-top: 36px;
	font-weight: 400;
	}
}