diff --git a/css/animations.css b/css/animations.css
deleted file mode 100644
index ba7e644..0000000
--- a/css/animations.css
+++ /dev/null
@@ -1,808 +0,0 @@
-/* --------------------------------
-
-Main Components
-Source: https://codepen.io/elorenn/pen/qXzXPv
-
--------------------------------- */
-.bsection {
-  position: relative;
-  display: flex;
-  flex-direction: column;
-  justify-content: center;
-  align-items: center;
-  min-width: 1em;
-  overflow: scroll;
-  flex-wrap: wrap;
-  flex-basis: 50%;
-}
-.bsection:first-of-type {
-  border-right: 2px solid #fff;
-}
-
-.badge {
-  cursor: help;
-  background: #e7cc9c;
-  height: 33%;
-  width: 33%;
-  min-width: 30%;
-  border-radius: 50%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  position: relative;
-  -webkit-filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0));
-          filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0));
-  transition: 150ms linear;
-}
-.badge:hover {
-  -webkit-transform: translateY(-2px);
-          transform: translateY(-2px);
-  -webkit-filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.15));
-          filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.15));
-}
-.badge:active:after {
-  content: 'Prost!';
-  position: absolute;
-  color: #fff;
-  font-family: sans-serif;
-  text-transform: uppercase;
-  font-weight: bold;
-  font-size: 3em;
-  letter-spacing: .1em;
-  top: -25%;
-}
-.badge.anim {
-  height: 33%;
-  width: 33%;
-}
-.badge.anim:active:after {
-  content: 'cheers!';
-}
-
-.beer-single-div {
-  position: relative;
-  height: 150px;
-  width: 112.5px;
-  min-width: 112.5px;
-  margin-top: 30px;
-  background-image: radial-gradient(97.5px 22.5px at 50% 103%, #f1ecdb 40%, transparent 40%), radial-gradient(6px 9px at 15% 67%, #ffe799 80%, transparent 83%), radial-gradient(6px 9px at 15% 18%, #ffe799 80%, transparent 83%), radial-gradient(9px 9px at 25% 85%, #ffda66 80%, transparent 80%), radial-gradient(25.5px 45px at 15% 90%, #ffc200 70%, transparent 70%), radial-gradient(25.5px 25.5px at 15% 5%, #ffc200 70%, transparent 70%), linear-gradient(to right, transparent 0%, transparent 10%, #ffe799 10%, #ffe799 20%, transparent 20%), radial-gradient(6px 6px at 70% 45%, #fecf75 80%, transparent 80%), radial-gradient(7.5px 7.5px at 35% 27%, #ffda66 80%, transparent 80%), radial-gradient(4.5px 4.5px at 80% 12%, #fecf75 80%, transparent 80%), radial-gradient(6px 6px at 60% 81%, #fecf75 80%, transparent 80%), radial-gradient(4.5px 4.5px at 89% 89%, #fecf75 80%, transparent 80%), radial-gradient(7.5px 7.5px at 77% 78%, #fecf75 80%, transparent 80%), radial-gradient(4.5px 4.5px at 40% 57%, #ffda66 80%, transparent 80%), linear-gradient(to right, #ffc200 50%, #fdac10 50%);
-  border-radius: 0 0 15% 15%;
-  border: 9px solid #f1ecdb;
-  /*mug*/
-  box-sizing: border-box;
-}
-.beer-single-div:before {
-  content: '';
-  position: absolute;
-  z-index: -1;
-  border-radius: 0 50% 50% 0;
-  height: 75px;
-  width: 52.5px;
-  top: 22.5px;
-  right: -49.5px;
-  background-color: transparent;
-  box-sizing: border-box;
-  border: 12px solid #f1ecdb;
-  /*mug handle*/
-  border-left: 12px solid transparent;
-}
-.beer-single-div:after {
-  content: '';
-  position: absolute;
-  top: -20%;
-  right: 20%;
-  height: 15px;
-  width: 15px;
-  background: #fffef8;
-  border-radius: 25.5px;
-  box-shadow: 0 16.5px 0 10.5px #fff9de, 0 10.5px 0 10.5px #fffef8, -40.5px 10.5px 0 6px #fff9de, -58.5px 9px 0 9px #fffef8, -27px 18px 0 6px #fff9de, -75px 12px 0 6px #fff9de, -22.5px 0 0 9px #fffef8, 21px 10.5px 0 9px #fffef8, -48px -12px 0 7.5px #fffef8, -27px -21px 0 7.5px #fff9de, -7.5px -10.5px 0 7.5px #fff9de, 10.5px -7.5px 0 1.5px #fffef8, 13.5px -10.5px 0 1.5px #fff9de, 37.5px 10.5px 0 1.5px #fff9de;
-}
-
-.beer-animation-wrapper {
-  position: relative;
-  overflow-y: hidden;
-  padding: 25.5px;
-  padding-right: 0;
-  padding-top: 10%;
-}
-.beer-animation-wrapper .beer {
-  position: relative;
-  height: 150px;
-  width: 112.5px;
-  min-width: 112.5px;
-  margin-top: 48px;
-  margin-right: 40.5px;
-  margin-left: 13.5px;
-  z-index: -2;
-  background-image: radial-gradient(97.5px 22.5px at 50% 103%, #f1ecdb 40%, transparent 40%), linear-gradient(to right, #ffc200 50%, #fdac10 50%);
-  border-radius: 0 0 15% 15%;
-  /*mug*/
-  border: 9px solid #f1ecdb;
-  box-sizing: border-box;
-}
-.beer-animation-wrapper .beer:before {
-  content: '';
-  position: absolute;
-  height: 130%;
-  width: 100%;
-  bottom: -5%;
-  z-index: -1;
-  opacity: 1;
-  -webkit-animation: 3s bubbles linear infinite;
-          animation: 3s bubbles linear infinite;
-  background: radial-gradient(9px 9px at 25% 85%, #ffda66 80%, transparent 80%), radial-gradient(6px 6px at 70% 45%, #fecf75 80%, transparent 80%), radial-gradient(7.5px 7.5px at 35% 40%, #fecf75 80%, transparent 80%), radial-gradient(4.5px 4.5px at 80% 30%, #fecf75 80%, transparent 80%), radial-gradient(6px 6px at 60% 81%, #fecf75 80%, transparent 80%), radial-gradient(4.5px 4.5px at 89% 89%, #fecf75 80%, transparent 80%), radial-gradient(7.5px 7.5px at 77% 78%, #fecf75 80%, transparent 80%), radial-gradient(4.5px 4.5px at 40% 57%, #ffda66 80%, transparent 80%), radial-gradient(3px 3px at 30% 67%, #ffda66 80%, transparent 80%), radial-gradient(3px 3px at 30% 17%, #ffda66 80%, transparent 80%), radial-gradient(4.5px 4.5px at 40% 10%, #ffda66 80%, transparent 80%), radial-gradient(7.5px 7.5px at 62% 24%, #ffda66 80%, transparent 80%), radial-gradient(6px 6px at 18% 31%, #ffda66 80%, transparent 80%), radial-gradient(9px 9px at 83% 60%, #ffda66 80%, transparent 80%);
-}
-.beer-animation-wrapper .beer:after {
-  /*mug handle*/
-  content: '';
-  position: absolute;
-  border-radius: 0 50% 50% 0;
-  height: 75px;
-  width: 49.5px;
-  top: 22.5px;
-  right: -49.5px;
-  background-color: transparent;
-  box-sizing: border-box;
-  border: 12px solid #f1ecdb;
-  border-left: 9px solid #f1ecdb;
-}
-.beer-animation-wrapper .foam {
-  position: relative;
-  top: -20%;
-  left: 63%;
-  height: 15px;
-  width: 15px;
-  background: #fffef8;
-  border-radius: 25.5px;
-  box-shadow: -52.5px 42px 0 -2.25px #ffe799, -52.5px 43.5px 0 -2.25px #ffe799, -52.5px 45px 0 -2.25px #ffe799, -52.5px 46.5px 0 -2.25px #ffe799, -52.5px 48px 0 -2.25px #ffe799, -52.5px 49.5px 0 -2.25px #ffe799, -52.5px 51px 0 -2.25px #ffe799, -52.5px 52.5px 0 -2.25px #ffe799, -52.5px 54px 0 -2.25px #ffe799, -52.5px 55.5px 0 -2.25px #ffe799, -52.5px 57px 0 -2.25px #ffe799, -52.5px 58.5px 0 -2.25px #ffe799, -52.5px 60px 0 -2.25px #ffe799, -52.5px 61.5px 0 -2.25px #ffe799, -52.5px 63px 0 -2.25px #ffe799, -52.5px 64.5px 0 -2.25px #ffe799, -52.5px 66px 0 -2.25px #ffe799, -52.5px 67.5px 0 -2.25px #ffe799, -52.5px 69px 0 -2.25px #ffe799, -52.5px 70.5px 0 -2.25px #ffe799, -52.5px 72px 0 -2.25px #ffe799, -52.5px 73.5px 0 -2.25px #ffe799, -52.5px 75px 0 -2.25px #ffe799, -52.5px 76.5px 0 -2.25px #ffe799, -52.5px 78px 0 -2.25px #ffe799, -52.5px 79.5px 0 -2.25px #ffe799, -52.5px 81px 0 -2.25px #ffe799, -52.5px 82.5px 0 -2.25px #ffe799, -52.5px 84px 0 -2.25px #ffe799, -52.5px 85.5px 0 -2.25px #ffe799, -52.5px 87px 0 -2.25px #ffe799, -52.5px 88.5px 0 -2.25px #ffe799, -52.5px 90px 0 -2.25px #ffe799, -52.5px 91.5px 0 -2.25px #ffe799, -52.5px 93px 0 -2.25px #ffe799, -52.5px 94.5px 0 -2.25px #ffe799, -52.5px 96px 0 -2.25px #ffe799, -52.5px 97.5px 0 -2.25px #ffe799, -52.5px 99px 0 -2.25px #ffe799, -52.5px 100.5px 0 -2.25px #ffe799, -52.5px 102px 0 -2.25px #ffe799, -52.5px 103.5px 0 -2.25px #ffe799, -52.5px 105px 0 -2.25px #ffe799, -52.5px 106.5px 0 -2.25px #ffe799, -52.5px 108px 0 -2.25px #ffe799, -52.5px 109.5px 0 -2.25px #ffe799, 0 16.5px 0 10.5px #fff9de, 0 10.5px 0 10.5px #fffef8, -40.5px 10.5px 0 6px #fff9de, -58.5px 9px 0 9px #fffef8, -27px 18px 0 6px #fff9de, -75px 12px 0 6px #fff9de, -22.5px 0 0 9px #fffef8, 21px 10.5px 0 9px #fffef8, -48px -12px 0 7.5px #fffef8, -27px -21px 0 7.5px #fff9de, -7.5px -10.5px 0 7.5px #fff9de, 10.5px -7.5px 0 1.5px #fffef8, 13.5px -10.5px 0 1.5px #fff9de, 37.5px 10.5px 0 1.5px #fff9de;
-}
-.beer-animation-wrapper .foam:before, .beer-animation-wrapper .foam:after {
-  z-index: -1;
-  content: '';
-  position: absolute;
-  top: 200%;
-  width: 15px;
-  border-radius: 25.5px;
-  background: #fff9de;
-  background: linear-gradient(to right, #fff9de 75%, #fffef8 75%);
-}
-.beer-animation-wrapper .foam:after {
-  left: 100%;
-  height: 0px;
-  -webkit-animation: drip1 2s ease-out forwards;
-          animation: drip1 2s ease-out forwards;
-}
-.beer-animation-wrapper .foam:before {
-  right: 25%;
-  height: 0px;
-  -webkit-animation: drip2 5s ease-out forwards;
-          animation: drip2 5s ease-out forwards;
-}
-
-#popup-modal .modal-body {
-  background:url(https://i.imgur.com/f4wfsnL.jpg);
-  background-size:cover;
-  padding:0; 
-  position:relative;
-  height:300px;
-  border-top-left-radius:6px;
-  border-top-right-radius:6px;
-}
-
-#popup-modal h1 {
-  color:#fff;
-  margin:0;
-  padding-top:30px;
-  text-transform:uppercase;
-  letter-spacing:3px;
-  font-weight:100;
-}
-
-#popup-modal h1 span {
-  color:#888;
-  font-weight:700;
-}
-
-#popup-modal p {
-  color:#ccc;
-  font-weight:400;
-}
-
-#popup-modal .modal-social {
-  /*position:absolute;
-  right: 65px;
-  top: 130px;
-  width: 215px;*/
-}
-
-#popup-modal .modal-box {
-  margin: auto;
-  position:absolute;
-  top: 40%; left: 15%; bottom: 50%; right: 15%;
-  z-index:9999;
-}
-
-.overlay {
-  position: fixed;
-  top: 0;
-  bottom: 0;
-  left: 0;
-  right: 0;
-  background: rgba(0, 0, 0, 0.7);
-  transition: opacity 500ms;
-  visibility: hidden;
-  opacity: 0;
-}
-.overlay:target {
-  visibility: visible;
-  opacity: 1;
-}
-
-.popup {
-  margin: 70px auto;
-  padding: 20px;
-  background: #fff;
-  border-radius: 5px;
-  width: 30%;
-  position: relative;
-  transition: all 5s ease-in-out;
-}
-
-.popup h2 {
-  margin-top: 0;
-  color: #333;
-  font-family: Tahoma, Arial, sans-serif;
-}
-.popup .close {
-  position: absolute;
-  top: 20px;
-  right: 30px;
-  transition: all 200ms;
-  font-size: 30px;
-  font-weight: bold;
-  text-decoration: none;
-  color: #333;
-}
-.popup .close:hover {
-  color: #06D85F;
-}
-.popup .content {
-  max-height: 30%;
-  overflow: auto;
-}
-
-@media screen and (max-width: 700px){
-  .box{
-    width: 70%;
-  }
-  .popup{
-    width: 70%;
-  }
-}
-
-.layout {
-	margin: 0 auto;
-	max-width: 1170px;
-	width: 100%;
-	padding: 0 15px;
-}
-
-/********Grid Widht *******/
-.grid-3 {	width: 25%;	float: left;	min-height: 1px;	padding-left: 15px;	padding-right: 15px;
-	position: relative;}
-/********Grid Widht *******/	
-
-/***Section Css******/
-.counting {
-    /* background: #34495e none repeat scroll 0 0; */
-    color: #fff;
-    overflow: hidden;
-    padding: 36px 0;
-}
-
-.counting span {
-    font-size: 70px;
-    font-weight: 700;
-    position: relative;
-	text-align:center;
-	display:block;
-}
-.counting p {
-    font-size: 20px;
-    font-weight: 700;
-    letter-spacing: 2px;
-    padding-top: 30px;
-    text-transform: uppercase;
-	text-align:center;
-}
-
-.counting span::before {
-    /*background: #b7b7b7 none repeat scroll 0 0; */
-    bottom: -10px;
-    content: " ";
-    height: 4px;
-    left: 32%;
-    position: absolute;
-    width: 36%;
-}
-
-
-@media (max-width:980px) {
-	.layout {				width: 767px;	}
-	.grid-3 {				width: 50%;	}
-}
-@media (max-width:640px) {
-	.layout {		width: 300px;	}
-	.grid-3 {		width: 100%;	}
-}
-
-@-webkit-keyframes drip2 {
-  0% {
-    height: 0px;
-  }
-  50% {
-    height: 45px;
-  }
-  75% {
-    height: 45px;
-  }
-  80% {
-    height: 45px;
-  }
-  100% {
-    height: 52.5px;
-  }
-}
-
-@keyframes drip2 {
-  0% {
-    height: 0px;
-  }
-  50% {
-    height: 45px;
-  }
-  75% {
-    height: 45px;
-  }
-  80% {
-    height: 45px;
-  }
-  100% {
-    height: 52.5px;
-  }
-}
-@-webkit-keyframes drip1 {
-  0% {
-    height: 0px;
-  }
-  100% {
-    height: 75px;
-  }
-}
-@keyframes drip1 {
-  0% {
-    height: 0px;
-  }
-  100% {
-    height: 75px;
-  }
-}
-@-webkit-keyframes bubbles {
-  0% {
-    -webkit-transform: translatey(0%);
-            transform: translatey(0%);
-  }
-  99% {
-    -webkit-transform: translatey(-50%);
-            transform: translatey(-50%);
-  }
-  100% {
-    opacity: 0;
-  }
-}
-@keyframes bubbles {
-  0% {
-    -webkit-transform: translatey(0%);
-            transform: translatey(0%);
-  }
-  99% {
-    -webkit-transform: translatey(-50%);
-            transform: translatey(-50%);
-  }
-  100% {
-    opacity: 0;
-  }
-}
-
-/* Anim
-width: 378px;
-  height: 290px;
- */
-.animation {
-  display: inline-block;
-  position: relative;
-  width: 26em;
-  height: 16em;
-  margin: -2vh auto 0 auto;
-  vertical-align: middle;
-}
-/*@media (max-width:720px) {
-  .animation {margin-left:-30rem;margin-right:-30rem;}
-} 
-@media (max-width:450px) {
-  .animation {width:58rem;height:38rem;}
-}
-@media (max-width:450px) {
-  .animation {width:58rem;height:38rem;}
-}
-@media (max-width:400px) {
-  .animation {width:55rem;height:36rem;}
-}
-@media (max-width:380px) {
-  .animation {width:50rem;height:33rem;}
-}
-@media (max-width:340px) {
-  .animation {width:47rem;height:31rem;}
-}
-@media (max-width:320px) {
-  .animation {width:42rem;height:28rem;}
-}*/
-@media (max-height:650px) {
-  .animation {margin-top: -7vh !important;margin-bottom: 10vh !important;}
-}
-@media (min-height:651px) {
-  .animation {margin-top: -8vh !important;margin-bottom: 10vh !important;}
-}
-@media (min-height:670px) {
-  .animation {margin-top: -6.5vh !important;margin-bottom: 10vh !important;}
-}
-@media (min-height:720px) {
-  .animation {margin-top: -2vh !important;margin-bottom: 10vh !important;overflow-y:visible}
-}
-@media (min-height:800px) {
-  .animation {margin-top: 0 !important;margin-bottom: 10vh !important;overflow-y:visible}
-}
-.animation .device {
-  position: absolute;
-  width: 100%;
-  height: 100%;
-  left: 50%;
-  top: 50%;
-  background: #111;
-  -webkit-transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-  -moz-transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-  -ms-transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-  -moz-transform: translate(-50%, -50%);
-  -ms-transform: translate(-50%, -50%);
-  -webkit-transform: translate(-50%, -50%);
-  transform: translate(-50%, -50%);
-}
-.animation .device .phone-home-button,
-.animation .device .tablet-home-button {
-  position: absolute;
-  border-radius: 50%;
-  background: #444;
-  opacity: 0;
-  z-index: 1;
-  -webkit-transition: all 0.4s ease;
-  -moz-transition: all 0.4s ease;
-  -ms-transition: all 0.4s ease;
-  transition: all 0.4s ease;
-}
-.animation .device .phone-home-button {
-  width: 16px;
-  height: 16px;
-  margin-top: -8px;
-  right: 11px;
-  top: 50%;
-}
-.animation .device .tablet-home-button {
-  width: 12px;
-  height: 12px;
-  margin-left: -6px;
-  bottom: 7px;
-  left: 50%;
-}
-.animation .device .screen-stand {
-  position: absolute;
-  width: 100%;
-  margin-left: -10px;
-  margin-top: -1px;
-  top: 60%;
-  opacity: 0;
-  z-index: 1;
-  -webkit-transition: all 0.4s ease-out;
-  -moz-transition: all 0.4s ease-out;
-  -ms-transition: all 0.4s ease-out;
-  transition: all 0.4s ease-out;
-}
-.animation .device .screen-stand .leg {
-  position: absolute;
-  width: 12px;
-  height: 16px;
-  left: 50%;
-  top: 0;
-  margin-left: -6px;
-  background: #111;
-}
-.animation .device .screen-stand .foot {
-  position: absolute;
-  width: 120px;
-  height: 4px;
-  left: 50%;
-  top: 15px;
-  margin-left: -60px;
-  border-top-left-radius: 2px;
-  border-top-right-radius: 2px;
-  background: #111;
-}
-.animation .device .display {
-  position: relative;
-  width: 100%;
-  height: 100%;
-  overflow: hidden;
-  background: #34495e;
-  z-index: 3;
-}
-.animation .device .display div {
-  position: absolute;
-  width: 100%;
-  height: 100%;
-  left: 100%;
-  white-space: nowrap;
-  -webkit-transition: all 0.4s ease;
-  -moz-transition: all 0.4s ease;
-  -ms-transition: all 0.4s ease;
-  transition: all 0.4s ease;
-}
-.animation .device .display div div {
-  position: absolute;
-  width: 100%;
-  left: 0;
-  top: 50%;
-  margin-top: -24px;
-  font-size: 18px;
-  text-align: center;
- /* color: #0080ff;*/
-}
-@media (max-width:867px) {
-  .display-3 { font-size: 4.4rem;}
-  .navbar-ontop { background-color: #303030 !important;}
-}
-@media (max-width:650px) {
-  .display-3 { font-size: 4.1rem;}
-  .navbar-ontop { background-color: #303030 !important;}
-}
-@media (max-width:550px) {
-  .display-3 { font-size: 3.8rem;}
-}
-@media (max-width:430px) {
-  .display-3 { font-size: 2.8rem;}
-}
-@media (max-width:400px) {
-  .display-3 { font-size: 2.5rem;}
-}
-@media (max-width:450px) {
-  .animation .device .display div div {width:100%;max-width:100%;font-size:12px !important;}
-  .display-3 { font-size: 3.0rem;}
-}
-  .animation .device .display .slide1 div {margin-top:0px;}
-.animation .device .display div div em {
-  font-weight: bold;
-}
-.animation .device .display .slide1 {
-  /* background: #000; */
-  background: url("https://i.imgur.com/wCp0xpe.jpg");
-  background-size: cover;
-  background-repeat: no-repeat;
-  background-position: center center;
-  text-shadow:  1px 1px 2px #1f1f1f, -1px -1px 2px #1f1f1f, -1px 0 2px #1f1f1f, 0 -1px 2px #1f1f1f, 1px 0 2px #1f1f1f, 0 1px 2px #1f1f1f, 1px -1px 2px #1f1f1f, -1px 1px 2px #1f1f1f,
-                2px 2px 2px #1f1f1f, -2px -2px 2px #1f1f1f, -2px 0 2px #1f1f1f, 0 -2px 2px #1f1f1f, 2px 0 2px #1f1f1f, 0 2px 2px #1f1f1f, 2px -2px 2px #1f1f1f, -2px 2px 2px #1f1f1f,
-                3px 3px 2px #1f1f1f, -3px -3px 2px #1f1f1f, -3px 0 2px #1f1f1f, 0 -3px 2px #1f1f1f, 3px 0 2px #1f1f1f, 0 3px 2px #1f1f1f, 3px -3px 2px #1f1f1f, -3px 3px 2px #1f1f1f,
-                4px 4px 4px #1f1f1f, -4px -4px 4px #1f1f1f, -4px 0 4px #1f1f1f, 0 -4px 4px #1f1f1f, 4px 0 4px #1f1f1f, 0 4px 4px #1f1f1f, 4px -4px 4px #1f1f1f, -4px 4px 4px #1f1f1f;
-    color:white;
-}
-.animation .device .display .slide2 {
-  /* background: #000; */
-  background: url("https://i.imgur.com/KfArkPZ.jpg");
-  background-size: cover;
-  background-repeat: no-repeat;
-  background-position: center center;
-  text-shadow:  1px 1px 2px #fff, -1px -1px 2px #fff, -1px 0 2px #fff, 0 -1px 2px #fff, 1px 0 2px #fff, 0 1px 2px #fff, 1px -1px 2px #fff, -1px 1px 2px #fff,
-                2px 2px 2px #fff, -2px -2px 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 2px 0 2px #fff, 0 2px 2px #fff, 2px -2px 2px #fff, -2px 2px 2px #fff,
-                3px 3px 2px #fff, -3px -3px 2px #fff, -3px 0 2px #fff, 0 -3px 2px #fff, 3px 0 2px #fff, 0 3px 2px #fff, 3px -3px 2px #fff, -3px 3px 2px #fff,
-                4px 4px 4px #fff, -4px -4px 4px #fff, -4px 0 4px #fff, 0 -4px 4px #fff, 4px 0 4px #fff, 0 4px 4px #fff, 4px -4px 4px #fff, -4px 4px 4px #fff;
-  color:#0080ff;
-}
-.animation .device .display .slide3 {
-  /* background: #000; */
-  background: url("https://i.imgur.com/c55mey7.jpg");
-  background-size: cover;
-  background-repeat: no-repeat;
-  background-position: center center;
-  text-shadow:  1px 1px 2px #000, -1px -1px 2px #000, -1px 0 2px #000, 0 -1px 2px #000, 1px 0 2px #000, 0 1px 2px #000, 1px -1px 2px #000, -1px 1px 2px #000,
-                2px 2px 2px #000, -2px -2px 2px #000, -2px 0 2px #000, 0 -2px 2px #000, 2px 0 2px #000, 0 2px 2px #000, 2px -2px 2px #000, -2px 2px 2px #000,
-                3px 3px 2px #000, -3px -3px 2px #000, -3px 0 2px #000, 0 -3px 2px #000, 3px 0 2px #000, 0 3px 2px #000, 3px -3px 2px #000, -3px 3px 2px #000,
-                4px 4px 4px #000, -4px -4px 4px #000, -4px 0 4px #000, 0 -4px 4px #000, 4px 0 4px #000, 0 4px 4px #000, 4px -4px 4px #000, -4px 4px 4px #000;
-  color:white;
-}
-.animation[data-animation-step="1"] .device {
-  width: 87%;
-  height: 90%;
-  padding: 10px;
-  border-radius: 4px;
-}
-.animation[data-animation-step="1"] .device .slide1 {
-  left: 0%;
-}
-.animation[data-animation-step="1"] .device .screen-stand {
-  opacity: 1;
-  top: 100%;
-}
-.animation[data-animation-step="2"] .device {
-  width: 74%;
-  height: 75%;
-  padding: 16px;
-  border-radius: 10px;
-}
-.animation[data-animation-step="2"] .device .slide1 {
-  left: -100%;
-}
-.animation[data-animation-step="2"] .device .slide2 {
-  left: 0%;
-}
-.animation[data-animation-step="2"] .device .tablet-home-button {
-  opacity: 1;
-}
-.animation[data-animation-step="3"] .device {
-  width: 27%;
-  height: 75%;
-  padding: 16px 4px;
-  border-radius: 6px;
-}
-.animation[data-animation-step="3"] .device .slide1,
-.animation[data-animation-step="3"] .device .slide2 {
-  left: -100%;
-}
-.animation[data-animation-step="3"] .device .slide3 {
-  left: 0%;
-}
-.animation[data-animation-step="3"] .device .phone-home-button {
-  opacity: 1;
-}
-  @media (min-height:800px) {
-    .animation[data-animation-step="1"] .device {width:87%; height:90%;}
-    .animation[data-animation-step="2"] .device {width:80%; height:80%;}
-    .animation[data-animation-step="3"] .device {width:28%; height:80%;}
-  }
-  @media (max-height:720px) {
-    .animation[data-animation-step="1"] .device {width:72%; height:75%;}
-    .animation[data-animation-step="2"] .device {width:59%; height:60%;}
-    .animation[data-animation-step="3"] .device {width:22%; height:63%;}
-    .animation .device .display div div {font-size:16px;}
-  }
-  @media (max-height:650px) {
-    .animation[data-animation-step="1"] .device {width:62%; height:65%;}
-    .animation[data-animation-step="2"] .device {width:54%; height:55%;}
-    .animation[data-animation-step="3"] .device {width:22%; height:63%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  @media (max-width:560px) {
-    .animation[data-animation-step="1"] .device {margin-top:1%;width:72%; height:75%;}
-    .animation[data-animation-step="2"] .device {margin-top:1%;width:65%; height:66%;}
-    .animation[data-animation-step="3"] .device {margin-top:1%;width:28%; height:80%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  @media (max-width:520px) {
-    .animation[data-animation-step="1"] .device {margin-top:0%;width:66%; height:69%;}
-    .animation[data-animation-step="2"] .device {margin-top:0%;width:62%; height:63%;}
-    .animation[data-animation-step="3"] .device {margin-top:0%;width:28%; height:80%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  @media (max-width:460px) {
-    .animation[data-animation-step="1"] .device {margin-top:0%;width:58%; height:61%;}
-    .animation[data-animation-step="2"] .device {margin-top:0%;width:54%; height:55%;}
-    .animation[data-animation-step="3"] .device {margin-top:0%;width:25%; height:72%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  @media (max-width:350px) {
-    .animation[data-animation-step="1"] .device {margin-top:3%;width:62%; height:65%;}
-    .animation[data-animation-step="2"] .device {margin-top:3%;width:58%; height:60%;}
-    .animation[data-animation-step="3"] .device {margin-top:9%;width:30%; height:80%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  @media (max-width:320px) {
-    .animation[data-animation-step="1"] .device {margin-top:6%;width:62%; height:65%;}
-    .animation[data-animation-step="2"] .device {margin-top:6%;width:58%; height:60%;}
-    .animation[data-animation-step="3"] .device {margin-top:12%;width:30%; height:80%;}
-    .animation .device .display div div {font-size:15px;}
-  }
-  
-.glow {
-  font-size: 80px;
-  color: #fff;
-  text-align: center;
-  -webkit-animation: glow 1s ease-in-out infinite alternate;
-  -moz-animation: glow 1s ease-in-out infinite alternate;
-  animation: glow 1s ease-in-out infinite alternate;
-}
-
-@-webkit-keyframes glow {
-  from {
-    text-shadow: 0 0 10px #fff, 0 0 20px #fff, 0 0 30px #0095e6, 0 0 40px #0095e6, 0 0 50px #0095e6, 0 0 60px #0095e6, 0 0 70px #0095e6;
-  }
-  to {
-    text-shadow: 0 0 20px #fff, 0 0 30px #4db1ff, 0 0 40px #4db1ff, 0 0 50px #4db1ff, 0 0 60px #4db1ff, 0 0 70px #4db1ff, 0 0 80px #4db1ff;
-  }
-}
-
-.device {
-  transform: rotateX(25deg) rotateZ(-25deg) translateX(0) scale(.93);
-  margin: auto;
-	position: relative;
-	display: inline-block;
-	background: #333333;
-	box-shadow:
-		0 1px 4px 0 rgba(0,0,0,0.20),
-		0 8px 24px 0 rgba(0,0,0,0.20),
-		0 0 0 1px rgba(0, 0, 0, 0.53),
-		inset 0 -2px 2px 2px rgba(0,0,0,0.55);
-  box-shadow: -1px 1px 4px 0 rgba(0, 0, 0, 0.20), -8px 8px 24px 0 rgba(0, 0, 0, 0.20), inset 5px -5px 5px 5px rgba(0, 0, 0, 0.24);
-	border-radius: 40px;
-	position: relative;
-	box-sizing: content-box;
-	padding: 50px 10px;
-  padding: 45px 10px 55px 20px;
-  width: 200px;
-  height: 360px;
-}
-.device-screen {
-	width: 98%;
-	height: 98%;
-	background: #111111;
-	overflow: hidden;
-	border-radius: 4px;
-	box-shadow: inset 0px 1px 3px rgba(0,0,0,0.1);
-	position: relative;
-}
-.device-screen:before {
-	content: "";
-	top: 0;
-	bottom: 0;
-	width: 98%;
-	height: 98%;
-	box-shadow: inset 0px 1px 3px rgba(0,0,0,0.1);
-	position: absolute;
-	border-radius: 8px;
-	overflow: hidden;
-}
-.device video {
-	border-radius: 0px;
-	width: 100%;
-	height: 105%;
-  object-fit: cover;
-}
-
-.device-screen img {
-  height: 100%;
-  width: 105%;
-  object-fit: cover;
-}
-
-@media (max-width: 850px) {
-  .device {
-    border-radius: 4.6vw;
-    padding: 6vw 1.2vw;
-    width: 33vw;
-    height: 59vw;
-  }
-  .device video,
-  .device-screen {
-    border-radius: .33vw;
-  }
-}
-
-
-
-
diff --git a/images/BlissIcon.png b/images/BlissIcon.png
deleted file mode 100644
index b165121..0000000
--- a/images/BlissIcon.png
+++ /dev/null
Binary files differ
diff --git a/images/BlissIcon_w.png b/images/BlissIcon_w.png
deleted file mode 100644
index 39acc87..0000000
--- a/images/BlissIcon_w.png
+++ /dev/null
Binary files differ
diff --git a/images/BlissIcon_Smal_wl.png b/images/bliss-brand-icon.png
similarity index 100%
rename from images/BlissIcon_Smal_wl.png
rename to images/bliss-brand-icon.png
Binary files differ
diff --git a/images/bliss_icon_small.png b/images/bliss_icon_small.png
deleted file mode 100644
index 6241439..0000000
--- a/images/bliss_icon_small.png
+++ /dev/null
Binary files differ
diff --git a/images/bliss_opt_logo.png b/images/bliss_opt_logo.png
deleted file mode 100644
index 6980e28..0000000
--- a/images/bliss_opt_logo.png
+++ /dev/null
Binary files differ
diff --git a/images/lotus_button.svg b/images/lotus_button.svg
deleted file mode 100644
index b4d1936..0000000
--- a/images/lotus_button.svg
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 21.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 viewBox="0 0 360 360" style="enable-background:new 0 0 360 360;" xml:space="preserve">
-<style type="text/css">
-	.st0{fill:#010101;}
-</style>
-<g>
-	<path class="st0" d="M185.3,263.9c2.3-3.3,4.5-6.3,6.6-9.3c12.1-16.5,25.2-32,40.2-45.9c12.9-11.9,26.8-22.2,42.6-30
-		c12.8-6.4,26.3-10.5,40.5-12.6c1.9-0.3,3.8-0.6,5.7-0.9c0.1,0.1,0.1,0.2,0.1,0.2c-3.8,8-7.6,16-11.5,24
-		c-7.6,15.6-16.7,30.2-27.9,43.5c-3.5,4.2-7.9,7.3-12.5,10.2c-10,6.2-21,10.2-32.3,13.2c-13.9,3.7-28.1,5.9-42.5,7.1
-		c-2.6,0.2-5.2,0.4-7.8,0.5C186.3,263.9,186,263.9,185.3,263.9z"/>
-	<path class="st0" d="M176.2,263.9c-2.7-0.2-5.1-0.3-7.5-0.5c-14.2-1.1-28.2-3.1-42-6.7c-11.1-2.8-21.9-6.6-31.9-12.3
-		c-8.1-4.6-14.7-10.8-20.3-18.3c-10.9-14.6-19.8-30.4-27.3-46.9c-2.1-4.7-4.4-9.3-6.6-14c0.2,0,0.4,0,0.6,0
-		c27.7,3.3,52,14.3,73.9,31.3c16.2,12.7,30.4,27.4,43.2,43.4c6,7.5,11.5,15.3,17.2,23C175.7,263.2,175.9,263.4,176.2,263.9z"/>
-	<path class="st0" d="M178.9,260.9c-0.5-0.4-0.9-0.6-1.2-1c-5.7-7.6-11.3-15.2-17.1-22.7c-2.7-3.5-5.6-6.8-8.6-10.1
-		c-5.2-5.6-10.4-11.2-15.7-16.6c-3-3-6.3-5.8-9.4-8.7c-0.4-0.4-0.7-0.9-0.9-1.5c-4.5-16.1-5.8-32.5-5.3-49.1
-		c0.4-10.4,1.4-20.6,3.4-30.8c0.1-0.4,0.2-0.8,0.3-1.4c0.4,0.3,0.8,0.5,1.1,0.8c7.7,6.5,14.3,14.2,20.1,22.4
-		c13.9,19.5,22.8,41.2,28,64.6c3.9,17.4,5.5,35.1,5.3,53c0,0.2,0,0.4,0,0.6C179.1,260.5,179.1,260.5,178.9,260.9z"/>
-	<path class="st0" d="M182.5,261c-0.1-0.7-0.1-0.9-0.1-1.1c-0.2-21.1,2-42,7.6-62.4c5.9-21.4,15-41.2,28.4-58.9
-		c5.2-6.9,11-13.4,17.7-18.9c0.2-0.2,0.4-0.3,0.6-0.4c0,0,0.1,0,0.3,0c0.1,0.3,0.2,0.7,0.2,1c3.1,16,4.2,32.2,3.3,48.4
-		c-0.6,10.6-2.1,21.1-5,31.4c-0.2,0.9-0.9,1.7-1.5,2.4c-1.5,1.5-3.1,2.7-4.6,4.2c-3.4,3.3-6.9,6.6-10.2,10
-		c-4.8,5.1-9.6,10.3-14.1,15.7c-6.5,7.9-12.6,16.1-18.9,24.1c-0.8,1.1-1.6,2.3-2.4,3.4C183.6,260.2,183.1,260.5,182.5,261z"/>
-	<path class="st0" d="M181.4,91.8c3.8,4.2,6.8,8.7,9.4,13.6c6.8,12.5,10.8,26,12.8,40.1c0.3,2.3,0.6,4.7,0.8,7.1
-		c0,0.4-0.1,0.9-0.2,1.2c-3.5,6.3-6.8,12.7-9.4,19.4c-2,5.1-4,10.3-5.7,15.5c-2.6,7.9-4.6,16-6,24.2c-0.8,4.7-1.4,9.4-2.1,14.1
-		c0,0-0.1,0.1-0.2,0.2c-0.3-2-0.5-3.9-0.8-5.8c-0.9-5-1.7-10-2.7-14.9c-1.6-8-3.8-15.8-6.6-23.4c-2.2-5.9-4.7-11.6-7.1-17.4
-		c-0.9-2.1-2-4.1-3-6.1c-0.1-0.3-0.2-0.7-0.2-1c1-17.1,4.3-33.7,11.2-49.5c2.5-5.8,5.5-11.3,9.2-16.4
-		C181,92.3,181.2,92.1,181.4,91.8z"/>
-	<path class="st0" d="M121.5,197.1c-2.6-2-5.1-4-7.6-5.8c-6.3-4.7-12.8-9-19.6-12.7c-2.6-1.4-5.3-2.7-7.9-4.1
-		c-0.4-0.2-0.9-0.7-1.1-1.1c-6.1-12.9-10.2-26.3-11.3-40.5c-0.2-2.5,0-5,0-7.7c0.4,0.1,0.9,0.2,1.3,0.4c7.2,2.8,13.7,6.9,19.9,11.4
-		c7.9,5.8,15.1,12.5,21.8,19.7c0.4,0.4,0.6,1.1,0.6,1.6c0.1,2.1-0.1,4.1,0.1,6.2c0.3,5.1,0.5,10.2,1.1,15.2c0.7,5.5,1.8,11,2.8,16.5
-		C121.5,196.5,121.5,196.8,121.5,197.1z"/>
-	<path class="st0" d="M287.6,125.2c0,0.5,0.1,0.9,0.1,1.3c0.1,10.9-2,21.4-5.5,31.6c-1.8,5.2-4,10.1-6,15.2
-		c-0.2,0.6-0.9,1.2-1.5,1.5c-8.4,4-16.3,8.8-23.8,14.2c-3.6,2.6-7.2,5.4-10.9,8.2c0.3-1.4,0.6-2.7,0.8-4c0.7-4.4,1.5-8.8,2.1-13.2
-		c0.5-3.8,0.7-7.5,0.9-11.3c0.2-3.5,0.1-7,0.2-10.5c0-0.4,0.1-0.9,0.4-1.2c9.1-9.8,19-18.7,30.6-25.5c3.8-2.2,7.9-3.9,11.8-5.9
-		C287,125.3,287.2,125.3,287.6,125.2z"/>
-</g>
-<path class="st0" d="M180.9,332.2c-82.8,0-150-67.2-150-150s67.2-150,150-150s150,67.2,150,150S263.8,332.2,180.9,332.2z
-	 M342.1,181.3c0-89.5-72.6-162.1-162.1-162.1S17.9,91.8,17.9,181.3S90.5,343.4,180,343.4S342.1,270.8,342.1,181.3z"/>
-</svg>
diff --git a/index.html b/index.html
index af0a8bd..89bc9f8 100644
--- a/index.html
+++ b/index.html
@@ -29,7 +29,7 @@
   <!-- Navbar -->
   <nav class="navbar navbar-expand-md navbar-light fixed-top bg-light" style="padding-right: 41px;">
     <div class="container pt-6">
-      <a class="navbar-brand" href="#"><img src="images/BlissIcon_Smal_wl.png" width="50"
+      <a class="navbar-brand" href="#"><img src="images/bliss-brand-icon.png" width="50"
           class="d-inline-block align-top" alt="" style="-webkit-filter: invert(100%)"></a>
       <div class="row">
         <div class="col-md-12"><a class="navbar-brand" href="#"><b><b>BlissRoms</b></b></a></div>
