.donate-page { background: #210b53; }
.donate-page .header-donate[aria-current="page"] { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.42), 0 5px 12px rgba(66, 22, 158, 0.2); }

.donate-holding-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 77% 21%, rgba(178, 127, 255, 0.57), transparent 25%),
    radial-gradient(circle at 16% 96%, rgba(96, 37, 199, 0.52), transparent 31%),
    linear-gradient(118deg, #190746 0%, #351078 48%, #6020bd 100%);
}
.donate-holding-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(rgba(255, 255, 255, 0.24) 1px, transparent 1px); background-size: 25px 25px; mask-image: linear-gradient(90deg, #000 0%, transparent 72%); opacity: 0.22; }
.donate-holding-hero::after { content: ""; position: absolute; width: 530px; height: 530px; right: -225px; top: -236px; pointer-events: none; border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255, 255, 255, 0.035), 0 0 0 76px rgba(255, 255, 255, 0.017); }
.donate-orbit { position: absolute; pointer-events: none; border: 1px solid rgba(255, 255, 255, 0.15); border-radius: 50%; }
.donate-orbit-one { width: 545px; height: 545px; top: -335px; left: 25%; box-shadow: 0 0 0 35px rgba(255, 255, 255, 0.035), 0 0 0 70px rgba(255, 255, 255, 0.018); }
.donate-orbit-two { width: 320px; height: 320px; right: -132px; bottom: -174px; box-shadow: 0 0 0 28px rgba(255, 255, 255, 0.03); }

