body {  
  padding-top: 54px;
}
@media (min-width: 992px) {
  body {
    padding-top: 0;
    padding-left: 17rem; } }

.bg-primary {
  background-color: #0B3C5D !important; }

a {
  color: #0B3C5D; }
  a:hover, a:focus, a:active {
    color: rgb(10, 48, 73); }
      
/* nav bar */

#sideNav .navbar-nav .nav-item .nav-link {
  font-weight: 600;
  text-transform: uppercase; }
  #sideNav .navbar-brand .img-profile {
    max-width: 2.5rem;
    max-height: 2.5rem;
    margin:0 !important;
    padding: 0 !important; }
@media (min-width: 992px) {
  #sideNav {
    text-align: center;
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    width: 17rem;
    height: 100vh; }
    #sideNav .navbar-brand {
      display: flex;
      margin: auto auto 0;
      padding: 0.5rem; }
      #sideNav .navbar-brand .img-profile {
        max-width: 10rem;
        max-height: 10rem;
        border: 0.5rem solid #ffffff33; }
    #sideNav .navbar-collapse {
      display: flex;
      align-items: flex-start;
      flex-grow: 0;
      width: 100%;
      margin-bottom: auto; }
      #sideNav .navbar-collapse .navbar-nav {
        flex-direction: column;
        width: 100%; }
        #sideNav .navbar-collapse .navbar-nav .nav-item {
          display: block; }
          #sideNav .navbar-collapse .navbar-nav .nav-item .nav-link {
            display: block; } }

/* social media icons */

.list-social-icons a .fa-lg {
  font-size: 2.5rem; }

/* general section */

section.content-section {
  padding-bottom: 2.5rem !important; }
  section.content-section > .header {
    text-align:center;
    color:white;
    background-color:#328CC1;
    padding:1.5rem;
    margin-bottom:2.5rem; }

/* text sections */

.verbose-text {
  max-width: 1100px; }
  .verbose-text .p {
    margin-bottom:1.5rem !important;
  }

/* grayed out client images */

#clients img {
  vertical-align: middle;
  padding:10px;
}

/* portfolio images */

.portfolio-item {
  display: block;
  position: relative;
  overflow: hidden;
  max-width: 530px;
  margin: auto 1rem 1rem; }
  .portfolio-item .caption {
    display: flex;
    height: 100%;
    width: 100%;
    background-color: rgba(17, 43, 68, 0.2);
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1; } 
    .portfolio-item .caption .caption-content {
      color: #fff;
      margin: auto 2rem 0rem; }      
      .portfolio-item .caption .caption-content .portfolio-header {
        margin-bottom:2rem;
        display: table;
        height:4rem;
        padding-left:2rem;
        padding-right:2rem;
        background-color: #0B3C5D;
        font-size: 0.8rem;
        text-transform: uppercase;
        font-weight:bold; }
        .portfolio-item .caption .caption-content .portfolio-header > span {
          display:table-cell;
          vertical-align: middle;
        }
        .portfolio-item .caption .caption-content .portfolio-header i {
          margin-left:.75rem;
        }
      .portfolio-item .caption .caption-content .caption-body {
        transition: .7s;
        overflow:hidden;
        display:flex;
        height:0rem; }
      .portfolio-item:hover .caption .caption-content .caption-body {
        height:13rem;
      }
      /*
      .portfolio-item .caption .caption-content p {
        font-weight: 300;
        font-size: 1.2rem; }
      */
  /*@media (min-width: 992px) {*/
    .portfolio-item {
      max-width: none;
      margin: 0; }
      .portfolio-item .caption {
        -webkit-transition: -webkit-clip-path 0.25s ease-out, background-color 0.7s;
        /*
        -webkit-clip-path: inset(0px);
        clip-path: inset(0px);*/ }
        .portfolio-item .caption .caption-content {
          transition: opacity 0.25s;
          /*
          margin-left: 5rem;
          margin-right: 5rem;
          margin-bottom: 5rem;*/ }
          /*
      .portfolio-item img {
        -webkit-transition: -webkit-clip-path 0.25s ease-out;
        -webkit-clip-path: inset(-1px);
        clip-path: inset(-1px); }
        
      .portfolio-item:hover img {
        -webkit-clip-path: inset(2rem);
        clip-path: inset(2rem); }
        */
      .portfolio-item:hover .caption {
        background-color: #0B3C5Dcc;
        /*
        -webkit-clip-path: inset(2rem);
        clip-path: inset(2rem); */} /*}*/

