@charset "utf-8";
/* CSS Document */
/*
  Emerald Computer Sales Ltd.
  Author: Chris Kovalcik	
  Date:   May 21, 2023

  Filename: main.css
  Contains styles used by all pages.
*/

.html {
	height: 100%;
}

body {
	font-family: Verdana, "sans-serif";
	font-size: 0.9em;
	min-height: 98.5vh; /* Keep to near 100% window height */
	display: flex;
    flex-direction: column;
	box-shadow: 1px 1px 5px black;	
	margin: 8px;
}
header {
	background-image: url("../images/header_background.jpg");
	height: 180px;
	width: 100%;
	position: relative;
	vertical-align: middle;
	display: inline-block;
}
.headerimage {
	position: relative;
	vertical-align: middle;
	display: inline-block;
	top: 25px;
	left: 25px;
}
.main {
	overflow: auto;
	padding: 10px;
	position: relative;
	height: 100%;
	flex-grow: 1;
	align-content: center;
	max-width: 1000px; /* Keep it from getting too wide */
	margin: auto;
}

/* Navigation */
.navWrap {
	text-align: center;
	background: #04403d; /* Emerald Color */
	overflow: none;
	position: relative;
}
nav {
	background: #04403d; /* Emerald Color */
	overflow: auto;
	position: relative;
	z-index: 1;
	padding: 0px 0px 0px 10px;
	font-size: 1.2em;
	margin: auto;
}
nav ul {	
	margin: 5px 0px 5px 0px;
	padding-left: 5px;
}
nav li:not(:last-child) {
	list-style: none;
	display: inline-block;
	margin: 0px 5px 0px 5px;
	border-radius: 5px;
	padding: 0px 5px 0px 5px;
}
nav li:last-child {
	list-style: none;
	margin: 0px 0px 0px 0px;
	border-radius: 5px;
}
nav a {
	display: block;
	padding: 1px;
	text-decoration: none;	
	color: white;
	font-size: 0.8em;
	font-weight: bold;
}
nav a:hover {
	background: #326e67; /* Lighter green color */
	border-radius: 5px;
}
nav a:visited {
	background: #326e67; /* Lighter green color */
	border-radius: 5px;
}
/* End Navigation */

/* Make first letter of firt paragraph a drop cap */
.dropCap:first-of-type::first-letter {
	color: #efefef;
	background: #04403d; /* Emerald Color */
	font-size: 38px;
	line-height: 22px; /* that is, 48px font size - padding top&bottom */
	padding: 6px;
	margin-right: 3px;
	float: left;
}
h2 {
	background: #04403d; /* Emerald Color */
	color: white;
	padding: 5px;
	font-size: 1.1em;
	box-shadow: 1px 1px 4px black;
	margin-bottom: 10px;
}
img {
  max-width: 100%;
  display: block;
}
div[type="b"] {
	display: inline-block;
	font-weight: bold;
}
p {
	margin: 8px;
}
li {
	margin-left: 10px;
}
/* Hamburger menu styles */
.hamburger {
	display: none; /* Hide initially */
	margin: 0px;
	padding: 0px 0px 0px 5px;
    position: relative;
    left: 0px;
    top: 0px;
	z-index: 2;
	background: transparent;
}
/* Show hamburger icon if on small screen */
@media screen and (max-width: 720px) {
	.topnav li:not(:last-child) {display: none;}
	.topnav a.hamburger
	{
		display: block;
	}
	.navWrap {	text-align: left; }
	body { font-size: 1.2em;  min-width: 300px;}
	.headerimage { width: 380px; height: 87px;}
}
@media screen and (max-width: 720px) {
	.topnav.hammenu {position: relative;}
	.topnav.hammenu .hamburger
	{
		display: block;
		position: absolute;
		left: 15px;
		top: 5px;
		z-index: 2;
		width: 20px;
	}	
	nav li:not(:last-child) {margin-left: 30px;}
	nav {height: auto;}
}
.topnav.hammenu li {
	float: none;
	display: block;
	text-align: left;
	margin-top: 5px;
  }
