@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;700&family=IBM+Plex+Mono&display=swap');

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background:#0c1108;
  color:#e8f0dc;
  font-family:'Cormorant Garamond', Georgia, serif;
  overflow-x:hidden;
  min-height:100vh;
}

/* Navigation */
nav {
  position:fixed;
  top:0;
  width:100%;
  padding:2rem 4rem;
  display:flex;
  justify-content:space-between;
  align-items:center;
  z-index:100;
  mix-blend-mode:difference;
}
.logo {
  font-weight:700;
  font-size:1.1rem;
  letter-spacing:3px;
  color:#fff;
}
.nav-links a {
  color:#fff;
  text-decoration:none;
  margin-left:2.5rem;
  font-size:0.85rem;
  letter-spacing:1.5px;
  text-transform:uppercase;
  transition:opacity 0.3s;
}
.nav-links a:hover { opacity:0.6; }

/* Hero */
.hero {
  height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:0 2rem;
}
.tag {
  font-family:'IBM Plex Mono', monospace;
  font-size:0.8rem;
  color:#84cc16;
  letter-spacing:3px;
  margin-bottom:1.5rem;
  display:block;
}
.hero h1 {
  font-size:clamp(2.5rem, 6vw, 5rem);
  font-weight:700;
  letter-spacing:-1px;
  margin-bottom:1.5rem;
  color:#e8f0dc;
}
.hero-desc {
  max-width:600px;
  font-size:1.1rem;
  line-height:1.7;
  opacity:0.6;
}

/* Showcase section */
.showcase {
  width:100%;
  position:relative;
  padding:4rem 0;
}

/* Footer */
footer {
  text-align:center;
  padding:3rem 2rem;
  font-family:'IBM Plex Mono', monospace;
  font-size:0.8rem;
  opacity:0.4;
}

/* ─── Template-specific gallery styles ─── */

.nature-gallery { display:flex; gap:2rem; justify-content:center; height:200vh; overflow:hidden; padding:0 2rem; }
.nature-col { display:flex; flex-direction:column; gap:2rem; width:340px; }
.nature-frame { flex-shrink:0; border-radius:16px; overflow:hidden; transition:all 0.5s; }
.nature-img { height:380px; background:linear-gradient(180deg, rgba(132,204,22,0.08), rgba(132,204,22,0.02)); border:1px solid rgba(132,204,22,0.1); border-radius:16px 16px 0 0; transition:all 0.5s; }
.nature-frame:hover .nature-img { border-color:#84cc16; background:linear-gradient(180deg, rgba(132,204,22,0.18), rgba(132,204,22,0.04)); }
.nature-caption { padding:1.2rem 1.5rem; }
.nature-caption h4 { font-family:'Cormorant Garamond',serif; font-size:1.3rem; font-weight:700; color:#e8f0dc; margin-bottom:0.3rem; }
.nature-caption p { font-family:'IBM Plex Mono',monospace; font-size:0.8rem; color:rgba(232,240,220,0.4); }
.nature-frame:hover .nature-caption h4 { color:#84cc16; }
@keyframes scrollUp { 0%{transform:translateY(0)} 100%{transform:translateY(-50%)} }
@keyframes scrollDown { 0%{transform:translateY(-50%)} 100%{transform:translateY(0)} }
.scroll-up { animation:scrollUp 22s linear infinite; }
.scroll-down { animation:scrollDown 26s linear infinite; }
.scroll-up.slow { animation-duration:35s; }
.nature-col:hover { animation-play-state:paused; }
@media(max-width:768px){ .nature-gallery{flex-direction:column;height:auto;align-items:center;} .nature-col{width:90%;} .nature-img{height:260px;} }
