body {
    -ms-scrollbar-base-color: #222;
    -ms-scrollbar-track-color: #555;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
.esriPopup .titleButton.maximize {
    display: none;
}
div.esriPopupWrapper .zoomTo {
  display: none;
}
#appcontainer {
    min-width: 800px;
    width:100%;
    height:100vh;
    position:relative;
    overflow:auto;
    background: url('../../images/bgpattern.jpg');
    color:#fff;
}
#topline {
    position: fixed;
    z-index: 2;
    top:0;
    left:0;
    min-width:800px;
    width:100%;
    height: 50px;
    background:rgba(0,0,0,.75);
}
#menu {
    position: absolute;
    z-index: 9;
    top:50px;
    left:0;
    width:50px;
    height: calc(100vh - 50px);
    background:rgba(0,0,0,.85);
}
#menu ul {
    list-style: none;
    margin: 20px 0 0 0;
    padding:0;
}
#menu ul li:hover, #menu ul li.active {
    background:rgba(68, 112, 161, 0.80);
    transition: .3s;
}
#menu ul li svg  {
    fill:#fff;
    width:30px;
    height:30px;
    padding: 10px;
}
#menu a svg#svgBug {
    fill:#666;
    position: absolute;
    width:30px;
    height:30px;
    padding:10px;
    bottom:20px;
    left:0px;
}#menu a:hover svg#svgBug {
    fill:#f00;
    transition:.3s;
}
.highlight {
    color:rgb(218, 239, 121);
}
.top-buffer, .top-buffer-1 {
    margin-top:1em;
}
.top-buffer-2 {
    margin-top:2em;
}
#sidebar {
    position: absolute;
    z-index: 2;
    top:50px;
    left:50px;
    width:auto;
    min-width: 300px;
    height: calc(100vh - 50px);
    background:rgba(0,0,0,.80);
    overflow-y: auto;
    box-sizing: border-box;

}
#sidebar h3 {
    font-size:1em;
    font-weight:400;
    text-transform: uppercase;
    text-align: center;
    color:#ccc;
}

#map .esri-popup .esri-show-dock .esri-dock {
        display: none;
      }

input, textarea, select {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    background: none;
    border: solid 1px rgba(255, 255, 255, 0.2);
    padding: 1em;
    box-sizing: border-box;
    color: #d0dff1;
    margin-bottom: 1em;
}

option {
    background: #222;
    color: white;
}

option:hover {
    background: #555;
}

option[selected] {
    background: #333;
}

div.eventEditForm {
    padding: 1em;
}

div.input-block .dd-option {
    background: #222;
    color: white;
}

div.input-block .dd-option:hover {
    background: #555;
    color: white;
}

div.input-block .dd-pointer-down {
    border: solid 5px transparent;
    border-top: solid 5px #fff;
}

div.input-block .dd-pointer-up {    
    border: solid 5px transparent !important;
    border-bottom: solid 5px #fff !important;
}

div.input-block .dd-option.dd-option-selected {
    background: #333;
}

div.input-block .dd-option.dd-option-selected:hover {
    background: #555;
}

div.input-block {
    display: block;
    position: relative;
    clear: both;
    margin-bottom: 1em;
}

div.input-block input:not(:valid) + label, div.input-block textarea:not(:valid) + label {
    display: none;
}

div.input-block input:valid + label, div.input-block textarea:valid + label, div.latlng label {
    position: absolute;
    top: 0px;
    bottom: 0;
    left: 0px;
    right: 0px;
    width: 100%;
    transition: 0.2s;
    background: transparent;
    padding: 2px 6px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 60%;
}

div.address-search > span {
    position: absolute;
    right: 15px;
    top: 18px;
    cursor: pointer;
    z-index: 2;
}

