@font-face{font-family:'League Gothic';src:url('assets/league-gothic.ttf') format('truetype');font-display:swap}
:root{--navy:#091027;--navy-soft:#17223e;--ivory:#f7eedd;--paper:#fffaf0;--gold:#d4ac59;--gold-pale:#f2dba4;--ink:#182039;--muted:#675f50;--line:#dcd1bc;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--ivory);font:16px/1.6 Arial,Helvetica,sans-serif}h1,h2,p{margin:0}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}::selection{background:var(--gold);color:var(--navy)}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}html{scrollbar-color:var(--gold) var(--navy)}
.don-shell{max-width:1200px;margin:auto;padding:0 48px;min-height:100svh;display:flex;flex-direction:column}.skip-link{position:absolute;left:20px;top:-80px;z-index:5;background:var(--ivory);color:var(--navy);padding:12px}.skip-link:focus{top:12px}header{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #453f37}header>span{font-size:.85rem;color:#d2c7b2}.brand{display:flex;width:226px}.brand img{width:100%;height:auto}main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;flex:1;padding:56px 0 64px}.artwork{margin:0;min-width:0;position:relative;align-self:stretch;min-height:300px}.artwork img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;border-radius:10px}
.don-panel{background:var(--ivory);color:var(--ink);padding:32px;border-radius:14px;color-scheme:light}.don-panel h1{font-family:'League Gothic',sans-serif;font-size:2.75rem;line-height:1.05;font-weight:400}.panel-intro{display:block;background:var(--gold-pale);border:1px solid var(--gold);border-radius:999px;color:var(--ink);font-size:.92rem;font-weight:700;text-align:center;padding:9px 14px;margin-top:14px}.panel-prize{font-size:1rem;line-height:1.5;color:var(--ink);margin-top:12px}.panel-prize strong{color:#8a6420;font-weight:700}fieldset{border:0;padding:0;margin:26px 0 0}legend,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.amount-row{position:relative;display:grid;grid-template-columns:20px 1fr auto;gap:14px;align-items:center;padding:17px 12px;min-height:91px;border-top:1px solid var(--line);cursor:pointer;transition:background-color 150ms}.amount-row:last-child{border-bottom:1px solid var(--line)}.amount-row:hover{background:#ede2cc}.amount-row:has(input:checked){background:var(--paper)}.amount-row:has(input:focus-visible){outline:3px solid #b5862d;outline-offset:2px;z-index:1}.amount-row input{position:absolute;opacity:0;width:20px;height:20px;left:12px;margin:0}.choice-mark{width:20px;height:20px;border:1.5px solid #807053;border-radius:50%;display:grid;place-items:center}.amount-row input:checked+.choice-mark{border-color:var(--ink)}.amount-row input:checked+.choice-mark:after{content:'';width:10px;height:10px;border-radius:50%;background:var(--ink)}.amount{font-size:1.8rem;line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums}.amount>span{font-size:1.1rem}.tickets{display:flex;flex-direction:column;align-items:flex-end;line-height:1.4}.tickets strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.tickets .cost{display:inline-block;background:var(--gold-pale);border:1px solid var(--gold);color:var(--ink);font-size:.82rem;font-weight:700;line-height:1.35;padding:4px 10px;border-radius:999px;margin-top:7px;text-align:center}.tickets .cost b{font-size:.95rem}.total{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px;font-size:.9rem}.total strong{font-size:1.3rem;font-variant-numeric:tabular-nums}#donate{margin-top:16px;min-height:56px;border:0;border-radius:7px;background:var(--navy);color:var(--ivory);width:100%;display:flex;align-items:center;justify-content:center;gap:5px;padding:14px 16px;font-size:.95rem;font-weight:700;cursor:pointer}#donate svg{width:22px;height:22px;margin-left:10px}#donate:hover:not(:disabled){background:var(--navy-soft)}#donate:disabled{background:#465068;cursor:not-allowed}.payment-status{font-size:.79rem;line-height:1.5;color:var(--muted);margin-top:10px;text-align:center}.panel-intro strong{color:var(--ink);font-weight:700;white-space:nowrap}footer{border-top:1px solid #453f37;display:flex;justify-content:space-between;gap:20px;padding:22px 0;color:#c4b89f;font-size:.75rem;line-height:1.5}
@media(max-width:1000px){main{gap:36px}.don-shell{padding:0 32px}.don-panel{padding:28px}}
@media(max-width:760px){.don-shell{padding:0 22px;max-width:600px}.artwork{max-width:none;min-height:0}.artwork img{position:static;inset:auto;height:180px;object-fit:cover;object-position:center 32%;border-radius:10px}.panel-intro{font-size:.85rem}header{min-height:82px}.brand{width:184px}header>span{font-size:.75rem}main{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding:30px 0 34px}.don-panel{padding:24px 20px}.don-panel h1{font-size:2.45rem}.panel-intro{font-size:.8rem}fieldset{margin-top:22px}.amount-row{grid-template:'mark amount tickets' auto 'mark cost cost' auto/20px 1fr auto;gap:10px 12px;padding:16px 8px;min-height:0}.amount-row input{left:8px}.choice-mark{grid-area:mark;margin-top:6px}.amount{grid-area:amount;font-size:1.65rem}.tickets{display:contents}.tickets strong{grid-area:tickets;justify-self:end;align-self:center}.tickets .cost{grid-area:cost;justify-self:end;margin-top:0}.tickets .cost{font-size:.75rem}.tickets .cost b{font-size:.88rem}.total{margin-top:22px}footer{align-items:flex-start;font-size:.73rem}footer>span{max-width:22ch}footer>a{white-space:nowrap;min-height:44px}}
@media(max-width:360px){.don-shell{padding:0 16px}.brand{width:163px}.don-panel{padding:22px 16px}.amount-row{gap:8px}.tickets .cost{max-width:24ch}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

