
:root {
  --main-color: #b6ceff;
  --hover-color: #527cff;
  --visit-color: #006798;
  --active-color: #008acb;
  --icon: "\f105";
  --border-color: #ddd;
  --sidebar-width: 160px;
}

* {
  box-sizing: border-box;
}

.wrapper {
  box-shadow: 0px 0px 10px var(--main-color);
  width: 80%;
  margin: 20px auto;
}

a {
  transition: color ease-in-out .3s, background ease-in-out .2s;
}

a.custom:link {
  color: #0090D7;
  text-decoration:none;
}
a.custom:visited {
  color: var(--visit-color);
  text-decoration:underline;
}
a.custom.visited{
  color: var(--visit-color);
  text-decoration:underline;
}
a.custom:hover {
  color: var(--hover-color);
  text-decoration:none;
}
a.custom:active {
  color: var(--active-color);
  text-decoration:none;
}

.header {
  margin: 0 auto;
  overflow: hidden;
  border-bottom: 1px solid var(--border-color);
}

.body {
  padding-top: 20px;
}

.content {
  margin-left: var(--sidebar-width);
  display: flex;
  flex-flow: column nowrap;
  height: 100%;
}

.logo-and-nav-wrap {
  display: flex;
  align-items: center;
}

.site-nav-wrap {
  font-weight: 200;
  color: var(--main-color);
  overflow: hidden;
  width: fit-content;
  font-weight: 200;
}

.logo-wrap {
  padding: 0 20px;
  width: var(--sidebar-width);
}

.nav {
  display: flex;
  white-space: nowrap;
  overflow: hidden;
  padding-right: 30px;
  padding-left: 12px;
}

.single-breadcrumb-wrap:before {
  content: '';
  background-image: linear-gradient(-33deg, #ff0d64 0, #9c3483 100%);
  width: 100%;
  height: 100px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  transition: transform ease-in-out .5s;
  transform: scalex(0);
  transform-origin: left top;
  display: none;
}

.single-breadcrumb-wrap:hover:before {
  transform: scalex(1);
}

.single-breadcrumb-wrap {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 0 auto;
  flex-shrink: 1000;
  display: inline-block;
  padding: 10px 5px 15px 0;
  border-bottom: 1px solid transparent;
  color: var(--main-color);
  position: relative;
  transition: transform ease-in-out .3s;
}
.single-breadcrumb-wrap:hover {
  flex: 1 0 auto;
  opacity: 1;
  color: var(--hover-color);
  transform: translatey(-2px);
  transition: none;
  opacity: 1;
  transition: transform ease-in-out .4s;
}
.single-breadcrumb-wrap:hover a {
  color: var(--hover-color);
}
.single-breadcrumb-wrap:hover .sep i {
  transform: translatex(8px);
  color: var(--hover-color);
  transition: transform ease-in-out .3s;
}
.single-breadcrumb-wrap:hover ~ .single-breadcrumb-wrap {
  transition: transform ease-in-out .4s;
}
.single-breadcrumb-wrap:first-child {
  flex: 0 0 auto;
  flex-shrink: 0.5;
  font-weight: normal;
  color: var(--hover-color);
  opacity: 1;
}
.single-breadcrumb-wrap:first-child:after {
  left: 0;
}
.single-breadcrumb-wrap:first-child .sep {
  display: none;
}

.single-breadcrumb-wrap.current {
  flex: 1 0 auto !important;
  font-weight: normal;
}
.single-breadcrumb-wrap.current a {
  color: var(--hover-color);
}
.single-breadcrumb-wrap.current:hover {
  transform: translateY(0);
  flex: 1 0 auto !important;
}
.single-breadcrumb-wrap.current:hover:after {
  display: none;
}

.single-breadcrumb-wrap:after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 28px;
  top: 36px;
  width: 100%;
  height: 1px;
  background: var(--hover-color);
  transform: scale3d(0, 1, 1);
  transform-origin: 0% 50%;
  transition: transform ease-in-out .15s .10s, opacity ease-in-out .25s;
  opacity: .5;
}

.single-breadcrumb-wrap:hover:after {
  transform: scale3d(1, 1, 1);
  opacity: 1;
  transition: opacity ease-in-out .1s, transform ease-in-out .2s;
}

.breadcrumb {
  flex: 0 1 auto;
}

.sep {
  padding-left: 10px;
  padding-right: 10px;
}
.sep i.fa:before {
  content: '>';
  transition: transform ease-in-out .2s;
}