body, html {
	box-sizing: border-box;
	min-height: 100vh;
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-family: 'Raleway', sans-serif;
	line-height: 1.8em;
}

.home {
	position: -webkit-sticky;
	position: sticky;
	top: -80.4px;
	z-index: 5;

	background-color #1E1819;


	background-color: rgba(30, 24, 25, 1);
	color: white;
	padding-top: .2rem;
	padding-bottom: 1rem;
}

h1 {
	font-family: 'Marck Script', cursive;
	letter-spacing: 5px;
	font-size: 1.7rem;
	font-weight: lighter;
	text-align: center;
	padding-bottom: 1rem;
	padding-right: 1rem;
	padding-left: 1rem;
}



/* ===================================== nav bar and nav links ============================*/

nav {
	display: flex;
	padding-top: 1rem;
	padding-bottom: 1rem;
	justify-content: space-around;
}

nav a {
	border-radius: 5px;
	text-decoration: none;
	color: white;
	padding: .5rem;
	cursor: pointer;
}

nav a:hover {
	color:  #1E1819;
	background-color: ivory;
	transition: color .3s ease-out;
	cursor: pointer;
}


.offset:before {
	display: block;
	content: '';
	height: 100px;
	margin-top: -100px;
	visibility: hidden;
}


/* ================================= parallax images =================================*/
.pimg1, .pimg2 {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
}

.pimg1 {
	background-image: url('../images/restaurant-entrance.jpg');
	height: 85vh;
	background-position: center right;
	display: block;
	width: 100vw;
}

.pimg2 {
	background-image: url('../images/bayon-cropped.jpg');
	min-height: 92vh;
	opacity: .4;
	background-position: 20% center;
}

/* ========================================== about section ========================================= */

.about {
	background-color: #f9f7f7;
	padding: 2rem .5rem;
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 1rem;
}

h2, h3 {
	text-align: center;
}

.about-text {
	padding: 1rem;
	background-color: #e9e4e5;
	border: 5px double #0b0909;	
}

.hours {
	background-color: #dad1d3;
	padding: .5rem;
	border: 1px solid #0b0909;
}

.hours p {
	margin: 2px 0;
}

.bold {
	font-weight: bold;
}

.services {
	background-color: #dad1d3;
	border: 1px solid #0b0909;
}

.location {
	background-color: #dad1d3;
	padding: .7rem;
	border: 1px solid #0b0909;
	text-align: center;
}

.services, .hours, .location {
	box-shadow: inset 0 0 7px rgba(0, 0, 0, .6);
}

.map {
	display: flex;
	justify-content: center;
}


/* ========================================== menu ======================================*/

.menu-image {
	background-image: url('../images/food2.jpg');
	min-height: 80vh;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

section.menu {
	margin: 1rem;
	border: 2px solid #006633;
	background-color: #fefcfa;
	background-color: #fff;
}

.menu-body {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 1rem;
}

.menu h2 {
	font-family: 'Marck Script', cursive;
	font-size: 3rem;
	letter-spacing: 3px;
}

.menu-footer {
	padding: 1.5rem;
}

.drinks {
	grid-row: 1;
}

.starters {
	grid-row: 2;
}

.desserts {
	grid-row: 4;
}

.entrees {
	grid-row: 3;
}

.western, .khmer, .drinks, .starters{
	padding-right: .7rem;
}

.western {
	margin-top: 3rem;
}

.pseudo {
	position: relative;
	margin-bottom: .8rem;
}

.pseudo:after {
	content: '';
	position: absolute;
	width: 50%;
	left: 25%;
	border-bottom: 1px solid #006633;
	bottom: -.4rem;
}

/* ===================================== contact section ========================== */

section#contact {
	border: 10px solid goldenrod;
	padding-bottom: 2rem;
}

.wrapper {
	box-shadow: 0 0 8px 0 rgba(30, 24, 25, .7);
	max-width: 85%;
	margin: 0 auto;

}

.wrapper > * {
	padding: 1em;
}

.no-bullets {
	list-style: none;
	padding: 0;
}


.company-info {
	background-color: #ebc975;
}

.company-info h3, .company-info ul {
	text-align: center;
	margin: 0 0 1rem 0;
}

.contact {
	background-color: #fefdfa;

}

