:root{--cc-ink:#f3efe6;--cc-soft:#aaa49a;--cc-quiet:#817c74;--cc-gold:#c99a54;--cc-line:rgba(243,239,230,.13);--cc-panel:#0d0e0e}
[hidden]{display:none!important} 
body{background:radial-gradient(circle at 50% 0,#1b1712 0,#080909 33rem,#050606 72rem);color:var(--cc-ink)}
.site-head{background:rgba(5,6,6,.78);backdrop-filter:blur(14px)}
.contribution-shell{width:min(980px,100%);padding:52px 22px 76px}
.contribution-intro{width:min(700px,100%);margin:0 auto 32px;text-align:center}
.contribution-intro h1{margin:8px 0 16px;font:400 clamp(40px,7vw,66px)/1.02 Georgia,serif;letter-spacing:-.025em}
.contribution-intro>p:last-child{max-width:630px;margin:0 auto;color:var(--cc-soft);font:15px/1.65 Arial,sans-serif}
.contribute-card{width:min(900px,100%);margin:0 auto;padding:0;border:0;background:transparent;box-shadow:none}
#form{display:grid;gap:18px;font-family:Arial,sans-serif}
.contribution-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contribution-option,.details-panel,.review-panel{min-width:0;margin:0;padding:24px;border:1px solid var(--cc-line);border-radius:18px;background:linear-gradient(145deg,rgba(18,18,17,.96),rgba(10,11,11,.94));box-shadow:0 18px 55px rgba(0,0,0,.18)}
.contribution-option legend{float:left;width:100%;margin:0 0 6px;padding:0;color:var(--cc-ink);font:400 25px/1.2 Georgia,serif}
.option-copy{clear:both;margin:0 0 20px;color:var(--cc-quiet);font:13px/1.5 Arial,sans-serif}
.field{display:grid;gap:8px;margin:0 0 17px;color:#c8c1b6;font:600 11px/1.35 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.field:last-child{margin-bottom:0}.field small{color:var(--cc-quiet);font:400 11px/1.4 Arial,sans-serif;letter-spacing:0;text-transform:none}
.field input,.field select,.field textarea{width:100%;margin:0;padding:13px 14px;border:1px solid rgba(243,239,230,.18);border-radius:11px;background:#111313;color:var(--cc-ink);font:15px/1.5 Arial,sans-serif;letter-spacing:0;text-transform:none;box-shadow:none}
.field input,.field select{min-height:50px}.field textarea{min-height:126px;resize:vertical}.field textarea.context{min-height:84px}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(201,154,84,.42);outline-offset:1px;border-color:var(--cc-gold)}
.field input[type=file]{min-height:58px;padding:10px}.field input[type=file]::file-selector-button{margin-right:12px;padding:9px 12px;border:1px solid rgba(201,154,84,.5);border-radius:999px;background:transparent;color:#ead9b7;font:600 10px/1 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.details-panel h2,.review-panel h2{margin:0 0 6px;font:400 26px/1.2 Georgia,serif}.panel-intro{margin:0 0 20px;color:var(--cc-quiet);font:13px/1.55 Arial,sans-serif}
.details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.details-grid .field{margin:0}
.review-note{margin:0 0 18px;padding:13px 15px;border-left:2px solid var(--cc-gold);background:rgba(201,154,84,.06);color:var(--cc-soft);font:13px/1.55 Arial,sans-serif}
.check-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check-row{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:11px;margin:0;padding:13px;border:1px solid rgba(243,239,230,.09);border-radius:11px;background:rgba(255,255,255,.018);color:#d8d2c8;font:13px/1.48 Arial,sans-serif}
.check-row:first-child{grid-column:1/-1;border-color:rgba(201,154,84,.25);background:rgba(201,154,84,.045)}
.check-row input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--cc-gold)}
.submit-row{display:grid;justify-items:center;gap:10px;padding:8px 0 0}.submit-row .button{min-width:min(340px,100%);min-height:54px;border-radius:999px;font-size:11px;letter-spacing:.1em}
#status{min-height:21px;margin:0;color:#d7bf91;font:13px/1.5 Arial,sans-serif;text-align:center}
.capacity-gift{padding:22px;border:1px solid rgba(201,154,84,.3);border-radius:14px;background:rgba(201,154,84,.055)}
footer{font-family:Arial,sans-serif}
@media(max-width:760px){.contribution-shell{padding:34px 14px 58px}.contribution-intro{margin-bottom:24px}.contribution-intro h1{font-size:40px}.contribution-grid{grid-template-columns:1fr}.contribution-option,.details-panel,.review-panel{padding:20px 16px;border-radius:15px}.details-grid,.check-list{grid-template-columns:1fr}.check-row:first-child{grid-column:auto}.field{font-size:11px}.field input,.field select,.field textarea{font-size:16px}.review-note{font-size:13px}}
@media(max-width:380px){.contribution-shell{padding-left:10px;padding-right:10px}.contribution-option,.details-panel,.review-panel{padding-left:13px;padding-right:13px}.check-row{padding:11px}}

/* The same compact, single-column flow as the memorial form. */
.contribution-shell{width:min(620px,100%);padding:24px 20px 48px}
.contribution-intro{margin-bottom:24px;text-align:left}
.contribution-intro h1{font-size:clamp(30px,5vw,42px)}
.contribution-intro>p:last-child{font-size:14px;line-height:1.5}
.contribution-option,.details-panel,.review-panel{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.contribution-option legend,.details-panel h2,.review-panel h2{display:none}
.option-copy,.panel-intro,.review-note{font-size:14px;line-height:1.5;color:var(--cc-soft)}
.details-grid,.check-list{grid-template-columns:1fr}
.check-row,.check-row:first-child{padding:0;border:0;background:transparent;margin:0}
.check-list{gap:14px}
.review-note{padding:0;border:0;background:transparent}
#form .form-step .contribution-option{width:100%}
.capacity-gift a{color:var(--cc-gold);text-underline-offset:3px}
.capacity-gift label{display:flex;align-items:flex-start;gap:10px;margin:14px 0;font:14px/1.5 Arial,sans-serif}
.capacity-gift input[type="checkbox"]{flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;accent-color:var(--cc-gold)}
