.donation-page { background: #f5f7fb; }
.donation-page .eyebrow { color: #aa740c; }
.donation-page-hero { display: flex; align-items: center; min-height: 495px; padding: 42px 0; background: linear-gradient(90deg,rgba(3,17,70,.33),rgba(3,17,70,.03)),url("fachada-reitoria.jpg") center 49%/cover; }
.donation-hero-card { max-width: 640px; padding: clamp(26px,4vw,48px); border: 1px solid rgba(255,255,255,.82); border-radius: 26px; color: #1e3265; background: rgba(255,255,255,.9); box-shadow: 0 21px 49px rgba(6,23,70,.2); backdrop-filter: blur(14px); }
.donation-hero-card h1 { margin: 8px 0 4px; color: #001b78; font: 400 clamp(2.7rem,5vw,4.8rem)/1.05 var(--serif); letter-spacing: -.05em; }
.donation-hero-card h1 em { color: #ad790b; font-style: normal; }
.donation-hero-card p { margin: 9px 0; color: #455574; font-size: .91rem; line-height: 1.6; }
.donation-hero-card .donation-hero-lead { color: #1b3577; font: 400 1.25rem/1.3 var(--serif); }
.donation-hero-actions,.donation-store-actions,.donation-final-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.donation-hero-actions { margin: 22px 0 12px; }
.donation-hero-card > small { color: #7c879b; font-size: .68rem; line-height: 1.45; }
.donation-page-content { display: grid; gap: 26px; padding-top: 36px; padding-bottom: 72px; }
.donation-page-content section { scroll-margin-top: 35px; }
.donation-page-content h2 { margin: 5px 0 12px; color: #001b78; font: 400 clamp(2rem,3.4vw,3rem)/1.09 var(--serif); letter-spacing: -.025em; }
.donation-page-content h3 { margin: 8px 0 5px; color: #173271; font: 700 1.1rem/1.25 var(--display); }
.donation-page-content p { color: #52617f; font-size: .87rem; line-height: 1.65; }
.donation-page-content .donation-lead { margin: 0 0 12px; color: #2d4480; font: 400 1.25rem/1.35 var(--serif); }
.donation-intro { display: grid; grid-template-columns: minmax(280px,.7fr) minmax(0,1.3fr); gap: 30px; align-items: center; padding: 30px; border: 1px solid #e2e8f2; border-radius: 22px; background: #fff; box-shadow: 0 13px 33px rgba(9,32,79,.06); }
.donation-intro-copy p:last-child { margin-bottom: 0; }
.donation-values { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; }
.donation-values article { min-width: 0; padding: 18px 11px; border: 1px solid #e7ecf4; border-radius: 14px; background: linear-gradient(#fff,#f8fafd); text-align: center; }
.donation-values article > span { color: #cf9422; font-size: 1.8rem; line-height: 1; }
.donation-values h3 { margin: 10px 0 6px; font-size: .83rem; }
.donation-values p { margin: 0; font-size: .67rem; line-height: 1.45; }
.donation-difference,.donation-steps,.donation-more-features,.donation-impact,.donation-faq { padding: clamp(24px,3vw,39px); border: 1px solid #e2e8f2; border-radius: 22px; background: #fff; box-shadow: 0 13px 33px rgba(9,32,79,.05); }
.donation-section-heading { max-width: 780px; margin-bottom: 22px; }
.donation-section-heading > p { margin: 0; }
.donation-difference-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.donation-difference-grid article { padding: 23px; border-radius: 17px; background: #f1f5fd; }
.donation-difference-grid article:nth-child(2) { background: #fff7e6; }
.donation-card-number { color: #c69125; font: 400 1.8rem/1 var(--serif); }
.donation-difference-grid p { margin: 0; }
.donation-note { margin: 17px 0 0 !important; padding-left: 13px; border-left: 3px solid #d3a338; color: #66738c !important; font-size: .78rem !important; }
.donation-app { display: grid; grid-template-columns: minmax(245px,.9fr) minmax(0,1.1fr); min-height: 425px; overflow: hidden; border-radius: 24px; color: #fff; background: linear-gradient(120deg,#061b56,#123d93); box-shadow: 0 20px 41px rgba(7,28,81,.16); }
.donation-app-image { min-height: 390px; overflow: hidden; }
.donation-app-image img { width: 100%; height: 100%; object-fit: cover; object-position: 44% 42%; }
.donation-app-copy { align-self: center; padding: clamp(25px,4vw,48px); }
.donation-app-copy .eyebrow { color: #f3c969; }
.donation-app-copy h2 { color: #fff; }
.donation-app-copy .donation-lead { color: #f0ca76; }
.donation-app-copy p { color: #d7e2f6; }
.donation-app-copy strong { color: #fff; }
.donation-store-actions { margin: 23px 0 12px; }
.donation-app-caution { color: #b9c9e5 !important; font-size: .71rem !important; }
.donation-step-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }
.donation-step-grid article { padding: 20px; border: 1px solid #e3eaf5; border-radius: 16px; background: #fbfcff; }
.donation-step-grid article > span { display: grid; place-items: center; width: 37px; height: 37px; border-radius: 50%; color: #fff; background: #cc931e; font: 700 .98rem var(--serif); }
.donation-step-grid article p { margin: 0; font-size: .75rem; }
.donation-feature-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }
.donation-feature-grid article { padding: 20px; border-radius: 15px; background: #f2f6fd; }
.donation-feature-grid article > span { color: #c99021; font-size: 1.6rem; }
.donation-feature-grid article p { margin: 0; font-size: .73rem; }
.donation-impact-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.donation-impact-grid article { padding: 18px; border: 1px solid #e9eef6; border-radius: 15px; background: #fafbfe; }
.donation-impact-grid article > span { color: #c99021; font-size: 1.5rem; }
.donation-impact-grid article p { margin: 0; font-size: .73rem; }
.donation-pastoral { display: grid; grid-template-columns: 1.2fr .8fr; gap: 25px; align-items: center; padding: clamp(25px,4vw,43px); border-radius: 23px; background: #edf3fc; }
.donation-pastoral p { max-width: 760px; }
.donation-pastoral blockquote { margin: 0; padding: 30px; border-radius: 18px; color: #fff; background: linear-gradient(145deg,#071a54,#17439b); font: italic 1.25rem/1.47 var(--serif); }
.donation-pastoral cite { display: block; margin-top: 13px; color: #f1c961; font: 800 .71rem var(--sans); text-transform: uppercase; letter-spacing: .09em; }
.donation-faq-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.donation-faq details { padding: 15px 18px; border: 1px solid #e0e7f1; border-radius: 13px; background: #f9fbfe; }
.donation-faq summary { color: #173271; font-size: .85rem; font-weight: 800; cursor: pointer; }
.donation-faq details[open] { background: #eef4ff; }
.donation-faq details p { margin: 11px 0 0; font-size: .76rem; }
.donation-final { padding: clamp(26px,4vw,50px); border-radius: 24px; color: #fff; background: linear-gradient(115deg,#071950,#174094); }
.donation-final .eyebrow { color: #f3cb70; }
.donation-final h2 { color: #fff; }
.donation-final p { max-width: 800px; color: #d9e4f7; }
.donation-final strong { color: #fff; }
.donation-final-actions { margin: 23px 0 18px; }
.donation-final > div > small { color: #b9cae9; font-size: .72rem; line-height: 1.5; }
@media (max-width: 1100px) { .donation-intro { grid-template-columns: 1fr; } .donation-step-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .donation-values { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 800px) { .donation-app,.donation-pastoral { grid-template-columns: 1fr; } .donation-app-image { min-height: 270px; max-height: 320px; } .donation-app-image img { object-position: center 40%; } .donation-feature-grid,.donation-impact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .donation-faq-list { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .donation-page-hero { min-height: 0; padding: 24px 0; } .donation-hero-card { border-radius: 20px; } .donation-hero-actions > .btn { width: 100%; justify-content: center; } .donation-page-content { gap: 16px; padding-top: 20px; } .donation-intro,.donation-difference,.donation-steps,.donation-more-features,.donation-impact,.donation-faq { padding: 22px; } .donation-values,.donation-step-grid,.donation-feature-grid,.donation-impact-grid,.donation-difference-grid { grid-template-columns: 1fr; } .donation-values article { text-align: left; } .donation-values article > span { display: inline-block; } .donation-pastoral { gap: 16px; } .donation-final-actions > .btn { width: 100%; justify-content: center; } }
