
@import url("https://fonts.googleapis.com/css?family=Comfortaa:400,700,300|Quattrocento");
.about-tools ul li, .contact-social-icons ul a li {
  text-align: center; }

.centered {
  float: none;
  margin-left: auto;
  margin-right: auto; }

.break {
  clear: both;
  margin-top: 10px; }

@media (min-width: 768px) {
  .pull-right-sm {
    float: right !important; }
  .pull-left-sm {
    float: left !important; }
  .container {width: 768px}
  .navbar-right {margin-right: 0;}
  .navbar>.container .navbar-brand, .navbar>.container-fluid .navbar-brand {margin-left: 0;padding-left: 15px}
}
@media (min-width: 992px) {
  .pull-right-md {
    float: right !important; }
  .pull-left-md {
    float: left !important; }
  .container {width: 94%;}
}
@media (min-width: 1200px) {
  .pull-right-lg {
    float: right !important; }
  .pull-left-lg {
    float: left !important; }
  .container {width: 1170px;}
  .portfolio-projects .col-lg-6 {width: 100%}
  .navbar > .container {max-width: 1170px}
}
@media (min-width: 1366px) {
  #portfolio > .container, #about > .row {width: 90%;max-width: 1600px;margin-left:auto;margin-right: auto;}
  .navbar > .container {max-width: 1170px}
}
* {
  box-sizing: border-box; }

html {
  position: relative;
  height: 100%;
  width: 100%; }

img {
  width: 100%; }

body {
  height: 100%;
  font-family: "Comfortaa", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  background-color: #0080ff;
  /* Margin bottom by footer height */
  margin-bottom: 60px; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Comfortaa", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  color: #07374a; }
h1, .h1 {font-size: 64px;}
h2, .h2 {font-size: 42px;}
h4, .h4 {font-weight: bolder;}

p {
  font-family: "Comfortaa", sans-serif;
  color: #ffffff;
  margin: 0 0 30px; }

a, .btn {
  -webkit-transition: color .2s ease 0s, border-color .2s ease 0s, background-color .2s ease 0s;
  transition: color .2s ease 0s, border-color .2s ease 0s, background-color .2s ease 0s;
}

a:hover, a:focus, a:active {text-decoration: none;}

body > .container-fluid {
  padding: 0; }

#portfolio > .container {
  padding-left: 30px;
  padding-right: 30px;
}
#portfolio > div > div > div {padding-right: 0;padding-left: 0}

.row,
.container-fluid>.navbar-collapse,
.container-fluid>.navbar-header,
.container>.navbar-collapse,
.container>.navbar-header {
  margin:auto;
}

.container-fluid .text-muted {
  margin: 20px 0; }

.btn:focus, a:focus {
  outline: none !important; }

.navbar {
  height: 70px;
  background-color: transparent;
  background: transparent;
  border: none;
  color: #ffffff;
  z-index: 100;
  margin-bottom: 0;
  padding-left: 30px;
  padding-right: 30px;
  border-radius: 0;
  -webkit-transition: background-color .2s ease 0s;
  transition: background-color .2s ease 0s; }
.navbar > .container {padding: 4px 0 0 0;width: 100%;margin-top:2px;}
.navbar-brand {
  opacity: 0;
  margin-top: 5px;
  padding: 15px 0;
  color: #ffffff;
  font-weight: 400; }

.navbar-default .navbar-nav > li > a {
  color: #ffffff;
  font-weight: 500;
  font-size: 1em;
  text-transform: lowercase;
  margin: 3px 5px;
  border: 1px solid transparent;
  border-radius: 5px;
  -webkit-transition: color .2s ease 0s, border-color .2s ease 0s;
  transition: color .2s ease 0s, border-color .2s ease 0s; }
  .navbar-default .navbar-nav > li:last-child > a {margin-right: 0}
