:root {
    --dark-bg: hsl(180, 7%, 10%);
    --dark-bg2: hsl(180, 7%, 9%);
    --dark-color: hsl(0, 0%, 96%);
    --light-bg: hsl(43, 37%, 78%);
    --light-color: hsl(43, 37%, 25%);
}

* {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	font-variant-caps: small-caps;
	font-size: 16px;
}

/* COLORS
BLONDE: #F0E2B6 	hsl(46, 66%, 83%)
lighter variant: #FCEEC0		hsl(46, 91%, 87%)
darkest shade: #706A55		hsl(47, 14%, 39%)
complementary blues:
#8C9BA3		hsl(201, 11%, 59%)
#C2E0F0		hsl(201, 61%, 85%)

DESET SAND: #E3D4AD		hsl(43, 49%, 78%)

*/

html, body {
	height: 100%;
}

body {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.darkTheme {
	background-color: var(--dark-bg);
	color: var(--dark-color);
}

.lightTheme {
	background-color: var(--light-bg);
	color: var(--light-color);
}

main {
	height: 80%;
	display: flex;
	justify-content: center;
    align-items: center;
}

header, footer {
    height: 100%;
    width: 64px;
}

header {
    background-image: linear-gradient(to right, var(--dark-bg), var(--dark-bg2));
}

nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 8px;
}

nav a {
    width: 32px;
    margin: 8px 0;
}

.navicon {
    width: 100%;
}

.card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 480px;
	height: 280px;
	border: 1px solid hsl(0, 0%, 50%);
	border-radius: 3px;
	box-shadow: none;
	transition: background 5s;
	transition: box-shadow 0.1s;
}

.sec-head, .sec-foot {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-content: center;
}

.sec-main {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	width: 90%;
	margin: 0 auto;
}

#name {
	font-weight: bold;
	margin-bottom: 0.5em;
	cursor: pointer;
}

#name a {
	transition: text-shadow 0.2s;
}

#content {
	width: 100%;
	font-size: 14px;
	line-height: 1.4em;
}

#content p, address {
	font-size: 14px;
	margin: 0.3em 0;
	text-align: center;
}

#content ul {
	width: 50%;
	margin: 0 auto;
	list-style: none;
}

#content ul li {
	margin: 0.3em 0;
}

.card a {
    color: var(--dark-color);
	position: relative;
	left: 0;
	font-size: 14px;
	text-decoration: none;
}

/*
a {
	position: relative;
	left: 0;
	font-size: 14px;
	text-decoration: none;
}
*/

#content a {
	text-shadow: 0 0 5px black;
	transition: left 0.2s;
}

#wal {
	word-break: break-all;
}

#wal span {
	font-variant-caps: normal;
	font-size: 12px;
}

.sec-head p, .sec-foot p {
	margin: 0.5em 0;
	cursor: pointer;
}

.sec-head a, .sec-foot a {
	padding: 0.7em 1em 0.5em;
	transition: text-shadow 0.2s;
	cursor: pointer;
}

/* make funky effects with hover, 
	do it separately because it's easier this way if we want to deal with touchsceens too */
@media (hover: hover) and (pointer: fine) {
	.card:hover {
		background: linear-gradient(-30deg, hsl(200, 5%, 12%), hsl(200, 5%, 20%), hsl(200, 10%, 30%), hsl(200, 5%, 20%), hsl(200, 5%, 12%));
/*		background: linear-gradient(-30deg, hsl(43, 37%, 85%), hsl(43, 37%, 80%), hsl(43, 37%, 75%), hsl(43, 37%, 80%), hsl(43, 37%, 85%));*/
/*		background: linear-gradient(-30deg, hsl(43, 37%, 75%), hsl(43, 37%, 80%), hsl(43, 37%, 85%), hsl(43, 37%, 80%), hsl(43, 37%, 75%));*/
		border-color: hsl(0, 0%, 75%);
		/*border-color: hsl(43, 37%, 25%);*/
		box-shadow: 0 0 3px hsl(0, 0%, 75%);
		/*box-shadow: 1px 1px 2px hsl(43, 37%, 25%);*/
	}
	#content a:hover {
		left: 5px;
	}
	#name a:hover, .sec-head a:hover, .sec-foot a:hover {
		/*text-shadow: 0 0 10px white;*/
		text-shadow: 0 0 10px hsl(43, 37%, 25%);
	}
}

/* since the site isn't designed for small screen portrait it needs to be "corrected" */
@media screen and (max-width: 500px) and (orientation: portrait) {
    body {
        flex-direction: column-reverse;
    }
    header, footer {
        height: 64px;
        width: 100%;
    }
    nav {
        flex-direction: row;
        margin-left: 8px;
    }
    nav a {
        width: 32px;
        margin: 8px 8px;
    }
    .navicon {
        rotate: -90deg;
    }
	.card {
		transform: rotate(-90deg);
	}
	
	@keyframes shine {
		0% {
			text-shadow: none;
		}
		50% {
			text-shadow: 0 0 10px white;
		}
		100% {
			text-shadow: none;	
		}
	}

	#name a {
		animation: shine 5s infinite;
	}

	.sec-head .left {
		animation: shine 4s 1s infinite;
	}

	.sec-head .right {
		animation: shine 4s 2s infinite;
	}

	.sec-foot .right {
		animation: shine 4s 3s infinite;
	}

	.sec-foot .left {
		animation: shine 4s 4s infinite;
	}

	#content ul li {
		margin: 0.5em 0;
	}

}

@media screen and (max-height: 420px) and (orientation: landscape) {
	body {
		display: flex;
		flex-direction: row;
	}
	
	header, footer {
		/*background-color: grey;*/
		width: 10%;
		height: 100%;
	}

	main {
		width: 80%;
		height: 100%;
	}

	@keyframes shine {
		0% {
			text-shadow: none;
		}
		50% {
			text-shadow: 0 0 10px white;
		}
		100% {
			text-shadow: none;	
		}
	}

	#name a {
		animation: shine 5s infinite;
	}

	.sec-head .left {
		animation: shine 4s 1s infinite;
	}

	.sec-head .right {
		animation: shine 4s 2s infinite;
	}

	.sec-foot .right {
		animation: shine 4s 3s infinite;
	}

	.sec-foot .left {
		animation: shine 4s 4s infinite;
	}

	#content ul li {
		margin: 0.5em 0;
	}
}
