diff --git a/content/foundation/contributing.md b/content/foundation/contributing.md
index 8369a8e..b47bcea 100644
--- a/content/foundation/contributing.md
+++ b/content/foundation/contributing.md
@@ -3,15 +3,15 @@
 
 <div class="container">
   <h1 class="text-center">Support Apache: Individual Giving and Sponsorship Programs</h1>
-  <p class="lead">The Apache Software Foundation (ASF) is the world’s largest Open Source foundation that provides $20B+ worth of software for the public good at 100% no&nbsp;cost.</p>
+  <p class="lead">The Apache Software Foundation (ASF) is the world’s largest Open Source software foundation. It provides $20B+ worth of software for the public good no cost.</p>
   <p>As a <a href="/foundation/records/ASF-501c3.pdf">US 501(c)(3) not-for-profit charitable organization</a>, the ASF depends on a variety of funding sources to sustain its day-to-day activities. Your support enables the all-volunteer ASF to ensure its 350+ <a href="https://projects.apache.org/projects.html?category">community-driven software projects</a> remain freely available to billions of users around the world, and to incubate the <a href="http://incubator.apache.org/">next generation of Open Source innovations</a>.</p>
-  <p>Tax-deductible contributions from corporations, foundations, and private individuals helps offset day-to-day operating expenses that include Infrastructure services; Marketing and PR/AR; Legal, Accounting, and Operational support, and&nbsp;more.</p>
-  <p>Less than 10% is spent on overhead. 75% of the ASF's US$1.5MM annual budget is dedicated to running critical Infrastructure support (mailing lists, code repositories, bug tracking systems, Web servers, continuous integration servers, bandwidth, electricity, cooling, administrative staff, and more) that keeps Apache services running 24x7x365 on an annual budget of less than US$5K per&nbsp;project.</p>
-  <p>We are proud to highlight the ASF's diverse accomplishments in our <a href="/foundation/reports.html">Annual Report</a>. Many of these successes were made possible by your&nbsp;support.</p>
-  <h2>Support the ASF Today!</h2>
-  <p>There are many ways to support the ASF, with giving options for individuals and organizations alike. We thank all current ASF supporters and Sponsors for their loyalty and contributions, and look forward to welcoming new donors as we continue to expand our&nbsp;community.</p>
-  <p>For those based in the US, donations are 100% tax deductible to the full extent of the law. As regulation varies, we encourage you to consult a qualified advisor experienced with your local tax law pertaining to donations. The ASF's tax identification number is 47-0825376. More information about non-profits and related issues can be found at the <a href="http://www.nonprofits.org/">Internet Nonprofit&nbsp;Center</a>.</p>
-  <p>The ASF is <a href="https://www.charitynavigator.org/index.cfm?bay=search.profile&ein=470825376">recognized by Charity Navigator</a> and cited with the Gold Seal of Transparency by <a href="https://www.guidestar.org/profile/47-0825376">GuideStar</a>. For more information, please contact us at fundraising(at)apache(dot)org.</p>
+  <p>Tax-deductible contributions from corporations, foundations, and private individuals help offset day-to-day operating expenses that include Infrastructure services; Marketing and PR/AR; Legal, Accounting, and Operational support.</p>
+  <p>We spend less than 10% of our annual budget on overhead. 75% of the ASF's US$1.5MM annual budget supports running our critical infrastructure (mailing lists, code repositories, bug tracking systems, Web servers, continuous integration servers, bandwidth, electricity, cooling, administrative staff, and more) that keeps the FOundation and its projects functioning 24x7x365. The annual cost is less than US$5K per project.</p>
+  <p>We are proud to highlight the ASF's diverse accomplishments in our <a href="/foundation/reports.html">Annual Report</a>. Many of these successes were made possible by your support.</p>
+  <h2>Support the ASF today!</h2>
+  <p>There are many ways to support the ASF, with giving options for individuals and organizations alike. We thank all current ASF supporters and Sponsors for their loyalty and contributions, and look forward to welcoming new donors as we continue to expand our community.</p>
+  <p>For those based in the US, donations are 100% tax deductible to the full extent of the law. As regulations vary, we encourage you to consult a qualified advisor experienced with your local tax law pertaining to donations. The ASF's tax identification number is 47-0825376. More information about non-profits and related issues can be found at the <a href="http://www.nonprofits.org/" target="_blank">Internet Nonprofit&nbsp;Center</a>.</p>
+  <p>The ASF is recognized by <a href="https://www.charitynavigator.org/index.cfm?bay=search.profile&ein=470825376" target="_blank">Charity Navigator</a> and cited with the Gold Seal of Transparency by <a href="https://www.guidestar.org/profile/47-0825376" target="_blank'>GuideStar</a>. For more information, please contact us at fundraising(at)apache(dot)org.</p>
   <ul class="nav nav-pills nav-justified" role="tablist">
     <li role="presentation" class="active"><a href="#individualContributions" aria-controls="individualContributions" role="tab" data-toggle="tab">Individual Contributions</a></li>
     <li role="presentation"><a href="#asfSponsorship" aria-controls="asfSponsorship" role="tab" data-toggle="tab">ASF Sponsorship</a></li>