#map {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100vh;
}
#timer {
    position: absolute;
    z-index: 11;/* logo is 10 */
    top:-10px; 
    left:14px;
    width:71px;
    height:71px;
}
#timer > svg {
    width: 100%;
    display: block;   
}
#topline > h1 {
    font-size:1.3em;
    font-weight: 400;
    position: absolute;
    top:10px;
    left:95px;
    display: inline;
    margin:0;
    padding:0;
}
#topline > h2 {
    font-size:1.1em;
    font-weight: 400;
    position: absolute;
    top:12px;
    right:25px;
    display: inline;
    margin:0;
    padding:0;
    color:#bbb;
    cursor:pointer;
}
#topline h2:hover {
    color:#fff;
}
#topline a {
    color:#fff;
    text-decoration: none;
}

#hcglogo {
    position: absolute;
    top:-10px;
    left:15px;
    width:69px;
    z-index: 10;
}
.tooltip {
  position: absolute;
  left: 14px;
  top: -20px;
  background-color: rgba(68, 112, 161, 0.8);
  padding: .8em;
  -webkit-transform: scale(0.9);
  transition: .3s;
  opacity: 0;
  visibility: hidden;
  font-size: .8em;
  z-index: 1;
  width: 330px;
  text-align: center;
}
.tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-top: solid 10px rgba(68, 112, 161, 0.8);
  border-left: solid 10px transparent;
  border-right: solid 10px transparent;
}
.tooltip.show {
  -webkit-transform: scale(1.05);
  opacity: 1;
  font-size: .8em;
  visibility: visible;
}
.sectionTitle {
   border-bottom:solid 1px #555;
}
.toggleable > div {
    padding:1em;
    border-bottom:solid 1px #555;
    position:relative;
    font-size:.85em;
}
.toggleable img {
    width:40px;
    height:40px;
    position:absolute;
    right:10px;
    top:8px;
}
.toggleable > div > div {
    /* a div is made by the icheck plugin */
    margin-right:10px !important;
}

.stack-menu {
    position: absolute;
    width:300px;
    height: calc(100vh - 50px);
    /*background:rgb(47,47,47);*/
    overflow-y:auto;
    overflow-x:hidden;
    transition: width .3s, left .3s, opacity .6s;
}
.stack-menu-content {
    position: relative;
}
.stack-menu-icon {
    position: fixed;
    top:-30px;
    left:0px;
    opacity: 0;
    transition: top .3s, opacity .6s;
    width:30px;
    height:30px;
    display: block;
}
.stack-menu-icon svg {
    fill:#a5a5a5;
    width:30px;
    height:30px;
}

.searchControls {

}

.searchControls h4 {
    padding: .3em 1em;
    font-size: .75em;
    background: rgba(255,255,255,.1);
    text-transform: uppercase;
    margin: 0;
    font-weight: 400;
}
.searchBar {
    position: relative;
    margin-bottom: 1em;
    transition: .3s;
    opacity: 1;
}

.searchBar.disabled {
    opacity: .3;
    cursor: not-allowed;
}

.searchBar.disabled * {
    cursor: not-allowed;
}

.searchBar > span {
    position: absolute;
    right: 15px;
    top: 15px;
    cursor: pointer;
    z-index: 3;
}

.searchBar > input {
    width: 100%;
    background: transparent;
    border: solid 1px rgba(255,255,255,.15);
    padding: 1em 3em 1em 1em;
    box-sizing: border-box;
    color: #d0dff1;
}

.documentList {
    list-style: none;
    padding: 0px;
    width: 400px;
}
.cemeteryPhoto {
    border-top: solid 1px #555;
    padding: 1em;
    box-sizing: border-box;
    position: relative;
    width: 400px;
}
.cemeteryPhoto:hover {
    background: rgba(0,0,0,0.25);
    transition: .3s;
    cursor: pointer;
}
.cemeteryPhoto img {
    width: 90%;
    margin: 5%;
}
ul.searchResults {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul.searchResults li {
    position: relative;
    border-bottom: solid 1px rgba(255, 255, 255, 0.15);
    padding: .5em 3em .5em 1em;
    cursor: pointer;
    transition: background-color .3s;
    font-size: 1.5em;
}
ul.searchResults li:hover {
    background-color: rgba(68, 112, 161, 0.8);
}
ul.searchResults li small {
    display: block;
    color: #aaa;
    transition: color .3s;
}
ul.searchResults li:hover small {
    color: #d0dff1;
}
.details-container {
    width: 400px;
}
.details-category {
    padding: .3em 1em;
    font-size: .8em;
    background: rgba(255,255,255,.1);
    text-transform: uppercase;
}
.details-description {
    font-size: 1em;
    padding: 1em;
    display: block;
}
.dl-horizontal {
    font-size: 1em;
    min-width:350px;
    padding: 0 1em;
}
.dl-horizontal hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid rgba(255,255,255,0.1);
    margin: 1em 0;
    padding: 0;
}
.dl-horizontal dt {
    float: left;
    width: 120px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color:#aaa;
    margin-left:5px
}
.dl-horizontal dt[title]:hover {
    cursor: help;
}
.dl-horizontal dd {
    margin-left: 140px;
    margin-bottom:.4em;
    line-height: 1.2em;
}
.dl-horizontal dd:before,
.dl-horizontal dd:after {
    content: " ";
    display: table;
}
.dl-horizontal dd:after {
    clear: both;
}

