:root{--campaign-ink:#153b35;--campaign-gold:#ba8542}
.campaign-header{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.campaign-header nav{display:flex;gap:12px 22px;flex-wrap:wrap;align-items:center}
.campaign-page{max-width:940px;margin:0 auto;padding:48px 24px 72px;color:#263a34}
.campaign-page h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;letter-spacing:-.03em;margin:14px 0 24px}
.campaign-page h2{font-size:1.35rem;margin:0 0 12px}
.campaign-eyebrow{text-transform:uppercase;font-size:.8rem;letter-spacing:.13em;font-weight:700;color:#536b62}
.campaign-lead{font-size:1.2rem;line-height:1.6;max-width:680px}
.campaign-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.campaign-actions .button,.campaign-primary{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:12px;font-weight:700;text-decoration:none;background:var(--campaign-ink);color:#fff;min-height:48px;box-sizing:border-box}
.campaign-actions .campaign-secondary{background:#fff;color:var(--campaign-ink);border:1px solid #9fb3aa}
.campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:30px 0}
.campaign-card{background:white;border:1px solid #d3dfd7;border-radius:18px;padding:24px;min-width:0}
.campaign-card p{line-height:1.55;margin-bottom:0}
.campaign-number{display:block;font-size:1.7rem;color:var(--campaign-gold);font-weight:700;margin-bottom:16px}
.campaign-note{background:#edf2ee;padding:20px 24px;border-left:3px solid #bc8d51;border-radius:0 12px 12px 0;line-height:1.55}
.campaign-rules section{margin:30px 0}.campaign-rules li{margin:12px 0;line-height:1.6}
.campaign-login{max-width:600px}.campaign-login input{width:100%;box-sizing:border-box;min-width:0}
.campaign-muted{color:#52645c;font-size:.95rem;line-height:1.6}
.campaign-footer{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:32px;padding-top:24px;border-top:1px solid #d3dfd7}
.guest-account-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin:20px 0 90px}
.guest-account-actions form{margin:0}.guest-account-actions button{font:inherit;background:transparent;border:1px solid #9bac9e;border-radius:10px;color:inherit;padding:10px 18px}
@media(max-width:650px){.campaign-page{padding:30px 18px 48px}.campaign-grid{grid-template-columns:1fr;gap:12px}.campaign-card{padding:20px}.campaign-number{font-size:1.2rem;margin-bottom:8px}.campaign-actions{flex-direction:column}.campaign-header nav{gap:12px 18px;font-size:.9rem}.campaign-header{gap:16px}.campaign-page h1{max-width:14ch}}
