.second-product { margin-top: 32px; }
.senior-preview { background: #c8d0c4; }
.senior-preview .page-stack { box-shadow: 14px 16px 0 rgba(167,110,85,.78), 0 28px 50px rgba(48,46,42,.18); }
.baby-preview { background: #d7c8bc; }
.baby-preview .page-stack { box-shadow: 14px 16px 0 rgba(102,112,95,.78), 0 28px 50px rgba(48,46,42,.18); }
.baby-preview .mini-page span { color: var(--clay); }
.calendar-preview { background: #d9d1c4; }
.calendar-preview .page-stack { box-shadow: 14px 16px 0 rgba(184,154,98,.72), 0 28px 50px rgba(48,46,42,.18); }
.calendar-preview .mini-page span { color: var(--sage-dark); }
.organization-preview { background: #cfd4c8; }
.organization-preview .page-stack { box-shadow: 14px 16px 0 rgba(168,115,93,.72), 0 28px 50px rgba(48,46,42,.18); }
.organization-preview .mini-page span { color: var(--clay); }
.payment-note { margin-top: 14px; font-size: .82rem; color: #857c70; }

.bonus-shop { padding: 100px clamp(24px, 7vw, 110px); background: var(--sage); color: white; }
.bonus-heading { max-width: 760px; margin: 0 auto 46px; text-align: center; }
.bonus-heading .eyebrow { color: #e5b9a6; }
.bonus-heading h2 { font: 700 clamp(2rem, 3.5vw, 3.5rem)/1.18 var(--serif); letter-spacing: -.035em; margin: 0 0 20px; }
.bonus-heading > p:last-child { color: #e5e4df; margin: 0; }
.bonus-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; max-width: 1200px; margin: auto; }
.bonus-card { position: relative; display: flex; flex-direction: column; min-height: 330px; padding: 34px; border: 1px solid rgba(255,255,255,.28); background: rgba(255,255,255,.06); }
.bonus-number { position: absolute; top: 32px; right: 32px; color: #e5b9a6; font-weight: 700; }
.bonus-audience { margin: 0 0 18px; color: #e5b9a6; font-size: .7rem; font-weight: 700; letter-spacing: .16em; }
.bonus-card h3 { max-width: 430px; margin: 0 0 14px; font: 700 clamp(1.4rem, 2vw, 1.85rem)/1.3 var(--serif); }
.bonus-card > p:not(.bonus-audience) { color: #e5e4df; margin: 0 0 28px; }
.bonus-button { align-self: flex-start; margin-top: auto; border-color: white; background: white; color: var(--sage-dark); }
.bonus-button:hover { background: var(--cream); }

@media (max-width: 700px) {
  .bonus-grid { grid-template-columns: 1fr; }
  .bonus-card { min-height: 300px; }
}

@media (max-width: 480px) {
  .bonus-shop { padding-top: 75px; padding-bottom: 75px; }
  .bonus-button { width: 100%; }
}

/* Keep product typography stable in Facebook and other mobile in-app browsers. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.product-feature { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); overflow: hidden; }
.product-feature > * { min-width: 0; }
.mini-page strong,
.product-copy h3 { overflow-wrap: break-word; word-break: normal; }

@media (max-width: 850px) {
  .product-feature { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 480px) {
  .product-preview { min-height: 360px; padding: 36px 24px; }
  .page-stack { width: min(270px, 82%); padding: 22px; }
  .mini-page { padding: 30px 20px; }
  .mini-page strong { margin: 28px 0; font-size: 1.45rem; line-height: 1.3; }
  .product-copy { padding: 34px 26px; }
  .product-copy h3 { margin: 18px 0 8px; font-size: 1.9rem; line-height: 1.22; letter-spacing: -.02em; }
  .price { font-size: 1.25rem; }
  .badge { line-height: 1.45; }
}