.stack-menu {
    -webkit-overflow-scrolling: touch;
}
.grid {
  margin: 10px;
  box-sizing: border-box;
  text-align: center;
}
.grid:after {
  content: "";
  display: table;
  clear: both;
}

[class*='col-'] {
  float: left;
  padding-right: 10px;
  box-sizing: border-box;
}
.grid [class*='col-']:last-of-type {
  padding-right: 0;
}
.col-1-3 {
  width: 33.33%;
}

.col-1-2 {
  width: 50%;
}


/* Opt-in outside padding */
.grid-pad {
  padding: 10px 0 10px 10px;
}
.grid-pad [class*='col-']:last-of-type {
  padding-right: 10px;
}

#selection, #bookmark, #tools, #imagery, #legend {
    width: 400px;
}
.well {
    margin: 1em;
}
.range-slider {
  width: 80%;
  height: 15px;
  position: relative;
  padding: 2px;
  border-radius: 2px 0 0 2px;
  background: #000;
}
.range-slider::after {
  display: block;
  content: '';
  width: 15px;
  height: 15px;
  padding: 2px 0;
  border-radius: 0 2px 2px 0;
  background: #000;
  position: absolute;
  right: -15px;
  top: 0px;
}
.range-slider .rs-handle {
  background: #558acc;
  border-radius: 2px;
  height: 15px;
  width: 15px;
  position: absolute;
  left: 15%;
  cursor: ew-resize;
  z-index: 1;
}
.range-slider .rs-value {
  font-size: .85em;
  position: absolute;
  right: -45px;
  color: #558acc;
}