.topnav.hammenu {
	position: absolute;
	width: calc(100% - 15px);
	padding-right: 5px;
	top: -30px;
}
footer {
	background: #04403d; /* Emerald Color */
	overflow: auto;
	margin: auto 0px 0px 0px;
	text-align: center;
	color: white;
	font-size: 0.8em;
}
#footerdate {
	float: right;
	margin-right: 5px;
}
.bodyText {
	display: table;
	height: auto;
	width: auto;
}
.bodyText::after { /* Expand Element */
	clear: both;
	content: "";
	display: table;
}
.imageBody {
	display: block;
	margin: 5px;
	max-height: 100%;
	max-width: 100%;
	height: auto;
	width: auto;
}
/* Icons */
.icon {
	display: inline-block;
	margin: 30px;
	padding: 15px 10px 15px 10px;
	text-align: center;
	font-size: 0.8em;
	border: 1px solid lightgrey;
	box-shadow: 1px 1px 20px lightgrey;
}
.iconImage {
	margin-left: auto;
	margin-right: auto;
}
.iconImage:hover { /* Spin icon */
	transform: rotate(360deg);
	transition: transform 1s ease;
}
/* Tag lines at bottom of pages */
.frontTag {
	background: #04403d; /* Emerald Color */
	color: white;
	padding: 15px;
	font-weight: bold;
	margin: 30px;
	box-shadow: 1px 1px 20px #04403d; /* Emerald Color */
	text-align: center;
}
.bulletList li {
	margin: 0px 0px 10px 0px;
}
.bodyGrid {
	display: grid;
	grid-template-columns: 330px auto;
}
.imageGridCol {
	grid-column: 1/2;
}
.textCol {
	grid-column: 2/3;
}
@media screen and (max-width: 790px) {
	.imageBody 	{
		display: none;
	}
	.textCol {
	grid-column: 1/3;
	}
	.imageBodyGrid 	{
		display: block;
	}
}
.subHeadline {
	width: 100%;
	font-weight: bold;
	text-align: center;
	text-shadow: 2px 2px 5px hsla(130,50%,50%,0.3);
	font-size: 1.2em;
}
.container {
	max-width: 1200px;
	margin: 0 auto;
}
/* Business services containers */
.services {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-top: 50px;	
	position: relative;
}
.services::after { /* Expand Div */
	clear: both;
	content: "";
	display: table;
}
.services::before { /* Dynamically load background and show paritally transparent */
	content: "";
	background-image: url("../images/techback.jpg");
	background-size: cover;
	position: absolute;
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	opacity: 0.3;
}
.service {
	max-width: 350px;
	min-width: 200px;
	margin: 20px;
	background-color: white;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
	padding: 20px;
	text-align: center;
	z-index: 1;
	border: 1px solid #dfdfdf /* Light grey */
}
.service:hover { /* Bump up 5px to show a lifting effect */
	transform: translateY(-5px);
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
	transition: transform 0.2s;
}
.service a {
	margin: 8px;
	display: inline-block;
	padding: 10px 20px;
	background-color: #2c3e50; /* Darker bluegreen */
	color: #fff;
	text-decoration: none;
	border-radius: 5px;
	transition: background-color 0.3s;
}
.maincon a:hover {
	background-color: #1e2a38; /* Darker bluegreen */
}
#crossref {
	margin-left: auto;
	margin-right: auto;
}
#crossref > dl > dt {
	font-weight: bold;
	margin: 10px 5px 5px 5px;
}
#crossref > dl > dd {
	margin: 5px 0px 5px 40px;
	font-size: 0.9em;
}
#crossref > dl > dd:last-child {
	margin-bottom: 30px;
}
#crossref > dl .crsubs {
	color: darkgreen;
	font-weight: bold;
	display: inline-block;
	
}
#crossrefnav {
	position: absolute;
	right: 10px;
	top: 168px;
	background: #04403d; /* Emerald Color */
	color: white;
	overflow: auto;
	z-index: 2;
	padding: 0px 0px 0px 10px;
	margin: auto;
	font-size: 12px;
}
@media screen and (max-width: 790px) {
	#crossrefnav {top: 168px;}
}
#crossrefnav > a {
	display: block;
	padding: 3px;
	text-decoration: none;	
	color: white;
	font-weight: bold;
}
#crossrefnav > a:hover {
	background: #326e67; /* Lighter green color */
	border-radius: 5px;
}
#crossrefnav > a:visited {
	background: #326e67; /* Lighter green color */
	border-radius: 5px;
}