
@font-face {
  font-family: 'Montserrat';
  src: url('assets/fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 400;
}

@font-face {
  font-family: 'Montserrat';
  src: url('assets/fonts/Montserrat-SemiBold.ttf') format('truetype');
  font-weight: 600;
}

@font-face {
  font-family: 'Source Serif Pro';
  src: url('assets/fonts/SourceSerifPro-Regular.ttf') format('truetype');
  font-weight: 400;
}

* { margin:0; padding:0; box-sizing:border-box; }

html, body { height:100%; }

body {
  font-family: 'Source Serif Pro', Georgia, serif;
  color: #ffffff;
  background-color: #0f1a0f;
}

.nav {
  position:absolute;
  top:0; left:0; right:0;
  padding: 30px 60px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  z-index:2;
}

.logo img { height:32px; }

.nav nav a {
  margin-left:32px;
  font-family:'Montserrat', sans-serif;
  font-size:0.75rem;
  letter-spacing:0.15em;
  text-decoration:none;
  color:#f2f2f2;
}

.hero {
  min-height:100vh;
  background:url('assets/background.jpg') center/cover no-repeat;
  position:relative;
}

.overlay {
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at center, rgba(0,0,0,0.15) 0%, rgba(20,40,20,0.85) 80%);
}

.content {
  position:relative;
  z-index:1;
  max-width:900px;
  padding:180px 80px;
}

.content h1 {
  font-size:2.3rem;
  line-height:1.4;
  margin-bottom:32px;
}

.blurb {
  font-size:0.95rem;
  color:#e6e6e6;
  margin-bottom:40px;
}

.cta {
  font-family:'Montserrat', sans-serif;
  font-size:0.8rem;
  letter-spacing:0.12em;
  color:#ffffff;
  text-decoration:none;
  border-bottom:1px solid #ffffff;
  padding-bottom:4px;
}

.section {
  padding:100px 80px;
  background:#ffffff;
  color:#1f1f1f;
}

.section.muted { background:#f5f5f5; }

.section h2 {
  font-family:'Montserrat', sans-serif;
  letter-spacing:0.2em;
  text-transform:uppercase;
  font-size:1.2rem;
  margin-bottom:24px;
}

.section p {
  max-width:800px;
  line-height:1.7;
}

footer {
  padding:30px 60px;
  font-size:0.7rem;
  color:#bbbbbb;
}
