:root{
  --black:#1E1E1E;
  --gray:#5E6871;
  --copper:#C46A32;
  --off:#F7F7F4;
}

*{margin:0;padding:0;box-sizing:border-box;}

body{
  font-family:'Open Sans', sans-serif;
  color:var(--off);
  background:var(--black);
  line-height:1.6;
}

h1,h2,h3{
  font-family:'Montserrat', sans-serif;
  letter-spacing:0.5px;
}

a{color:inherit;text-decoration:none;}

.container{
  width:90%;
  max-width:1100px;
  margin:auto;
}

/* NAV */
.container-nav{
  width:100%;
  max-width:1100px;
  margin:auto 0px;
  padding:0px 8%;
}

@media (max-width: 768px) {
  .container-nav{
    width:100%;
    max-width:1100px;
    margin:auto 0px;
    padding:0px 8%;
	text-align: center;
	display: flex;
	flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}

nav{
  position:sticky;
  top:0;
  background:rgba(30,30,30,0.95);
  backdrop-filter: blur(8px);
  z-index:1000;
  border-bottom:1px solid #333;
}

nav ul{
  display:flex;
  justify-content:space-between;
  padding:17px 0;
  list-style:none;
}

nav n-title{
  display:flex;
  justify-content:space-between;
  padding-top:17px;
  font-size:1.5rem;
  list-style:none;
}

nav slogan{
  display:flex;
  justify-content:space-between;
  padding-top:3px;
  padding-bottom:20px;
  font-size:1.1rem;
  list-style:none;
}

/* HERO */
.hero{
  min-height:90vh;
  display:flex;
  align-items:center;
  background:linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.4)),
  url('heroimage.jpg');
  background-size:cover;
  background-position:center;
  margin-bottom:10px;
}

@media (max-width: 768px) {
  .hero{
    min-height:75vh;
    display:flex;
    align-items:center;
    background:linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.4)),
    url('heroimage.jpg');
    background-size:cover;
    background-position:center;
    margin-bottom:20px;
}

}

@media (max-width: 380px) {
  .hero{
    min-height:90vh;
    display:flex;
    align-items:center;
    background:linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.4)),
    url('heroimage.jpg');
    background-size:cover;
    background-position:center;
    margin-bottom:20px;
}

}

.hero h1{
  font-size:3rem;
  margin-bottom:15px;
}

@media (max-width: 450px) {
  .hero h1{
    font-size:2.5rem;
    margin-bottom:15px;
}

}

.hero p{
  max-width:600px;
  margin-bottom:25px;
}

.btn{
  display:inline-block;
  padding:12px 22px;
  margin-right:10px;
  border-radius:4px;
  font-weight:600;
}

.btn-primary{
  background:var(--copper);
  margin-bottom:20px;
}

.btn-outline{
  border:1px solid var(--off);
}

/* SECTIONS */
section{
  padding:48px 0;
}

@media (max-width: 768px) {
  section{
  padding:30px 0;
}

}

h2{
  margin-bottom:20px;
  font-size:2rem;
}

/* CARDS */
.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:20px;
}

.card{
  background:#222;
  padding:20px;
  border-left:3px solid var(--copper);
  border-radius:6px;
}

/* CTA */
.cta{
  background:#151515;
  text-align:center;
  padding:60px 20px;
  border-top:1px solid #333;
  border-bottom:1px solid #333;
}

/* FOOTER */
footer{
  text-align:center;
  padding:30px;
  font-size:0.9rem;
  color:#aaa;
}