body.donation-builder-page{--sf-red:#cf2027;--sf-red-dark:#aa171d;--sf-text:#202520;--sf-muted:#6d746e;--sf-border:#dfe3df;--sf-soft:#f7f8f7;--sf-white:#fff}
body.donation-builder-page #donation-form-container,body.donation-builder-page .sf-page-content{width:100%!important;max-width:var(--sf-container,1240px)!important;margin-left:auto!important;margin-right:auto!important}
body.donation-builder-page #donation-form.sf-donation-form{display:block!important;width:100%!important;max-width:var(--sf-container,1240px)!important;margin:0 auto!important;padding:0!important;background:transparent!important}
body.donation-builder-page #donation-form *,body.donation-builder-page #donation-form *:before,body.donation-builder-page #donation-form *:after{box-sizing:border-box}
body.donation-builder-page #donation-form>.sf-donation-columns{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:22px!important;align-items:start!important;width:100%!important}
body.donation-builder-page #donation-form .sf-donation-panel{min-width:0!important;padding:24px!important;background:#fff!important;border:1px solid var(--sf-border)!important;border-radius:14px!important;box-shadow:0 8px 28px rgba(0,0,0,.05)!important}
body.donation-builder-page #donation-form .sf-donation-panel>.section{display:block!important;position:relative!important;float:none!important;clear:both!important;width:100%!important;max-width:none!important;margin:0 0 18px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.donation-builder-page #donation-form .section>h3{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 18px!important;color:var(--sf-text)!important;font-size:27px!important;line-height:1.15!important;font-weight:700!important}
body.donation-builder-page #donation-form .section.donation>h3:before,body.donation-builder-page #donation-form .section.contact>h3:before,body.donation-builder-page #donation-form .section.payment>h3:before{display:inline-flex!important;flex:0 0 40px!important;width:40px!important;height:40px!important;align-items:center!important;justify-content:center!important;color:#fff!important;background:var(--sf-red)!important;border-radius:50%!important;font-size:18px!important}
body.donation-builder-page #donation-form .section.donation>h3:before{content:"1"}body.donation-builder-page #donation-form .section.contact>h3:before{content:"2"}body.donation-builder-page #donation-form .section.payment>h3:before{content:"3"}
body.donation-builder-page #donation-form .field{position:relative!important;float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.donation-builder-page #donation-form .field>label{display:block!important;width:100%!important;margin:0 0 5px!important;color:var(--sf-text)!important;font-size:13px!important;font-weight:600!important}
body.donation-builder-page #donation-form input[type=text],body.donation-builder-page #donation-form input[type=email],body.donation-builder-page #donation-form input[type=tel],body.donation-builder-page #donation-form input[type=number],body.donation-builder-page #donation-form input[type=date],body.donation-builder-page #donation-form select,body.donation-builder-page #donation-form textarea{display:block!important;width:100%!important;height:46px!important;min-height:46px!important;margin:0!important;padding:10px 13px!important;background:#fff!important;border:1px solid #cfd5cf!important;border-radius:7px!important;box-shadow:none!important;font-size:15px!important}
body.donation-builder-page #donation-form .section.comment textarea{height:94px!important}body.donation-builder-page #donation-form .field.street-address textarea{height:46px!important;resize:none!important}
body.donation-builder-page #donation-form .section.donation{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
body.donation-builder-page #donation-form .section.donation>h3{grid-column:1/-1!important}
body.donation-builder-page #donation-form .section.donation>.field.radio>label{display:flex!important;min-height:142px!important;margin:0!important;padding:18px 12px 13px!important;flex-direction:column!important;align-items:center!important;gap:7px!important;background:#fff!important;border:1px solid var(--sf-border)!important;border-radius:9px!important;text-align:center!important;cursor:pointer!important}
body.donation-builder-page #donation-form .section.donation>.field.radio input[type=radio]{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}
body.donation-builder-page #donation-form .sf-gift-icon{display:flex!important;width:36px!important;height:36px!important;align-items:center!important;justify-content:center!important;color:var(--sf-red)!important;font-size:30px!important}
body.donation-builder-page #donation-form .section.donation .field.radio .label{font-size:12px!important;line-height:1.35!important;overflow-wrap:anywhere!important}body.donation-builder-page #donation-form .section.donation .field.radio .label:first-line{font-size:18px!important;font-weight:700!important}
body.donation-builder-page #donation-form .section.donation>.field.radio.sf-selected>label{border-color:var(--sf-red)!important;box-shadow:inset 0 0 0 1px var(--sf-red)!important;background:#fffafa!important}
body.donation-builder-page #donation-form .sf-popular-ribbon{position:absolute!important;z-index:5!important;top:-9px!important;left:50%!important;min-width:110px!important;padding:4px 10px!important;color:#fff!important;background:var(--sf-red)!important;border-radius:999px!important;text-align:center!important;text-transform:uppercase!important;font-size:9px!important;font-weight:700!important;transform:translateX(-50%)!important}
body.donation-builder-page #donation-form .section.donation>.other-option{grid-column:1/2!important}body.donation-builder-page #donation-form .section.donation>.other-option>label{min-height:62px!important;flex-direction:row!important;justify-content:center!important}body.donation-builder-page #donation-form .section.donation>.other-amount{grid-column:2/-1!important}body.donation-builder-page #donation-form .section.donation>.other-amount input{height:62px!important}
body.donation-builder-page #donation-form .section.recurring,body.donation-builder-page #donation-form .section.true-impact{padding:12px 14px!important;background:var(--sf-soft)!important;border:1px solid var(--sf-border)!important;border-radius:8px!important}
body.donation-builder-page #donation-form .section.recurring .field.checkbox>label,body.donation-builder-page #donation-form .section.true-impact .field.checkbox>label{display:flex!important;margin:0!important;align-items:center!important;gap:10px!important}
body.donation-builder-page #donation-form input[type=checkbox]{flex:0 0 18px!important;width:18px!important;height:18px!important;margin:0!important;accent-color:var(--sf-red)!important}
body.donation-builder-page #donation-form .sf-section-heading,body.donation-builder-page #donation-form .section.custom-fields>h3{display:block!important;margin:0 0 12px!important;font-size:22px!important}
body.donation-builder-page #donation-form .section.contact,body.donation-builder-page #donation-form .section.billing-address{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 16px!important}
body.donation-builder-page #donation-form .section.contact>h3,body.donation-builder-page #donation-form .section.billing-address>.country,body.donation-builder-page #donation-form .section.billing-address>.street-address,body.donation-builder-page #donation-form .section.billing-address>.city{grid-column:1/-1!important}
body.donation-builder-page #donation-form [style*="display: none"]{display:none!important}
body.donation-builder-page #donation-form .section.payment{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:18px!important;background:var(--sf-soft)!important;border:1px solid var(--sf-border)!important;border-radius:10px!important}
body.donation-builder-page #donation-form .section.payment>h3,body.donation-builder-page #donation-form .section.payment>#stripe-cc-fields{grid-column:1/-1!important}
body.donation-builder-page #donation-form .section.payment>.field.radio>label{display:flex!important;min-height:44px!important;margin:0!important;padding:10px 12px!important;align-items:center!important;justify-content:center!important;gap:8px!important;background:#fff!important;border:1px solid #cfd5cf!important;border-radius:7px!important}
body.donation-builder-page #donation-form #card-element{width:100%!important;padding:12px!important;background:#fff!important;border:1px solid #cfd5cf!important;border-radius:7px!important;overflow:hidden!important}
body.donation-builder-page #donation-form .btn-group{display:block!important;width:100%!important;margin:14px 0 0!important}body.donation-builder-page #donation-form #express-submit{display:block!important;width:100%!important;min-height:54px!important;padding:14px 20px!important;color:#fff!important;background:var(--sf-red)!important;border:2px solid var(--sf-red)!important;border-radius:7px!important;font-size:18px!important;font-weight:700!important}
body.donation-builder-page #donation-form .btn-group:after{content:"🔒  Your donation is secure and encrypted.";display:block!important;margin-top:11px!important;color:var(--sf-muted)!important;text-align:center!important;font-size:12px!important}
body.donation-builder-page .sf-page-content{margin-top:22px!important;max-width:none!important}body.donation-builder-page .sf-impact-banner{position:relative!important;left:50%!important;width:100vw!important;max-width:none!important;margin-left:-50vw!important;margin-right:-50vw!important;padding:0!important;color:#fff!important;background:var(--sf-red)!important;border-radius:0!important}body.donation-builder-page .sf-impact-banner__inner{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:28px!important;width:100%!important;max-width:var(--sf-container,1240px)!important;margin:0 auto!important;padding:30px!important}body.donation-builder-page .sf-impact-quote{display:flex!important;gap:14px!important}.sf-page-content .sf-impact-banner h3,.sf-page-content .sf-impact-banner p,.sf-page-content .sf-impact-banner strong,.sf-page-content .sf-impact-banner li{color:#fff!important}.sf-page-content .sf-quote-mark{font-size:54px!important;line-height:.8!important;font-weight:700!important}.sf-page-content .sf-impact-benefits{padding-left:28px!important;border-left:1px solid rgba(255,255,255,.5)!important}.sf-page-content .sf-impact-benefits ul{margin:10px 0 0!important;padding:0!important;list-style:none!important}.sf-page-content .sf-impact-benefits li{position:relative!important;margin:5px 0!important;padding-left:22px!important}.sf-page-content .sf-impact-benefits li:before{content:"✓";position:absolute!important;left:0!important;font-weight:700!important}
body.donation-builder-page .sf-trust-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:20px 12px!important;background:#fff!important;border:1px solid var(--sf-border)!important;border-top:0!important;border-radius:0 0 12px 12px!important}.sf-page-content .sf-trust-item{display:flex!important;padding:5px 18px!important;align-items:center!important;gap:12px!important;border-right:1px solid var(--sf-border)!important}.sf-page-content .sf-trust-item:last-child{border-right:0!important}.sf-page-content .sf-trust-icon{display:inline-flex!important;flex:0 0 42px!important;width:42px!important;height:42px!important;align-items:center!important;justify-content:center!important;color:var(--sf-red)!important;border:2px solid var(--sf-red)!important;border-radius:50%!important;font-size:21px!important;font-weight:700!important}.sf-page-content .sf-trust-item strong{display:block!important;font-size:13px!important}.sf-page-content .sf-trust-item div span{display:block!important;color:var(--sf-muted)!important;font-size:11px!important}
@media(max-width:1050px){body.donation-builder-page #donation-form>.sf-donation-columns{grid-template-columns:1fr!important}body.donation-builder-page .sf-trust-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){body.donation-builder-page #donation-form-container,body.donation-builder-page .sf-page-content{padding-left:12px!important;padding-right:12px!important}body.donation-builder-page #donation-form .section.donation{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.donation-builder-page #donation-form .section.contact,body.donation-builder-page #donation-form .section.billing-address,body.donation-builder-page #donation-form .section.payment,body.donation-builder-page .sf-impact-banner,body.donation-builder-page .sf-trust-row{grid-template-columns:1fr!important}.sf-page-content .sf-impact-benefits{padding:18px 0 0!important;border-left:0!important;border-top:1px solid rgba(255,255,255,.5)!important}}
@media(max-width:440px){body.donation-builder-page #donation-form .section.donation{grid-template-columns:1fr!important}body.donation-builder-page #donation-form .section.donation>.field{grid-column:1!important}}

/* Most Popular badge controls — plugin v1.1 */
body.donation-builder-page #donation-form .section.donation > .field.radio.sf-most-popular > label {
    padding-top: 25px !important;
}
body.donation-builder-page #donation-form .sf-popular-ribbon {
    top: -7px !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: calc(100% - 24px) !important;
    padding: 3px 9px !important;
    color: var(--sf-popular-color, #fff) !important;
    background: var(--sf-popular-bg, var(--sf-red)) !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}
body.donation-builder-page #donation-form .sf-popular-size-small .sf-popular-ribbon {
    font-size: 8px !important;
    padding: 3px 8px !important;
}
body.donation-builder-page #donation-form .sf-popular-size-medium .sf-popular-ribbon {
    font-size: 9px !important;
    padding: 4px 10px !important;
}
body.donation-builder-page #donation-form .sf-popular-size-large .sf-popular-ribbon {
    font-size: 10px !important;
    padding: 5px 12px !important;
}
body.donation-builder-page #donation-form .sf-most-popular .sf-gift-icon {
    margin-top: 4px !important;
}

