body { background-color: #fff; color: #000; }

body::-webkit-scrollbar { background-color: #303030; -webkit-box-shadow: 3px 3px 15px 0px #000; width: 15px; z-index: 1000; }
body::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.0); background-color: #303030; }
body::-webkit-scrollbar-thumb { border-bottom-left-radius: 0; border-top-right-radius: 0; -webkit-box-shadow: inset 0px 0 12px transparent; background-color: #ff4000;  }

.preload { display: none; }

.parallax-container { /* background-attachment: fixed; */ }

.block { overflow: hidden; position: relative; }
.block.block-full { height: 100vh; width: 100%; }
.block-simple { margin: 25px 0; text-align: center; }
.block-simple .fa { margin-right: 8px; }
.block-absolute { bottom: 0; left: 0; margin: auto; position: absolute; right: 0; top: 0; }
.block-image { background-position: center; background-repeat: no-repeat; background-size: cover; }
.block-image-shadow { box-shadow: inset 0 0 40px rgba(0,0,0,.7); }
.block-header { padding: 20px 0; text-align: center; }
.block-header .text { font-size: 16px; }
.block-header .text span { font-weight: 900; }

.rounded-top { border-top-left-radius: 10px; border-top-right-radius: 10px; }
.rounded-bottom { border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
.rounded-left { border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
.rounded-right { border-bottom-right-radius: 10px; border-bottom-right-radius: 10px; }
.rounded-all { border-radius: 10px; }

div.table { display: table; height: 100%; text-align: center; width: 100%; }
div.table-cell { display: table-cell; vertical-align: middle; }

/* Bootstrap: vertical-align middle solution */
.vcenter {
    display: inline-block;
    vertical-align: middle;
    float: none;
}

.icon-pulse { animation: iconPulse 0.5s ease-in-out infinite alternate; }
@keyframes iconPulse {
   0%    { transform: scale(1); }
   100%  { transform: scale(1.25); }
}

#transition-overlay { background: #303030; bottom: 0; display: none; left: 0px; position: fixed; right: 0; top: 0; z-index: 998; }

.overlay-spinner { background-color: #202020; box-shadow: 0 0 50px #ff4000, inset 0 0 20px #000; color: #ff4000; position: fixed; text-shadow: 0 0 15px #ff4000; z-index: 1003; top: 0; bottom: 0; left: 0; right: 0; }
.overlay-spinner .fa { font-size: 64px; }
.overlay-spinner .fa-spin { animation-duration: 0.5s; }

#overlay-loading {}
#overlay-resize { background-color: rgba(0,0,0,0.9); display: none; }

#debug-wrapper { background-color: rgba(0,0,0,.75); border: 1px solid #000; border-top-right-radius: 5px; bottom: 18px; color: #fff; font-size: 10px; display: block; left: 0px; padding: 5px; position: fixed; z-index: 1002; }

footer { background-color: rgba(0,0,0,.75); color: #ff4000; font-size: 9px; margin-top: 100px; padding: 3px; position: absolute; text-align: center; width: 100%; z-index: 1001; }
footer .credit span { font-weight: 900; }
footer .social-icons { font-size: 0; margin: 15px; }
footer .social-icons .fa-stack { font-size: 36px; }


@media (min-width: 960px) { 
    footer { border-top-right-radius: 5px; padding-right: 4px; right: auto; }
}
@media (max-width: 960px) {
    #debug-wrapper { display: none; }
}