:root{
  --brand:#0d8b6b;
  --ink:#16bd9f;
  --bg:#0a0909;
  --card:#f8fbfa;
  --line:#e4efe9;
}

/* Reset-ish */
*{ box-sizing: border-box; }
html,body{ margin:0; padding:0; }
img{ max-width:100%; height:auto; display:block; }

/* Base */
body{
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  background: var(--bg);
  color: var(--ink);
  line-height: 1.5;
}

.container{
  max-width: 1100px;
  margin: 0 auto;
  padding: 1rem;
}

/* Header (fixed + compact + hide on scroll) */
header{
  position: fixed;
  inset: 0 0 auto 0; /* top:0 left:0 right:0 */
  z-index: 10;
  background: var(--brand);
  color: #fff;
  transform: translateY(0);
  transition: transform .3s ease;
}
header.hide{ transform: translateY(-100%); }

header .nav{
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .45rem .8rem;
}

/* Logo */
.logo img{
  height: 42px;   /* adjust as needed */
  width: auto;
}

/* Nav */
nav ul{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;                /* wrap on small screens */
}
nav a{
  display: inline-block;
  color: #fff;
  text-decoration: none;
  padding: .4rem .7rem;
  border-radius: 8px;
  border: 1px solid #ffffff33;
  transition: background .15s ease, border-color .15s ease;
}
nav a:hover,
nav a:focus-visible{
  background: #ffffff1a;
  border-color: #ffffff66;
}
nav a.active{
  background: #ffffff22;
  border-color: #ffffff99;
  font-weight: 700;
}

/* Hero */
.hero{
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 1.2rem;
  align-items: center;
  margin-top: .5rem; /* body padding is set by JS */
}
.hero h1{
  margin: 0 0 .5rem;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  color: #eafff7;
}
.hero p{ margin: .4rem 0; color: #bff0e4; }

.click{
  display: inline-block;
  background: #fff;
  color: var(--brand);
  padding: .6rem 1rem;
  border-radius: 12px;
  border: 1px solid #ffffff66;
  text-decoration: none;
  font-weight: 700;
}
.click:hover{ background:#f0faf7; }

/* Grid + Cards */
.grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: .9rem;
}
@media (min-width: 720px){
  .grid{ grid-template-columns: repeat(3, 1fr); }
}

.card{
  background: var(--card);
  color: #103b31;
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.card:hover{ transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,.08); border-color:#cfe6dc; }
.card img{ aspect-ratio: 4 / 3; object-fit: cover; }
.card .pad{ padding: .8rem; }
.card h3{ margin: 0 0 .25rem; font-size: 1.05rem; color:#0e3d33; }
.card p{ margin: 0; color:#3a6b5d; }

/* Headings in sections */
h2{
  margin: 1.6rem 0 .75rem;
  color: #eafff7;
  border-left: 6px solid var(--brand);
  padding-left: .5rem;
}

/* Footer */
footer{
  border-top: 1px solid #0f2e27;
  background: #081211;
  color: #8fd8c9;
  padding: 1rem 0;
}

/* Small screens: stack hero */
@media (max-width: 820px){
  .hero{ grid-template-columns: 1fr; }
  .hero-img{ order: -1; }
}
/* Make header nav horizontal */
header .nav{
  display:flex;
  align-items:center;
  gap:.75rem;
}

header nav{ margin-left:auto; }

header nav ul{
  display:flex;
  flex-wrap:nowrap;          /* keep in one row */
  gap:.75rem;
  list-style:none;
  margin:0;
  padding:0;
}

header nav li{ flex:0 0 auto; }

header nav a{
  display:inline-block;
  color:#fff;
  text-decoration:none;
  padding:.4rem .7rem;
  border-radius:8px;
  border:1px solid #ffffff33;
}
header nav a:hover{ background:#ffffff1a; border-color:#ffffff66; }
