:root {
  --red: #DB3B18;
  --red-dk: #B82D0D;
  --orange: #F57A00;
  --yellow: #FFC928;
  --brown: #2F221C;
  --dark-brown: #3E2723; /* Branded thick outline color */
  --white: #FFF;
  --offwhite: #FFFDF7;
  --grey: #756A63;
  --hd: 'Calibri', 'Segoe UI', sans-serif;
  --bd: 'Calibri', 'Segoe UI', sans-serif;
  --r-full: 9999px;
  --sh-md: 0 14px 34px rgba(47,34,28,.12);
}

body { font-family: var(--bd); color: var(--brown); background: var(--offwhite); }

/* --- EXTRA BOLD TEXT BOX & BUTTON --- */
.sub-form-wrap { margin: 35px auto 10px; max-width: 520px; position: relative; z-index: 15; }
.form-instruction { font-family: var(--hd); font-weight: 900; margin-bottom: 12px; font-size: 14px; letter-spacing: 1px; color: var(--dark-brown); }

.input-group { display: flex; gap: 10px; margin-bottom: 15px; }

.sub-input {
  flex: 1;
  padding: 16px 24px;
  border-radius: var(--r-full);
  border: 6px solid var(--dark-brown); /* EXTRA BOLD THICK OUTLINE */
  background: #FFF;
  font-family: var(--bd);
  font-weight: 900; /* BOLDER FONT */
  font-size: 17px;
  outline: none;
  color: var(--dark-brown);
  box-shadow: 0 6px 0 rgba(62, 39, 35, 0.2);
}

.btn-orange {
  background: var(--orange);
  color: #FFF;
  border: 6px solid var(--dark-brown); /* MATCHING EXTRA BOLD OUTLINE */
  border-radius: var(--r-full);
  padding: 12px 28px;
  font-family: var(--hd);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  box-shadow: 0 6px 0 var(--red-dk);
}

.check-options { display: flex; justify-content: center; gap: 18px; flex-wrap: wrap; font-size: 14px; font-weight: 800; color: var(--brown-lt); }
.check-options input { accent-color: var(--orange); }

/* --- MERCH TEASER SECTION --- */
.merch-teaser-shell { max-width: 1020px; width: 100%; text-align: center; margin-top: 40px; position: relative; z-index: 10; }
.teaser-title { font-family: var(--hd); font-weight: 900; font-size: 24px; text-transform: uppercase; color: var(--dark-brown); margin-bottom: 25px; }
.merch-teaser-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.teaser-item { background: #FFF; padding: 15px; border-radius: 24px; border: 4px solid var(--dark-brown); box-shadow: var(--sh-md); }
.teaser-item img { width: 100%; height: 220px; object-fit: cover; border-radius: 16px; margin-bottom: 12px; }
.teaser-item span { font-family: var(--hd); font-weight: 900; font-size: 16px; color: var(--dark-brown); }

@media(max-width: 768px) {
  .merch-teaser-grid { grid-template-columns: 1fr; max-width: 400px; margin: 0 auto; }
  .input-group { flex-direction: column; }
}