/* #bookmarks */
.row {
  display: block;
  border-bottom: solid 1px rgba(255, 255, 255, 0.15);
  transition: .2s;
  border-left: solid 0px rgba(93, 137, 187, 0.8);
  position: relative;
}
.row .cell {
  display: table-cell;
  vertical-align: middle;
  padding: 1em;
  transition: .2s;
}
.row .cell.cell-condensed {
  /* padding: .5em 1em; */
}
.row .cell.content {
  width: 100%;
  /* font-size: .85em; */
}
.row .cell.content input[type='text'] {
  width: 100%;
  background-color: transparent;
  color: #fff;
  box-sizing: border-box;
  padding: .7em 1em;
  border: solid 1px rgba(255, 255, 255, 0.15);
}
.row .cell.move::after {
  font-family: 'FontAwesome';
  content: '\f0c9';
}
.row .cell.edit::after {
  font-family: 'FontAwesome';
  content: '\f040';
}
.row .cell.delete::after {
  font-family: 'FontAwesome';
  content: '\f1f8';
}
.row .cell.save::after {
  font-family: 'FontAwesome';
  content: '\f0c7';
}
.row .cell.dismiss::after {
  font-family: 'FontAwesome';
  content: '\f00d';
}
.row .cell.expand::after {
  font-family: 'FontAwesome';
  content: '\f078';
  margin-right: 10px;
}
.row .cell.expanded::after {
  font-family: 'FontAwesome';
  content: '\f077';
  margin-right: 10px;
}
.row .cell.crosshairs::after {
  font-family: 'FontAwesome';
  content: '\f05b';
}
.row .cell.dismiss:hover,
.row .cell.edit:hover,
.row .cell.delete:hover,
.row .cell.crosshairs:hover {
  background-color: rgba(68, 112, 161, 0.8);
  cursor: pointer;
}
.row .cell.expand:hover,
.row .cell.expanded:hover {
  cursor: pointer;
}
.row .cell.move:hover {
  background-color: rgba(255, 255, 255, 0.15);
  cursor: ns-resize;
}
.row .cell.save:hover {
  background-color: #6a9b6a;
  cursor: pointer;
}
.row .cell.symbol img {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.row .sub-row {
  font-size: .85em;
  display: block;
  opacity: 0;
  height: 0;
  transition: .2s ease-out;
  overflow: hidden;
}
.row .sub-row ul {
  margin: 0;
  padding: .4em 0;
  border-top: dashed 1px rgba(255, 255, 255, 0.15);
}
.row .sub-row ul li {
  padding: .6em 2.5em;
}
.row .sub-row ul li img {
  vertical-align: middle;
  width: 20px;
  height: 20px;
  margin-right: 1em;
  background-color: rgba(255, 255, 255, 0.15);
}
.row .sub-row.show {
  opacity: 1;
  height: auto;
}
.row:hover, .row.active {
  background-color: rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.row.on {
  border-left: solid 8px rgba(93, 137, 187, 0.8);
}
.row.disabled .cell {
  opacity: .4;
  cursor: default;
}

.paging-group {
  text-align: center;
  text-transform: uppercase;
  margin: 1em 0;
}
.paging-group .paging-text {
  display: inline-block;
  width: 125px;
  text-align: center;
}
.paging-group .fa {
  color: #aaa;
  cursor: pointer;
  transiton: .3s;
}
.paging-group .fa.disabled {
  color: rgba(0, 0, 0, 0.8);
}
.paging-group .fa.disabled:hover {
  color: rgba(0, 0, 0, 0.8);
}
.paging-group .fa:first-child {
  margin-right: 2em;
}
.paging-group .fa:last-child {
  margin-left: 2em;
}
.paging-group .fa:hover {
  color: #fff;
  transition: .3s;
}
.paging-group small {
  color: #ccc;
  margin: 0 .5em;
}

.no-select {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.grid-btn.disabled {
  text-align: center;
  border: solid 1px rgba(255, 255, 255, 0.15);
  font-size: .85em;
  color: #555;
  padding: .75em 0;
  border-radius: 2px;
  cursor: not-allowed;
  transition: .2s;
}
.grid-btn.disabled .fa {
    color: #555;
}
.grid-btn.disabled:hover {
  background: rgba(68, 112, 161, 0.0);
  color: #555;
}

.grid-btn, .esriMeasurement .dijitContentPane.esriMeasurementButtonContainer .esriButton .dijitButtonNode .dijitButtonContents {
  text-align: center;
  border: solid 1px rgba(255, 255, 255, 0.15);
  font-size: .85em;
  color: #aaa;
  padding: .75em 0;
  border-radius: 2px;
  cursor: pointer;
  transition: .2s;
}
.grid-btn:hover, .esriMeasurement .dijitContentPane.esriMeasurementButtonContainer .esriButton .dijitButtonNode .dijitButtonContents:hover {
  background: rgba(68, 112, 161, 0.8);
  color: #d0dff1;
}
.grid-btn .fa, .esriMeasurement .dijitContentPane.esriMeasurementButtonContainer .esriButton .dijitButtonNode .dijitButtonContents .fa {
  color: #fff;
}
.grid-btn .fa.bookmarked, .esriMeasurement .dijitContentPane.esriMeasurementButtonContainer .esriButton .dijitButtonNode .dijitButtonContents .fa.bookmarked {
  color: #cbd268;
}

.block-input {
  display: block;
  border: solid 1px rgba(255, 255, 255, 0.15);
  width: 100%;
  margin: 1em 0;
  background-color: transparent;
  padding: 1em;
  box-sizing: border-box;
  color: #fff;
}
.btn-outline {
  display: block;
  padding: 1em;
  border: solid 2px rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.15);
  text-align: center;
  text-transform: uppercase;
  margin: 1em 0;
  font-weight: bold;
  transition: .3s;
  cursor: pointer;
}
.btn-outline:hover, .btn-outline.active {
  color: #fff;
  border-color: #fff;
  background-color: rgba(68, 112, 161, 0.8);
}
.btn-outline:hover:hover, .btn-outline.active:hover {
  background-color: rgba(93, 137, 187, 0.8);
}
.btn-outline.edit:hover {
  color: #cbd268;
  border-color: #aeb737;
  background-color: rgba(255, 255, 255, 0.15);
}
.btn-outline.success:hover {
  color: #6a9b6a;
  border-color: #4a6e4a;
  background-color: rgba(255, 255, 255, 0.15);
}

/*---------------------------------
-----CUSTOM CHECKBOXES AND RADIOS--
---------------------------------*/
.control-group {
    margin-bottom:.2em;   
}
.radio-group, .check-group {
    width:100%;
}
.control-title {
    display: block;
    color:#aaa;
    padding:4px 0;
    text-transform: uppercase;
    font-size:.8em;
}
.radio-group::after, .check-group::after {
    content: '';
    display:block;
    clear:both;
}
.input-option {
    background:rgba(0,0,0,.7);
    display:inline-block;
    box-sizing: border-box;
    float:left;
    font-size:.85em;
    padding: .8em 1em;
    color:#aaa;
    border:solid 1px rgba(255, 255, 255, .2);
    transition:.3s;
}
.input-option:hover {
    cursor: pointer;
}
.input-option.selected {
    background:#558acc; 
    color:#fff;
    text-shadow: 1px 0px 2px black;
    transition:.3s;
}
.horizontal .input-option:first-child {
    border-radius: 3px 0 0 3px;   
}
.horizontal .input-option:last-child {
    border-radius: 0 3px 3px 0;   
}
.horizontal .input-option:only-child {
    border-radius: 3px;   
}
/* one-item */
.horizontal .input-option:nth-child(1):nth-last-child(1) {
    width:100%;
}
/* two-items */
.horizontal .input-option:nth-child(1):nth-last-child(2),
.horizontal .input-option:nth-child(2):nth-last-child(1) {
    width:50%;   
}
/* three-items */
.horizontal .input-option:nth-child(1):nth-last-child(3),
.horizontal .input-option:nth-child(2):nth-last-child(2),
.horizontal .input-option:nth-child(3):nth-last-child(1) {
    width:33.3333%;   
}
/* four-items */
.horizontal .input-option:nth-child(1):nth-last-child(4),
.horizontal .input-option:nth-child(2):nth-last-child(3),
.horizontal .input-option:nth-child(3):nth-last-child(2),
.horizontal .input-option:nth-child(4):nth-last-child(1) {
    width:25%;   
}
.vertical .input-option:first-child {
    border-radius: 3px 3px 0 0;   
}
.vertical .input-option:last-child {
    border-radius: 0 0 3px 3px;   
}
.vertical .input-option:only-child {
    border-radius: 3px;   
}
.vertical .input-option {
    width:100%   
}
.input-option::before {
    font-family:'FontAwesome';
    width:1.3em;
    text-align:center;
    margin-right:.6em;
}
.radio-group .input-option::before {
    content: '\f1db';
}
.radio-group .input-option.selected::before {
    content: '\f058';
}
.check-group .input-option::before {
    content: '\f096';
}
.check-group .input-option.selected::before {
    content: '\f14a';
}

/*---------------------------------
-----CSS TRICKS INPUT:RANGE CSS----
---------------------------------*/
.range-container {
    background:#000;
    padding:1em;
    border-radius:3px;
    box-sizing: border-box;
}
input[type=range] {
    -webkit-appearance: none;
    width: 100%;
    padding:0;
}
input[type=range]:focus {
    outline: none;
}
input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 8.4px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    background: #3071a9;
    border-radius: 1.3px;
    border: 0.2px solid #010101;
}
input[type=range]::-webkit-slider-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 1px solid #000000;
    height: 20px;
    width: 16px;
    border-radius: 3px;
    background: #ffffff;
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -6px;
}
input[type=range]:focus::-webkit-slider-runnable-track {
    background: #367ebd;
}
input[type=range]::-moz-range-track {
    width: 100%;
    height: 8.4px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    background: #3071a9;
    border-radius: 1.3px;
    border: 0.2px solid #010101;
}
input[type=range]::-moz-range-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 1px solid #000000;
    height: 20px;
    width: 16px;
    border-radius: 3px;
    background: #ffffff;
    cursor: pointer;
}
input[type=range]::-ms-track {
    width: 100%;
    height: 8.4px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    border-width: 16px 0;
    color: transparent;
}
input[type=range]::-ms-fill-lower {
    background: #2a6495;
    border: 0.2px solid #010101;
    border-radius: 2.6px;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}
