diff --git a/css/style.css b/css/style.css
index bfb063e..024c06f 100644
--- a/css/style.css
+++ b/css/style.css
@@ -1,3 +1,25 @@
+
+input[type="radio"] {
+  background-color: transparent;
+  border: .0625em solid #0080ff;
+  border-radius: 50%;
+  box-shadow: inset 0 0 0 0 black;
+  cursor: pointer;
+  font: inherit;
+  height: 1em;
+  outline: none;
+  width: 1em;
+  -moz-appearance: none;
+  -webkit-appearance: none;
+  
+}
+
+input[type="radio"]:checked {
+    background-color: grey;
+    box-shadow: inset 0 0 0 .1875em #white;
+    -webkit-transition: background .15s, box-shadow .1s; 
+    transition: background .15s, box-shadow .1s; 
+}
 #wrap_a {
   max-width: 800px;
   margin: 0 auto;
diff --git a/images/1571976237838.png b/images/1571976237838.png
new file mode 100644
index 0000000..7bf5f8a
--- /dev/null
+++ b/images/1571976237838.png
Binary files differ
diff --git a/images/1571976296909.png b/images/1571976296909.png
new file mode 100644
index 0000000..f6265d0
--- /dev/null
+++ b/images/1571976296909.png
Binary files differ
diff --git a/index.html b/index.html
index 4c763a6..3de4bce 100644
--- a/index.html
+++ b/index.html
@@ -12,17 +12,21 @@
   <!-- CSS dependencies -->
   <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" type="text/css">
+  <link href="https://fonts.googleapis.com/css?family=VT323" rel="stylesheet" type="text/css">
   <link rel="stylesheet" href="neon.css">
   <!-- Script: Make my navbar transparent when the document is scrolled to top -->
   <script src="js/navbar-ontop.js"></script>
   <!-- Script: Animated entrance -->
   <script src="js/animate-in.js"></script>
   <link rel="stylesheet" href="css/animations.css">
+  <link rel="stylesheet" href="css/style.css">
   <link rel="stylesheet" href="css/table.css">
