.pasteur-donations{max-width:700px;margin:auto;font-family:'Fira Sans',sans-serif;color:#19337a}
.pasteur-donations *{box-sizing:border-box;transition:all .3s ease-in-out}
.pasteur-donations .donation-section{margin-bottom:45px}
.pasteur-donations .donation-section>p:first-child{text-align:center;font-size:25px;font-weight:700;margin-bottom:28px;color:#19337a}
.pasteur-donations .amount-options{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.pasteur-donations .amount-item input{position:absolute;opacity:0;width:1px;height:1px}
.pasteur-donations .amount-item span{display:flex;align-items:center;justify-content:center;height:48px;padding:0 45px;border:1px solid #e59000;border-radius:5px;background:#fcefdb;color:#e59000;font-size:25px;font-weight:bold;cursor:pointer}
.pasteur-donations .amount-item input:checked+span{background:#e59000;color:#fff}
.pasteur-donations .amount-item input:focus-visible+span{outline:3px solid #19337a;outline-offset:2px}
.pasteur-donations .custom-amount{display:block;width:100%;max-width:300px;margin:20px auto 0;padding:14px;border:1px solid #dda321;border-radius:5px;font-size:16px;font-weight:400}
.pasteur-donations .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pasteur-donations .form-grid input{display:block;width:100%;height:48px;padding:0 20px;border:1px solid #e59000;border-radius:5px;background:#fcefdb;font-size:16px;font-weight:400}
.pasteur-donations .form-input-wrapper{position:relative}
.pasteur-donations .donation-section p.alternative-payment{margin-top:30px;color:#19337a;font-size:16px;font-weight:400;text-align:left}
.pasteur-donations .privacy{display:flex;gap:15px;color:#7a7a7a;font-size:16px;font-weight:300;margin-bottom:8px;cursor:pointer;align-items:flex-start}
.pasteur-donations .privacy:before{content:'';width:25px;height:25px;flex:0 0 25px;border:1px solid #7a7a7a;background:#fff;border-radius:5px;display:inline-block}
.pasteur-donations .styled-checkbox{position:absolute;opacity:0;width:1px;height:1px}
.pasteur-donations .styled-checkbox:focus-visible+.privacy:before{outline:3px solid #19337a;outline-offset:3px}
.pasteur-donations .styled-checkbox:checked+.privacy:before{background:#19337a;border-color:#19337a;box-shadow:inset 0 0 0 4px #19337a}
.pasteur-donations .styled-checkbox:checked+.privacy{position:relative}
.pasteur-donations .styled-checkbox:checked+.privacy:after{content:'✓';position:absolute;top:0;left:5px;color:#fff;font-weight:700;font-size:18px}
.pasteur-donations .privacy-container{position:relative;margin-bottom:40px}
.pasteur-donations .error{display:block;position:relative;color:#c00;padding:8px 0;font-size:14px;line-height:1.3}
.pasteur-donations .error[hidden]{display:none!important}
.pasteur-donations .pasteur-submit-btn{display:block;margin:auto;background:#19337a;border-radius:5px;color:#fff;border:0;cursor:pointer;font-size:16px;font-weight:600;padding:20px 70px}
.pasteur-donations .pasteur-submit-btn:disabled{opacity:.65;cursor:wait}
@media(max-width:768px){.pasteur-donations .donation-section>p:first-child{font-size:20px}.pasteur-donations .amount-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.pasteur-donations .amount-item span{padding:0;font-size:18px}.pasteur-donations .amount-item.custom{grid-column:1 / 4}.pasteur-donations .form-grid{grid-template-columns:1fr}.pasteur-donations .pasteur-submit-btn{width:100%}.pasteur-donations .donation-section p.alternative-payment{font-size:14px}}

/* Il testo del campo facoltativo deve restare leggibile anche su desktop. */
.pasteur-donations .form-input-wrapper:has(input[name="memory_email"]){grid-column:1/-1}
