*, *::before, *::after {
    box-sizing: border-box;
}

:root{
    --yellow: #FAEA78;
    --yellow_accent: #d8a20f;
    --white: #FAF3E1;
    --black: #141414;
}

body {
    margin: 0;
    font-family: montserrat, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	background-image: url(../img/background.jpg);
    background-color: var(--white);
    color: var(--black);
	
}


/*----------MOBILE SITE NAVIGATION----------*/
#nav-mobile_btn{
	display: none;
	border: none;
}


/*----------PRIMARY SITE NAVIGATION----------*/
.nav-main {
    display: flex;
    justify-content: right;
    margin: 0px;
    position: sticky;
    top: 0;
    z-index: 2;

    background-color: #000;
}

.nav-main_link{
    font-size: 0.9rem;
    text-decoration: none;
    color: var(--white);
    
    padding-block: 20px;
    padding-inline: 35px;

    transition: all 350ms;
}

.nav-main_link:hover{
    color: #FFF;
    text-shadow: 0px 0px 6px #FFF;
    background-color: var(--yellow_accent);
}

/*----------SIDEBAR NAVIGATION----------*/
.nav-sidebar{
	position: fixed;
	top: 40%;
	right: 0;
	margin-right: 20px;
	
	color: var(--yellow_accent);
	padding: 20px;
	
	background-color: var(--black);
	border: 5px dashed var(--yellow_accent);
	border-radius: 15px;
}

.sidebar-header{
	font-size: 3.0rem;
	font-family: impact;
	margin-top: 0px;
	margin-bottom: 20px;
	
	border-bottom: 3px dashed var(--yellow_accent);
}

.sidebar-link_container{
	margin-block: 10px;
	text-align: center;
}

.sidebar-link{
	font-size: 1.5rem;
	color: var(--white);
	transition: all 250ms;
}

.sidebar-link:hover{
	color: var(--yellow_accent);
}


/*----------HEADER----------*/
header{
	width: 80%;
	margin: auto;
	background-color: var(--white);
}

h1{
    font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
    font-size: 6.0rem;
	text-align: center;
	margin-bottom: 0;
   
}

.text-link{
    color: var(--yellow_accent);
}


/*----------MAIN----------*/
main{
	width: 80%;
	margin: auto;
	background-color: var(--white);
}


/*----------INTRO----------*/
.intro{
	padding-block: 50px;
}

.intro-text{
	font-size: 0.9rem;
	text-align: center;
	line-height: 2.0;
	width: 50%;
	margin: auto;
}

.side-text{
	position: absolute;
	font-size: 3.0rem;
	font-family: impact;
	color: var(--black);
	padding-left: 30px;
	top: 70%;
}

section{
	width: 70%;
	margin: auto;
}


/*----------REVIEWS MOBILE----------*/
.reviews-mobile{
		display: none;
	}


/*----------RATINGS SECTION----------*/
.main-grid{
	color: var(--white);
	
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1.0rem;
	
	background-color: var(--black);
	border: 5px dashed var(--yellow_accent);
	border-radius: 20px;
}

.main-grid_container{
	text-align: center;
	padding-inline: 30px;
	margin-block: 30px;
}

.main-grid_header{
	font-size: 2.5rem;
	font-family: Brush Script MT, cursive, montserrat, arial;
	color: var(--yellow_accent);
	margin-block: 20px;
	font-style: italic;
}

.main-grid_text{
	font-size: 0.9rem;
	line-height: 2.0;
	text-align: center;
	
	margin: 0;
}


/*----------FEATURED SECTION----------*/
.featured{
	margin-block: 75px;
}

#featured-header{
	font-size: 5.0rem;
	font-family: impact;
	
	text-align: center;
	margin-block: 100px;
}

.featured-section{
	margin-block: 75px;
}

.featured-section_grid{
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 1rem;
	
}	

.featured-section_header{
	font-size: 4.0rem;
	font-family: impact;
	margin-block: 15px;
}

.rating-title{
	font-size: 1.0rem;
	color: var(--black);
	
	margin-block: 0;
}

.rating-value{
	font-size: 1.0rem;
	color: var(--yellow_accent);
}

.featured-section_text{
	font-size: 0.9rem;
	line-height: 2.0;
	width: 80%;
}

.featured-img{
	width: 400px;
	height: auto;
}


/*----------FOOTER----------*/
footer{
	color: var(--white);
    padding: 30px;
    text-align: center;

    border-top: 3px solid var(--white);
    background-color: #000;
}

