.support-main { width: min(1200px, 100%); margin: 0 auto; padding: 64px clamp(20px, 5vw, 64px) 40px; }
.support-intro { max-width: 800px; }
.support-intro h1 { margin: 20px 0 24px; font-size: clamp(56px, 8vw, 104px); line-height: .94; letter-spacing: -.065em; }
.support-intro h1 span { color: var(--teal); }
.support-intro > p { max-width: 660px; font-size: 20px; color: var(--muted); }
.support-promise { display: flex; align-items: center; gap: 18px; margin: 28px 0 42px; padding: 18px 22px; border: 2px solid var(--ink); border-radius: 14px; background: var(--paper-raised); }
.support-promise > span { font-size: 34px; color: var(--teal); }
.support-promise p { margin: 0; font-size: 14px; }
.support-promise strong { display: block; }
.support-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.support-card { display: flex; flex-direction: column; min-width: 0; border: 2px solid var(--ink); border-radius: 18px; background: var(--paper-raised); box-shadow: 6px 6px 0 var(--ink); overflow: hidden; }
.support-card__header { position: relative; padding: 28px; border-bottom: 2px solid var(--ink); background: var(--lime); }
.support-card--coffee .support-card__header { background: #ffcf74; }
.support-label { display: inline-block; padding: 5px 9px; border: 1.5px solid var(--ink); border-radius: 7px; background: var(--paper-raised); font: 800 10px/1.5 var(--mono); text-transform: uppercase; }
.support-card--coffee .support-label { max-width: calc(100% - 54px); }
.support-coffee { position: absolute; top: 24px; right: 24px; width: 44px; height: 44px; }
.support-card h2 { margin: 22px 0 4px; font-size: clamp(30px, 3.5vw, 42px); line-height: 1.1; letter-spacing: -.05em; }
.support-card__header p { margin: 0; }
.support-card__body { display: flex; flex: 1; flex-direction: column; padding: 28px; }
.support-card__body > p { font-size: 15px; }
.support-card__body > p:first-child { margin-top: 0; }
.support-card ul { display: grid; gap: 16px; list-style: none; margin: 0 0 24px; padding: 0; }
.support-card li { position: relative; padding-left: 27px; font-size: 15px; }
.support-card li::before { position: absolute; left: 0; content: '✓'; color: var(--teal); font-weight: 900; }
.support-small { margin-top: auto; color: var(--muted); font-size: 13px; }
.support-card .button { margin-top: 12px; width: 100%; font-size: 14px; }
.support-donation-action { margin-top: auto; }
.support-donation-action .button:disabled { background: var(--paper-muted); color: var(--muted); box-shadow: none; cursor: default; opacity: 1; }
.support-card [hidden] { display: none !important; }
.support-sharing { display: flex; flex-wrap: wrap; align-items: center; gap: 26px; justify-content: space-between; margin-top: 64px; padding-block: 34px; border-block: 2px solid var(--ink); }
.support-sharing > div { flex: 1 1 360px; min-width: 0; }
.support-sharing h2, .support-faq > h2 { margin: 16px 0; font-size: clamp(32px, 4.5vw, 48px); line-height: 1.04; letter-spacing: -.045em; }
.support-sharing p { max-width: 600px; color: var(--muted); }
.support-sharing .button { max-width: 100%; font-size: 14px; }
.support-faq { max-width: 820px; margin-top: 60px; }
.support-faq details { border-bottom: 1px solid var(--ink); }
.support-faq summary { padding: 22px 0; cursor: pointer; font-weight: 800; }
.support-faq details p { margin-top: 0; color: var(--muted); }
@media (max-width: 760px) {
  .support-main { padding-top: 40px; }
  .support-cards { grid-template-columns: minmax(0, 1fr); }
  .support-intro > p { font-size: 18px; }
  .support-card__header, .support-card__body { padding: 24px; }
}
