.contribution-layout{max-width:760px;min-height:calc(100svh - 78px);padding-block:clamp(1.8rem,4vw,3.2rem) 3rem}
.contribution-layout section{padding:0}
.contribution-intro{text-align:center;margin:0 auto clamp(1.5rem,3vw,2rem);max-width:720px}
.contribution-intro h1{font-size:clamp(3rem,5vw,4.1rem);letter-spacing:-.04em;line-height:1.05;margin-bottom:.7rem}
.contribution-intro p{color:var(--muted);margin:0 auto;max-width:38rem;line-height:1.6}
.payment-card{max-width:590px;margin:auto;padding:clamp(1.5rem,3.4vw,2.2rem);border:1px solid rgba(203,162,92,.42);border-radius:26px;background:radial-gradient(circle at 100% 0%,rgba(203,162,92,.17),transparent 48%),#20282b;color:#efede6;box-shadow:0 24px 55px rgba(23,34,35,.2)}
.payment-card .eyebrow{color:#d9b77e;margin-bottom:.55rem}
.payment-card h2{font-size:clamp(2rem,3.3vw,2.7rem);color:#efede6;margin-bottom:1.35rem}
.amount-label{display:block;font-size:.85rem;font-weight:700;color:#d4d9d2;margin-bottom:.55rem}
.amount-control{display:flex;align-items:stretch;border:1px solid #dfd8c9;border-radius:16px;background:#f9f7f0;overflow:hidden;font:2.5rem/1.1 var(--display);box-shadow:inset 0 1px 2px rgba(20,30,30,.04)}
.amount-control:focus-within{outline:2px solid #d9b77e;outline-offset:3px}
.amount-control>span{align-self:center;padding-left:1.1rem;color:#20282b}
.amount-control input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#20282b;font:inherit;padding:.58rem .45rem;appearance:textfield}
.amount-control input::-webkit-inner-spin-button,.amount-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.amount-arrows{display:flex;flex-direction:column;border-left:1px solid #ddd5c7}
.amount-arrows button{width:56px;min-height:43px;border:0;background:#f0ebe0;color:#20282b;font-size:.87rem;line-height:1;cursor:pointer}
.amount-arrows button+button{border-top:1px solid #ddd5c7}
.amount-arrows button:hover{background:#e0cfb0}
.payment-button{width:100%;min-height:54px;margin-top:1.15rem;border:0;border-radius:14px;background:#cba25c;color:#20282b;font-weight:700;cursor:pointer;justify-content:center}
.payment-button:hover{background:#e2bc7b;color:#20282b}
.payment-button:disabled{opacity:.65;cursor:wait}
.payment-status{font-size:.88rem;color:#f2d9bc;margin:.75rem 0 0}
.payment-status:empty{display:none}
.payment-note{font-size:.8rem;color:#c6ccc4;line-height:1.5;border-top:1px solid rgba(239,237,230,.18);padding-top:.95rem;margin:1.35rem 0 0}
@media(max-width:560px){.contribution-layout{padding-block:1.7rem 2.5rem}.contribution-intro{margin-bottom:1.4rem}.contribution-intro h1{font-size:clamp(2.65rem,10.5vw,3.5rem)}.contribution-intro p{font-size:.9rem;line-height:1.55}.payment-card{padding:1.4rem;border-radius:20px}.payment-card h2{font-size:2.15rem}.amount-control{font-size:2.2rem}.amount-arrows button{width:50px;min-height:43px}.nav-actions>a{display:none}}
