@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400;1,700&display=swap');@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@700&display=swap');/* base CSS */* {	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */	-moz-box-sizing: border-box;    /* Firefox, other Gecko */	box-sizing: border-box;         /* Opera/IE 8+ */}html, body {	padding: 0 !important;	margin: 0 !important;}body {	color: #090b0f;	background: #f9fbfc;	font-family: 'Open Sans', sans-serif;	width: 100%;}a {	font-weight: bold;	color: #ee8246;}#navbar {	background-color: #0a2247;	position: fixed;	top: 0;	width:100%;	z-index:10;}#navbar .mobile-container {	max-width: 480px;	margin: auto;	background-color: #555;	height: 500px;	color: white;	border-radius: 10px;}#navbar .phone {	font-weight: bold;	color: #f9fbfc;	text-transform: uppercase;}#navbar .phone a:link, #navbar .phone a:visited, #navbar .phone a:hover, #navbar .phone a:active {	color:#ee8246;}#navbar img.dropbtn {	max-height: 50px;	border: none;	cursor: pointer;}#navbar .dropbtn:hover, .dropbtn:focus {	background-color: #2980B9;}#navbar .dropdown {	position: relative;	display: inline-block;}#navbar .dropdown-content {	display: none;	position: absolute;	right:0px;	padding: 30px;	background-color: #0a2247;	opacity: 0.95;	text-align: center;	min-width: 300px;	overflow: auto;	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);	z-index: 10;}#navbar .dropdown-content a {	color: black;	padding: 12px 16px;	text-decoration: none;	font-weight: 600;	color: #66fcf1;	text-transform: uppercase;	display: block;}#navbar .dropdown a:hover {color: #f9fbfc;}#navbar .show {display: block;}div.spacer {	display:block;	width:100%;	text-align:center;}div.spacer img {	width: 100px;	height: auto;}div.floatclear {	clear:both;}h1.sectionhead {	text-transform: uppercase;	text-align: center;	font-weight: 600;}h1.sectionhead .highlight {	color: #ee8246;}#mainsitehead {	text-align: center;}#mainsitehead .calloutsub {	text-align: left;	font-weight: 600;}#mainsitehead .calloutsub {	color: #f9fbfc;}#mainsitehead .calloutsub a {	font-weight: bold;	color: #0a2247;}#mainsitehead h1 {	font-family: 'Oswald', sans-serif;	letter-spacing: 4px;	text-transform: uppercase;	color: #66fcf1;	text-align: center;}#mainsitehead .subheader {	font-weight: bold;	font-style: italic;	letter-spacing: 1px;	text-align: center;	color: #f9fbfc;}	div.meetperson {}span.geekname {	font-weight: bold;	text-transform: uppercase;}#about1main {	margin: 20px;}#about1main p {	text-align: left;}#about1main .proud {	font-weight: bold;}div.testimonial {	margin-bottom: 1em;	font-style: italic;}#angieslist {	text-align: center;	margin: 2em auto;}#angieslist a {	background-color: #ee8246;	border: none;	color: #f9fbfc;	padding: 20px;	text-align: center;	text-decoration: none;	display: inline-block;	margin: 4px 2px;	border-radius: 12px;	font-weight: bold;}div#about > div, div#contact > div, #footermain footer > div {	margin: auto auto 1em auto;}.contacthead2 {	font-weight: bold;}#gwcontactdescrip {	font-style: italic;}#footermain {	background-color: #090b0f;	color: #f9fbfc;	text-align: center;	font-weight: bold;}#footermain a {	color: #f9fbfc;}#copyright {	font-style: italic;}#htmlcsscheck {	display:none;	font-size: 6px;}#footergeekworld {	text-transform: uppercase;	padding-top: 1em;}	/* low-res CSS */@media only screen and (max-width: 600px) {	body {		font-size: 13px;		text-align: center;	}		ul {		list-style-type: none;		margin-left: 0;		padding-left: 0;	}		#navbar .topnav {		text-align:center;	}		#navbar #gwlogo {		display:block;		margin:auto;		max-width:300px;		padding-top:30px;	}	#navbar .rightwrapper {	}	#navbar .phone {		font-size: 16px;		letter-spacing: 1px;	}		#navbar .dropdown-content a {		font-size: 16px;		letter-spacing: 2px;	}		#mainsitehead {		width: 100%;		background: #46a1a8 50% 0 url("images/GeekWorld_Mobile Banner_375x812.jpg") no-repeat; /* old IE fallback */		background-color: #46a1a8;		background-image: url("images/GeekWorld_Mobile Banner_375x812.jpg");		background-repeat: no-repeat;		background-size: 100%;	}		#mainsitehead header {		left:0;		padding: 30px;	}		#mainsitehead h1 {		font-size: 32px;		letter-spacing: 2px;		text-align: center;	}		#mainsitehead .subheader {		font-size: 19px;		letter-spacing: 1px;		text-align: center;	}		#mainsitehead .callout {	}		#mobilecall {		color: #f9fbfc;		margin-top:2em;		font-size: 16px;		font-weight: 600;		text-align: center;	}		#mainsitehead .calloutsub2 {		visibility: hidden;	}		h1.sectionhead {		font-size: 27px;		letter-spacing: 3px;	}		div.sectionbreak {	}		div.spacer {		margin:2em auto;		height:auto;	}	#about1main {		margin: 5px calc(10vw);		font-size: 13px;	}		#servicesmain, #contactmain, #testimonials {		margin: 50px calc(5vw);	}		#serviceslistings, #aboutandcontact {	}		#serviceslistings h2 {	}		#meetsection {		background-color: #0a2247;		color: #f9fbfc;		padding-top: 2em;		padding-bottom: 2em;	}		#meetppl {	}		.meetperson {	}		.meetperson div.img {		text-align: center;		margin: 1em auto;	}		.meetperson img {		max-width:135px;		height:auto;	}		.meetperson .text {	}		div.testimonial {		font-size: 26px;		letter-spacing: 2px;		min-height: 105px;	}		div.testimonial div.img {	}		div.testimonial img {		display: block;		width:55px;		height:auto;		margin: 1em auto;	}		div.testimonial .text {	}		#angieslist a {		font-size: 16px;	}		div#contact {		break-before: column;	}		#footermain {		font-size: 21px;	}		#footergeekworld {		font-size: 24px;	}		#facebook img {		width: 50px;		height: auto;	}		#copyright {		font-size: 19px;	}}/* mid-res CSS */@media only screen and (min-width: 601px) and (max-width: 1150px) {	body {		font-size: 16px;	}		ul {	}		#navbar .topnav {		text-align: left;		max-height:100px;	}		#navbar #gwlogo {		max-width:300px;		padding:0 30px;	}	#navbar .rightwrapper {		display: inline-block;		position: absolute;		top: 0px;		right: 0px;	}	#navbar .phone {		display: inline-block;		font-size: 26px;		letter-spacing: 2px;		padding: 0 30px;	}		#navbar .dropdown-content a {		font-size: 26px;		letter-spacing: 2px;	}		#mainsitehead {		width: 100%;		background: #46a1a8 50% 0 url("images/GeekWorld_TabletBanner_768x1024.jpg") no-repeat; /* old IE fallback */		background-color: #46a1a8;		background-image: url("images/GeekWorld_TabletBanner_768x1024.jpg");		background-repeat: no-repeat;		background-size: 100%;	}		#mainsitehead header {		left:0;		padding-top: 120px;	}		#mainsitehead h1 {		font-size: 54px;		letter-spacing: 4px;		padding-left: 30px;		padding-right: 100px;		text-align: left;	}		#mainsitehead .subheader {		font-size: 24px;		letter-spacing: 1px;		padding-left: 30px;		padding-right: 100px;		text-align: left;	}		#mainsitehead .callout {		display: none;	}		#mobilecall {		text-align: center;		color: #f9fbfc;		display: block;		background-color: #ee8246;		margin-top:2em;		font-size: 16px;		font-weight: 600;		text-align: center;		padding: 20px 30px;	}		#mobilecall a {		color: #090b0f;	}		#mainsitehead .calloutsub2 {		visibility: hidden;	}		h1.sectionhead {		font-size: 32px;		letter-spacing: 4px;	}		div.sectionbreak {	}		div.spacer {		margin:2em auto;		height:auto;	}	#about1main {		margin: 5px calc(10vw);		font-size: 13px;	}		#servicesmain, #contactmain, #testimonials {		margin: 50px calc(5vw);	}		#serviceslistings, #aboutandcontact {	}		#serviceslistings h2 {	}		#meetsection {		background-color: #0a2247;		color: #f9fbfc;		padding-top: 2em;		padding-bottom: 2em;	}			#meetsection {		background-color: #0a2247;		color: #f9fbfc;		padding:20px 100px;	}		#meetppl {		-webkit-columns: 500px 2;		-moz-columns: 500px 2;		columns: 500px 2;		-moz-column-rule: 2px solid #0a2247;		column-gap: 60px;		vertical-align: top;	}		.meetperson {		min-height:200px;	}		.meetperson div.img {		float:left;	}		.meetperson img {		max-width:95px;		height:auto;	}		.meetperson .text {		margin-left:105px;	}		div#testimonials {		margin: 0 calc(10vw);	}		div.testimonial {		font-size: 19px;		letter-spacing: 1px;		min-height: 95px;	}		div.testimonial div.img {		float:left;		vertical-align:middle;	}		div.testimonial img {		width:75px;		height:auto;	}		div.testimonial .text {		margin-left:95px;	}		#testafter {		display: none;	}	#angieslist a {		font-size: 24px;	}		div#contact {		break-before: column;	}		#footermain {		font-size: 16px;	}		#footergeekworld {		font-size: 21px;	}		#facebook img {		width: 50px;		height: auto;	}		#copyright {		font-size: 14px;	}}/* high-res CSS */@media only screen and (min-width: 1151px) {	body {		font-size: 21px;	}		#navbar .topnav {		text-align: left;		max-height:100px;	}		#navbar #gwlogo {		max-width:300px;		padding:0 30px;	}	#navbar .rightwrapper {		display: inline-block;		position: absolute;		top: 0px;		right: 0px;	}	#navbar .phone {		display: inline-block;		font-size: 26px;		letter-spacing: 2px;		padding: 0 30px;	}		#navbar .dropdown-content a {		font-size: 26px;		letter-spacing: 2px;	}			#mainsitehead header {		position:absolute;		left:0;		width: 50%;		padding: 30px;		overflow: auto;	}		#mainsitehead {		padding: 50px 0 70px 0;		width: 100vw;		height: auto !important;		height: calc(56.25vw); /* header image is 1920x1080. 1080/1920=0.5625 */		min-height: calc(56.25vw);		min-width: 1151px;				background: #2d6360 50% 0 url("images/GeekWorld_DesktopBanner_1920x1080.jpg") no-repeat; /* old IE fallback */		background-color: #46a1a8;		background-image: url("images/GeekWorld_DesktopBanner_1920x1080.jpg");		background-repeat: no-repeat;		background-size: 100vw;	}		#mainsitehead h1 {		font-size: 80px;		letter-spacing: 6px;		text-align: left;	}		#mainsitehead .subheader {		font-size: 32px;		letter-spacing: 1px;		text-align: left;	}		#mainsitehead .callout {		position:absolute;		background-image: url("images/Callout_800x565.png");		right:75px;		top: 200px;		width:calc(50vw - 150px);		height: calc(0.7062 * (50vw - 150px)); /* image is 800x565. 565/800=0.7062 */		background-size: 100%;		padding:30px;		z-index: 5;	}		#mainsitehead .calloutsub {		/*font-size: 26px; */		font-size:1.62vw;		height:calc(0.7062 * (50vw - 280px));		margin-top:calc(0.2 * 0.7062 * (50vw - 280px));		/*		display: flex;		flex-direction: column;		align-items: flex-start;		justify-content: center; */	}		#mainsitehead .calloutsub div {		margin-top:0.5em;	}		#mainsitehead .calloutsub2 {		margin:.5em 0;	}		#mainsitehead .calloutsub2 img {		max-width: 100px;		height: auto;		color: #f9fbfc;	}		#mobilecall {		visibility: hidden;	}		h1.sectionhead {		font-size: 50px;		letter-spacing: 6px;	}		div.sectionbreak {		margin-top: 0;		break-before: column;	}		div.spacer {		margin:2em 30px;		height:40px;	}	#about1main {		margin: 20px calc(20vw);		font-size: 21px;	}		#servicesmain, #contactmain {		margin: 20px calc(10vw);	}		#serviceslistings, #aboutandcontact {		-webkit-columns: 300px 2;		-moz-columns: 300px 2;		columns: 300px 2;		-webkit-column-rule: 2px solid #0a2247;		-moz-column-rule: 2px solid #0a2247;		column-rule: 2px solid #0a2247;		column-gap: 60px;	}		#serviceslistings h2 {		margin-top: 0;		break-before: column;	}		#meetsection {		background-color: #0a2247;		color: #f9fbfc;		padding:20px 200px;	}	/*	#meetppl {		-webkit-columns: 500px 2;		-moz-columns: 500px 2;		columns: 500px 2;		-moz-column-rule: 2px solid #0a2247;		column-gap: 60px;		vertical-align: top;	}*/		#meetppl {		-webkit-columns: 30vw 2;		-moz-columns: 30vw 2;		columns: 30vw 2;		-moz-column-rule: 2px solid #0a2247;		column-gap: 5vw;		vertical-align: top;	}		.meetperson {		min-height:200px;	}		.meetperson div.img {		float:left;	}		.meetperson img {		max-width:95px;		height:auto;	}		.meetperson .text {		margin-left:105px;	}		div#testimonials {		margin: 0 calc(20vw);	}		div.testimonial {		font-size: 26px;		letter-spacing: 2px;		min-height: 105px;	}		div.testimonial div.img {		float:left;	}		div.testimonial img {		width:95px;		height:auto;	}		div.testimonial .text {		margin-left:125px;	}		#testafter {		display: none;	}	#angieslist a {		font-size: 26px;	}		div#contact {		break-before: column;	}		#footermain {		font-size: 21px;	}		#footergeekworld {		font-size: 24px;	}		#facebook img {		width: 50px;		height: auto;	}		#copyright {		font-size: 19px;	}}