/* Dark, minimal styles for the Kolsters landing page */
:root {
  --bg: #07070b;
  --card: #0f1724;
  --muted: #9aa3b2;
  --accent: #ffffff;
  --muted-card: rgba(255,255,255,0.04);
}

* { box-sizing: border-box; }
html,body { height:100%; }
body {
  margin:0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: var(--bg);
  color: var(--accent);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  /* add extra bottom padding so a fixed footer doesn't overlap content */
  padding:40px 40px 96px;
}
.center {
  width:100%;
  max-width:900px;
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border-radius:14px;
  padding:56px 44px;
  box-shadow: 0 10px 40px rgba(2,6,23,0.6);
  border: 1px solid var(--muted-card);
  text-align:center;
}
.logo {
  width:130px;
  height:auto;
  display:block;
  margin:0 auto 24px;
  filter: drop-shadow(0 6px 18px rgba(0,0,0,0.6));
}
.headline {
  font-size:22px;
  margin:0 0 20px;
  color:var(--accent);
}
.shop-card {
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin:22px 0 32px;
  text-decoration:none;
  padding:14px 20px;
  border-radius:12px;
  background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.015));
  border:1px solid rgba(255,255,255,0.04);
  box-shadow: 0 6px 20px rgba(2,6,23,0.6);
  color:var(--accent);
}
.shop-image {
  width:64px;
  height:64px;
  object-fit:contain;
  border-radius:10px;
  background:rgba(255,255,255,0.02);
  padding:8px;
}
.shop-text { font-weight:700; }
.projects { margin-top:8px; }
.projects h2 { font-size:14px; color:var(--muted); margin:12px 0; }
.project-list { list-style:none; padding:0; margin:0; display:flex; justify-content:center; gap:18px; }
/* project-item intentionally omitted - use .project-link for styling */
.project-link {
  display:inline-flex;
  gap:12px;
  align-items:center;
  text-decoration:none;
  color:var(--accent);
  padding:8px 12px;
  border-radius:10px;
  transition:transform .12s ease, box-shadow .12s ease;
}
.project-link:hover { box-shadow:0 10px 30px rgba(2,6,23,0.6); animation: bounce .6s both; }
.shop-card:hover { animation: bounce .6s both; }
.shop-card:active, .project-link:active { transform: translateY(0); }
.project-link { will-change:transform; }

/* subtle bounce used on hover for buttons */
@keyframes bounce {
  0% { transform: translateY(0); }
  30% { transform: translateY(-8px); }
  50% { transform: translateY(0); }
  70% { transform: translateY(-4px); }
  100% { transform: translateY(0); }
}
.project-logo { width:44px; height:44px; object-fit:contain; border-radius:8px; }
.footer {
  position:fixed;
  left:0;
  right:0;
  bottom:12px;
  z-index:40;
  font-size:13px;
  color:var(--muted);
  text-align:center;
  pointer-events:auto;
  /* small translucent background for readability on varying content */
  background: linear-gradient(180deg, rgba(7,7,11,0.0), rgba(7,7,11,0.02));
  padding:6px 12px;
}

@media (max-width:520px) {
  .center { padding:28px 20px; border-radius:10px; }
  .headline { font-size:18px; }
  .logo { width:120px; }
}


