:root{
  --green:#35d37c;
  --bg:#111a16;
  --soft:#18251f;
  --text:#e6eee9;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}
img{max-width:100%;display:block}
.container{width:min(1200px,92%);margin:0 auto}

.site-header{position:sticky;top:0;z-index:1000;background:rgba(17,26,22,.92);backdrop-filter:saturate(160%) blur(6px);border-bottom:1px solid #1e2b23}
.navwrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand img{height:40px}
.mainnav a{margin-left:18px;text-decoration:none;color:#b9c9c1;font-weight:600;letter-spacing:.02em}
.mainnav a.active{color:var(--green);border-bottom:2px solid var(--green)}
.mainnav .btn-bio{padding:.5rem 1rem;background:var(--green);color:#062212;border-radius:8px}

.hero{
  position:relative;min-height:82vh;display:flex;align-items:center;
  background:#0e1512 url('../img/bg.jpg') center/cover no-repeat fixed;
  overflow:hidden;
}
/* Liquid effect */
.hero::before{
  content:"";position:absolute;inset:-10%;
  background:url('../img/bg.jpg') center/cover no-repeat fixed;
  filter:url(#liquid);
  transform:translateZ(0);
  animation:liquidShift 14s ease-in-out infinite alternate;
  opacity:.75;
}
@keyframes liquidShift{
  0%{transform:scale(1.05) translate(0,0)}
  100%{transform:scale(1.08) translate(-1.5%, -1.2%)}
}
.hero .overlay{
  position:absolute;inset:0;background:linear-gradient(120deg, rgba(0,0,0,.45), rgba(0,0,0,.55) 40%, rgba(0,0,0,.2) 75%);
}
.hero .content{position:relative;z-index:2;padding:80px 0}
.grid{display:grid;gap:32px}

/* Align image and text to the top in the hero grid */
.grid.hero-grid{
  grid-template-columns:220px 1fr 260px;
  align-items:start;
}

.hero h1{font-family:"Bebas Neue", sans-serif;font-size:84px;letter-spacing:1px;margin:0 0 8px}

/* Ensure the text block starts at the true top of the grid */
.grid.hero-grid h2{
  margin-top:0;
}

.subline{font-weight:800;letter-spacing:.12em;color:#9be4bd;margin-bottom:24px}
.bio p{margin:.6em 0}
.hero .speaker{align-self:center;justify-self:end;filter:drop-shadow(0 12px 22px rgba(0,0,0,.7));}

.section{padding:64px 0}
.section.alt{background:#0f1814}
.kicker{font-family:"Bebas Neue",sans-serif;color:var(--green);font-size:36px;margin:0 0 8px}
.h2{font-family:"Bebas Neue",sans-serif;font-size:56px;margin:.1em 0 .6em}

.cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.list-plain{list-style:none;padding:0;margin:0}
.list-plain li{padding:.35rem 0;border-left:3px dotted rgba(53,211,124,.35);padding-left:12px}
a.link{color:#7af0b0}
.btn{display:inline-block;padding:.9rem 1.2rem;border:1px solid #2d4; border-radius:10px;text-decoration:none;color:#0e1a15;background:#9be4bd;font-weight:800}
.btn.dark{background:#222a26;color:#d7f8e7;border-color:#3a4}
.card{background:#122019;border:1px solid #1a3026;border-radius:14px;padding:18px}

.site-footer{padding:28px 0;border-top:1px solid #1e2b23;color:#9fafa7}

.book-hero{display:grid;grid-template-columns:340px 1fr;gap:36px;align-items:start}
.book-actions{display:flex;gap:16px;margin:18px 0 10px}
blockquote{font-style:italic;font-weight:700}
@media (max-width:980px){
  .grid.hero-grid{grid-template-columns:1fr;align-items:center;text-align:left}
  .hero h1{font-size:64px}
  .book-hero{grid-template-columns:1fr}
}
/* SVG filter host */
svg#liquid-filter{position:absolute;width:0;height:0}
