:root { --charitable_campaign_theme_primary: ; --charitable_campaign_theme_secondary: ; --charitable_campaign_theme_tertiary: ; --charitable_campaign_theme_button: ; } { --charitable-hero-accent: ; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } /* ── Body row — two columns: story + media ──────────────────────────── */ . { padding: 80px 32px 48px; } /* When the hero has no logo, the avatar overhang isn't there — pull the story column up. */ :not(:has(.charitable-campaign-hero__avatar)) . .charitable-campaign-column:first-child { margin-top: -60px; } . .charitable-campaign-container, . { display: block; } . { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 32px; align-items: start; } . .charitable-campaign-column { padding: 0; border: 0; max-width: none; flex: none; } . .charitable-campaign-column:first-child .charitable-field { margin-bottom: 24px; } . .charitable-campaign-column:last-child .charitable-field { margin-bottom: 16px; } . h5.charitable-field-template-headline { font-size: 24px; font-weight: 700; margin: 0 0 24px; line-height: 1.3; text-wrap: balance; } . .charitable-campaign-hero__title, .charitable-campaign-hero__title { text-wrap: balance; } . .charitable-field-content p { font-size: 15px; line-height: 1.6; color: #333; margin-bottom: 16px; } /* Campaign description — frame the description body (matches preview). */ . .charitable-campaign-field-campaign-description .charitable-campaign-builder-placeholder-template-text { border: 1px solid ; border-radius: 4px; padding: 12px 16px; } . .charitable-campaign-field-campaign-description .charitable-campaign-builder-placeholder-template-text p:first-child { margin: 0; } . .charitable-campaign-field-campaign-description .charitable-campaign-builder-placeholder-template-text p:last-child { margin-bottom: 0; } . .charitable-field-content > *:first-child { margin-top: 0; } . .charitable-field-photo img { display: block; width: 100%; height: auto; border-radius: 0; } /* Social sharing — compact horizontal row */ . .charitable-field-social-sharing { margin-bottom: 24px; } .charitable-field-template-social-sharing { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; } .charitable-field-template-social-sharing .charitable-field-template-social-sharing-headline-container { margin: 0; padding: 0; display: flex; align-items: center; } .charitable-field-template-social-sharing h5.charitable-field-template-headline { font-size: 14px !important; font-weight: 600 !important; margin: 0 8px 0 0 !important; padding: 0 !important; line-height: 1 !important; } .charitable-field-template-social-sharing .charitable-field-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; padding: 0; } .charitable-field-template-social-sharing .charitable-field-row .charitable-social-field-column { margin: 0; padding: 0; display: flex; align-items: center; } .charitable-field-template-social-sharing .charitable-campaign-social-link { margin: 0 !important; padding: 0 !important; display: flex; align-items: center; min-height: 0 !important; } .charitable-field-template-social-sharing .charitable-campaign-social-link a { display: flex; align-items: center; } .charitable-field-template-social-sharing .charitable-campaign-social-link img, .charitable-field-template-social-sharing .charitable-campaign-social-link a { width: 24px; height: 24px; } .charitable-field-template-social-sharing .charitable-campaign-social-link p { display: none; } /* ── Donor wall — Beacon-scoped restyle ───────────────────────────────── */ .donors-list.donors-list-horizontal { list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 16px; margin: 0; padding: 0; } .donors-list.donors-list-horizontal .donor { display: flex; align-items: center; gap: 14px; padding: 14px 16px; background: #fff; border: 1px solid #e6e8eb; border-radius: 10px; transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease; min-width: 0; } .donors-list.donors-list-horizontal .donor:hover { border-color: var(--charitable-hero-accent, #1d3a8a); transform: translateY(-1px); box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06); } .donors-list.donors-list-horizontal .donor .avatar { width: 44px !important; height: 44px !important; border-radius: 50%; object-fit: cover; flex-shrink: 0; background: #f1f3f5; border: 1px solid #e6e8eb; } .donors-list.donors-list-horizontal .donor .donor-name { font-size: 14px; font-weight: 600; line-height: 1.25; color: #111827; margin: 0; padding: 0; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1 1 auto; } .donors-list.donors-list-horizontal .donor .donor-donation-amount { font-size: 13px; font-weight: 600; line-height: 1.25; color: var(--charitable-hero-accent, #1d3a8a); margin-top: 4px; letter-spacing: 0.01em; } /* Reflow name + amount into a single column so they stack inside the card. */ .donors-list.donors-list-horizontal .donor::after { content: none; } .donors-list.donors-list-horizontal .donor { flex-wrap: wrap; } .donors-list.donors-list-horizontal .donor .donor-name { flex: 1 1 calc(100% - 60px); white-space: normal; } .donors-list.donors-list-horizontal .donor .donor-donation-amount { flex: 1 1 calc(100% - 60px); margin-left: 58px; margin-top: -2px; } /* Empty-state message — match the body typography rather than the theme default. */ .charitable-campaign-field_donation-wall p, .charitable-campaign-field-donation-wall .charitable-campaign-field-inner > .charitable-campaign-field_donation-wall p { font-family: inherit; font-size: 15px; font-weight: 400; font-style: normal; line-height: 1.6; color: #6b7280; margin: 8px 0 0; padding: 0 !important; text-align: left; } /* ── Mobile reflow ────────────────────────────────────────────────────── */ @media ( max-width: px ) { . { grid-template-columns: 1fr; padding: 32px 16px; gap: 24px; } :not(:has(.charitable-campaign-hero__avatar)) . .charitable-campaign-column:first-child { margin-top: 0; } }