/* Base palette */
:root{
  --bg: #F2F6F1;      /* light paper */
  --ink: #1C3928;     /* deep green */
  --muted: #294535;   /* softer green */
  --line: rgba(28,57,40,0.18);
  --card: #F2F6F1;    /* card background */
}

/* Reset + base */
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{
  font: 16px/1.5 "Inter", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  background: var(--bg);
  color: var(--ink);
}

/* Layout */
.container{ max-width: 960px; margin: 0 auto; padding: 24px; }

/* Hero */
.hero{
  display:flex; align-items:center; gap:1px;
}
.hero--center{ text-align:center; flex-direction:column; }
.brand{ width:350px; height:350px; object-fit:contain }
.title{ margin:.25rem 0 0; font-size:2.4rem; letter-spacing:.6px }
.subtitle{ margin:.25rem 0 0; color:var(--muted) }
.tagline{
  margin:.35rem 0 0;
  color:var(--muted);
  font-weight:600;
  letter-spacing:.4px;
}

/* Top nav bar with single contact button */
.topnav {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  justify-content: flex-end;
  padding: 10px 24px;
  background: var(--bg);
}

.topnav .contact-link {
  background: var(--ink);
  color: #fff;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 10px;
  font-weight: 600;
  transition: transform .12s ease, box-shadow .12s ease;
}

.topnav .contact-link:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(0,0,0,.15);
}

/* Actions */
.actions{
  display:flex; flex-wrap:wrap; gap:10px; padding:18px 0 10px; border-top:1px solid var(--line);
}
.btn{
  display:inline-block; padding:10px 14px; border-radius:10px;
  border:1px solid var(--line); text-decoration:none; color:var(--ink);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  background: transparent;
}
.btn:hover{ transform: translateY(-1px); filter:brightness(1.05); box-shadow:0 6px 20px rgba(0,0,0,.06) }

/* Sections */
.section{ padding:22px 0; }

/* AI grid */
.ai-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap:16px;
}
.ai-card{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:10px; padding:16px;
  background: var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  text-decoration:none; color:var(--ink);
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.ai-card img{
  width:140px; height:140px; object-fit:contain; display:block;
  user-select:none; -webkit-user-drag:none;
}
.ai-name{ font-weight:700; letter-spacing:.5px }
.ai-card:hover{
  transform: translateY(-2px);
  border-color: rgba(28,57,40,0.28);
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}

/* Footer + misc */
footer{ padding:14px 0; color: var(--muted); font-size:.95rem; }
.small{ font-size:.95rem }
.pulse{ animation:pulse 1.3s ease-in-out infinite }
@keyframes pulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(28,57,40,0.00) }
  50%{ box-shadow:0 0 0 8px rgba(28,57,40,0.10) }
}

/* Legacy QR box (kept for compatibility, harmless if unused) */
.qr{ width:200px; height:200px; margin-top:8px; }