.footer-nav{
    width: 50%;
    margin-inline: auto;
    margin-bottom: 30px;
}

.footer-nav_link{
    font-size: 0.85rem;
    color: var(--white);
    text-decoration: none;

    padding: 5px;
    margin-inline: 10px;

    transition: all 350ms;
}

.footer-nav_link:hover{
    color: #FFF;
    text-shadow: 0px 0px 6px #FFF;
}

.copyright{
    font-size: 0.75rem;
}

.privacy{
    font-size: 0.75rem;
    color: var(--yellow_accent);
    text-decoration: underline;
}




/*----------ADJUSTMENT FOR MOBILE DEVICES----------*/
@media only screen and (max-width: 1000px) {
	
	body{
		margin-top: 75px;
	}
	/*----------MOBILE NAV----------*/
	#nav-mobile_btn{
		color: var(--yellow_accent);
		font-size: 1.5rem;
		
		position: fixed;
		top: 0;
		z-index: 2;
		display: block;
		width: 100%;
		padding: 10px;
		margin: 0px;
		background-color: #000;
	}
	
	.nav-main{
		display: none;
		text-align: center;
		width: 100%;
		position: fixed;
		z-index: 1;
		margin: 0px;
		padding-top: 50px;

		background-color: #000;
	}
	
	.nav-main_link{
		font-size: 0.75rem;
		display: block;
		padding-block: 10px;
	}
	
	
	/*----------HEADER----------*/
	header{
		width: 90%;
	}
	
	h1{
		font-size: 2.0rem;
	}
	
	.text-link{
		font-size: 1.2rem;
	}
	
	
	/*----------MAIN----------*/
	main{
		width: 90%;
	}
	
	section{
		width: 100%;
	}
	
	.side-text{
		display: none;
	}
	
	.nav-sidebar{
		display: none;
	}
	
	/*----------INTRO----------*/
	.intro{
		padding-top: 30px;
	}
	
	.intro-text{
		font-size: 0.8rem;
		width: 85%;
	}
	
	
	/*----------MOBILE REVIEW BUTTONS/LINKS----------*/
	.reviews-mobile{
		display: block;
		text-align: center;
		margin-block: 30px;
	}
	
	.reviews-mobile_header{
		font-size: 2.5rem;
		font-family: Brush Script MT, cursive, montserrat, arial;
		color: var(--yellow_accent);
		margin-top: 0px;
		margin-bottom: 10px;
	}
	
	.reviews-mobile_link{
		display: inline-block;
		width: 100%;
		
		font-size: 1.0rem;
		color: var(--white);
		background-color: var(--black);
		text-decoration: none;
		
		padding-inline: 20px;
		padding-block: 10px;
		margin-block: 5px;
		
		border: 3px dashed var(--yellow_accent);
		border-radius: 10px;
	}
	
	
	/*----------RATINGS SECTION----------*/
	.main-grid{
		grid-template-columns: 1fr;
		gap: 1.0rem;
	}
	
	.main-grid_container{
		padding-inline: 15px;
		margin-block: 5px;
	}
	
	
	/*----------FEATURED SECTION----------*/
	.featured{
		margin-block: 30px;
		text-align: center;
	}

	#featured-header{
		font-size: 3.0rem;
		margin-block: 30px;
	}

	.featured-section{
		margin-block: 10px;
	}

	.featured-section_grid{
		grid-template-columns: 1fr;
		gap: 0;
		
	}	

	.featured-section_header{
		font-size: 2.0rem;
		margin-block: 15px;
	}

	.rating-title{
		font-size: 0.8rem;
		color: var(--black);
	}

	.rating-value{
		font-size: 0.8rem;
		color: var(--yellow_accent);
	}

	.featured-section_text{
		font-size: 0.75rem;
		line-height: 2.0;
		width: 100%;
	}

	.featured-img{
		width: 100%;
		height: auto;
	}
	
	
	/*----------FOOTER----------*/
	footer{
	color: var(--white);
    padding: 30px;
    text-align: center;

    border-top: 3px solid var(--white);
    background-color: #000;
	}

	

	.footer-nav_link{
		font-size: 0.85rem;
		display: inline-block;
		padding: 10px;
	}

	.footer-nav_link:hover{
		color: #FFF;
		text-shadow: 0px 0px 6px #FFF;
	}

	.copyright{
		font-size: 0.75rem;
	}

	.privacy{
		font-size: 0.75rem;
		color: var(--yellow_accent);
		text-decoration: underline;
	}
}