+
   <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script> (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-7639560510014441", enable_page_level_ads: true }); </script>
+
 </head>
 
-<body class="" >
+<body class="">
   <!-- Navbar -->
   <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark" style="padding-right: 41px;">
     <div class="container pt-6">
@@ -62,8 +66,8 @@
       <div class="row">
         <div class="col-md-5">
           <div class="col-md-12">
-            <h1 class="display-3 mb-4">Bliss</h1>
-            <p class="lead">An Open Source OS, based on Android, that incorporates many customizations options and added security features.&nbsp;<br><br>And it is available for...</p>
+            <h1 class="display-3 mb-4">Bliss ROMs</h1>
+            <p class="lead">We are a group of volunteers that work together to bring you an Open Source OS, based on Android, that incorporates many customizations options and added security features.&nbsp;<br><br>And it is available for...</p>
             <div class="d-inline-flex justify-content-center align-items-center mx-auto">
               <a href="#download" class="btn btn-lg btn-primary d-inline-flex justify-content-center align-items-center mx-auto">Download Now</a>
             </div>
@@ -103,24 +107,7 @@
     <div class="container">
       <div class="row" id="about">
         <div class="col-md-6 order-2 order-md-1 animate-in-left d-flex flex-grow-1 align-items-center justify-content-center">
-          <div class="flex-grow-1 justify-content-center align-items-center">
-            <div class="device iphone animate-in-left d-flex flex-grow-1 align-items-center justify-content-center">
-              <div class="device-screen">
-                <img src="" alt="">
-              </div>
-              <video muted="" playsinline="" autoplay="" loop="" preload="metadata">
-                <source src="videos/bliss-phone-demo.webm" type="video/webm">
-                <source src="videos/bliss-phone-demo.mp4" type="video/mp4">
-              </video>
-            </div>
-            <!-- 
-			<img src="images/phone_front.svg" style="max-height: 65%;max-width: 50%; box-shadow: 0 0px 12px 10px rgba(0, 155, 255, 0.2), 0 0px 15px 10px rgba(0, 155, 255, 0.19);" class="justify-content-center align-items-center flex-grow-1 d-flex mx-auto glow ">
-            <div>
-              <video style="max-width: 45%;vertical-align: middle;display: inline-flex;float: none;margin-top: -90%;z-index: 999" preload="" muted="" autoplay="autoplay" oncanplay="this.muted=true" loop="loop" class="justify-content-center align-items-center flex-grow-1 d-flex mx-auto" width="90%" height="39%">
-                <source src="videos/bliss-phone-demo.webm" type="video/webm">
-                <source src="videos/bliss-phone-demo.mp4" type="video/mp4"> Your browser does not support VP9 or H.264 video content. </video>
-				-->
-          </div>
+          <img class="img-fluid d-block mx-auto" src="images/1571976237838.png" style="" width="50%">
         </div>
         <div class="col-md-6 align-self-center order-1 order-md-2 my-3 text-md-left text-center">
           <h3 class="display-3">About Bliss</h3>
@@ -138,7 +125,7 @@
           <div class="col-md-12">
             <div class="row mx-auto">
               <div class="align-self-center col-lg-6 text-md-left text-center">
-                <h3 class="display-3">Moar Bliss</h3>
+                <h3 class="display-3">Bliss Variants</h3>
                 <p class="my-4 body-font">Bliss comes in a few variants. On top of our traditional device builds of Bliss ROM, our GSI/Treble builds will work on most treble compatible devices (Android Pie+) And our x86 variant (Bliss OS) is made to work with the Linux kernel, and supports booting with MBR/UEFI type bootloaders. So just about any Windows/Linux PC or tablet released in the last 4 years. We are always developing with usability in mind, and supporting more and more devices each week.&nbsp;<br></p>
                 <a class="btn btn-dark" href="#download">Download</a>
               </div>
@@ -154,10 +141,10 @@
     <div class="container">
       <div class="row">
         <div class="col-12 text-center">
-          <h3 class="display-3">Bliss Features</h3>
+          <h3 class="display-3">Features</h3>
         </div>
       </div>
-      <div class="row" >
+      <div class="row">
         <div class="align-self-center text-md-right text-center col-lg-4 col-md-6">
           <h4 class="text-primary"><b>Focus on design</b></h4>
           <p class="mb-5 text-white">We include many options for customization and theming throughout the OS</p>
@@ -166,8 +153,8 @@
           <h4 class="text-primary"><b>Performance</b></h4>
           <p class="mb-5 text-white">Focused on speed and stability with tweaks to assist in the most demanding applications</p>
         </div>
-        <div class="my-3 d-none d-lg-block animate-in-down col-md-4" >
-          <img class="img-fluid d-block" src="images/Phone_features_dark.png" > </div>
+        <div class="my-3 d-none d-lg-block animate-in-down col-md-4">
+          <img class="img-fluid d-block" src="images/Phone_features_dark.png"> </div>
         <div class="align-self-center text-md-left text-center col-lg-4 col-md-6">
           <h4 class="text-primary"><b>Battery-friendly</b></h4>
           <p class="mb-5 text-white">Extra options are provided to help tune battery consumption to the best levels</p>
@@ -194,268 +181,80 @@
       </div>
     </div>
   </div>
-
-
-<!-- Download section -->
-  <div class="download-section" id="download">
-    <h3 class="display-3 d-flex justify-content-center align-items-center w-100 download-title">Download Options</h3>
-  <div class="download-grid">
-      <div class="download-card-common download-card-white download-card-one">
-        <div class="card-header-rows">
-          <div class="card-header-column-one">
-            <h3 class="card-header-title mb-2"><b>Bliss ROM</b></h3>
-            <img src="https://img.shields.io/sourceforge/dm/blissroms.svg?style=for-the-badge&amp;logo=appveyor&amp;colorB=blue" max-width="160px" width="100%">
-          </div>
-          <div class="card-header-column-two">
-            <h2 class="mb-0 card-or-donation"><b>$0</b></h2>
-            <p class="card-or-donation mt-2">Or Donation</p>
-          </div>
-        </div>
-        <div class="card-main-area">
-          <div class="text">
-            <p class="my-3 body-font">This is Bliss for your typical Android devices.<br>GSI/Treble options are also available. <br>These builds are available in a flashable .zip format, and our GSI/Treble builds are also available in .img format for flashing with fastboot</p>
-            <ul class="pl-3 body-font">
-              <li>Multiple Devices Supported</li>
-              <li>Tons of Customization Options</li>
-              <li>GSI/Treble builds support multiple devices</li>
-              <li>Device Support not Guaranteed</li>
-            </ul>
-          </div>
-          <div class="buttons">
-            <a class="btn btn-primary mt-3 text-white" data-target="#popup-modal1" data-toggle="modal">Download Now</a>
-            <a class="btn mt-3 text-black" href="" target="_blank" data-target="#popup-modal6" data-toggle="modal">Learn More&nbsp;</a>
-          </div>
-        </div>
-      </div>
-      <div class="download-card-common download-card-white download-card-two">
-        <div class="card-header-rows">
-          <div class="card-header-column-one">
-            <h3 class="card-header-title mb-2"><b>Bliss OS (x86)</b></h3>
-            <img src="https://img.shields.io/sourceforge/dm/blissos-x86.svg?style=for-the-badge&amp;logo=appveyor&amp;colorB=blue" max-width="160px" width="100%">
-          </div>
-          <div class="card-header-column-two">
-            <h2 class="mb-0 card-or-donation"><b>$0</b></h2>
-            <p class="card-or-donation mt-2">Or Donation</p>
-          </div>
-        </div>      
-        <div class="card-main-area">
-            <div class="text">
-              <p class="my-3 body-font">This is Bliss, running as a native or emulated* OS for PCs..&nbsp;These builds are compatible with PCs, MacBooks and Chromebooks equipped with x86/x86_64 compatible CPUs. Supports both BIOS/CSM and UEFI boot.<br><br>*Only KVM/QEMU emulation is currently supported</p>
-              <ul class="pl-3 body-font">
-                <li>Limited Online Support (<a href="https://forum.xda-developers.com/bliss-roms/bliss-roms-development/bliss-os-pie-beta-preview-t3855917">visit XDA thread</a>)<br></li>
-                <li>Multiple Device Compatibility</li>
-                <li>Multiple Kernel &amp; Mesa options&nbsp;</li>
-                <li>Generic Kernel - One Size Fits All</li>
-              </ul>
-            </div>
-            <div class="buttons">
-              <a class="btn btn-primary mt-3 text-white" href="" data-target="#popup-modal2" data-toggle="modal">Download Now</a>
-                <a class="btn mt-3 text-black" href="" target="_blank" data-target="#popup-modal4" data-toggle="modal">Learn More&nbsp;</a>
-            </div>
-          </div>  
-      </div>
-      <div class="download-card-common download-card-blue download-card-three">
-          <div class="card-header-rows">
-              <div class="card-header-column-one">
-                <h3 class="card-header-title"><b>ROM & OS (x86)</b></h3>
-                <h3 class="card-header-title"><b>Development</b></h3>
+  <!-- Download section -->
+  <div class="py-5 download-section bg-light" id="download">
+    <div class="container">
+      <div class="row">
+        <div class="col-md-6 order-2 order-md-1"> <img class="img-fluid d-block mx-auto" src="images/1571976296909.png" style="" width="50%"> </div>
+        <div class="px-md-5 col-md-6 d-flex flex-column align-items-start justify-content-center order-1 order-md-2">
+          <h3 class="display-3">Downloads</h3>
+          <img src="https://img.shields.io/sourceforge/dm/blissroms.svg?style=for-the-badge&amp;logo=appveyor&amp;colorB=blue" max-width="160px" width="50%">
+          <p class="mb-3">
+          </p>
+          <div id="demo">
+            <p class="lead text-dark">
+              <label>Are you looking for our Android Pie device builds?</label>
+            </p>
+            <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example1" value="yes" style=" margin-bottom: -0.175rem !important;"><span></span> Yes</label>
+            <label class="radio lead text-secondary font-weight-bold text-dark" style=""><input type="radio" name="example1" value="no" class="`" style=" margin-bottom: -0.175rem !important;"><span class=""></span> No</label>
+            <div class="conditional" data-cond-option="example1" data-cond-value="yes">
+              <p class="mb-3 lead text-dark">
+                <label>Is it a GSI/Treble enabled device?</label>
+              </p>
+              <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example2" value="yes" style=" margin-bottom: -0.175rem !important;"><span></span>Yes</label>
+              <label class="radio lead text-secondary font-weight-bold text-dark"><input type="radio" name="example2" value="no" style=" margin-bottom: -0.175rem !important;"><span></span>No</label>
+              <div class="conditional" data-cond-option="example2" data-cond-value="yes" style="">
+                <p class="lead text-dark"> Great! Here's the link to the GSI/Treble builds.<br><br>Be sure to check the <a href="https://forum.xda-developers.com/project-treble/trebleenabled-device-development/rom-blissroms-9-0-official-4-4-2019-t3918303">XDA thread</a> for instructions as well as troubleshooting steps.</p><br><br><a class="btn btn-primary mx-1 mb-3" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url">Donate $5</a><a class="btn btn-info mx-1 mb-3" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn text-white btn-dark mb-3" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/GSI/">Go To Downloads</a>
               </div>
-              <div class="card-header-column-two">
-                <p class="card-or-donation">Starting at</p>
-                <h2 class="mb-0 card-or-donation"><b>1,000</b></h2>
-                <p class="card-or-donation">units or more</p>
+              <div class="conditional" data-cond-option="example2" data-cond-value="no" style="">
+                <p class="mb-3 lead text-dark" style="">Great! Here's the link to our device builds for Pie </p><br><br>
+                <a class="btn btn-primary mx-1 mb-3" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url" target="”_blank”">Donate $5</a><a class="btn btn-info mb-3 mx-1" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn btn-dark text-white mb-3" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/Pie/">Go To Downloads</a>
               </div>
             </div>
-            <div class="card-main-area">
-                <div class="text">
-                  <p class="my-3 body-font">This is for businesses and educational institutions, that wish to use Bliss ROM or OS on specific Android or x86 hardware. This service includes hourly fees for development as well as per device pricing options*.&nbsp;</p>
-                  <ul class="pl-3 body-font">
-                    <li>Tech Support Contract Included</li>
-                    <li>Extra Kernel &amp; device options **</li>
-                    <li>Full Source Code Available</li>
-                    <li>Extra Tools and Options Available</li>
-                  </ul>
-                  <p class="d-inline-flex text-left justify-content-start align-items-start" style="	transform:  scale(.8);">* Per device rates starting with orders targeting 1,000 devices or more<br><br>** Custom kernel and device development is available at hourly rates</p>
-                </div>
-                <div class="buttons">
-                  <a class="btn btn-primary mt-3 text-white" href="" data-target="#popup-modal3" data-toggle="modal">Contact Us</a>
-                </div>
-              </div>  
-      </div>
-      <h1 class="inf-header-free inf-header-common">Free</h1>
-      <h1 class="inf-header-paid inf-header-common">Paid</h1>
-   </div>
-   </div>
-
-   <!-- popups for download section -->
-   <div id="popup-modal6" class="modal fade flex-grow-1 align-items-center justify-content-center">
-      <div class="modal-dialog">
-        <div class="modal-content">
-          <div class="modal-body px-3 bg-light">
-            <h1 class="text-center"> What is Bliss ROM? </h1>
-            <p class="text-center lead"><b>This is Bliss for your typical Android devices.<br>GSI/Treble options are also available</b></p>
-            <p class="text-center"><b>These builds are maintained by our device maintainers, and updated on a regular basis. So please make sure you check for the latest updates.&nbsp;</b></p>
-            <p class="text-center"><b>Our most popular devices are </b>santoni, berkeley, shamu, taimen, cheeseburger, helium, &amp; hydrogen.<br>Other "Unofficial" devices can be found online, but Team Bliss does not offer support for these builds.<br>For support, please check XDA Developers Forum for your device and see if there's a Bliss build for you.</p>
+            <div class="conditional" data-cond-option="example1" data-cond-value="no">
+              <p class="mb-3 lead text-dark">OK, we only have experimental Q builds at the moment. Here's a link for those:</p> <br><br><a class="btn btn-primary mb-3 mx-1" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url" target="”_blank”">Donate $5</a><a class="btn btn-info mb-3 mx-1" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a><a class="btn mb-3 btn-dark text-white" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a><a class="btn mb-3 btn-link" href="https://sourceforge.net/projects/blissroms/files/Q/">Go To Downloads</a>
+            </div>
           </div>
-          <div class="modal-footer text-center bg-light">
-            <a class="btn btn-primary mt-0" href="" data-target="#popup-modal1" data-toggle="modal">Go To Downloads</a>
-          </div>
+          <hr width="100%" size="8" align="left">
+          <p class="lead text-dark">
+            <label>If you're looking for Bliss OS (Android for PC's), we have moved to a new site. <br><br> <a class="btn mb-3 btn-dark" target="BLANK" href="https://blissroms-x86.github.io">Go to the Bliss OS website</a> </label>
+          </p>
         </div>
       </div>
     </div>