.navbar-default .navbar-nav > li > a:hover {
  color: #ffffff;
  border: 1px solid #ffffff; }
.navbar-default .navbar-nav > li > a:active,
.navbar-default .navbar-nav > li > a:focus,
.navbar.solid .navbar-nav > li > a:active, .navbar.solid .navbar-nav > li > a:focus {
  color: rgba(255,255,255,0.8);
  border: 1px solid rgba(255,255,255,0.8); }
.navbar-default .navbar-nav > li > a:visited {
  color: #ffffff;
  text-decoration: none; }
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover {
  background-color: transparent;
  color: #ffffff; }
.navbar-default .navbar-nav > .active > a:focus,
.navbar.solid .navbar-nav > li > a:active,
.navbar.solid .navbar-nav > li > a:focus {
  background-color: transparent;
  color: rgba(255,255,255,0.8); }
.navbar-toggle {margin-right:0px;padding:15px;}
.navbar-default .navbar-toggle {
  border-color: #ffffff; }
  .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
    background-color: #07374a;
  }
  .navbar-default .navbar-toggle .icon-bar {
    color: #ffffff;
    background-color: #ffffff; }
.navbar-default .navbar-collapse.collapse.in ul {
  background-color: #07374a;
}
.navbar-collapse.collapsing {
  background-color: #07374a;
}
.navbar-default .navbar-toggle .icon-bar {
    color: #ffffff;
    background-color: #ffffff; }
.navbar-default .navbar-collapse.collapse.in ul {
  background-color: #07374a; 
}
.navbar-collapse.collapse.collapsing {
  background-color: #07374a;
}
  
.navbar-collapse.collapse.show {
  background-color: #07374a;
  -webkit-transition: background-color .2s ease 0s;
  transition: background-color .2s ease 0s;
  -webkit-border-bottom-left-radius: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.navbar-collapse .navbar-nav > li > a,
.navbar-collapse .navbar-nav > li > a:hover,
.navbar-collapse .navbar-nav > li > a:focus,
.navbar-collapse .navbar-nav > li > a:active {
  border-color: transparent !important;
}

/* Solid class attached on scroll past first section */
.navbar.solid {
  background-color: #07374a;
  -webkit-transition: background-color .2s ease 0s;
  transition: background-color .2s ease 0s;
  box-shadow: 0 0 4px rgba(7, 55, 74, 0.2); }
  .navbar.solid .navbar-brand {
    opacity: 1;
    display: inline-block;
    color: #ffffff;
    -webkit-transition: color .2s ease 0s, border-color .2s ease 0s, opacity .2s ease 0s;
    transition: color .2s ease 0s, border-color .2s ease 0s, opacity .2s ease 0s; }
  .navbar.solid .navbar-nav > li > a {
    color: #ffffff;
    -webkit-transition: color .2s ease 0s, border-color .2s ease 0s;
    transition: color .2s ease 0s, border-color .2s ease 0s; }

.cover {
  padding: 6% 0 8% 0; }
  .cover.top {
    padding: 10vh 0 15vh 0;
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #0080ff; }
  .cover.bottom {
    padding: 6% 0 5.5% 0; }
  body > .cover.bottom:nth-child(4) {padding: 6% 0 5.5% 0 !important}
  @media (max-width: 550px) {
    .cover, .cover.bottom {padding: 17.5% 30px 17.5% 30px; } }

.headline {
  padding-top: 6.25em; }
  body > div.container-fluid > div.row.cover.top > div > .row > .headline > img {
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
    padding-right: 30px;
    padding-left: 30px;
    display: block; }
  @media screen and (min-width: 768px) {
    .headline {
      padding-top: 3.75em; } }
  @media screen and (min-width: 992px) {
    .headline {
      padding-top: 1.5625em; } }
  @media screen and (min-width: 1200px) {
    .headline {
      padding-top: 0px; } }

#about {
  background-color: #07374a; }
  #about h2 {
    color: #0080ff; }
  #about > div > div.row.break > div > p {margin-bottom: 15px}

.profile-img {
  margin-bottom: 15px;
  width: 120px; }

.about, .about-info, .about-tools, .about-last {
  padding: 4% 30px 1% 30px;
  font-size: 18px; }
  .about-tools {
    padding-top: 4.375em;
    font-size: 18px; }
    @media screen and (min-width: 992px) {
      .about-tools {
        padding-top: 5.625em; } }
    .about-tools ul:first-child {
      padding-left: 0px; }
    .about-tools ul {
      color: #0080ff;
      list-style: none; }
      .about-tools ul li {
        padding-top: 0.75em; }
  .about-last {
    padding-top: 3.125em;
    padding-bottom: 0;
    font-size: 1.125em; }
    @media screen and (min-width: 992px) {
      .about-last {
        padding-top: 0; } }
    .about-last p {
      color: #0080ff; }

#portfolio {
  background-color: #0080ff; }

.portfolio-projects--btn {
  background: transparent;
  color: #07374a;
  border: 1px solid #07374a;
  border-radius: 5px;
  margin-bottom: 1.25em;
  font-size: 18px;
  margin: 0 8px; }
  .portfolio-projects--btn:hover {
    background: #07374a;
    color: #ffffff; }
  .portfolio-projects--btn:focus,
  .portfolio-projects--btn:active {
    background: #052a38;
    color: #ffffff; }
.portfolio-projects--image {
  margin-bottom: 1.875em;
  padding-top: 5%; }

@media screen and (min-width: 768px) {
  .portfolio-projects {
    margin-top: 0.625em; } }
.portfolio-projects--title {
  margin-top: 0.9375em;
  font-size: 20px; }
  @media screen and (min-width: 768px) {
    .portfolio-projects--title {
      margin-top: 0;
      font-size: 21px; }
    .portfolio-projects--desc {
      margin-top: 30px;
      margin-bottom: 30px;
      font-size: 16px; }
      .portfolio-projects--btn {font-size: 14px;margin:0 4px 16px 4px;}
      #portfolio > div > div > div:nth-child(1) > div > div.col-sm-5.text-center,
      #portfolio > div > div > div:nth-child(2) > div > div.col-sm-7.text-center.pull-right-sm {padding-left:0;}
      #portfolio > div > div > div:nth-child(1) > div > div.col-sm-7.text-center,
      #portfolio > div > div > div:nth-child(2) > div > div.col-sm-5.text-center.pull-right-sm {padding-right: 0;} }
  @media screen and (min-width: 992px) {
    .portfolio-projects--title {
      margin-top: 15%;
      font-size: 30px; }
    #portfolio > div > div > div:nth-child(2) > div > div.col-sm-5.text-center.pull-right-sm > a:nth-child(4) {margin-left:-8px;}
    #portfolio > div > div > div:nth-child(2) > div > div.col-sm-5.text-center.pull-right-sm > a:nth-child(5) {margin-right:-8px;} }
  @media screen and (min-width: 1080px) {
    .portfolio-projects--title {
      margin-top: 24%;
      font-size: 21px; }
    }
  @media screen and (min-width: 1200px) {
    .portfolio-projects--title {
      margin-top: 24%;
      font-size: 24px; }
      .portfolio-projects--desc {
      margin-top: 30px;
      margin-bottom: 30px;
      font-size: 18px; }
    .portfolio-projects .col-lg-6 + .col-lg-6 + .col-lg-6 {margin-top:40px}
    .portfolio-projects--btn {font-size: 18px;margin:0 8px;} }
  @media screen and (min-width: 1366px) {
    .portfolio-projects--title {margin-top:28%;}
  }
  @media (min-width: 1500px) {
    .portfolio-projects--title {font-size: 28px;margin-top:31%;}
    .portfolio-projects--btn {font-size: 21px}
  }

#contact {
  background-color: #07374a;
  padding-left: 15px;
  padding-right: 15px }
  #contact h2 {
    color: #0080ff; }

.contact-social-icons p {
  color: #0080ff; }
.contact-social-icons > ul {padding:0;margin:0 auto;}
.contact-social-icons ul a {
  color: #0080ff;
  list-style: none; }
  .contact-social-icons ul a:hover,
  .team-links-list a:hover,
  .family-links-list a:hover {
    color: #ffffff; }
  .contact-social-icons ul a:focus,
  .contact-social-icons ul a:active,
  .team-links-list a:focus,
  .team-links-list a:active,
  .family-links-list a:focus,
  .family-links-list a:active {
    color: rgba(255,255,255,0.8); }
  .contact-social-icons ul a li {
    display: inline-block;
    padding: 1.25%;
    font-size: 16px }
  @media (max-width: 1200px) {
    #family > div > div.row > div.center > div {margin:1.5em 4% 3em 4%;width:42%;}
    #family > div > div.row > div.center > div:last-child {margin-bottom: 0}
  }
  @media (max-width: 720px) {
    #family > div > div.row > div.center > div {margin:1.5em 4% 3em 4%;width:92%;}
  }

.footer {
  padding-top: 1em;
  bottom: 0;
  width: 100%;
  /* Set the fixed height of the footer here */
  background-color: #052a38;

  color: #ffffff; }
.footer-role, .footer-name, .footer-description {
    color: #FFFFFF;
}
.footer-description {
    color: #fff;
    font-size: 18px;
}
.footer-role h4, .footer-links-list a {
    color: #0080ff;
}
.footer-header h4 {
    color: #0080ff;
}
#scrollIcon, #scrollTopIcon {
  margin-top: 200px;
  padding: 10px;
  font-size: 1.5em;
  color: #07374a;
  border: solid 2px #07374a;
  border-radius: 50%; }

#scrollTopIcon {
  margin-top: 10px;
  font-size: 1em;
  color: #ffffff;
  border-color: #ffffff; }

.back-to-top {
  display: none; }
  .back-to-top.visible {
    display: block; }

/* our team section */
#team, #family {
  background-color: #0080ff;
  font-weight: 700;
  font-size: 21px;  
}
.hr.invisible_hr {
    height: 0;
    padding: 0;
}
.hr.big_size_hr {
    margin: 30px 0;
}
.hr {
    clear: both;
    display: block;
    font-size: 0;
    height: 24px;
    margin: 20px 0;
    overflow: hidden;
    padding: 2px 0;
    position: relative;
    text-align: center;
    width: 100%;
}
.highlight_secondary {
    color: #FFFFFF;
}
.team-role, .team-name, .team-links-list a {
    color: #07374a;
}
.team-name, .family-name {font-size: 21px}
.team-links, .family-links {
  padding-top: .75em;
}
.team-image img, .family-image img {
  max-width:150px;
  max-height: 150px;
  margin:0 auto;
}
#team > .container .row > div {
  min-height: 300px;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
  @media (min-width: 768px) {
    #team > .container .row > div {min-height: 320px;}
    #team .col-sm-4 {
      width: 30%;
      margin:1.66666666665%;
    }
  }
  @media (min-width: 992px) {
    #team .col-md-2 {
      width: 21%;
      margin:2%;
    }
  }
  @media (min-width: 1200px) {
    #team > .container .row > div {min-height: 300px;}
  }
  @media (max-width: 700px) {
    #team > .container .row > div {min-height: 350px;}
    #team .col-xs-6 {width: 42%;margin:4%;}
  }
  @media (max-width: 500px) {
    #team > .container .row > div {min-height: 250px;}
    #team .col-xs-6 {width: 92%;margin:4%;}
  }
#team > .container .row > .row, #team > .container {padding-left:0;padding-right: 0}

/* Bliss family section */
#family {
  background-color: #07374a;
}
#family > div > div.row > div {font-size: 18px}
.family-role, .family-name, .family-description {
    color: #FFFFFF;
}
.family-description {
    color: #fff;
    font-size: 18px;
}
.family-role h4, .family-links-list a {
    color: #0080ff;
}
.family-header h2 {
    color: #0080ff;
}
#family .about-tools {
  font-size: 20px;
}
.family-image img {
  max-width:150px;
  max-height: 150px;
  margin:0 auto;
}
.family-projects--btn {
  background: transparent;
  color: #0080ff;
  border: 1px solid #0080ff;
  border-radius: 5px;
  margin-bottom: 1.25em;
  font-weight: 700;
  font-size: 21px; }
  .family-projects--btn:hover {
    background: #0080ff;
    color: #ffffff; }
  .family-projects--btn:focus,
  .family-projects--btn:active {
    background: #0080ff;
    color: #ffffff; }

@media (max-height: 880px) {
  #scrollIcon, #scrollTopIcon {margin-top: 15vh}
}
@media (max-height: 800px) {
  #scrollIcon, #scrollTopIcon {margin-top: 10vh}
  .cover.top {padding: 7.5vh 0 12.5vh 0;}
}
@media (max-height: 750px) {
  #scrollIcon, #scrollTopIcon {margin-top: 8vh}
}
@media (max-height: 720px) {
  #scrollIcon, #scrollTopIcon {margin-top: 5vh}
  .cover.top {padding: 5vh 0 10vh 0;}
}
@media (max-height: 650px) {
  #scrollIcon, #scrollTopIcon {margin-top: 5vh}
  .cover.top {padding: 2.5vh 0 5vh 0;}
  body > div.container-fluid > div.row.cover.top > div > .row > .headline > img {max-height: 42vh;}
}
@media (max-height: 550px) {
  #scrollIcon, #scrollTopIcon {margin-top: 5vh}
  .cover.top {padding: 1.5vh 0 3vh 0;}
  .headline {padding-top:3vh;}
  body > div.container-fluid > div.row.cover.top > div > .row > .headline > img {max-height: 32vh;}
}
@media (max-height: 480px) {
  #scrollIcon, #scrollTopIcon {margin-top: 0}
  .cover.top {padding: 3vh 0 3vh 0;}
  .headline {padding-top:1.5vh;}
  body > div.container-fluid > div.row.cover.top > div > .row > .headline > img {max-height: 32vh;}
}
@media (max-height: 320px) {
  .cover.top {padding: 1vh 0 3vh 0;}
  .headline {padding-top:1vh;}
  body > div.container-fluid > div.row.cover.top > div > .row > .headline > img {max-height: 25vh;}
}
@media (max-width: 768px) {
  .container-fluid {padding:30px 0 !important;}
  .h1, .h2, .h3, h1, h2, h3 {
    margin-top: 10px;
    margin-bottom: 10px;
  }
  .lead, .about, .about-info, .about-tools, .about-last {font-size: 16px}
  .row.cover.top .lead {
    max-width: 350px;
    margin-left:auto;
    margin-right: auto
  }
  .h4, h4 {font-size: 20px}
  #portfolio h2 {padding-bottom: 0}
  #portfolio > .container {padding-right: 0;padding-left: 0}
  .portfolio-projects--btn {margin-top:1.25em;margin-left: auto;margin-right: auto}
  #portfolio > div > div > div:nth-child(2) > div > div.col-sm-5.text-center.pull-right-sm > a:nth-child(4) {margin-right: 4px}
  #portfolio > div > div > div:nth-child(2) > div > div.col-sm-5.text-center.pull-right-sm > a:nth-child(5) {margin-left: 4px}
  #scrollIcon, #scrollTopIcon {font-size: 1em}
}
@media (max-device-height: 480px) and (orientation: landscape) {
  .navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse {
    max-height: 240px;
  }
  .navbar-nav>li>a {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media (max-width: 360px) {
  .h1, h1 {font-size: 32px;}
  .cover, .cover.bottom {
    padding-left: 15px;
    padding-right: 15px;
  }
}