@@ -23,40 +23,40 @@
     <div role="tabpanel" class="tab-pane active" id="individualContributions">
       <div class="well">
         <h3>Individual Contributions</h3>
-        <p>Giving to Apache is&nbsp;easy!</p>
-        <p>Visit <a href="https://donate.apache.org/">https://donate.apache.org/</a> to make a one-time or monthly recurring donation and receive an emailed receipt from the ASF for your tax-deductible contribution.</p>
-        <p>Those seeking to make an immediate donation with a debit/credit card, Apple/Google/Microsoft Pay, ACH electronic transfer, PayPal, cryptocurrency, and other methods may do so using using the quick links&nbsp;below.</p>
+        <p>Giving to Apache is easy!</p>
+        <p>Visit <a href="https://donate.apache.org/">https://donate.apache.org/</a> to make a one-time or recurring monthly donation and receive an emailed receipt from the ASF for your tax-deductible contribution.</p>
+        <p>Those seeking to make an immediate donation with a debit/credit card, Apple/Google/Microsoft Pay, ACH electronic transfer, PayPal, cryptocurrency, and other methods may do so using using the quick links below.</p>
       </div>
     </div>
     <div role="tabpanel" class="tab-pane" id="asfSponsorship">
       <div class="well">
         <h3>ASF Sponsorship</h3>
-        <p>Sponsorship provides essential support to all aspects of the ASF in fulfilling its mission of providing software for the public&nbsp;good.</p>
-        <p>To make a lasting impact and be <a href="/foundation/thanks">formally recognized</a> as a sponsor of the Foundation, the <a href="/foundation/sponsorship.html">Sponsorship Program page</a> is the official path for substantial, non-directed monetary contributions to the&nbsp;ASF.</p>
+        <p>Sponsorship provides essential support to all aspects of the ASF as it fulfills its mission of providing software for the public good.</p>
+        <p>To make a lasting impact and be <a href="/foundation/thanks">formally recognized</a> as a sponsor of the Foundation, the <a href="/foundation/sponsorship.html">Sponsorship Program page</a> is the official path for substantial, non-directed monetary contributions to the ASF.</p>
         <p>Contact fundraising(at)apache(dot)org for more&nbsp;information.</p>
       </div>
     </div>
     <div role="tabpanel" class="tab-pane" id="targetedSponsorship">
       <div class="well">
         <h3>Targeted Sponsorship</h3>
-        <p>Targeted Sponsorship provides the ASF with non-cash contributions aimed at specific activities, projects, or programs, such as donating cloud services, providing legal services, underwriting <a href="https://www.apachecon.com/">ApacheCon</a> attendees’ expenses, funding project hackathons, contributing documentation resources, and&nbsp;more.</p>
-        <p>Contributions in the form of Targeted sponsorships benefit the ASF in addition to funding our general operations. We invite you to <a href="/foundation/docs/Targeted-Sponsorship-Policy.pdf">view our guidelines</a> to see if Targeted Sponsorship is right for&nbsp;you.</p>
+        <p>Targeted Sponsorship provides the ASF with non-cash contributions aimed at specific activities, projects, or programs, such as donating cloud services, providing legal services, underwriting <a href="https://www.apachecon.com/">ApacheCon</a> attendees’ expenses, funding project hackathons, and contributing documentation resources.</p>
+        <p>Targeted Sponsorships benefit the ASF in addition to funding our general operations. We invite you to <a href="/foundation/docs/Targeted-Sponsorship-Policy.pdf">view our guidelines</a> to see if Targeted Sponsorship is right for you.</p>
       </div>
     </div>
     <div role="tabpanel" class="tab-pane" id="corporateGivingPrograms">
       <div class="well">
         <h3>Corporate Giving Programs</h3>
         <p>The impact of your gift to the ASF as part of an annual corporate giving program bolsters the ASF’s mission.