-    <div id="popup-modal1" class="modal fade flex-grow-1 align-items-center justify-content-center">
-      <div class="modal-dialog">
-        <div class="modal-content">
-          <div class="modal-body px-3 bg-dark">
-            <h1 class="text-center"> Thanks for your interest in Bliss </h1>
-            <p class="text-center">Please consider a small donation as a way to help keep our project moving forward.<br></p>
-            <div class="modal-social text-right">
-              <div class="row">
-                <div class="flex-grow-1">
-                  <a class="btn btn-primary btn-block" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url">Donate $5</a>
-                </div>
-                <div class="flex-grow-1">
-                  <a class="btn btn-info btn-block" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a>
-                </div>
-              </div>
-            </div>
-            <div class="modal-social text-right pt-2">
-              <div class="row">
-                <div class="d-flex flex-grow-1 justify-content-center align-items-center">
-                  <a class="btn btn-block text-white btn-outline-secondary" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a>
-                </div>
-              </div>
-              <p class="text-center"><br>As a reminder, all donations are converted to USD. Some regions may want to make sure the currency conversion is greater than $1 USD, Otherwise PayPal is the only one that benefits</p>
-            </div>
-          </div>
-          <div class="modal-footer text-center bg-dark">
-            <a href="https://sourceforge.net/projects/blissroms/files/" class="btn btn-link" data-dismiss="modal"><span class="glyphicon glyphicon-chevron-right"></span>
-            </a><a class="btn btn-primary mt-0" href="https://sourceforge.net/projects/blissroms/files/">Go To Downloads</a>
-          </div>
-        </div>
-      </div>
-    </div>
-
-    <div id="popup-modal4" class="modal fade flex-grow-1 align-items-center justify-content-center">
-        <div class="modal-dialog">
-          <div class="modal-content">
-            <div class="modal-body px-3 bg-light">
-              <h1 class="text-center"> What is Bliss OS? </h1>
-              <p class="text-center lead"><b>This is Bliss for your x86/x86_64-based devices, including desktops, laptops, tablets, maker boards and more.</b></p>
-              <p class="text-center"><b>These builds are compatible with PCs, MacBooks and Chromebooks equipped with x86/x86_64 compatible CPUs from Intel, AMD &amp; others. It also supports GPUs from Intel, AMD, or Nvidia.</b></p>
-              <p class="text-center"><b>Bootable Installer supports BIOS/CSM and UEFI boot. We recommend using Rufus to flash the ISO to a USB drive, and boot into that to test by running in Live mode. If that works, use the USB drive and boot into the installer to install/upgrade</b></p>
-              <div class="modal-social text-right">
-                <div class="row">
-                  <div  class="d-flex justify-content-center align-items-center flex-grow-1">
-                    <a class="btn btn-primary btn-block" target="”_blank”" href="https://forum.xda-developers.com/bliss-roms/bliss-roms-development/bliss-os-pie-beta-preview-t3855917">Bliss OS XDA Thread</a>
-                  </div>
-                </div>
-              </div>
-            </div>
-            <div class="modal-footer text-center bg-light">
-              <a class="btn btn-primary mt-0" href="" data-target="#popup-modal2" data-toggle="modal">Go To Downloads</a>
-            </div>
-          </div>
-        </div>
-      </div>
-      <div id="popup-modal2" class="modal fade align-items-center justify-content-center flex-grow-1">
-        <div class="modal-dialog">
-          <div class="modal-content">
-            <div class="modal-body px-3 bg-dark">
-              <h1 class="text-center" contenteditable="true"> Thanks for your interest in Bliss OS</h1>
-              <p class="text-center">Please consider a small donation as a way to help keep our project moving forward.<br></p>
-              <div class="modal-social text-right">
-                <div class="row">
-                  <div class="flex-grow-1">
-                    <a class="btn btn-primary btn-block" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=MKDDQGLYDKGV6&amp;source=url">Donate $5</a>
-                  </div>
-                  <div class="flex-grow-1">
-                    <a class="btn btn-info btn-block" target="”_blank”" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=99GBH7ZW77P54&amp;source=url">Donate $10</a>
-                  </div>
-                </div>
-                <div class="row">
-                  <div class="pt-2 flex-grow-1 d-flex align-items-center justify-content-center">
-                    <a class="btn btn-block text-white btn-outline-secondary" href="https://www.paypal.me/TeamBliss" target="_blank">Donate Other Amount</a>
-                  </div>
-                </div>
-                <p class="text-center"><br>As a reminder, all donations are converted to USD. Some regions may want to make sure the currency conversion is greater than $1 USD, Otherwise PayPal is the only one that benefits</p>
-              </div>
-            </div>
-            <div class="modal-footer text-center bg-dark">
-              <a href="https://sourceforge.net/projects/blissos-x86/files/" class="btn btn-link" data-dismiss="modal"><span class="glyphicon glyphicon-chevron-right"></span>
-              </a>
-              <div class="btn-group pi-draggable">
-                <button class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> Go To Downloads</button>
-                <div class="dropdown-menu" x-placement="top-start" style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, -2px, 0px);">
-                  <a class="dropdown-item" href="https://sourceforge.net/projects/blissos-x86/files/Official/bleeding_edge/archived">Nougat (7.x)</a>
-                  <div class="dropdown-divider"></div>
-                  <a class="dropdown-item" href="https://sourceforge.net/projects/blissos-x86/files/Official/bleeding_edge/archived">Oreo (10.x)</a>
-                  <div class="dropdown-divider"></div>
-                  <a class="dropdown-item" href="https://sourceforge.net/projects/blissos-x86/files/Official/bleeding_edge/">Pie (11.x)</a>
-                </div>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-
-      <div id="popup-modal3" class="modal fade justify-content-center align-items-center flex-grow-1">
-          <div class="modal-dialog">
-            <div class="modal-content">
-              <div class="modal-body px-3 bg-dark">
-                <h1 class="text-center" > Thanks for your interest in Bliss ROM/OS Development</h1>
-                <p class="text-center">Please Fill out the form below, leaving as much detail as possible about your target device* and or opportunity and we will be in touch shortly.<br></p>
-                <p class="text-center" style="font-size:.75em;">* Inquiries requesting us to work on a single device, already on the consumer market will be ignored. This opportunity is for manufacturers and OEM's only. </p>
-                <form action="mailto:blissfamilyroms@gmail.com" method="GET" data-form-title="CONTACT US">
-                  <div class="form-group"> <input type="email" class="form-control" id="form33" placeholder="Your Email" name="email"> </div>
-                  <div class="form-group"> <input type="text" class="form-control" id="form34" placeholder="Subject" name="name"> </div>
-                  <div class="form-group"> <textarea class="form-control" id="form35" rows="3" placeholder="Your message" name="message"></textarea> </div> <button type="submit" class="btn btn-outline-primary btn-block">Send</button>
-                </form>
-                <div class="modal-social text-right">
-                  <div class="row">
-                  </div>
-                </div>
-              </div>
-            </div>
-          </div>
-        </div>
-
-  <div class="py-5" id="team" >
+  </div>
+  <!-- End Downloads -->
+  <div class="py-5" id="team">
     <div class="container">
       <div class="row">
         <div class="mx-auto col-md-12 text-center">
           <h3 class="display-3">The Team</h3>
         </div>
       </div>
