/* z-indexes */
#effects .background {
    z-index: -2;
}

#effects .surface,
#effects .surface .fade-in {
    z-index: -1;
}

#effects .box-open,
#effects .box-opening {
    z-index: -1;
}

#effects .background-overlay {
    z-index: 0;
}

#effects .box-open .items-expanded {
    z-index: 1;
}

#effects headings,
#effects .scroll-indicator {
    z-index: 2;
}

#effects section {
    margin-bottom: 50%;
}

#effects section:nth-child(3) {
    margin-bottom: 25%;
}

#effects .show-objects {
    margin: 25% auto 25% auto;

    height: 150px;
    width: 150px;
    line-height: 150px;
    text-align: center;
    vertical-align: middle;
    
    background: rgba(0, 0, 0, .75);
    border-radius: 50%;
    color: #fff;
    font-style: italic;

    cursor: pointer;
}

#effects .show-objects:hover {
    background: rgba(0, 0, 0, .80);
}

#effects .background {
    background-image: url('../assets/images/object_box/carpet-tile@2x.jpg');
    background-size: 350px 350px;
    background-repeat: repeat;
}

#effects .box-open {
    position: fixed;
    height:100%;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 1em;
}

#effects .box-open .items-expanded {
    position: absolute;
    top:50%;
    left:50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#effects .box-open .box-empty {
    position: absolute;
    left: 26px;
    top: 0px;
    right: 0;
    margin: 0 auto;

    width: 483px;
    height: 600px;

    display: none;
}

#effects .box-opening {
    position: fixed;
    top:38%;
    left:51%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Safari */
    transform: translate(-50%, -50%);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 2414px 600px;
    height: 100%;
    width: 483px;
    height: 600px;
    margin: 0 auto;
    z-index: -1;
}

#effects .box-opening.open {
    -webkit-animation: openbox 1s steps(4);
    -moz-animation: openbox 1s steps(4);
    -o-animation: openbox 1s steps(4);
    animation: openbox 1s steps(4);

    -webkit-animation-iteration-count: 1; /* Chrome, Safari, Opera */
    animation-iteration-count: 1;

    -webkit-animation-fill-mode: forwards; /* Chrome, Safari, Opera */
    animation-fill-mode: forwards;

}

@-webkit-keyframes openbox {
    from { background-position: 0 0; }
    to { background-position: 100% 0; }
}

@-moz-keyframes openbox {
    from { background-position: 0 0; }
    to { background-position: 100% 0; }
}

@-o-keyframes openbox {
    from { background-position: 0 0; }
    to { background-position: 100% 0; }
}

@keyframes openbox {
    from { background-position: 0 0; }
    to { background-position: 100% 0; }
}