input[type=range]::-ms-fill-upper {
    background: #3071a9;
    border: 0.2px solid #010101;
    border-radius: 2.6px;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}
input[type=range]::-ms-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 1px solid #000000;
    height: 20px;
    width: 16px;
    border-radius: 3px;
    background: #ffffff;
    cursor: pointer;
}
input[type=range]:focus::-ms-fill-lower {
    background: #3071a9;
}
input[type=range]:focus::-ms-fill-upper {
    background: #367ebd;
}

/*
---------------------------------
------------stack menu
---------------------------------
*/
.stack {
    position: relative;
    height: calc(100vh - 50px);
    overflow:hidden;
    -webkit-overflow-scrolling: touch;
    transition: .3s;
}
.stack[data-stack-level='1'] {
    width: 400px;
}
.stack[data-stack-level='2'] {
    width: 450px;
}
.stack[data-stack-level='3'] {
    width: 500px;
}
.level {
    height: calc(100vh - 50px);
    background: rgba(0, 0, 0, .1);
    position: absolute;
    width: 400px;
    overflow-x: hidden;
    overflow-y: auto;
    opacity: 1;
    transition: .3s;
}
.back-label {
  width: 400px;
  height: 50px;
  position: absolute;
  top: -300px;
  right: -385px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  transform-origin: top left;
  color: #919191;
  opacity: 0;
  transition: .3s;
}