-	  
-	  <section id="content" class="team_content"></section>
-    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> 
-    <script>
-       $.ajax({
-       type: "GET",
-       url: "https://blissapi.blissroms.com/team/public/allteambliss", // TeamBliss JSON
-          success: function (data) {
-          var newContent = '';       // Variable to hold HTML
-       
-          for (var i = 0; i < data.length; i++) {    // Loop through object
-            newContent += '<div id="event" class="team_item">';
-            newContent += '<img class="image crop" src="' + data[i].image + '" ';
-            newContent += 'alt="' + data[i].member + '" />';
-            newContent += '<h3><b>' + data[i].member + '</b></h3>';
-            newContent += '<p class="team_data_text">' + data[i].descriptions + '</p>';
-            newContent += '<p class="team_data_text"><i>&quot;' + data[i].email + '&quot;</i></p>';
-            newContent += '</div>';
+      <section id="content" class="team_content"></section>
+      <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
+      <script>
+        $.ajax({
+          type: "GET",
+          url: "https://blissapi.blissroms.com/team/public/allteambliss", // TeamBliss JSON
+          success: function(data) {
+            var newContent = ''; // Variable to hold HTML
+            for (var i = 0; i < data.length; i++) { // Loop through object
+              newContent += '<div id="event" class="team_item">';
+              newContent += '<img class="image crop" src="' + data[i].image + '" ';
+              newContent += 'alt="' + data[i].member + '" />';
+              newContent += '<h3><b>' + data[i].member + '</b></h3>';
+              newContent += '<p class="team_data_text">' + data[i].descriptions + '</p>';
+              newContent += '<p class="team_data_text"><i>&quot;' + data[i].email + '&quot;</i></p>';
+              newContent += '</div>';
+            }
+            // Update the page with the new content
+            document.getElementById('content').innerHTML = newContent;
           }
-    
-          // Update the page with the new content
-          document.getElementById('content').innerHTML = newContent;
-      }
-    })
-  </script>
-    
-	</div>
+        })
+      </script>
+    </div>
   </div>
-  
   <div class="py-4 text-center">
     <div class="container">
       <div class="row">
@@ -562,21 +361,21 @@
         <div class="col-lg-3 col-6 p-3">
           <h5> <b>Sources</b></h5>
           <ul class="list-unstyled">
-            <li> <a href="https://review.blissroms.com" >BlissROMs Gerrit Review</a> </li>
-            <li> <a href="https://github.com/BlissRoms" >BlissROMs GitHub</a> </li>
-            <li> <a href="https://github.com/BlissRoms-Devices"  >BlissROMs-Devices GitHub</a> </li>
-            <li> <a href="https://github.com/BlissRoms-Kernels" >BlissROMs-Kernels GitHub</a> </li>
-            <li> <a href="https://github.com/BlissRoms-Vendor" >BlissROMs-Vendor GitHub</a> </li>
-            <li> <a href="https://github.com/BlissRoms-x86" >Bliss OS GitHub</a> </li>
-            <li> <a href="https://github.com/BlissRoms-pine64" >BlissROMs-PINE64 GitHub</a> </li>
+            <li> <a href="https://review.blissroms.com">BlissROMs Gerrit Review</a> </li>
+            <li> <a href="https://github.com/BlissRoms">BlissROMs GitHub</a> </li>
+            <li> <a href="https://github.com/BlissRoms-Devices">BlissROMs-Devices GitHub</a> </li>
+            <li> <a href="https://github.com/BlissRoms-Kernels">BlissROMs-Kernels GitHub</a> </li>
+            <li> <a href="https://github.com/BlissRoms-Vendor">BlissROMs-Vendor GitHub</a> </li>
+            <li> <a href="https://github.com/BlissRoms-x86">Bliss OS GitHub</a> </li>
+            <li> <a href="https://github.com/BlissRoms-pine64">BlissROMs-PINE64 GitHub</a> </li>
           </ul>
         </div>
         <div class="col-lg-3 col-6 p-3">
           <h5>Subreddits</h5>
           <ul class="list-unstyled">
-            <li> <a href="https://www.reddit.com/r/BlissRoms" >BlissROMs</a> </li>
-            <li> <a href="https://www.reddit.com/r/BlissOS" >Bliss OS</a> </li>
-            <li> <a href="https://www.reddit.com/r/TeamBliss" >TeamBliss</a> </li>
+            <li> <a href="https://www.reddit.com/r/BlissRoms">BlissROMs</a> </li>
+            <li> <a href="https://www.reddit.com/r/BlissOS">Bliss OS</a> </li>
+            <li> <a href="https://www.reddit.com/r/TeamBliss">TeamBliss</a> </li>
           </ul>
         </div>
         <div class="col-lg-3 col-md-3 p-3">
@@ -586,7 +385,7 @@
                 <i class="d-block fa fa-facebook-official text-muted mr-2 fa-2x"></i>
               </a> <a href="https://www.instagram.com/blissroms/">
                 <i class="d-block fa fa-instagram text-muted mx-2 fa-2x"></i>
-              <a href="https://github.com/BlissRoms">
+              </a><a href="https://github.com/BlissRoms">
                 <i class="d-block fa fa-github text-muted text-muted mx-2 fa-2x"></i>
               </a> <a href="https://www.reddit.com/r/BlissRoms">
                 <i class="d-block fa fa-reddit text-muted mx-2 fa-2x"></i>
@@ -606,10 +405,12 @@
   <!-- Footer -->
   <!-- JavaScript dependencies -->
   <script src="js/mainani.js" type="text/javascript"></script>
+  <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
   <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
   <!-- Script: Smooth scrolling between anchors in the same page -->
   <script src="js/smooth-scroll.js"></script>
+  <script src="js/conditionize.js"></script>
 </body>
 
-</html>
+</html>
\ No newline at end of file
diff --git a/js/conditionize.js b/js/conditionize.js
new file mode 100644
index 0000000..a9075fc
--- /dev/null
+++ b/js/conditionize.js
@@ -0,0 +1,42 @@
+/* * * * * * * * * * * * * * * * * *
+* Show/hide fields conditionally
+* * * * * * * * * * * * * * * * * */
+(function($) {
+  $.fn.conditionize = function(options){ 
+    
+     var settings = $.extend({
+        hideJS: true
+    }, options );
+    
+    $.fn.showOrHide = function(listenTo, listenFor, $section) {
+      if ($(listenTo).is('select, input[type=text]') && $(listenTo).val() == listenFor ) {
+        $section.slideDown();
+      }
+      else if ($(listenTo + ":checked").val() == listenFor) {
+        $section.slideDown();
+      }
+      else {
+        $section.slideUp();
+      }
+    } 
+
+    return this.each( function() {
+      var listenTo = "[name=" + $(this).data('cond-option') + "]";
+      var listenFor = $(this).data('cond-value');
+      var $section = $(this);
+  
+      //Set up event listener
+      $(listenTo).on('change', function() {
+        $.fn.showOrHide(listenTo, listenFor, $section);
+      });
+      //If setting was chosen, hide everything first...
+      if (settings.hideJS) {
+        $(this).hide();
+      }
+      //Show based on current value on page load
+      $.fn.showOrHide(listenTo, listenFor, $section);
+    });
+  }
+}(jQuery));
+  
+ $('.conditional').conditionize();
\ No newline at end of file
