/* Reset & base */
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; overflow-x: hidden; }

body {
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
  background: #f7f7f5;
  color: #111216;
  display: grid;
  grid-template-rows: auto 1fr auto;
  justify-items: center;
}

.page-header {
  text-align: center;
  padding: 24px 16px 8px;
}
.page-header h1 {
  font-size: clamp(20px, 4vw, 28px);
  font-weight: 800;
}

.container {
  display: grid;
  place-items: center;
  padding: 16px;
}

/* --- Default (desktop/tablet) box --- */
.card {
  background: #eceff2;
  border: 1px solid #dde2e6;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  padding: 24px;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
  width: 420px;           /* fixed safe desktop width */
  max-width: 90vw;        /* never exceed screen width */
  text-align: center;
}
.card:hover { transform: translateY(-1px); }

.amazon-badge {
  width: 100%;
  height: auto;
  display: block;
}

/* --- Mobile: shrink everything --- */
@media (max-width: 600px) {
  .card {
    width: 280px;          /* guaranteed smaller on phones */
    padding: 16px;
  }
  .amazon-badge {
    width: 100%;
  }
}

/* Footer */
.footer {
  padding: 24px 20px 32px;
  text-align: center;
  color: #5c5f66;
  border-top: 1px solid #ebeef1;
}
