/* The donation experience is isolated from page content so the existing Hub
   typography, spacing and layouts remain unchanged. */
.nav-donation{display:inline-flex;align-items:center;gap:7px}
.nav-donation-heart{color:var(--gold-bright);font-size:.86rem;line-height:1;transition:transform var(--dur-mid) var(--ease-spring)}
.nav-donation:hover .nav-donation-heart{transform:scale(1.18)}
.donation-overlay{position:fixed;inset:0;z-index:2100;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(2,6,16,.82);backdrop-filter:blur(12px)}
.donation-overlay.show{display:flex}.donation-modal-open{overflow:hidden}
.donation-panel{position:relative;width:min(100%,900px);max-height:min(92vh,780px);overflow:auto;border:1px solid rgba(212,175,106,.65);border-radius:var(--radius-lg);background:var(--navy-800);box-shadow:var(--shadow-pop);animation:cmdkIn .3s var(--ease-spring) both}
.donation-close{position:absolute;right:15px;top:14px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--card-border);border-radius:50%;background:var(--card-bg);color:var(--white);font-size:1.4rem;line-height:1}
.donation-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr)}
.donation-story{position:relative;overflow:hidden;padding:clamp(30px,5vw,52px);border-right:1px solid var(--card-border);background:linear-gradient(150deg,rgba(212,175,106,.12),rgba(79,179,255,.055) 58%,transparent)}
.donation-story:after{content:"";position:absolute;right:-100px;bottom:-130px;width:310px;height:310px;border:1px solid rgba(212,175,106,.15);border-radius:50%;box-shadow:0 0 0 42px rgba(79,179,255,.025),0 0 0 84px rgba(212,175,106,.02);pointer-events:none}
.donation-kicker{display:block;margin-bottom:10px;color:var(--blue);font-size:var(--fs-label);font-weight:800;letter-spacing:var(--tracking-label);text-transform:uppercase}
.donation-story h2,.donation-success h2{margin:0 0 18px;color:var(--gold-bright);font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.08}
.donation-story>p{position:relative;z-index:1;margin:0 0 15px;color:var(--grey-200);font-size:var(--fs-sm);line-height:1.72}
.donation-clarity{position:relative;z-index:1;display:flex;align-items:flex-start;gap:11px;margin-top:24px;padding:16px 0 0;border-top:1px solid var(--card-border)}
.donation-clarity>span{color:var(--gold-bright)}.donation-clarity p{margin:0;color:var(--grey-400);font-size:var(--fs-xs);line-height:1.62}
.donation-form{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,4vw,44px)}
.donation-form fieldset{margin:0 0 20px;padding:0;border:0}.donation-form legend,.donation-custom>span:first-child{display:block;margin-bottom:9px;color:var(--grey-200);font-size:var(--fs-sm);font-weight:750}
.donation-amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.donation-amounts button{min-height:48px;padding:10px;border:1px solid var(--card-border);border-radius:var(--radius-xs);background:var(--card-bg);color:var(--grey-200);font-weight:800;font-variant-numeric:tabular-nums;transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast)}
.donation-amounts button:hover{border-color:var(--gold);color:var(--gold-bright);transform:translateY(-1px)}.donation-amounts button.selected{border-color:var(--gold);background:rgba(212,175,106,.14);color:var(--gold-bright);box-shadow:inset 0 -2px var(--gold)}
/* Payment location selector: India uses Razorpay, elsewhere uses PayPal. */
.donation-region-label{display:block;margin-bottom:9px;color:var(--grey-200);font-size:var(--fs-sm);font-weight:750}
.donation-region-select{display:block;width:100%;min-height:48px;padding:12px;margin:0 0 20px;border:1px solid var(--card-border);border-radius:var(--radius-xs);background:var(--navy-600);color:var(--white);font:inherit;cursor:pointer;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}
.donation-region-select:hover{border-color:var(--gold)}
.donation-region-select:focus-visible{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,106,.12);outline:0}
.donation-region-select option{background:var(--navy-600);color:var(--white)}
.donation-custom{display:block}.donation-input{display:flex;align-items:center;border:1px solid var(--card-border);border-radius:var(--radius-xs);background:var(--navy-600);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.donation-input:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,106,.12)}.donation-input b{padding-left:13px;color:var(--gold-bright);font-size:1rem}.donation-input input{min-width:0;width:100%;padding:12px;border:0;background:transparent;color:var(--white);font:inherit;font-variant-numeric:tabular-nums;outline:0}.donation-input input::placeholder{color:var(--grey-400)}
#donationAmountHelp{display:block;margin-top:7px;color:var(--grey-400);font-size:.68rem}.donation-message{min-height:20px;margin:14px 0 6px;padding:0;color:var(--grey-400);font-size:var(--fs-xs);line-height:1.5}.donation-message.error{color:var(--red)}.donation-message.pending{color:var(--blue)}.donation-message.neutral{color:var(--grey-300)}
.donation-submit{width:100%;justify-content:center}.donation-later{align-self:center;margin-top:10px;padding:7px 10px;border:0;background:transparent;color:var(--blue);font:inherit;font-size:var(--fs-sm)}.donation-payment-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:16px 0 0;color:var(--grey-400);font-size:.68rem;text-align:center}
.donation-success{max-width:580px;margin:0 auto;padding:clamp(48px,9vw,88px) clamp(28px,7vw,72px);text-align:center}.donation-success-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 20px;border:1px solid rgba(62,207,142,.55);border-radius:50%;background:rgba(62,207,142,.1);color:var(--green);font-size:1.5rem;font-weight:900}.donation-success p{margin:0 auto 24px;color:var(--grey-200);line-height:1.7}.donation-success strong{color:var(--gold-bright)}
@media(min-width:1000px) and (max-width:1279px){.nav-donation{width:34px;height:34px;justify-content:center;padding-left:0!important;padding-right:0!important}.nav-donation-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}
@media(max-width:999px){#mainNav .nav-donation{width:100%;min-height:46px;justify-content:space-between;padding:13px 14px!important;border-radius:var(--radius-xs);font-size:var(--fs-sm)!important}.nav-donation-text{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.nav-donation-heart{order:2}}
@media(max-width:760px){.donation-panel{width:min(100%,600px)}.donation-layout{grid-template-columns:1fr}.donation-story{padding:32px 26px 26px;border-right:0;border-bottom:1px solid var(--card-border)}.donation-form{padding:26px}}
@media(max-width:420px){.donation-overlay{padding:10px}.donation-panel{max-height:95vh}.donation-close{right:10px;top:10px}.donation-story{padding:28px 22px 22px}.donation-story h2{padding-right:30px}.donation-form{padding:22px}.donation-amounts{gap:6px}.donation-amounts button{padding:8px 5px}}
@media(prefers-reduced-motion:reduce){.donation-panel{animation:none}.nav-donation-heart{transition:none}}
