/* Sticky footer styles */
html, body {
    background: #ffffff;
}

.grecaptcha-badge {
    visibility: hidden;
}

/* positions login landing page form */
.login-splash {
    width: 100%;
    max-width: 330px;
    padding: 15px;
    margin: auto;
}

.vertical-center {
    min-height: 100%;  /* Fallback for browsers do NOT support vh unit */
    min-height: 100vh; /* These two lines are counted as one :-)       */

    display: flex;
    align-items: center;
}

/* --------------------------------------- */

#orderSummary {
    /* Your default styles here */
}

/* Apply styles when the screen size is greater than or equal to 768px */
@media (min-width: 768px) {
    #orderSummary.sticky-top {
        /* Add your sticky styles here */
    }
}

/* --------------------------------------- */

#heroOverlay {
    background: rgba(0, 0, 0, 0.65);
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    z-index: 0;
}

#heroVideo {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: url(/img/hero-video-ph.webp) no-repeat;
    background-size: cover;
    transition: opacity 1s;
    -webkit-transition: opacity 1s;
    z-index: 0;
    clip-path: inset(-1px -1px);
}

.ov-hidden{
    overflow: hidden;
}

/* --------------------------------------- */

#accordion {
    &  .card {
        border-width: 0px 0px 1px 0px;
    }
    & .card-header {
        background-color: white;
        border: none;
    }
    & button {
        &:focus {
            box-shadow: none;
            font-weight: bolder;
        }
    }
}

/* --------------------------------------- */

#categoryCarousel {
    & p {
        margin-bottom: 0;
    }
}

.carousel video {
    width: 100%;
    display: block;
    clip-path: inset(-1px -1px);
}

.carousel-caption {
    text-shadow: 1px 1px 2px black;
}

.carousel-control-next,
.carousel-control-prev {
    width: 3rem;
}