.donate-holding-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(350px, 0.92fr); gap: clamp(46px, 7vw, 108px); align-items: center; min-height: 570px; padding: 70px 0; }
.donate-holding-copy { max-width: 670px; }
.donate-holding-hero .eyebrow { color: #dfceff; }
.donate-holding-hero h1 { max-width: 675px; margin-bottom: 20px; color: #fff; font-size: clamp(3.1rem, 5vw, 4.5rem); }
.donate-holding-hero h1 span { color: #e9dcff; }
.donate-holding-copy > p { color: rgba(255, 255, 255, 0.9); font-size: var(--text-body-large); font-weight: 700; line-height: 1.62; }
.donate-holding-copy .donate-holding-lead { max-width: 654px; margin-bottom: 12px; color: #fff; font-size: clamp(1.2rem, 1.68vw, 1.38rem); font-weight: 800; line-height: 1.54; }

.donation-status-card { position: relative; overflow: hidden; padding: 35px 35px 34px; border: 1px solid rgba(255, 255, 255, 0.29); border-radius: 22px; background: linear-gradient(145deg, rgba(255, 255, 255, 0.17), rgba(255, 255, 255, 0.075)); box-shadow: 0 24px 52px rgba(8, 1, 42, 0.38); backdrop-filter: blur(10px); }
.donation-status-card::after { content: ""; position: absolute; width: 210px; height: 210px; right: -104px; bottom: -126px; border: 1px solid rgba(255, 255, 255, 0.17); border-radius: 50%; box-shadow: 0 0 0 26px rgba(255, 255, 255, 0.035), 0 0 0 52px rgba(255, 255, 255, 0.018); }
.donation-status-card > * { position: relative; z-index: 1; }
.donation-status-icon { display: grid; place-items: center; width: 61px; height: 61px; margin-bottom: 21px; border: 1px solid rgba(255, 255, 255, 0.27); border-radius: 18px; color: #fff; background: linear-gradient(145deg, #9d6af0, #5c21c2); box-shadow: 0 9px 19px rgba(21, 4, 70, 0.31); }
.donation-status-icon .lucide { width: 31px; height: 31px; stroke-width: 2.05; }
.status-label { display: inline-flex; gap: 7px; align-items: center; margin: 0 0 10px; color: #e5d5ff; font-size: var(--text-caption); font-weight: 900; letter-spacing: 0.055em; line-height: 1.35; text-transform: uppercase; }
.status-label .lucide { width: 17px; height: 17px; stroke-width: 2.2; }
.donation-status-card h2 { max-width: 360px; margin-bottom: 13px; color: #fff; font-size: clamp(1.6rem, 2.35vw, 2rem); font-weight: 900; line-height: 1.16; }
.donation-status-card > p:last-child { max-width: 385px; margin: 0; color: rgba(255, 255, 255, 0.88); font-size: var(--text-body); font-weight: 700; line-height: 1.6; }

.donate-stay-connected { position: relative; isolation: isolate; overflow: hidden; padding-top: 76px; padding-bottom: 80px; color: #fff; background: linear-gradient(122deg, #24105d 0%, #40118f 57%, #5b20af 100%); }
.donate-stay-connected::before { content: ""; position: absolute; z-index: 0; inset: 0; pointer-events: none; background-image: linear-gradient(61deg, transparent 45%, rgba(255, 255, 255, 0.055) 45.4%, transparent 45.8%), linear-gradient(-61deg, transparent 68%, rgba(255, 255, 255, 0.035) 68.4%, transparent 68.8%); background-size: 92px 92px; opacity: 0.72; }
.donate-stay-connected::after { content: ""; position: absolute; z-index: 0; width: 460px; height: 460px; right: -215px; bottom: -294px; pointer-events: none; border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 50%; box-shadow: 0 0 0 37px rgba(255, 255, 255, 0.034), 0 0 0 74px rgba(255, 255, 255, 0.018); }
.donate-stay-connected > .container { position: relative; z-index: 1; }
.donate-stay-intro { max-width: 820px; margin-bottom: 35px; }
.donate-stay-intro .eyebrow { color: #dfceff; }
.donate-stay-intro h2 { margin-bottom: 13px; color: #fff; font-size: var(--heading-section); font-weight: 900; line-height: 1.14; }
.donate-stay-intro > p:last-child { max-width: 765px; margin-bottom: 0; color: rgba(255, 255, 255, 0.88); font-size: var(--text-body-large); font-weight: 700; line-height: 1.6; }
.donate-update-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; max-width: 920px; }
.donate-update-card { min-height: 276px; padding: 29px; border: 1px solid rgba(255, 255, 255, 0.46); border-radius: 18px; background: linear-gradient(145deg, #fff 0%, #f3eaff 100%); box-shadow: 0 15px 31px rgba(18, 3, 65, 0.26); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.donate-update-card:hover { transform: translateY(-4px); box-shadow: 0 20px 36px rgba(12, 2, 53, 0.35); }
.donate-update-icon { display: grid; place-items: center; width: 57px; height: 57px; margin-bottom: 21px; border-radius: 16px; color: #fff; background: linear-gradient(145deg, #7d43d9, #4d15a2); box-shadow: 0 7px 15px rgba(74, 24, 161, 0.22); }
.donate-update-icon .lucide { width: 31px; height: 31px; stroke-width: 2.1; }
.donate-update-card h3 { margin: 0 0 9px; color: #342061; font-size: var(--heading-card); font-weight: 900; line-height: 1.24; }
.donate-update-card p { margin: 0 0 17px; color: #554d6b; font-size: var(--text-body); font-weight: 700; line-height: 1.58; }
.donate-update-card .text-link { display: inline-flex; gap: 8px; align-items: center; }
.donate-update-card .text-link .lucide { width: 18px; height: 18px; stroke-width: 2.25; }

.donate-thank-you { position: relative; overflow: hidden; padding: 53px 0; color: #fff; border-top: 1px solid rgba(255, 255, 255, 0.13); background: linear-gradient(113deg, #170545 0%, #35107c 49%, #7029ce 100%); }
.donate-thank-you::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(rgba(255, 255, 255, 0.18) 1px, transparent 1px); background-size: 26px 26px; mask-image: linear-gradient(90deg, #000 0%, transparent 70%); opacity: 0.3; }
.donate-thank-you-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 18px; align-items: center; max-width: 950px; }
.donate-thank-you-icon { display: grid; place-items: center; width: 60px; height: 60px; border: 1px solid rgba(255, 255, 255, 0.62); border-radius: 50%; color: #fff; background: rgba(255, 255, 255, 0.1); }
.donate-thank-you-icon .lucide { width: 32px; height: 32px; fill: currentColor; stroke-width: 1.85; }
.donate-thank-you h2 { margin: 0 0 5px; color: #fff; font-size: clamp(1.6rem, 2.6vw, 2.1rem); font-weight: 900; line-height: 1.14; }
.donate-thank-you p { margin: 0; color: rgba(255, 255, 255, 0.9); font-size: var(--text-body); font-weight: 700; line-height: 1.56; }

@media (max-width: 960px) {
  .donate-holding-grid { grid-template-columns: 1fr; gap: 36px; min-height: 0; padding-top: 58px; padding-bottom: 60px; }
  .donate-holding-copy { max-width: 760px; }
  .donation-status-card { max-width: 680px; }
  .donate-update-grid { max-width: 760px; }
}

@media (max-width: 640px) {
  .donate-holding-grid, .donate-stay-connected { padding-top: 46px; padding-bottom: 46px; }
  .donate-holding-hero h1 { font-size: clamp(2.7rem, 12vw, 3.65rem); }
  .donate-holding-copy > p, .donate-holding-copy .donate-holding-lead, .donate-stay-intro > p:last-child { font-size: var(--text-body); }
  .donation-status-card { padding: 27px 22px 25px; border-radius: 17px; }
  .donation-status-icon { width: 53px; height: 53px; margin-bottom: 18px; border-radius: 15px; }
  .donation-status-card h2 { font-size: 1.6rem; }
  .donate-stay-intro { margin-bottom: 27px; }
  .donate-update-grid { grid-template-columns: 1fr; gap: 15px; }
  .donate-update-card { min-height: 0; padding: 23px; }
  .donate-update-icon { width: 52px; height: 52px; margin-bottom: 17px; border-radius: 14px; }
  .donate-thank-you { padding: 42px 0; }
  .donate-thank-you-inner { grid-template-columns: 52px minmax(0, 1fr); gap: 13px; }
  .donate-thank-you-icon { width: 50px; height: 50px; }
  .donate-thank-you-icon .lucide { width: 27px; height: 27px; }
}