/* ================================ form styles ===================================*/

.contact form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}

.contact form label {
	display: block;
}

.contact form p {
	margin: 0;
}

.contact form .full {
	grid-column: 1 / 3
}

.contact form input, .contact form textarea {
	width: 90%;
	padding: 1em;
}

.contact form button {
	background-color: #ebc975;
	border: 0;
	text-transform: uppercase;
	width: 100%;
	padding: 1rem;
}

.contact form button:hover, .contact form button:focus {
	background-color: goldenrod;
	color: white;
	outline: 0;
	transition: background .3s ease-out;
}


/* ====================================== footer ====================================== */

footer {
	letter-spacing: 1px;
	display: grid;
	grid-template-columns: 1fr;
	background-color: #1E1819;
	color: white;
	text-align: center;
}

.two {
	margin: 0;
}

footer p {
	margin-top: .65rem;
	margin-bottom: .65rem;
}

a:first-of-type {
	margin-right: .5rem;
}

a:last-of-type {
	margin-left: .5rem;
}


footer a {
	text-decoration: none;
	color: white;
}

footer a:hover {
	color: #d770ad;
}


/* =========================================== media queries ====================================*/

@media all and (min-width: 500px){
	h1 {
		font-size: 2.3rem;
	}
	.home {
		top: -93.3px;
	}
}

@media all and (min-width: 600px){

	.pimg1, .pimg2 {
		background-attachment: fixed;
		overflow: hidden;
	}

	h1 {
		font-size: 3rem;
	}

	.home {
		top: -108.3px;

	}

	.about {
		grid-template-columns: 1fr 1fr;
	}

	.about-text {
		grid-column: 1 / -1;
		grid-row: 1;
	}

	.hours {
		grid-row: 2;
		grid-column: 1 / 2;
	}

	.services {
		grid-row: 2;
		grid-column: 2 / 3;
	}

	.location {
		grid-row: 3;
		grid-column: 1 / -1;
	}

	iframe {
		width: 70%;
		height: 100%;
	}

}

@media all and (min-width: 700px){
	.pimg1 {
		background-image: url('../images/entrance-cropped.jpg');
		height: 85vh;
	}

	.about {
		padding: 2rem 1rem;
	}

	footer {
		grid-template-columns: 1fr 1fr 1fr;
		padding: 0 1rem 0;
	}

	.one {
		grid-column: 1;
	}

	.two {
		grid-column: 2;
		margin-top: .65rem;
		margin-bottom: .65rem;
	}

	.three {
		grid-column: 3;
	}

	.pimg2 {
		background-position: top left;
	}

	.wrapper {
		display: grid;
		grid-template-columns: 1fr 2fr;
	}

	.wrapper > *{
		padding: 2em;
	}
}

@media all and (min-width: 800px){
	.about {
		grid-template-columns: repeat(6, 1fr);
	}

	.about-text {
		grid-column: 2 / 6;
	}

	.hours {
		grid-row: 2;
		grid-column: 3 / 5;
	}

	.services {
		grid-row: 2;
		grid-column: 1 / 3;
	}

	.location {
		grid-row: 2;
		grid-column: 5 / 7;		
	}

	iframe {
		width: 100%;
		height: 100%;
	}

	section.menu {
		margin: 2rem;
	}

	.menu-body {
		display: grid;
		grid-template-columns: 1fr 2fr;
		grid-gap: 1rem;
	}

	.drinks {
		grid-row: 1;
		grid-column: 1;
	}

	.starters {
		
		grid-row: 2;
		grid-column: 1;
	}

	.desserts {
		
		grid-row: 3;
		grid-column: 1;
	}

	.entrees {
		border-left: 1px solid #006633;
		grid-row: 1 / 4;
		grid-column: 2 / 3;
	}

	.drinks:hover, .desserts:hover, .western:hover {
		background-color: goldenrod;
		transform: rotate(1deg);
	}

	.khmer:hover, .starters:hover {
		background-color: goldenrod;
		transform: rotate(-1deg);
	}

	.pseudo {
		margin-bottom: 0;
	}

	.pseudo:after {
		border-bottom: 0;		
	}

	.western {
		margin-top: 2rem;
	}

	.wrapper {
		max-width: 80%;
	}
}























