* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
}

body {
  background: #fffaf0; /* light cream */
  color: #222;
}

/* HERO */
.hero {
  text-align: center;
  padding: 80px 20px;
}

.logo {
  max-width: 280px; /* bigger than hero text */
  margin-bottom: 30px;
}

.hero-title {
  font-size: 48px;
  font-weight: bold;
  margin-bottom: 10px;
}

.hero-subtitle {
  font-size: 24px; /* 50% size */
  color: #555;
}

/* PRODUCTS */
.products {
  background: #ffffff;
  padding: 60px 20px;
  text-align: center;
}

.products h2 {
  font-size: 32px;
  margin-bottom: 40px;
}

.product-grid {
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}

.product-card img {
  width: auto;
  height: 120px;      /* controls vertical size */
  max-width: 120px;
  object-fit: contain;
  display: block;
  margin: 0 auto 10px;
}

.product-card p {
  font-weight: bold;
}

/* PLACEMENT */
.placement {
  background: #f4f7f2;
  text-align: center;
  padding: 60px 20px;
}

.placement h2 {
  font-size: 30px;
  margin-bottom: 20px;
}

.placement p {
  font-size: 20px;
  margin: 6px 0;
}

/* VENDING */
.vending {
  padding: 60px 20px;
  text-align: center;
}

.vending h2 {
  font-size: 30px;
  margin-bottom: 30px;
}

.vending-grid {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}

.vending-grid img {
  width: 260px;
  border-radius: 12px;
}

/* FOOTER */
.footer {
  background: #1e1e1e;
  color: #ffffff;
  text-align: center;
  padding: 40px 20px;
}

.footer p {
  margin: 6px 0;
}

.footer .copyright {
  margin-top: 15px;
  font-size: 14px;
  color: #aaa;
}