-        Corporate giving programs at Bloomberg, IBM, Microsoft, PayPal, Vanguard, and many others offer tax benefits, and provide their employees the ability to boost their support of a diverse set of nonprofit&nbsp;organizations.</p>
-        <p>The ASF is an official charity in the Benevity Causes Portal as part of numerous corporate giving initiatives, such as The American Online Giving Foundation, the Microsoft Tech Talent for Good volunteer program and Charles Schwab Charitable, among others. For more information, visit <a href="https://www.benevity.com/">https://www.benevity.com/</a>.</p>
+        Corporate giving programs at Bloomberg, IBM, Microsoft, PayPal, Vanguard, and many others offer tax benefits, and provide their employees the ability to boost their support of a diverse set of nonprofit projects.</p>
+        <p>The ASF is an official charity in the Benevity Causes Portal, as part of numerous corporate giving initiatives such as The American Online Giving Foundation, the Microsoft Tech Talent for Good volunteer program and Charles Schwab Charitable. For more information, visit <a href="https://www.benevity.com/" target="_blank">https://www.benevity.com/</a>.</p>
       </div>
     </div>
     <div role="tabpanel" class="tab-pane" id="corporateMatchingGifts">
       <div class="well">
         <h3>Corporate Matching Gifts</h3>
-        <p>Matching gift programs amplify corporate contributions and help further support the&nbsp;ASF.</p>
-        <p>Employers such as American Express, AOL, Bloomberg, IBM, and Microsoft match contributions and volunteer hours made by their employees. Check with your employer’s Human Resources department to learn how you can double or triple your support of the ASF through a corporate matching gift&nbsp;program.</p>
-        <p>Contact us at fundraising(at)apache(dot)org to see how your contribution to the ASF can be generously&nbsp;increased.</p>
+        <p>Matching gift programs amplify corporate contributions and help further support the ASF.</p>
+        <p>Employers such as American Express, AOL, Bloomberg, IBM, and Microsoft match contributions and volunteer hours made by their employees. Check with your employer’s Human Resources department to learn how you can double or triple your support of the ASF through a corporate matching gift program.</p>
+        <p>Contact us at fundraising(at)apache(dot)org to see how your contribution to the ASF can be generously increased.</p>
       </div>
     </div>
   </div>
@@ -64,8 +64,8 @@
     <div class="row">
       <div class='col-sm-12'>
         <h2>Make a donation</h2>
-        <p>Those seeking to make a non-financial contribution are welcome to consider contributing their time towards Apache projects and their&nbsp;communities.</p>
-        <p>As a volunteer-based organization, the ASF stands most in need of volunteers who can work on software, documentation, promotion, and other administrative tasks within each of the ASF projects. Time to contribute is greatly appreciated &ndash; volunteer contributions from both individuals and corporate entities alike are the lifeblood of the&nbsp;Foundation.</p>
+        <p>Those seeking to make a non-financial donation are welcome to contribute their time towards Apache projects and their communities.</p>
+        <p>As a volunteer-based organization, the ASF stands most in need of volunteers who can work on software, documentation, promotion, and other administrative tasks within each of the ASF projects. Time to contribute is greatly appreciated &ndash; volunteer contributions from both individuals and corporate entities are the lifeblood of the Foundation.</p>
         <p>Thank you in advance for your&nbsp;generosity!</p>
         <br />
       </div>
@@ -88,44 +88,44 @@
           <div role="tabpanel" class="tab-pane active" id="debitCredit">
             <div class="well">
               <h3>Donate with a Debit/Credit Card</h3>