.carousel-control-prev,
.carousel-control-next,
.carousel-indicators {
    filter: drop-shadow(0px 3px 4px #000000);
    -webkit-filter: drop-shadow(0px 3px 4px #000000);
    -ms-filter: drop-shadow(0px 3px 4px #000000);
}

/* --------------------------------------- */

#productCategories {
    & a {
        text-decoration: none;
        text-align: center;
    }
    & div {
        text-align: center;
        margin: 0 0 1rem 0;
        padding: 0 1rem 0 1rem ;
        transition: all .15s ease-in;
        &:hover {
            transform: translateY(-0.2rem);
            -webkit-transform: translateY(-0.2rem);
            -ms-transform: translateY(-0.2rem);
            filter: drop-shadow(0px 6px 5px #00000050);
            -webkit-filter: drop-shadow(0px 6px 5px #00000050);
            -ms-filter: drop-shadow(0px 6px 5px #00000050);
        }
        &:hover h4 {
            color: white;
        }
        &:hover a {
            text-decoration: none;
        }
    }
    & img {
        margin: 0;
        padding: 0 1rem 1rem 1rem;
        transition: all .15s ease-in;
    }
    & h4 {
        margin-bottom: 0;
        color: #FFFFFF80;
        transition: color .15s ease-in;
    }
}

/* --------------------------------------- */

/* for 'shaking' call to action on form validation */
.shake {
    animation: shake 0.5s;
}

@keyframes shake {
    10%, 90% {
        transform: translate3d(-1px, 0, 0);
    }

    20%, 80% {
        transform: translate3d(2px, 0, 0);
    }

    30%, 50%, 70% {
        transform: translate3d(-4px, 0, 0);
    }

    40%, 60% {
        transform: translate3d(4px, 0, 0);
    }
}

.fade-enter-active, .fade-leave-active {
    transition: opacity .15s ease-in-out;
}
.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {
    opacity: 0;
}

/* Hides vue.js applications while they are rendering */
[v-cloak] {
    display: none;
}

/* --------------------------------------- */

#navBar {
    min-height: 3.5rem;
    padding: 0rem 1rem 0rem 1rem;
    top: 0rem;
    z-index: 1035;
    & li {
        margin-right: .5rem;
        & a {
            transition: color .15s ease-in-out;
        }
    }
}
.navbar-brand {
    opacity: 0.5;
    margin: 0;
    padding: 0;
    transition: opacity .15s ease-in-out;
    &:hover {
        opacity: 1;
    }
}
.navbar-toggler-icon {
    height: 1.25rem;
    width: 1.25rem;
}

/* --------------------------------------- */

#attBar {
    min-height: 3.5rem;
    padding: 0rem 1rem 0rem 1rem;
    top: 3.5rem;
    & span {
        cursor: pointer;
        font-size: 150%;
    }
}

/* --------------------------------------- */

.card-scale {
    transition: all .15s ease-in-out;
    &:hover {
        transform: translateY(-0.2rem);
        filter: drop-shadow(0px 6px 6px #00000025);
        -webkit-filter: drop-shadow(0px 6px 6px #00000025);
        -ms-filter: drop-shadow(0px 6px 6px #00000025);
    }
}

.a-category a:hover {
    text-decoration: none;
    & h4 {
        text-decoration: none;
    }
    & h5 {
        text-decoration: none;
    }
}

.a-item a:hover {
    text-decoration: none;
    & h5 {
        text-decoration: underline;
    }
}

/* --------------------------------------- */

.dropdown-menu {

    top: 2.25rem;
    & a {
        height: 2rem;
        display: flex;
        align-items: center;
    }
}

/* --------------------------------------- */

.arkplas-hr {
    background: linear-gradient(to right, #66A6FF, #FF73FF, #FF6666, #FFAC59, #F2F255, #73FF73);
    height: 2px;
    border: none;
}

.jumbotron-dark {
    background-image: url('/img/misc/facility_bckgrnd.webp');
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* --------------------------------------- */

.btn-secondary {
    background-color: #F7F7F9;
    &:hover {
        background-color: #f0f0f2;
    }
    &:focus {
        background-color: #f0f0f2;
    }
    &:active {
        background-color: #f0f0f2;
    }
}

#searchDropButton {
    color: #FFFFFF80;
    padding: 0;
    &:hover {
        color: #FFFFFF;
    }
    &:focus {
        box-shadow: none;
    }
    & div {
        width: auto;
        & form {
            & div {
                width: 12rem;
                & input {
                    padding: .5rem .5rem .5rem .75rem;
                    height: 2.5rem;
                    margin-bottom: .5rem;
                    width: 100%;
                }
            }
            & button {
                color: #FFFFFF80;
                padding: .5rem;
                height: 2.5rem;
                &:hover {
                    color: #FFFFFF;
                }
            }
        }
    }
}

/* --------------------------------------- */

#cartToggle {
    color: #4BBF7380;
    &:hover {
        color: #4BBF73;
    }
}

/* --------------------------------------- */

#navSearch {
    & input {
        color: #FFFFFF;
        height: 1.25rem;
        width: 0rem;
        padding: 0rem 0rem 0rem 0rem;
        transition: width .15s ease-in-out;
        &:focus {
            box-shadow: none;
            border-style: solid;
            border-width: 0rem 0rem .125rem 0rem;
            border-color: #FFFFFF50;
            padding: 0rem 0rem 0rem 0rem;
            width: 8rem;
        }
    }
    & button {
        color: #FFFFFF80;
        padding: 0rem 0rem .15rem 0rem;
        &:hover {
            color: #FFFFFF;
        }
        &:focus {
            box-shadow: none;
        }
    }
    &::placeholder {
        color: #FFFFFF50;
        padding: 0rem 0rem 0rem 0rem;
    }
    &:hover input {
        border-style: solid;
        border-width: 0rem 0rem .125rem 0rem;
        border-color: #FFFFFF50;
        padding: 0rem 0rem 0rem 0rem;
        width: 8rem;
    }
}

/* --------------------------------------- */

.login-splash {
    position: fixed;
    top: 50%;
    left: 80%;
    /* bring your own prefixes */
    transform: translate(-80%, -50%);
}

.bg-gradient {
    background-color: #485461;
    background-image: linear-gradient(315deg, #485461 0%, #28313b 74%);
}

.logo-tile {
    background-image: url('/img/logo-light.svg');
    background-size: 55px 55px;
    background-repeat: repeat;
    opacity: 10%;
}

/* --------------------------------------- */

ul {
    padding-left: 1.75rem;
}

ol {
    padding-left: 1.75rem;
}

/* --------------------------------------- */

.number-circle {
    padding: 10px 20px;
    background-color: #485461;
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
}

.line-bar {
    height: 1px;
    width: 42%;
    background-color: #485461;
}

.number-active,
.line-bar-active  {
    background-color: rgb(75, 191, 115);
}

/* --------------------------------------- */

.list-group-item.active {
    background-color: #343A40;
}

/* --------------------------------------- */

#checkoutSteps {
    margin-bottom: 30px;
    overflow: hidden;
    color: lightgrey;
    & a {
    list-style-type: none;
    font-size: 15px;
    width: 33.33%;
    float: left;
    position: relative;
    font-weight: 400;
    text-transform: uppercase;
    color: lightgray;
    z-index: 1;
        &.active {
            color: #4BBF73;
            opacity: 0.5;
            transition: opacity .15s ease-in-out;
            &:before {
                background: #4BBF73;
            }
            &:after {
                background: #4BBF73;
            }
            &:hover {
                opacity: 1;
            }
        }
        &:hover {
            text-decoration: none;
        }
        &.disabled {
            opacity: 1;
            pointer-events: none;
        }
        &:before {
            width: 50px;
            height: 50px;
            line-height: 46px;
            display: block;
            font-size: 20px;
            color: #ffffff;
            background: lightgray;
            border-radius: 50%;
            margin: 0 auto 10px auto;
            padding: 2px;
        }
        &:after {
            content: '';
            width: 100%;
            height: 2px;
            background: lightgray;
            position: absolute;
            left: 0;
            top: 24px;
            z-index: -1;
        }
    }
    & #addressIcon:before {
        font-family: FontAwesome;
        content: "\f041"
    }
    & #shippingIcon:before {
        font-family: FontAwesome;
        content: "\f187"
    }
    & #paymentIcon:before {
        font-family: FontAwesome;
        content: "\f09d"
    }
}

/* --------------------------------------- */

.InputContainer > .InputElement {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
    &::-webkit-input-placeholder {
        color: #6c757d;
        opacity: 1;
    }
    &::-moz-placeholder {
        color: #6c757d;
        opacity: 1;
    }
    &::-ms-input-placeholder {
        color: #6c757d;
        opacity: 1;
    }
    &::placeholder {
        color: #6c757d;
        opacity: 1;
    }
}

.card-input-element+button {
    height: calc(36px + 2*1rem);
    &:hover {
        cursor: pointer;
    }
}

.card-input-element:checked+button {
    transition: border .15s ease-in-out;
    -webkit-transition: border .15s ease-in-out;
    -o-transition: border .15s ease-in-out;
    &::after {
        font-family: FontAwesome;
        content: '\f00c';
        -webkit-animation-name: fadeInCheckbox;
        animation-name: fadeInCheckbox;
        -webkit-animation-duration: .5s;
        animation-duration: .5s;
        -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    }
}

@-webkit-keyframes fadeInCheckbox {
    from {
        opacity: 0;
        -webkit-transform: rotateZ(-20deg);
    }
    to {
        opacity: 1;
        -webkit-transform: rotateZ(0deg);
    }
}

@keyframes fadeInCheckbox {
    from {
        opacity: 0;
        transform: rotateZ(-20deg);
    }
    to {
        opacity: 1;
        transform: rotateZ(0deg);
    }
}

.btn-dashboard {
    background-color: rgba(0, 0, 0, 0.1);
    font-size: 80%;
    &:hover {
        background-color: rgba(0, 0, 0, 0.3);
    }
}

.insp-log > tbody > tr > td {
    border: none;
    padding: 0.25rem;
}

.insp-log {
    margin-bottom: 0px;
}

.insp.accepted {
    background-color: #dff0d8;
    border-color: #d6e9c6;
}

.insp.rejected {
    background-color: #f2dede;
    border-color: #ebccd1;
}

.insp.na {
    background-color: #f5e1d5;
    border-color: #dcc5b7;
}

.insp-log kbd {
    background-color: #666;
}

.pointer {
    cursor: pointer;
}

.custom-control-input:not(:checked) ~ .switch:before {
    background-color: #7a7a7a !important;
}