html
{
  scroll-padding-top: 110px;
  scroll-behavior: smooth;
}

header 
{
	background-image: url('images/roofing.jpg');
	background-size: cover;
	background-position: center;
	height: 150px;
	width: 100%;
	display: flex;
	align-items: center;
  position: sticky;
  top: 0;
  z-index: 1500;
	/* Fade in background */
	animation: headerFadeIn 1s linear;
	opacity: 0;
	animation-fill-mode: forwards;
	justify-content: space-between;
	position: sticky;
}

.container 
{
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.logo 
{
	height: 100px;
	object-fit: contain;
	/* Fade in logo */
	animation: logoFadeIn 2s linear;
	opacity: 0;
	animation-fill-mode: forwards;
}

.nav-menu 
{
	position: absolute;
	right: 40px;
  cursor: pointer;  
}

.dropdown 
{
	background: #000;
	border-radius: 8px;
	list-style: none;
	padding: 10px 0;
	min-width: 160px;	
	position: absolute;
	top: 60px;
	right: 40px;
	display: none;
}

.dropdown.show 
{
	display: block;
}

.dropdown li 
{
	padding: 8px 24px;
}

.dropdown li a 
{
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	display: block;
	background: transparent;
	transition: background 0.2s;
}

.dropdown li a:active 
{
	background: transparent !important;
	color: #fff !important;
}

.dropdown li a:hover 
{
	background: #b22222;
	border-radius: 4px;
	color: #fff;
}

.hamburger 
{
	font-size: 48px;
	color: white;
	cursor: pointer;
	user-select: all;
}

.call-email-btn 
{
	background: #000;
	color: #fff;
	border: none;
	padding: 10px 24px;
	font-size: 18px;
	border-radius: 6px;
	cursor: pointer;
	transition: opacity 0.2s, background 0.2s;
	opacity: 1;
}

.call-email-btn a 
{
	color: #fff;
	text-decoration: none;
}

.call-email-btn:active 
{
	background: transparent !important;
	color: #fff !important;
}

.call-email-btn:hover 
{
	opacity: 0.5;
}

.btn 
{
  display: inline-block;
  padding: 12px 28px;
  background-color: darkred;
  color: white;
  margin-top: 10px;
  border-radius: 30px;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 14px;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}

@keyframes headerFadeIn 
{
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes logoFadeIn 
{
	from { opacity: 0; }
	to { opacity: 1; }
}

Who, What, Where, How
{
  text-align: center;
  padding: 35px;
}

Who h1, What h1, Where h1, How h1
{
  text-decoration: underline;
}

main
{
  color: darkred;
  display: grid;
  grid-template-columns: 1fr;
	/* Fade in main section */
	animation: mainFadeIn 2s linear;
	opacity: 0;
	animation-fill-mode: forwards;
}

@keyframes heroFadeIn 
{
	from { opacity: 0; }
	to { opacity: .75; }
}

mainPics
{
  color: darkred;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 0.5fr 0.5fr 1fr;
	/* Fade in main section */
	animation: mainFadeIn 2s linear;
	opacity: 0;
	animation-fill-mode: forwards;
}

@keyframes mainFadeIn 
{
	from { opacity: 0; }
	to { opacity: 1; }
}

mainPics img
{
	border: 8px solid #8B0000;
	border-radius: 16px;
	padding: 5px;
	margin-bottom: 5px;
  width: 98%;
  margin-right: auto;
  margin-left: auto;
  display: block;
	max-width: 95vw;
	box-sizing: border-box;
}

header2
{
  background-image: url('images/roof3.jpg');
	background-size: cover;
	background-position: center;
	height: 150px;
	width: 100%;
	display: flex;
	align-items: center;
  position: sticky;
  top: 0;
  z-index: 2000;
	/* Fade in background */
	animation: headerFadeIn 1s linear;
}

/* Hero Section */
.hero 
{
  background-image: url(/images/roof2.jpg);
  background-position: center;
  background-size: cover;
  color: white;
  padding: 15px 0 55px;
  position: relative;
  overflow: hidden;
  opacity: 75%;
  /* Fade in background */
	animation: heroFadeIn 2s linear;
	
}

/* .hero::before 
{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('/images/roof2.jpg') center/cover no-repeat;
  opacity: 0.15;
} */

.hero-content 
{
  position: relative;
  z-index: 1;
  max-width: 600px;
  opacity: 100%;
  background-color: darkred;
  padding: 2px;
  border-radius: 18px;
}

.hero h1 
{
  font-size: 48px;
  margin-bottom: 20px;
}

.hero p 
{
  font-size: 18px;
}

#services
{
  list-style-type: square;
  font-weight: bold;
}

#close
{
  text-align: center;
}

.closinglogo
{
  height: 300px;
}

footer
{
  color: darkred;
  font-size: 15px;
}

footer img
{
  height: 30px;
  width: 30px;
  border: 3px solid #000;
  border-radius: 27px;
}