-              <p>Use your <a href="http://donate.apache.org">debit or credit card to make a one-time or monthly recurring donation</a> to the&nbsp;ASF.</p>
+              <p>Use your <a href="http://donate.apache.org">debit or credit card to make a one-time or recurring monthly donation</a> to the ASF.</p>
               <p>We will email you a receipt for your tax-deductible contribution.</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="digital">
             <div class="well">
               <h3>Donate using *Pay Online Digital Payments</h3>
-              <p>We welcome online digital payments for those wishing to make donations using <a href="https://donate.apache.org/">Apple Pay, Google Pay, or Microsoft&nbsp;Pay</a>.</p>
+              <p>We welcome online digital payments for those wishing to make donations using <a href="https://donate.apache.org/">Apple Pay, Google Pay, or Microsoft Pay</a>.</p>
               <p>We will email you a receipt for your tax-deductible contribution.</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="ach">
             <div class="well">
               <h3>Donate using ACH Bank Payments</h3>
-              <p>We accept <a href="http://donate.apache.org">ACH bank transfer (eCheck) payments</a> for those wishing to  make donations through bank&nbsp;transfers.</p>
+              <p>We accept <a href="http://donate.apache.org">ACH bank transfer (eCheck) payments</a> for those wishing to  make donations through bank transfers.</p>
               <p>We will email you a receipt for your tax-deductible contribution.</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="apacheSwag">
             <div class="well">
               <h3>Buy Apache-branded Swag</h3>
-              <p>Support the ASF through a variety of branded merchandise <a href="https://www.redbubble.com/people/comdev">available from&nbsp;RedBubble</a>.</p>
+              <p>Support the ASF through a variety of branded merchandise available from <a href="https://www.redbubble.com/people/comdev" target="_blank">RedBubble</a>.</p>
               <p>To request Apache projects to be added to the shop, email dev(at)community(dot)apache(dot)org
-                  with the corresponding <a href="/logos">project&nbsp;logo</a>.</p>
+                  with the corresponding <a href="/logos">project logo</a>.</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="smileAmazon">
             <div class="well">
               <h3>Shop smile.amazon.com</h3>
-              <p>Start your retail journey at <a href="https://smile.amazon.com/">https://smile.amazon.com/</a>, select the ASF as your charitable organization, and the AmazonSmile Foundation will donate 0.5% of the purchase price of eligible products to the&nbsp;ASF.</p>
-              <p>Now that’s smart&nbsp;shopping!</p>
+              <p>Start your retail journey at <a href="https://smile.amazon.com/">https://smile.amazon.com/</a>, select the ASF as your charitable organization, and the AmazonSmile Foundation will donate 0.5% of the purchase price of eligible products to the ASF.</p>
+              <p>Now that’s smart shopping!</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="paypal">
             <div class="well">
               <h3>Donate with PayPal</h3>
-              <p>Use your <a href="http://donate.apache.org/">PayPal account to support the ASF</a> via one-time or recurring&nbsp;donations.</p>
-              <p>Those without a PayPal account may also contribute to the ASF using the <a href="https://www.paypal.com/us/fundraiser/charity/1696565">PayPal Giving Fund</a>. After you donate, you'll receive a tax receipt from the PayPal Giving&nbsp;Fund.</p>
+    <p>Use your <a href="http://donate.apache.org/">PayPal account</a> to support the ASF via one-time or recurring donations.</p>
+              <p>Those without a PayPal account may also contribute to the ASF using the <a href="https://www.paypal.com/us/fundraiser/charity/1696565" target="_blank">PayPal Giving Fund</a>. After you donate, you'll receive a tax receipt from the PayPal Giving Fund.</p>
             </div>
           </div>
           <div role="tabpanel" class="tab-pane" id="amazon">
@@ -143,7 +143,7 @@
               <address>The Apache Software Foundation<br />
               1000 N West Street, Suite 1200<br />
               Wilmington, DE  19801</address></p>
-              <p>To receive a tax receipt, please include your email address and the name for whom the donation should be credited (your own or the third party if it is a on behalf of someone&nbsp;else).</p>
+              <p>To receive a tax receipt, include your email address and the name for whom the donation should be credited (your own or the third party if it is a on behalf of someone else).</p>
             </div>
           </div>
         </div>
