
/* ---------- global resets ---------- */
:root{
  --brand: #157a8c;
  --text : #d1d1d1;
  --dark : #07111f;
  --bg   : #0d1a2c;
  --serif: 'Merriweather', serif;
  --sans : 'Poppins', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--sans);color:var(--text);background:var(--dark);line-height:1.6}

/* ---------- NAV ---------- */
nav{
  display:flex;justify-content:space-between;align-items:center;
  padding:1rem 8%;background:rgba(7,17,31,.9);position:fixed;inset:0 0 auto 0;z-index:50
}
nav img{height:40px}
nav ul{list-style:none;display:flex;gap:1.8rem;font-weight:600}
nav a{color:var(--text);text-decoration:none;transition:.25s}
nav a:hover{color:var(--brand)}

/* ---------- HERO ---------- */
.hero{
  min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;padding:0 5%;background:url('hero.jpg') center/cover fixed
}
.hero::before{
  content:'';position:absolute;inset:0;background:rgba(7,17,31,.55);backdrop-filter:blur(4px)
}
.hero > *{position:relative;z-index:1}
.hero h1{font-size:3rem;font-weight:700;color:#fff;letter-spacing:.04em;margin-top:4rem}
.tagline{font-size:1.25rem;margin:1rem 0 2.5rem;opacity:.9}
.btn{
  display:inline-block;padding:1rem 2.6rem;border:2px solid var(--brand);border-radius:40px;
  font-weight:600;text-decoration:none;color:var(--text);transition:.25s
}
.btn:hover{background:var(--brand);color:#000}

/* ---------- SECTIONS ---------- */
section{padding:5rem 8%}
section h2{font-family:var(--serif);font-size:2.2rem;margin-bottom:1.5rem;color:#fff}
p{max-width:60ch;margin:0 auto 1rem}

/* simple grid for books */
.books{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2.5rem}
.book-card{background:var(--bg);padding:1.5rem;border-radius:6px;text-align:center}
.book-card img{max-width:140px;margin-bottom:1rem}
.book-card a{display:inline-block;margin-top:.8rem;color:var(--brand)}
