.th-give { background: #fff; color: #003349; font: 16px/1.6 "Avenir Next",sans-serif; }
.th-give *, .th-give *::before, .th-give *::after { box-sizing: border-box; }
.th-give [hidden] { display: none !important; }
.th-give-container { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.th-give-top { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding-top: 64px; padding-bottom: 48px; align-items: start; }
.th-give-top > *, .th-give-band > * { min-width: 0; }
.th-give h1,.th-give h2 { font-family: "Mr Eaves Mod OT","Avenir Next",sans-serif; font-weight: 700; letter-spacing: 0; padding: 0; }
.th-give h1 { color: #005e93; font-size: clamp(38px,4vw,48px); line-height: 1.08; margin: 0 0 22px; max-width: 440px; }
.th-give h2 { color: #003349; font-size: 34px; line-height: 1.12; margin: 0 0 16px; }
.th-give p { padding: 0; margin: 0 0 24px; }
.th-give .th-give-eyebrow { color: #005e93; text-transform: uppercase; font-size: 12px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; margin: 0 0 14px; }
.th-give-intro > p:not(.th-give-eyebrow) { color: #4d626c; font-size: 18px; }
.th-give-hero-photo { display: block; width: 100%; height: 340px; object-fit: cover; object-position: center 15%; border-radius: 12px; }
.th-give-card { padding: 30px; border: 1px solid #dce5e9; border-radius: 18px; box-shadow: 0 4px 16px #00334912; scroll-margin-top: 140px; }
.th-give-card h2 { font-size: 25px; margin-bottom: 8px; }
.th-give .th-give-small { font-size: 13px; color: #506773; margin-bottom: 24px; }
.th-give-amounts { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.th-give-amounts label { position: relative; cursor: pointer; }
.th-give-amounts input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.th-give-amounts span { display: flex; justify-content: center; align-items: center; min-height: 58px; border: 1px solid #c4d0d6; border-radius: 6px; color: #003349; font-size: 18px; font-weight: 700; padding: 14px 4px 10px; }
.th-give-amounts input:checked + span { background: #eef5fa; border: 2px solid #005e93; padding: 13px 3px 9px; }
.th-give-amounts input:focus-visible + span { outline: 3px solid #005e93; outline-offset: 3px; }
.th-give-custom { display: flex; align-items: center; gap: 12px; margin-top: 16px; font-size: 13px; }
.th-give-custom > div { display: flex; align-items: center; flex: 1; min-width: 0; padding-left: 12px; border: 1px solid #c4d0d6; border-radius: 6px; }
.th-give-custom input { border: 0; width: 100%; min-width: 0; padding: 10px; color: #003349; font-size: 16px; background: transparent; }
.th-give-impact { margin: 24px 0; padding: 20px; background: #f4f7f9; border-radius: 6px; }
.th-give-impact .th-give-eyebrow { margin-bottom: 8px; font-size: 10px; }
.th-give-impact #th-gift-impact { min-height: 66px; margin: 0; font-size: 14px; line-height: 1.55; }
.th-give-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 14px 24px 10px; border: 2px solid transparent; border-radius: 999px; color: #003349; font: 700 15px/1.4 "Avenir Next",sans-serif; text-align: center; text-decoration: none; cursor: pointer; }
.th-give-button--orange { background: #f18721; }
.th-give-button--white { background: #fff; }
.th-give-button--outline { background: #fff; border-color: #005e93; color: #005e93; }
.th-give-button:hover { filter: brightness(.95); }
.th-give :focus-visible { outline: 3px solid #005e93; outline-offset: 3px; }
.th-give .th-give-note { margin: 12px 0 0; font-size: 12px; color: #506773; }
.th-give .th-give-tax { margin: 18px 0 0; font-size: 10px; color: #506773; text-align: center; }
.th-give-band { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; padding-top: 60px; padding-bottom: 60px; }
.th-give-sponsor { background: #003349; color: #fff; }
.th-give-sponsor h2 { color: #fff; max-width: 400px; }
.th-give-sponsor .th-give-eyebrow { color: #ffd046; }
.th-give-sponsor p { color: #e0edf2; }
.th-give-sponsor img { width: 100%; height: 380px; object-fit: cover; object-position: center 15%; border-radius: 12px; }
.th-give-book { background: #e4f2f6; }
.th-give-book h2 { color: #005e93; max-width: 420px; }
.th-give-cover { text-align: center; }
.th-give-cover img { display: inline-block; height: auto; width: 210px; max-width: 100%; box-shadow: 0 8px 24px #00334920; }
.th-give-other { padding-top: 48px; padding-bottom: 64px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.th-give-other h2 { font-size: 26px; margin-bottom: 10px; }
.th-give-other p { margin: 0; }
.th-give-other .th-give-button { flex-shrink: 0; }
.th-give-back { display: inline-block; margin-bottom: 22px; color: #005e93; text-decoration: underline; }
.th-give-checkout { scroll-margin-top: 140px; }
.th-give-checkout .v_fw { width: 100%; }
.th-give-checkout input, .th-give-checkout select { max-width: 100%; font-size: 16px; }
@media(max-width:800px) {
 .th-give-container { width: min(640px,calc(100% - 36px)); }
 .th-give-top { grid-template-columns: 1fr; gap: 28px; padding-top: 34px; padding-bottom: 36px; }
 .th-give h1 { max-width: 100%; font-size: 40px; }
 .th-give-hero-photo { height: 240px; }
 .th-give-band { grid-template-columns: 1fr; gap: 28px; padding-top: 40px; padding-bottom: 40px; }
 .th-give-sponsor img { height: 300px; }
 .th-give-book .th-give-cover { order: 2; }
 .th-give-other { align-items: flex-start; flex-direction: column; }
}
@media(max-width:400px) {
 .th-give h1 { font-size: 35px; }
 .th-give h2 { font-size: 29px; }
 .th-give-card { padding: 22px 18px; }
 .th-give-card h2 { font-size: 25px; }
 .th-give-amounts { gap: 8px; }
 .th-give-amounts span { font-size: 16px; min-height: 52px; }
 .th-give-button { padding-left: 18px; padding-right: 18px; }
}