/* =========================================================
   EDITABLE DONATION HERO
========================================================= */
body.donation-builder-page .sf-donation-hero{
    position:relative;
    width:100%;
    max-width:var(--sf-container,1240px);
    min-height:var(--sf-hero-min-height,500px);
    margin:0 auto 22px;
    overflow:hidden;
    border-radius:var(--sf-radius,18px);
    background-image:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 39%,rgba(255,255,255,.60) 57%,rgba(255,255,255,0) 74%),var(--sf-hero-image);
    background-size:cover;
    background-position:center right;
    box-shadow:0 8px 28px rgba(0,0,0,.05);
}
body.donation-builder-page .sf-donation-hero__content{
    position:relative;
    z-index:2;
    width:59%;
    padding:64px 48px 42px;
}
body.donation-builder-page .sf-donation-hero h1{
    margin:0 0 22px!important;
    color:var(--sf-hero-heading,#123f31)!important;
    font-size:clamp(42px,5vw,68px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    font-weight:800!important;
}
body.donation-builder-page .sf-donation-hero__text{
    max-width:700px;
    margin:0 0 22px!important;
    color:#222!important;
    font-size:19px!important;
    line-height:1.55!important;
}
body.donation-builder-page .sf-donation-hero__cta{
    margin:0 0 26px!important;
    color:#222!important;
    font-size:18px!important;
    line-height:1.45!important;
}
body.donation-builder-page .sf-donation-hero__cta>span{color:#cf2027;font-size:25px;vertical-align:-2px;margin-right:8px}
body.donation-builder-page .sf-donation-hero__partners{
    display:flex;
    align-items:center;
    gap:18px;
    max-width:720px;
    padding:14px 22px;
    color:#fff;
    background:var(--sf-hero-banner,#cf2027);
    border-radius:10px;
    box-shadow:0 8px 24px rgba(120,0,0,.16);
}
body.donation-builder-page .sf-donation-hero__heads{
    flex:0 0 185px;
    width:185px;
    max-height:58px;
    object-fit:contain;
}
body.donation-builder-page .sf-donation-hero__partners p{margin:0!important;color:#fff!important;font-size:16px!important;line-height:1.45!important}
body.donation-builder-page .sf-donation-hero__partners strong{color:#fff!important;font-size:25px}
@media(max-width:900px){
 body.donation-builder-page .sf-donation-hero{min-height:650px;background-image:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 50%,rgba(255,255,255,.15) 75%),var(--sf-hero-image);background-position:center bottom}
 body.donation-builder-page .sf-donation-hero__content{width:100%;padding:42px 28px}
 body.donation-builder-page .sf-donation-hero__partners{max-width:100%}
}
@media(max-width:600px){
 body.donation-builder-page .sf-donation-hero{min-height:620px;border-radius:12px}
 body.donation-builder-page .sf-donation-hero__content{padding:30px 20px}
 body.donation-builder-page .sf-donation-hero h1{font-size:39px!important}
 body.donation-builder-page .sf-donation-hero__text{font-size:16px!important}
 body.donation-builder-page .sf-donation-hero__partners{align-items:flex-start;flex-direction:column;gap:8px;padding:14px 16px}
 body.donation-builder-page .sf-donation-hero__heads{width:170px}
}

/* Donation Builder 2.0.1: full-viewport impact banner with constrained inner content. */
body.donation-builder-page{overflow-x:clip!important}
body.donation-builder-page .sf-trust-row{width:100%!important;max-width:var(--sf-container,1240px)!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:700px){body.donation-builder-page .sf-impact-banner__inner{padding:26px 20px!important}}

/* =========================================================
   DONATION BUILDER 2.0.4 CONSISTENT PAGE GRID
========================================================= */
body.donation-builder-page {
    overflow-x: hidden !important;
}

/* Remove theme/page-builder spacing above the full-width hero. */
body.donation-builder-page .container-wrap,
body.donation-builder-page #ajax-content-wrap .container-wrap,
body.donation-builder-page .main-content > .row:first-child,
body.donation-builder-page .main-content > .row:first-child > .wpb_row:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Full-browser hero. */
body.donation-builder-page .sf-donation-hero {
    position: relative !important;
    left: 50% !important;
    width: 100vw !important;
    max-width: none !important;
    margin: 0 0 22px -50vw !important;
    border-radius: 0 !important;
    background-position: center top !important;
    box-shadow: none !important;
}

/*
 * One shared centered grid for hero copy, Donate heading,
 * donation form, impact banner, and trust row.
 * The outer width is container + 80px; 40px side padding leaves
 * the configured container width for actual content.
 */
body.donation-builder-page .sf-donation-hero__content,
body.donation-builder-page .sf-donate-page-heading,
body.donation-builder-page #donation-form-container,
body.donation-builder-page .sf-page-content {
    width: 100% !important;
    max-width: calc(var(--sf-container, 1240px) + 80px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
    transform: none !important;
    left: auto !important;
}

body.donation-builder-page .sf-donation-hero__content {
    padding-top: 64px !important;
    padding-bottom: 42px !important;
}

body.donation-builder-page .sf-donation-hero__content > h1,
body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__text,
body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__cta,
body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__partners {
    width: 59% !important;
    max-width: 720px !important;
}

/* Donate heading aligned to the same left edge as hero copy/cards. */
body.donation-builder-page .sf-donate-page-heading {
    margin-top: 38px !important;
    margin-bottom: 28px !important;
}

/* Form fills the shared content width and cannot drift horizontally. */
body.donation-builder-page #donation-form-container {
    position: relative !important;
}
body.donation-builder-page #donation-form.sf-donation-form {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Bottom red banner stays contained, matching the form width. */
body.donation-builder-page .sf-page-content {
    margin-top: 22px !important;
}
body.donation-builder-page .sf-impact-banner {
    position: relative !important;
    left: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: var(--sf-radius,18px) var(--sf-radius,18px) 0 0 !important;
}
body.donation-builder-page .sf-impact-banner__inner {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}
body.donation-builder-page .sf-trust-row {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

/* Remove browser bullets and retain only custom checkmarks. */
body.donation-builder-page .sf-impact-benefits ul,
body.donation-builder-page .sf-impact-benefits li {
    list-style: none !important;
}
body.donation-builder-page .sf-impact-benefits li::marker {
    content: "" !important;
    font-size: 0 !important;
}

@media (max-width: 900px) {
    body.donation-builder-page .sf-donation-hero__content,
    body.donation-builder-page .sf-donate-page-heading,
    body.donation-builder-page #donation-form-container,
    body.donation-builder-page .sf-page-content {
        max-width: none !important;
        padding-left: 28px !important;
        padding-right: 28px !important;
    }
    body.donation-builder-page .sf-donation-hero__content {
        padding-top: 42px !important;
        padding-bottom: 42px !important;
    }
    body.donation-builder-page .sf-donation-hero__content > h1,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__text,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__cta,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__partners {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (max-width: 700px) {
    body.donation-builder-page .sf-donation-hero__content,
    body.donation-builder-page .sf-donate-page-heading,
    body.donation-builder-page #donation-form-container,
    body.donation-builder-page .sf-page-content {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    body.donation-builder-page .sf-donation-hero__content {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }
    body.donation-builder-page .sf-impact-banner {
        border-radius: 12px 12px 0 0 !important;
    }
}


/* =========================================================
   DONATION BUILDER 2.0.6 FINAL ALIGNMENT + MOBILE STACK
========================================================= */

/* Align the full hero content block with the Donate heading/cards. */
@media (min-width: 901px) {
    body.donation-builder-page .sf-donation-hero__content {
        transform: translateX(-35px) !important;
    }
}

/* On tablets and phones, remove the desktop offset and stack cleanly. */
@media (max-width: 900px) {
    body.donation-builder-page .sf-donation-hero__content {
        transform: none !important;
    }

    body.donation-builder-page #donation-form > .sf-donation-columns {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 22px !important;
    }

    body.donation-builder-page #donation-form .sf-donation-panel {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}

/* One gift card per row on mobile. */
@media (max-width: 700px) {
    body.donation-builder-page #donation-form .section.donation {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    body.donation-builder-page #donation-form .section.donation > .field,
    body.donation-builder-page #donation-form .section.donation > .other-option,
    body.donation-builder-page #donation-form .section.donation > .other-amount {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.donation-builder-page #donation-form .section.donation > .field.radio > label {
        width: 100% !important;
    }

    body.donation-builder-page .sf-donation-hero__partners {
        width: 100% !important;
        max-width: 100% !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
}

/* =========================================================
   DONATION BUILDER 2.0.7 RESPONSIVE HERO FIXES
========================================================= */

/* Use a stable full-bleed calculation that does not depend on left:50%. */
body.donation-builder-page .sf-donation-hero {
    left: auto !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    overflow: hidden !important;
}

/* Prevent the partner panel from producing a clipped duplicate while resizing. */
body.donation-builder-page .sf-donation-hero__partners {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Only use the desktop alignment nudge when there is enough outer gutter. */
@media (min-width: 1400px) {
    body.donation-builder-page .sf-donation-hero__content {
        transform: translateX(-35px) !important;
    }
}

/* Between tablet and narrower desktop widths, keep all hero copy on-screen. */
@media (min-width: 901px) and (max-width: 1399px) {
    body.donation-builder-page .sf-donation-hero__content {
        transform: none !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }

    body.donation-builder-page .sf-donation-hero__content > h1,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__text,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__cta,
    body.donation-builder-page .sf-donation-hero__content > .sf-donation-hero__partners {
        width: min(68%, 760px) !important;
        max-width: 760px !important;
    }
}

@media (max-width: 900px) {
    body.donation-builder-page .sf-donation-hero {
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
    }

    body.donation-builder-page .sf-donation-hero__content {
        transform: none !important;
        overflow: hidden !important;
    }

    body.donation-builder-page .sf-donation-hero__partners {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* =========================================================
   DONATION BUILDER 2.0.8 TABLET HERO PARTNER FIX
========================================================= */
@media (min-width: 601px) and (max-width: 900px) {
    body.donation-builder-page .sf-donation-hero {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        overflow: hidden !important;
        clip-path: inset(0) !important;
        contain: paint !important;
    }

    body.donation-builder-page .sf-donation-hero__content {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 28px !important;
        padding-right: 28px !important;
        overflow: visible !important;
        transform: none !important;
    }

    body.donation-builder-page .sf-donation-hero__partners {
        display: grid !important;
        grid-template-columns: 185px minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 18px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        isolation: isolate !important;
    }

    body.donation-builder-page .sf-donation-hero__heads {
        display: block !important;
        width: 185px !important;
        max-width: 185px !important;
        min-width: 0 !important;
        flex: none !important;
    }

    body.donation-builder-page .sf-donation-hero__partners p {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }
}

/* =========================================================
   DONATION BUILDER 2.0.9 CLEAN HERO + MOBILE IMPACT STACK
========================================================= */

/* The bundled hero image no longer contains the baked-in red banner fragment. */
body.donation-builder-page .sf-donation-hero {
    background-position: center top !important;
}

/* Stack the lower red impact banner into one column on phones. */
@media (max-width: 700px) {
    body.donation-builder-page .sf-impact-banner__inner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
        padding: 24px 20px !important;
    }

    body.donation-builder-page .sf-impact-quote,
    body.donation-builder-page .sf-impact-benefits {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    body.donation-builder-page .sf-impact-benefits {
        padding-left: 0 !important;
        padding-top: 20px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(255,255,255,.5) !important;
    }
}
