diff --git a/css/style.css b/css/style.css
index 927cd00..9718ec1 100644
--- a/css/style.css
+++ b/css/style.css
@@ -364,3 +364,30 @@
   max-height: 150px;
   margin:0 auto;
 }
+/* our team section */
+#family {
+	background-color: #07374a;
+	font-weight: 700;
+    font-size: 1.5em;	
+}
+
+.family-role, .family-name, .family-links-list {
+    color: #FFFFFF;
+}
+.family-description {
+    color: #b7b7b7;
+}
+.family-role h4 {
+    color: #0080ff;
+}
+.family-header h2 {
+    color: #0080ff;
+}
+.family-links {
+	padding-top: .75em;
+}
+.family-image img {
+  max-width:150px;
+  max-height: 150px;
+  margin:0 auto;
+}
diff --git a/images/deso.jpg b/images/deso.jpg
new file mode 100644
index 0000000..32a277a
--- /dev/null
+++ b/images/deso.jpg
Binary files differ
diff --git a/images/xosp.jpg b/images/xosp.jpg
new file mode 100644
index 0000000..73e32ea
--- /dev/null
+++ b/images/xosp.jpg
Binary files differ
diff --git a/images/xtremis.jpg b/images/xtremis.jpg
new file mode 100644
index 0000000..9712ac1
--- /dev/null
+++ b/images/xtremis.jpg
Binary files differ
diff --git a/index.html b/index.html
index 8f15a2e..6cbe787 100644
--- a/index.html
+++ b/index.html
@@ -27,16 +27,19 @@
       <div id="navbar" class="collapse navbar-collapse">
         <ul class="nav navbar-nav navbar-right">
           <li id="nav-about">
-            <a href="#about">About Bliss</a>
+            <a href="#about">About</a>
           </li>
           <li id="nav-portfolio">
             <a href="#portfolio">Downloads</a>
           </li>
           <li id="nav-contact">
-            <a href="#contact">Find Us Online</a>
+            <a href="#contact">Links</a>
           </li>
           <li id="nav-team">
-            <a href="#team">Our Team</a>
+            <a href="#team">Team</a>
+          </li>
+		  <li id="nav-family">
+            <a href="#family">Family</a>
           </li>
         </ul>
       </div>
@@ -576,6 +579,118 @@
   </div>
   <!-- Close Team -->
   
+  <div id="family" class="row cover">
+	<div class="family-header text-center"> 
+      <h2 class="text-center">About Bliss Family</h2></div>
+      <div class="row">
+        <div class="text-center about-info">
+          <img class="img-circle text-center profile-img" src="images/bliss_opt_logo.png">
+          <p class="text-center">We are currently in the process of moving into a new era of Bliss. As a ROM team, we worked together to overcome some of the hardest obstacles that a ROM team could face. And in doing so, we have grown and acted as an example to other teams. This growth allowed us to grow into a family of ROM teams, helping to support one another in our innovative efforts, and also inspire work from other community members as well. </p>
+		  <p class="text-center">This growth allowed us to see many of the needs our fellow community members had, and sparked an idea to allow us all to succeed in the future. So, we decided to start our journey into making that happen, and are turning Bliss Family of ROMs into a nonprofit corporation, with the intent to enable the development community like never before. </p>
+		  <p></p>
+		  <p class="text-center">Our Bliss Family projects can range from Applications, forks of other projects, ports, ROMs, API's, Services, etc. Most if not all of our Bliss Family projects will be Open Source too, allowing us to truly give back to the community as a team.  </p>
+          <p></p>
+          <p class="text-center">Or if you represent an already existing project and would like to join the Bliss Family, please fill out the form found here:
+            <a href="https://goo.gl/kAb7ti"></a>
+          </p>
+          <li>
+            <a href="https://goo.gl/kAb7ti">Join Bliss Family</a>
+          </li>
+        </div>
+        <div class="about-tools">
+          <p class="text-center">The Bliss Family projects we currently support can be found bellow: 
+            </p>
+          <div class="col-xs-4">
+            <div class="family">
+				<img src="images/deso.jpg" class="img-circle img-responsive">
+			  <div class="family-image text-center">
+				<div class="family-links ">
+				  <div class="family-links-list">
+					<a href="#" target="_blank"><i class="fa fa-envelope"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-facebook"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-linked"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-twitter"></i></a>
+				  </div>
+				  <!-- /.family-links-list -->
+				</div>
+				<!-- /.family-links -->
+			  </div>
+			  <!-- /.family-image -->
+			  <div class="family-content text-center">
+				<div class="family-name">Desolation ROM</div>
+				<div class="family-role">
+				  <h4>Dark Style ROM, AOSP/CAF</h4>
+				</div>
+				<div class="family-description">
+				Desolation ROM is a great dark style rom, offering heavy optimizations along with a unique style.</div>
+			  </div>
+			  <!-- /.family-content -->
+			</div>
+			<!-- /.family -->
+          </div>
+          <div class="col-xs-4">
+            <div class="family">
+				<img src="images/xosp.jpg" class="img-circle img-responsive">
+			  <div class="family-image text-center">
+				<div class="family-links ">
+				  <div class="family-links-list">
+					<a href="#" target="_blank"><i class="fa fa-envelope"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-facebook"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-linked"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-twitter"></i></a>
+				  </div>
+				  <!-- /.family-links-list -->
+				</div>
+				<!-- /.family-links -->
+			  </div>
+			  <!-- /.family-image -->
+			  <div class="family-content text-center">
+				<div class="family-name">XOSP ROM</div>
+				<div class="family-role">
+				  <h4>Xperia Style ROM, AOSP/CAF</h4>
+				</div>
+				<div class="family-description">
+				XOSP offers the unuque stylings of Sony's Xperia line to AOSP/CAF devices, along with many welcomed features worth checking out.</div>
+			  </div>
+			  <!-- /.family-content -->
+			</div>
+			<!-- /.family -->
+          </div>
+		  <div class="col-xs-4">
+            <div class="family">
+				<img src="images/xtremis.jpg" class="img-circle img-responsive">
+			  <div class="family-image text-center">
+				<div class="family-links ">
+				  <div class="family-links-list">
+					<a href="#" target="_blank"><i class="fa fa-envelope"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-facebook"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-linked"></i></a>
+					<a href="#" target="_blank"><i class="fa fa-twitter"></i></a>
+				  </div>
+				  <!-- /.family-links-list -->
+				</div>
+				<!-- /.family-links -->
+			  </div>
+			  <!-- /.family-image -->
+			  <div class="family-content text-center">
+				<div class="family-name">Xtremis Project</div>
+				<div class="family-role">
+				  <h4>AOSP/CAF ROM</h4>
+				</div>
+				<div class="family-description">
+				Not much info available at this time. Please check in later. </div>
+			  </div>
+			  <!-- /.family-content -->
+			</div>
+			<!-- /.family -->
+          </div>
+		  
+        </div>
+      </div>
+    </div>
+    <!-- End #About -->
+    
+  
   <footer class="footer">
     <div class="container"> </div>
   </footer>
diff --git a/js/script.js b/js/script.js
index 97504e3..a82fd4b 100644
--- a/js/script.js
+++ b/js/script.js
@@ -35,6 +35,10 @@
             e.preventDefault
             $.scrollTo($("#team"), 1000);
         });
+		$("#nav-family").click(function(e) {
+            e.preventDefault
+            $.scrollTo($("#family"), 1000);
+        });
         $(".navbar-brand").click(function(e) {
             e.preventDefault();
             $.scrollTo(0, 1000);
