/* ==========================================================================
   rm-donate-scoped.css - GENERATED, do not edit by hand.
   Regenerate with:  python3 build/mk_donate_scope.py

   The donation module's own stylesheet, confined to `.rm-donate`.

   It was written before this redesign and uses the same rm- prefix. Most of
   it was already scoped, but 56 selectors were not - among them .rm-hero,
   .rm-btn and .rm-wrap, three of the design system's core classes. Since
   this sheet prints after rm.css and both are single-class selectors, the
   donation module won: the front-page hero came out with a navy gradient,
   90px of padding and centred text belonging to another component.

   Every rule below still applies exactly where it did inside the module's
   own markup. It simply no longer reaches the rest of the site.
   ========================================================================== */

.rm-donate{--navy:#17342f; --navy-deep:#0d1e1a; --green:#17342f; --green-light:#23473f; --gold:#C9A227; --gold-light:#E4C35C; --cream:#FBF8F1; --ink:#1c2430; --muted:#5c6773; font-family: Georgia, 'Times New Roman', serif; color:var(--ink); background:var(--cream);}
.rm-donate *{box-sizing:border-box;}
.rm-donate .rm-required{color:#a13030;}
.rm-donate .rm-wrap{max-width:900px; margin:0 auto; padding:0 24px; width:100%;}
.rm-donate h1, .rm-donate h2, .rm-donate h3{font-family: Georgia, 'Times New Roman', serif; margin:0 0 12px; color:var(--navy);}
.rm-donate p{font-family: Arial, Helvetica, sans-serif; line-height:1.7; color:var(--muted); margin:0 0 16px;}
.rm-donate .rm-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%); padding:90px 0; text-align:center;}
.rm-donate .rm-hero::after{content:""; display:block; width:80px; height:3px; background:var(--gold); margin:22px auto 0;}
.rm-donate .rm-hero .rm-eyebrow{font-family:Arial, sans-serif; letter-spacing:3px; text-transform:uppercase; font-size:13px; color:var(--gold-light); margin-bottom:14px; font-weight:700;}
.rm-donate .rm-hero h1{color:#fff; font-size:40px; margin-bottom:16px;}
.rm-donate .rm-hero p{color:#dfe6ee; max-width:560px; margin:0 auto 32px; font-size:16px;}
.rm-donate .rm-btn{display:inline-block; font-family:Arial, sans-serif; font-weight:700; text-decoration:none; padding:16px 40px; border-radius:6px; font-size:15px; letter-spacing:.5px; text-transform:uppercase; transition:all .2s ease; white-space:nowrap; border:none; cursor:pointer;}
.rm-donate .rm-btn:disabled{opacity:.6; cursor:not-allowed;}
.rm-donate .rm-btn-gold{background:var(--gold); color:var(--navy-deep);}
.rm-donate .rm-btn-gold:hover{background:var(--gold-light);}
.rm-donate .rm-overlay{display:none; position:fixed; inset:0; background:rgba(8,26,51,.68); z-index:9999; padding:24px; overflow-y:auto;}
.rm-donate .rm-overlay.rm-open{display:flex; align-items:flex-start; justify-content:center;}
.rm-donate .rm-modal{background:#fff; border-radius:14px; max-width:560px; width:100%; margin:32px auto; padding:34px 32px 28px; position:relative; box-shadow:0 30px 60px rgba(0,0,0,.35);}
.rm-donate .rm-modal-close{position:absolute; top:14px; right:16px; background:none; border:none; font-size:24px; line-height:1; color:var(--muted); cursor:pointer; padding:4px 8px;}
.rm-donate .rm-modal-close:hover{color:var(--navy);}
.rm-donate .rm-modal-back{background:none; border:none; font-family:Arial, sans-serif; font-size:13px; font-weight:700; color:var(--green); cursor:pointer; padding:0; margin-bottom:14px; display:inline-flex; align-items:center; gap:6px;}
.rm-donate .rm-modal-back:hover{color:var(--navy);}
.rm-donate .rm-modal-tag{font-family:Arial, sans-serif; text-transform:uppercase; letter-spacing:1.5px; font-size:12px; color:var(--green); font-weight:700; margin-bottom:6px;}
.rm-donate .rm-modal h2{font-size:23px; margin-bottom:4px;}
.rm-donate .rm-modal-program{font-family:Arial, sans-serif; font-size:14.5px; color:var(--muted); margin-bottom:20px;}
.rm-donate .rm-modal-program strong{color:var(--navy);}
.rm-donate .rm-form-message{font-family:Arial, sans-serif; font-size:14px; padding:12px 14px; border-radius:8px; margin-bottom:18px; line-height:1.6;}
.rm-donate .rm-form-message.rm-success{background:#e7f4ec; color:#1B5E3F; border:1.5px solid #bfe3cc;}
.rm-donate .rm-form-message.rm-error{background:#fbeaea; color:#a13030; border:1.5px solid #f0c6c6;}
.rm-donate .rm-program-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:6px;}
.rm-donate .rm-program-btn{font-family:Arial, sans-serif; font-weight:700; font-size:14.5px; color:var(--navy); background:#f7f4ea; border:1.5px solid #e8e2d3; border-radius:9px; padding:16px 14px; text-align:left; cursor:pointer; transition:.15s;}
.rm-donate .rm-program-btn:hover{border-color:var(--gold); background:#fdf9ef;}
.rm-donate .rm-program-btn.rm-featured{background:var(--green); color:#fff; border-color:var(--green); grid-column:1 / -1; text-align:center;}
.rm-donate .rm-program-btn.rm-featured:hover{background:var(--green-light);}
.rm-donate .rm-field-group{margin-bottom:20px;}
.rm-donate .rm-field-group label{display:block; font-family:Arial, sans-serif; font-weight:700; font-size:13px; color:var(--navy); margin-bottom:8px; text-transform:uppercase; letter-spacing:.4px;}
.rm-donate .rm-pills{display:grid; grid-template-columns:repeat(3,1fr); gap:8px;}
.rm-donate .rm-pills label{position:relative; margin:0;}
.rm-donate .rm-pills input{position:absolute; opacity:0;}
.rm-donate .rm-pills span{display:block; text-align:center; font-family:Arial, sans-serif; font-weight:700; color:var(--navy); background:#f7f4ea; border:1.5px solid #e8e2d3; border-radius:8px; padding:10px 6px; cursor:pointer; font-size:13px;}
.rm-donate .rm-pills input:checked + span{background:var(--gold); border-color:var(--gold); color:var(--navy-deep);}
.rm-donate .rm-amounts{display:grid; grid-template-columns:repeat(3,1fr); gap:10px;}
.rm-donate .rm-amounts label{position:relative; margin:0;}
.rm-donate .rm-amounts input{position:absolute; opacity:0;}
.rm-donate .rm-amounts span{display:block; text-align:center; font-family:Arial, sans-serif; font-weight:700; color:var(--navy); background:#f7f4ea; border:1.5px solid #e8e2d3; border-radius:8px; padding:12px 6px; cursor:pointer; font-size:14px;}
.rm-donate .rm-amounts input:checked + span{background:var(--gold); border-color:var(--gold); color:var(--navy-deep);}
.rm-donate .rm-toggle{display:flex; border:1.5px solid #e8e2d3; border-radius:8px; overflow:hidden; font-family:Arial, sans-serif;}
.rm-donate .rm-toggle label{flex:1; position:relative; margin:0;}
.rm-donate .rm-toggle input{position:absolute; opacity:0;}
.rm-donate .rm-toggle-opt{display:block; text-align:center; padding:12px; cursor:pointer; font-weight:700; font-size:14px; color:var(--navy); background:#f7f4ea;}
.rm-donate .rm-toggle input:checked + .rm-toggle-opt{background:var(--gold); color:var(--navy-deep);}
.rm-donate select.rm-input, .rm-donate input.rm-input, .rm-donate textarea.rm-input{width:100%; font-family:Arial, sans-serif; font-size:14.5px; padding:12px 14px; border:1.5px solid #e8e2d3; border-radius:8px; background:#fff; color:var(--ink);}
.rm-donate textarea.rm-input{resize:vertical; min-height:70px;}
.rm-donate .rm-checkbox{display:flex; align-items:center; gap:10px; font-family:Arial, sans-serif; font-size:14px; color:var(--muted); text-transform:none; letter-spacing:0; font-weight:400;}
.rm-donate .rm-submit{width:100%; text-align:center; margin-top:6px;}
.rm-donate .rm-bank-note{background:#f7f4ea; border-radius:10px; padding:16px 18px; font-family:Arial, sans-serif; font-size:13px; color:var(--muted); margin-top:22px; line-height:1.8;}
.rm-donate .rm-bank-note strong{color:var(--navy);}
@media (max-width:768px){
  .rm-donate .rm-hero{padding:64px 0;}
  .rm-donate .rm-hero h1{font-size:34px;}
  .rm-donate .rm-modal{max-width:520px;}
}
@media (max-width:600px){
  .rm-donate .rm-wrap{padding:0 18px;}
  .rm-donate .rm-hero{padding:52px 0;}
  .rm-donate .rm-hero h1{font-size:28px;}
  .rm-donate .rm-hero p{font-size:15px;}
  .rm-donate .rm-btn{padding:14px 28px; font-size:14px; width:100%; max-width:320px;}
  .rm-donate .rm-modal{padding:26px 18px 22px; margin:16px auto; max-width:100%; border-radius:10px;}
  .rm-donate .rm-program-grid{grid-template-columns:1fr;}
  .rm-donate .rm-pills{grid-template-columns:repeat(2,1fr);}
  .rm-donate .rm-amounts{grid-template-columns:repeat(2,1fr);}
  .rm-donate .rm-overlay{padding:12px;}
}
@media (max-width:360px){
  .rm-donate .rm-hero h1{font-size:24px;}
  .rm-donate .rm-modal h2{font-size:20px;}
}