[data-level='1']:hover .back-label {
  color: #fff;
  cursor: pointer;
}


/* LEVEL 1 */
[data-stack-level='1'] [data-level='1'] {
    left: 0;
}
[data-level='2'] {
    left: -450px;
}
[data-level='3'] {
    left: -450px;
}

/* LEVEL 2 */
[data-stack-level='2'] [data-level='1'] {
    width: 450px;
}
[data-stack-level='2'] [data-level='1'] > * {
    opacity: 0;
    display: none;
    transition: .2s;
}
[data-stack-level='2'] [data-level='1'] > .back-label {
    top: 25px;
    display: block;
    opacity: 1;
}
[data-stack-level='2'] [data-level='2'] {
    left: 0;
    opacity: 1;
    transition: .3s;
}


/* LEVEL 3 */
[data-stack-level='3'] [data-level='1'] {
    width: 500px;
}
[data-stack-level='3'] [data-level='2'] {
    width: 450px;
    left: 0;
}
[data-stack-level='3'] [data-level='1'] > *,
[data-stack-level='3'] [data-level='2'] > *{
    opacity: 0;
    transition: .2s;
}
[data-stack-level='3'] [data-level='1'] > .back-label,
[data-stack-level='3'] [data-level='2'] > .back-label{
    top: 35px;
    opacity: 1;
}
[data-stack-level='3'] [data-level='3'] {
    left: 0;
    opacity: 1;
    transition: .3s;
}

.level-back {
    background: rgba(255,255,255,.1);
    padding: .7em 1em;
    position: relative;
    transition: background-color .3s;
    cursor: pointer;
}
.level-back::after {
    font-family: 'FontAwesome';
    content: '\f054';
    position: absolute;
    right: 1em;
}
.level-back:hover {
    background: rgba(68,112,161,.8);
}

/*
---------------------------------
------------end stack menu
---------------------------------
*/
